@keystrokehq/rafflys 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/README.md +17 -0
  2. package/dist/action.cjs +21 -0
  3. package/dist/action.cjs.map +1 -0
  4. package/dist/action.mjs +21 -0
  5. package/dist/action.mjs.map +1 -0
  6. package/dist/actions/get-current-user.cjs +27 -0
  7. package/dist/actions/get-current-user.cjs.map +1 -0
  8. package/dist/actions/get-current-user.d.cts +9 -0
  9. package/dist/actions/get-current-user.d.cts.map +1 -0
  10. package/dist/actions/get-current-user.d.mts +9 -0
  11. package/dist/actions/get-current-user.d.mts.map +1 -0
  12. package/dist/actions/get-current-user.mjs +26 -0
  13. package/dist/actions/get-current-user.mjs.map +1 -0
  14. package/dist/actions/index.cjs +5 -0
  15. package/dist/actions/index.d.cts +3 -0
  16. package/dist/actions/index.d.mts +3 -0
  17. package/dist/actions/index.mjs +3 -0
  18. package/dist/actions/list-promotions.cjs +19 -0
  19. package/dist/actions/list-promotions.cjs.map +1 -0
  20. package/dist/actions/list-promotions.d.cts +9 -0
  21. package/dist/actions/list-promotions.d.cts.map +1 -0
  22. package/dist/actions/list-promotions.d.mts +9 -0
  23. package/dist/actions/list-promotions.d.mts.map +1 -0
  24. package/dist/actions/list-promotions.mjs +16 -0
  25. package/dist/actions/list-promotions.mjs.map +1 -0
  26. package/dist/app.cjs +9 -0
  27. package/dist/app.cjs.map +1 -0
  28. package/dist/app.d.cts +5 -0
  29. package/dist/app.d.cts.map +1 -0
  30. package/dist/app.d.mts +5 -0
  31. package/dist/app.d.mts.map +1 -0
  32. package/dist/app.mjs +10 -0
  33. package/dist/app.mjs.map +1 -0
  34. package/dist/catalog.cjs +15 -0
  35. package/dist/catalog.cjs.map +1 -0
  36. package/dist/catalog.d.cts +14 -0
  37. package/dist/catalog.d.cts.map +1 -0
  38. package/dist/catalog.d.mts +14 -0
  39. package/dist/catalog.d.mts.map +1 -0
  40. package/dist/catalog.mjs +15 -0
  41. package/dist/catalog.mjs.map +1 -0
  42. package/dist/execute.cjs +18 -0
  43. package/dist/execute.cjs.map +1 -0
  44. package/dist/execute.mjs +18 -0
  45. package/dist/execute.mjs.map +1 -0
  46. package/dist/index.cjs +10 -0
  47. package/dist/index.d.cts +5 -0
  48. package/dist/index.d.mts +5 -0
  49. package/dist/index.mjs +6 -0
  50. package/package.json +49 -0
package/README.md ADDED
@@ -0,0 +1,17 @@
1
+ # @keystrokehq/rafflys
2
+
3
+ Keystroke-managed integration.
4
+
5
+ **App:** `rafflys`
6
+ **Version:** `20260615_00`
7
+ **Actions:** 2
8
+
9
+ ```ts
10
+ import { defineAgent } from "@keystrokehq/keystroke/agent";
11
+ import { rafflysGetCurrentUser } from "@keystrokehq/rafflys/actions";
12
+
13
+ export default defineAgent({
14
+ key: "rafflys-agent",
15
+ tools: [rafflysGetCurrentUser],
16
+ });
17
+ ```
@@ -0,0 +1,21 @@
1
+ const require_app = require("./app.cjs");
2
+ const require_execute = require("./execute.cjs");
3
+ require("zod");
4
+ //#region src/action.ts
5
+ /** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */
6
+ function action(tool, def) {
7
+ return require_app.rafflys.action({
8
+ slug: def.slug,
9
+ name: def.name,
10
+ description: def.description,
11
+ input: def.input,
12
+ output: def.output,
13
+ async run(input) {
14
+ return def.output.parse(await require_execute.executeRafflysTool(tool, input));
15
+ }
16
+ });
17
+ }
18
+ //#endregion
19
+ exports.action = action;
20
+
21
+ //# sourceMappingURL=action.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.cjs","names":["rafflys","executeRafflysTool"],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { rafflys } from \"./app\";\nimport { executeRafflysTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: z.ZodTypeAny;\n output: z.ZodTypeAny;\n },\n) {\n return rafflys.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output,\n async run(input) {\n return def.output.parse(await executeRafflysTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAOA,YAAAA,QAAQ,OAAO;EACpB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAMC,gBAAAA,mBAAmB,MAAM,KAAgC,CAAC;EAC1F;CACF,CAAC;AACH"}
@@ -0,0 +1,21 @@
1
+ import { rafflys } from "./app.mjs";
2
+ import { executeRafflysTool } from "./execute.mjs";
3
+ import "zod";
4
+ //#region src/action.ts
5
+ /** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */
6
+ function action(tool, def) {
7
+ return rafflys.action({
8
+ slug: def.slug,
9
+ name: def.name,
10
+ description: def.description,
11
+ input: def.input,
12
+ output: def.output,
13
+ async run(input) {
14
+ return def.output.parse(await executeRafflysTool(tool, input));
15
+ }
16
+ });
17
+ }
18
+ //#endregion
19
+ export { action };
20
+
21
+ //# sourceMappingURL=action.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"action.mjs","names":[],"sources":["../src/action.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { rafflys } from \"./app\";\nimport { executeRafflysTool } from \"./execute\";\n\n/** Bind one gateway tool to a typed app action; the call's output is parsed against `def.output`. */\nexport function action(\n tool: string,\n def: {\n slug: string;\n name: string;\n description: string;\n input: z.ZodTypeAny;\n output: z.ZodTypeAny;\n },\n) {\n return rafflys.action({\n slug: def.slug,\n name: def.name,\n description: def.description,\n input: def.input,\n output: def.output,\n async run(input) {\n return def.output.parse(await executeRafflysTool(tool, input as Record<string, unknown>));\n },\n });\n}\n"],"mappings":";;;;;AAMA,SAAgB,OACd,MACA,KAOA;CACA,OAAO,QAAQ,OAAO;EACpB,MAAM,IAAI;EACV,MAAM,IAAI;EACV,aAAa,IAAI;EACjB,OAAO,IAAI;EACX,QAAQ,IAAI;EACZ,MAAM,IAAI,OAAO;GACf,OAAO,IAAI,OAAO,MAAM,MAAM,mBAAmB,MAAM,KAAgC,CAAC;EAC1F;CACF,CAAC;AACH"}
@@ -0,0 +1,27 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/get-current-user.ts
4
+ const RafflysGetCurrentUserInput = zod.z.object({}).describe("Request model for retrieving the current authenticated user.\nNo parameters are required.");
5
+ const RafflysGetCurrentUser_UserDataSchema = zod.z.object({
6
+ id: zod.z.number().int().describe("Unique identifier of the user"),
7
+ lang: zod.z.string().describe("Language preference of the user").nullable().optional(),
8
+ name: zod.z.string().describe("Full name of the user"),
9
+ email: zod.z.string().describe("Email address of the user"),
10
+ last_name: zod.z.string().describe("Last name of the user").nullable().optional(),
11
+ first_name: zod.z.string().describe("First name of the user").nullable().optional()
12
+ }).describe("User details returned by the API.");
13
+ const RafflysGetCurrentUserOutput = zod.z.object({
14
+ data: RafflysGetCurrentUser_UserDataSchema.nullable(),
15
+ success: zod.z.boolean().describe("Whether the request was successful")
16
+ }).describe("Response model for the authenticated user details.");
17
+ const rafflysGetCurrentUser = require_action.action("RAFFLYS_GET_CURRENT_USER", {
18
+ slug: "rafflys-get-current-user",
19
+ name: "Get Current User",
20
+ description: "Tool to retrieve details of the authenticated user. Use when confirming your current account information.",
21
+ input: RafflysGetCurrentUserInput,
22
+ output: RafflysGetCurrentUserOutput
23
+ });
24
+ //#endregion
25
+ exports.rafflysGetCurrentUser = rafflysGetCurrentUser;
26
+
27
+ //# sourceMappingURL=get-current-user.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-current-user.cjs","names":["z","action"],"sources":["../../src/actions/get-current-user.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RafflysGetCurrentUserInput: z.ZodTypeAny = z.object({}).describe(\"Request model for retrieving the current authenticated user.\\nNo parameters are required.\");\nconst RafflysGetCurrentUser_UserDataSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Unique identifier of the user\"),\n lang: z.string().describe(\"Language preference of the user\").nullable().optional(),\n name: z.string().describe(\"Full name of the user\"),\n email: z.string().describe(\"Email address of the user\"),\n last_name: z.string().describe(\"Last name of the user\").nullable().optional(),\n first_name: z.string().describe(\"First name of the user\").nullable().optional(),\n}).describe(\"User details returned by the API.\");\nexport const RafflysGetCurrentUserOutput: z.ZodTypeAny = z.object({\n data: RafflysGetCurrentUser_UserDataSchema.nullable(),\n success: z.boolean().describe(\"Whether the request was successful\"),\n}).describe(\"Response model for the authenticated user details.\");\n\nexport const rafflysGetCurrentUser = action(\"RAFFLYS_GET_CURRENT_USER\", {\n slug: \"rafflys-get-current-user\",\n name: \"Get Current User\",\n description: \"Tool to retrieve details of the authenticated user. Use when confirming your current account information.\",\n input: RafflysGetCurrentUserInput,\n output: RafflysGetCurrentUserOutput,\n});\n"],"mappings":";;;AAIA,MAAa,6BAA2CA,IAAAA,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,2FAA2F;AACzK,MAAM,uCAAqDA,IAAAA,EAAE,OAAO;CAClE,IAAIA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,+BAA+B;CAC7D,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjF,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uBAAuB;CACjD,OAAOA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,2BAA2B;CACtD,WAAWA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC5E,YAAYA,IAAAA,EAAE,OAAO,CAAC,CAAC,SAAS,wBAAwB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAChF,CAAC,CAAC,CAAC,SAAS,mCAAmC;AAC/C,MAAa,8BAA4CA,IAAAA,EAAE,OAAO;CAChE,MAAM,qCAAqC,SAAS;CACpD,SAASA,IAAAA,EAAE,QAAQ,CAAC,CAAC,SAAS,oCAAoC;AACpE,CAAC,CAAC,CAAC,SAAS,oDAAoD;AAEhE,MAAa,wBAAwBC,eAAAA,OAAO,4BAA4B;CACtE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/get-current-user.d.ts
4
+ declare const RafflysGetCurrentUserInput: z.ZodTypeAny;
5
+ declare const RafflysGetCurrentUserOutput: z.ZodTypeAny;
6
+ declare const rafflysGetCurrentUser: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { rafflysGetCurrentUser };
9
+ //# sourceMappingURL=get-current-user.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-current-user.d.cts","names":[],"sources":["../../src/actions/get-current-user.ts"],"mappings":";;;cAIa,0BAAA,EAA4B,CAAA,CAAE,UAA+H;AAAA,cAS7J,2BAAA,EAA6B,CAAA,CAAE,UAGqB;AAAA,cAEpD,qBAAA,gCAAqB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/get-current-user.d.ts
4
+ declare const RafflysGetCurrentUserInput: z.ZodTypeAny;
5
+ declare const RafflysGetCurrentUserOutput: z.ZodTypeAny;
6
+ declare const rafflysGetCurrentUser: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { rafflysGetCurrentUser };
9
+ //# sourceMappingURL=get-current-user.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-current-user.d.mts","names":[],"sources":["../../src/actions/get-current-user.ts"],"mappings":";;;cAIa,0BAAA,EAA4B,CAAA,CAAE,UAA+H;AAAA,cAS7J,2BAAA,EAA6B,CAAA,CAAE,UAGqB;AAAA,cAEpD,qBAAA,gCAAqB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,26 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ //#region src/actions/get-current-user.ts
4
+ const RafflysGetCurrentUserInput = z.object({}).describe("Request model for retrieving the current authenticated user.\nNo parameters are required.");
5
+ const RafflysGetCurrentUser_UserDataSchema = z.object({
6
+ id: z.number().int().describe("Unique identifier of the user"),
7
+ lang: z.string().describe("Language preference of the user").nullable().optional(),
8
+ name: z.string().describe("Full name of the user"),
9
+ email: z.string().describe("Email address of the user"),
10
+ last_name: z.string().describe("Last name of the user").nullable().optional(),
11
+ first_name: z.string().describe("First name of the user").nullable().optional()
12
+ }).describe("User details returned by the API.");
13
+ const rafflysGetCurrentUser = action("RAFFLYS_GET_CURRENT_USER", {
14
+ slug: "rafflys-get-current-user",
15
+ name: "Get Current User",
16
+ description: "Tool to retrieve details of the authenticated user. Use when confirming your current account information.",
17
+ input: RafflysGetCurrentUserInput,
18
+ output: z.object({
19
+ data: RafflysGetCurrentUser_UserDataSchema.nullable(),
20
+ success: z.boolean().describe("Whether the request was successful")
21
+ }).describe("Response model for the authenticated user details.")
22
+ });
23
+ //#endregion
24
+ export { rafflysGetCurrentUser };
25
+
26
+ //# sourceMappingURL=get-current-user.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get-current-user.mjs","names":[],"sources":["../../src/actions/get-current-user.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RafflysGetCurrentUserInput: z.ZodTypeAny = z.object({}).describe(\"Request model for retrieving the current authenticated user.\\nNo parameters are required.\");\nconst RafflysGetCurrentUser_UserDataSchema: z.ZodTypeAny = z.object({\n id: z.number().int().describe(\"Unique identifier of the user\"),\n lang: z.string().describe(\"Language preference of the user\").nullable().optional(),\n name: z.string().describe(\"Full name of the user\"),\n email: z.string().describe(\"Email address of the user\"),\n last_name: z.string().describe(\"Last name of the user\").nullable().optional(),\n first_name: z.string().describe(\"First name of the user\").nullable().optional(),\n}).describe(\"User details returned by the API.\");\nexport const RafflysGetCurrentUserOutput: z.ZodTypeAny = z.object({\n data: RafflysGetCurrentUser_UserDataSchema.nullable(),\n success: z.boolean().describe(\"Whether the request was successful\"),\n}).describe(\"Response model for the authenticated user details.\");\n\nexport const rafflysGetCurrentUser = action(\"RAFFLYS_GET_CURRENT_USER\", {\n slug: \"rafflys-get-current-user\",\n name: \"Get Current User\",\n description: \"Tool to retrieve details of the authenticated user. Use when confirming your current account information.\",\n input: RafflysGetCurrentUserInput,\n output: RafflysGetCurrentUserOutput,\n});\n"],"mappings":";;;AAIA,MAAa,6BAA2C,EAAE,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,2FAA2F;AACzK,MAAM,uCAAqD,EAAE,OAAO;CAClE,IAAI,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,+BAA+B;CAC7D,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,iCAAiC,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CACjF,MAAM,EAAE,OAAO,CAAC,CAAC,SAAS,uBAAuB;CACjD,OAAO,EAAE,OAAO,CAAC,CAAC,SAAS,2BAA2B;CACtD,WAAW,EAAE,OAAO,CAAC,CAAC,SAAS,uBAAuB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;CAC5E,YAAY,EAAE,OAAO,CAAC,CAAC,SAAS,wBAAwB,CAAC,CAAC,SAAS,CAAC,CAAC,SAAS;AAChF,CAAC,CAAC,CAAC,SAAS,mCAAmC;AAM/C,MAAa,wBAAwB,OAAO,4BAA4B;CACtE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAVuD,EAAE,OAAO;EAChE,MAAM,qCAAqC,SAAS;EACpD,SAAS,EAAE,QAAQ,CAAC,CAAC,SAAS,oCAAoC;CACpE,CAAC,CAAC,CAAC,SAAS,oDAOF;AACV,CAAC"}
@@ -0,0 +1,5 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_get_current_user = require("./get-current-user.cjs");
3
+ const require_list_promotions = require("./list-promotions.cjs");
4
+ exports.rafflysGetCurrentUser = require_get_current_user.rafflysGetCurrentUser;
5
+ exports.rafflysListPromotions = require_list_promotions.rafflysListPromotions;
@@ -0,0 +1,3 @@
1
+ import { rafflysGetCurrentUser } from "./get-current-user.cjs";
2
+ import { rafflysListPromotions } from "./list-promotions.cjs";
3
+ export { rafflysGetCurrentUser, rafflysListPromotions };
@@ -0,0 +1,3 @@
1
+ import { rafflysGetCurrentUser } from "./get-current-user.mjs";
2
+ import { rafflysListPromotions } from "./list-promotions.mjs";
3
+ export { rafflysGetCurrentUser, rafflysListPromotions };
@@ -0,0 +1,3 @@
1
+ import { rafflysGetCurrentUser } from "./get-current-user.mjs";
2
+ import { rafflysListPromotions } from "./list-promotions.mjs";
3
+ export { rafflysGetCurrentUser, rafflysListPromotions };
@@ -0,0 +1,19 @@
1
+ const require_action = require("../action.cjs");
2
+ let zod = require("zod");
3
+ //#region src/actions/list-promotions.ts
4
+ const RafflysListPromotionsInput = zod.z.object({
5
+ page: zod.z.number().int().default(1).describe("Page number for pagination (default is 1)").optional(),
6
+ per_page: zod.z.number().int().default(50).describe("Number of items per page (1-100, default is 50)").optional()
7
+ });
8
+ const RafflysListPromotionsOutput = zod.z.object({ promotions: zod.z.array(zod.z.record(zod.z.string(), zod.z.unknown())).describe("List of promotion objects returned by the API") });
9
+ const rafflysListPromotions = require_action.action("RAFFLYS_LIST_PROMOTIONS", {
10
+ slug: "rafflys-list-promotions",
11
+ name: "List Promotions",
12
+ description: "Tool to list all promotions. Use when you need to retrieve available promotions for display or reporting.",
13
+ input: RafflysListPromotionsInput,
14
+ output: RafflysListPromotionsOutput
15
+ });
16
+ //#endregion
17
+ exports.rafflysListPromotions = rafflysListPromotions;
18
+
19
+ //# sourceMappingURL=list-promotions.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-promotions.cjs","names":["z","action"],"sources":["../../src/actions/list-promotions.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RafflysListPromotionsInput: z.ZodTypeAny = z.object({\n page: z.number().int().default(1).describe(\"Page number for pagination (default is 1)\").optional(),\n per_page: z.number().int().default(50).describe(\"Number of items per page (1-100, default is 50)\").optional(),\n});\nexport const RafflysListPromotionsOutput: z.ZodTypeAny = z.object({\n promotions: z.array(z.record(z.string(), z.unknown())).describe(\"List of promotion objects returned by the API\"),\n});\n\nexport const rafflysListPromotions = action(\"RAFFLYS_LIST_PROMOTIONS\", {\n slug: \"rafflys-list-promotions\",\n name: \"List Promotions\",\n description: \"Tool to list all promotions. Use when you need to retrieve available promotions for display or reporting.\",\n input: RafflysListPromotionsInput,\n output: RafflysListPromotionsOutput,\n});\n"],"mappings":";;;AAIA,MAAa,6BAA2CA,IAAAA,EAAE,OAAO;CAC/D,MAAMA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS;CACjG,UAAUA,IAAAA,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,SAAS;AAC9G,CAAC;AACD,MAAa,8BAA4CA,IAAAA,EAAE,OAAO,EAChE,YAAYA,IAAAA,EAAE,MAAMA,IAAAA,EAAE,OAAOA,IAAAA,EAAE,OAAO,GAAGA,IAAAA,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,+CAA+C,EACjH,CAAC;AAED,MAAa,wBAAwBC,eAAAA,OAAO,2BAA2B;CACrE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAAO;CACP,QAAQ;AACV,CAAC"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-promotions.d.ts
4
+ declare const RafflysListPromotionsInput: z.ZodTypeAny;
5
+ declare const RafflysListPromotionsOutput: z.ZodTypeAny;
6
+ declare const rafflysListPromotions: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { rafflysListPromotions };
9
+ //# sourceMappingURL=list-promotions.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-promotions.d.cts","names":[],"sources":["../../src/actions/list-promotions.ts"],"mappings":";;;cAIa,0BAAA,EAA4B,CAAA,CAAE,UAGzC;AAAA,cACW,2BAAA,EAA6B,CAAA,CAAE,UAE1C;AAAA,cAEW,qBAAA,gCAAqB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,9 @@
1
+ import { z } from "zod";
2
+
3
+ //#region src/actions/list-promotions.d.ts
4
+ declare const RafflysListPromotionsInput: z.ZodTypeAny;
5
+ declare const RafflysListPromotionsOutput: z.ZodTypeAny;
6
+ declare const rafflysListPromotions: import("@keystrokehq/action").WorkflowActionDefinition<unknown, unknown, import("@keystrokehq/shared").ResolvedCredentials<readonly [import("@keystrokehq/shared").Credential]>, readonly [import("@keystrokehq/shared").Credential]>;
7
+ //#endregion
8
+ export { rafflysListPromotions };
9
+ //# sourceMappingURL=list-promotions.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-promotions.d.mts","names":[],"sources":["../../src/actions/list-promotions.ts"],"mappings":";;;cAIa,0BAAA,EAA4B,CAAA,CAAE,UAGzC;AAAA,cACW,2BAAA,EAA6B,CAAA,CAAE,UAE1C;AAAA,cAEW,qBAAA,gCAAqB,wBAAA,iDAAA,mBAAA,yCAAA,UAAA,4CAAA,UAAA"}
@@ -0,0 +1,16 @@
1
+ import { action } from "../action.mjs";
2
+ import { z } from "zod";
3
+ const rafflysListPromotions = action("RAFFLYS_LIST_PROMOTIONS", {
4
+ slug: "rafflys-list-promotions",
5
+ name: "List Promotions",
6
+ description: "Tool to list all promotions. Use when you need to retrieve available promotions for display or reporting.",
7
+ input: z.object({
8
+ page: z.number().int().default(1).describe("Page number for pagination (default is 1)").optional(),
9
+ per_page: z.number().int().default(50).describe("Number of items per page (1-100, default is 50)").optional()
10
+ }),
11
+ output: z.object({ promotions: z.array(z.record(z.string(), z.unknown())).describe("List of promotion objects returned by the API") })
12
+ });
13
+ //#endregion
14
+ export { rafflysListPromotions };
15
+
16
+ //# sourceMappingURL=list-promotions.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"list-promotions.mjs","names":[],"sources":["../../src/actions/list-promotions.ts"],"sourcesContent":["import { z } from \"zod\";\n\nimport { action } from \"../action\";\n\nexport const RafflysListPromotionsInput: z.ZodTypeAny = z.object({\n page: z.number().int().default(1).describe(\"Page number for pagination (default is 1)\").optional(),\n per_page: z.number().int().default(50).describe(\"Number of items per page (1-100, default is 50)\").optional(),\n});\nexport const RafflysListPromotionsOutput: z.ZodTypeAny = z.object({\n promotions: z.array(z.record(z.string(), z.unknown())).describe(\"List of promotion objects returned by the API\"),\n});\n\nexport const rafflysListPromotions = action(\"RAFFLYS_LIST_PROMOTIONS\", {\n slug: \"rafflys-list-promotions\",\n name: \"List Promotions\",\n description: \"Tool to list all promotions. Use when you need to retrieve available promotions for display or reporting.\",\n input: RafflysListPromotionsInput,\n output: RafflysListPromotionsOutput,\n});\n"],"mappings":";;AAYA,MAAa,wBAAwB,OAAO,2BAA2B;CACrE,MAAM;CACN,MAAM;CACN,aAAa;CACb,OAZsD,EAAE,OAAO;EAC/D,MAAM,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,2CAA2C,CAAC,CAAC,SAAS;EACjG,UAAU,EAAE,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,QAAQ,EAAE,CAAC,CAAC,SAAS,iDAAiD,CAAC,CAAC,SAAS;CAC9G,CASS;CACP,QATuD,EAAE,OAAO,EAChE,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,GAAG,EAAE,QAAQ,CAAC,CAAC,CAAC,CAAC,SAAS,+CAA+C,EACjH,CAOU;AACV,CAAC"}
package/dist/app.cjs ADDED
@@ -0,0 +1,9 @@
1
+ //#region src/app.ts
2
+ const rafflys = (0, require("@keystrokehq/keystroke/app").defineApp)({
3
+ slug: "rafflys",
4
+ auth: "keystroke"
5
+ });
6
+ //#endregion
7
+ exports.rafflys = rafflys;
8
+
9
+ //# sourceMappingURL=app.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.cjs","names":[],"sources":["../src/app.ts"],"sourcesContent":["import { defineApp } from \"@keystrokehq/keystroke/app\";\n\nexport const rafflys = defineApp({\n slug: \"rafflys\",\n auth: \"keystroke\",\n});\n"],"mappings":";AAEA,MAAa,WAAA,uCAAA,CAAA,CAAA,UAAA,CAAoB;CAC/B,MAAM;CACN,MAAM;AACR,CAAC"}
package/dist/app.d.cts ADDED
@@ -0,0 +1,5 @@
1
+ //#region src/app.d.ts
2
+ declare const rafflys: import("@keystrokehq/app").App<import("@keystrokehq/shared").Credential>;
3
+ //#endregion
4
+ export { rafflys };
5
+ //# sourceMappingURL=app.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.d.cts","names":[],"sources":["../src/app.ts"],"mappings":";cAEa,OAAA,6BAAO,GAAA,+BAAA,UAAA"}
package/dist/app.d.mts ADDED
@@ -0,0 +1,5 @@
1
+ //#region src/app.d.ts
2
+ declare const rafflys: import("@keystrokehq/app").App<import("@keystrokehq/shared").Credential>;
3
+ //#endregion
4
+ export { rafflys };
5
+ //# sourceMappingURL=app.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.d.mts","names":[],"sources":["../src/app.ts"],"mappings":";cAEa,OAAA,6BAAO,GAAA,+BAAA,UAAA"}
package/dist/app.mjs ADDED
@@ -0,0 +1,10 @@
1
+ import { defineApp } from "@keystrokehq/keystroke/app";
2
+ //#region src/app.ts
3
+ const rafflys = defineApp({
4
+ slug: "rafflys",
5
+ auth: "keystroke"
6
+ });
7
+ //#endregion
8
+ export { rafflys };
9
+
10
+ //# sourceMappingURL=app.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"app.mjs","names":[],"sources":["../src/app.ts"],"sourcesContent":["import { defineApp } from \"@keystrokehq/keystroke/app\";\n\nexport const rafflys = defineApp({\n slug: \"rafflys\",\n auth: \"keystroke\",\n});\n"],"mappings":";;AAEA,MAAa,UAAU,UAAU;CAC/B,MAAM;CACN,MAAM;AACR,CAAC"}
@@ -0,0 +1,15 @@
1
+ //#region src/catalog.ts
2
+ /** Generated — kept in sync with src/app.ts. */
3
+ const rafflysCatalog = {
4
+ "slug": "rafflys",
5
+ "name": "Rafflys",
6
+ "description": "Rafflys hosts giveaways and contests, enabling brands to engage audiences, grow social reach, and reward participants with automated selection processes",
7
+ "category": "Social Media Marketing",
8
+ "logo": "https://logos.composio.dev/api/rafflys",
9
+ "authKind": "keystroke",
10
+ "oauthScopes": []
11
+ };
12
+ //#endregion
13
+ exports.rafflysCatalog = rafflysCatalog;
14
+
15
+ //# sourceMappingURL=catalog.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.cjs","names":[],"sources":["../src/catalog.ts"],"sourcesContent":["/** Generated — kept in sync with src/app.ts. */\nexport const rafflysCatalog = {\n \"slug\": \"rafflys\",\n \"name\": \"Rafflys\",\n \"description\": \"Rafflys hosts giveaways and contests, enabling brands to engage audiences, grow social reach, and reward participants with automated selection processes\",\n \"category\": \"Social Media Marketing\",\n \"logo\": \"https://logos.composio.dev/api/rafflys\",\n \"authKind\": \"keystroke\",\n \"oauthScopes\": []\n} as const;\n"],"mappings":";;AACA,MAAa,iBAAiB;CAC5B,QAAQ;CACR,QAAQ;CACR,eAAe;CACf,YAAY;CACZ,QAAQ;CACR,YAAY;CACZ,eAAe,CAAC;AAClB"}
@@ -0,0 +1,14 @@
1
+ //#region src/catalog.d.ts
2
+ /** Generated — kept in sync with src/app.ts. */
3
+ declare const rafflysCatalog: {
4
+ readonly slug: "rafflys";
5
+ readonly name: "Rafflys";
6
+ readonly description: "Rafflys hosts giveaways and contests, enabling brands to engage audiences, grow social reach, and reward participants with automated selection processes";
7
+ readonly category: "Social Media Marketing";
8
+ readonly logo: "https://logos.composio.dev/api/rafflys";
9
+ readonly authKind: "keystroke";
10
+ readonly oauthScopes: readonly [];
11
+ };
12
+ //#endregion
13
+ export { rafflysCatalog };
14
+ //# sourceMappingURL=catalog.d.cts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.cts","names":[],"sources":["../src/catalog.ts"],"mappings":";;cACa,cAAA;EAAA"}
@@ -0,0 +1,14 @@
1
+ //#region src/catalog.d.ts
2
+ /** Generated — kept in sync with src/app.ts. */
3
+ declare const rafflysCatalog: {
4
+ readonly slug: "rafflys";
5
+ readonly name: "Rafflys";
6
+ readonly description: "Rafflys hosts giveaways and contests, enabling brands to engage audiences, grow social reach, and reward participants with automated selection processes";
7
+ readonly category: "Social Media Marketing";
8
+ readonly logo: "https://logos.composio.dev/api/rafflys";
9
+ readonly authKind: "keystroke";
10
+ readonly oauthScopes: readonly [];
11
+ };
12
+ //#endregion
13
+ export { rafflysCatalog };
14
+ //# sourceMappingURL=catalog.d.mts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.d.mts","names":[],"sources":["../src/catalog.ts"],"mappings":";;cACa,cAAA;EAAA"}
@@ -0,0 +1,15 @@
1
+ //#region src/catalog.ts
2
+ /** Generated — kept in sync with src/app.ts. */
3
+ const rafflysCatalog = {
4
+ "slug": "rafflys",
5
+ "name": "Rafflys",
6
+ "description": "Rafflys hosts giveaways and contests, enabling brands to engage audiences, grow social reach, and reward participants with automated selection processes",
7
+ "category": "Social Media Marketing",
8
+ "logo": "https://logos.composio.dev/api/rafflys",
9
+ "authKind": "keystroke",
10
+ "oauthScopes": []
11
+ };
12
+ //#endregion
13
+ export { rafflysCatalog };
14
+
15
+ //# sourceMappingURL=catalog.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"catalog.mjs","names":[],"sources":["../src/catalog.ts"],"sourcesContent":["/** Generated — kept in sync with src/app.ts. */\nexport const rafflysCatalog = {\n \"slug\": \"rafflys\",\n \"name\": \"Rafflys\",\n \"description\": \"Rafflys hosts giveaways and contests, enabling brands to engage audiences, grow social reach, and reward participants with automated selection processes\",\n \"category\": \"Social Media Marketing\",\n \"logo\": \"https://logos.composio.dev/api/rafflys\",\n \"authKind\": \"keystroke\",\n \"oauthScopes\": []\n} as const;\n"],"mappings":";;AACA,MAAa,iBAAiB;CAC5B,QAAQ;CACR,QAAQ;CACR,eAAe;CACf,YAAY;CACZ,QAAQ;CACR,YAAY;CACZ,eAAe,CAAC;AAClB"}
@@ -0,0 +1,18 @@
1
+ let _keystrokehq_keystroke_client = require("@keystrokehq/keystroke/client");
2
+ //#region src/execute.ts
3
+ const APP_SLUG = "rafflys";
4
+ /** Pinned app version — updated on regeneration. */
5
+ const APP_VERSION = "20260615_00";
6
+ async function executeRafflysTool(tool, args) {
7
+ const { result } = await (0, _keystrokehq_keystroke_client.createKeystrokeClient)().tools.execute({
8
+ app: APP_SLUG,
9
+ tool,
10
+ arguments: args,
11
+ version: APP_VERSION
12
+ });
13
+ return result;
14
+ }
15
+ //#endregion
16
+ exports.executeRafflysTool = executeRafflysTool;
17
+
18
+ //# sourceMappingURL=execute.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.cjs","names":[],"sources":["../src/execute.ts"],"sourcesContent":["import { createKeystrokeClient } from \"@keystrokehq/keystroke/client\";\n\nconst APP_SLUG = \"rafflys\";\n/** Pinned app version — updated on regeneration. */\nconst APP_VERSION = \"20260615_00\";\n\nexport async function executeRafflysTool(\n tool: string,\n args: Record<string, unknown>,\n): Promise<unknown> {\n const { result } = await createKeystrokeClient().tools.execute({\n app: APP_SLUG,\n tool,\n arguments: args,\n version: APP_VERSION,\n });\n return result;\n}\n"],"mappings":";;AAEA,MAAM,WAAW;;AAEjB,MAAM,cAAc;AAEpB,eAAsB,mBACpB,MACA,MACkB;CAClB,MAAM,EAAE,WAAW,OAAA,GAAA,8BAAA,sBAAA,CAA4B,CAAC,CAAC,MAAM,QAAQ;EAC7D,KAAK;EACL;EACA,WAAW;EACX,SAAS;CACX,CAAC;CACD,OAAO;AACT"}
@@ -0,0 +1,18 @@
1
+ import { createKeystrokeClient } from "@keystrokehq/keystroke/client";
2
+ //#region src/execute.ts
3
+ const APP_SLUG = "rafflys";
4
+ /** Pinned app version — updated on regeneration. */
5
+ const APP_VERSION = "20260615_00";
6
+ async function executeRafflysTool(tool, args) {
7
+ const { result } = await createKeystrokeClient().tools.execute({
8
+ app: APP_SLUG,
9
+ tool,
10
+ arguments: args,
11
+ version: APP_VERSION
12
+ });
13
+ return result;
14
+ }
15
+ //#endregion
16
+ export { executeRafflysTool };
17
+
18
+ //# sourceMappingURL=execute.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"execute.mjs","names":[],"sources":["../src/execute.ts"],"sourcesContent":["import { createKeystrokeClient } from \"@keystrokehq/keystroke/client\";\n\nconst APP_SLUG = \"rafflys\";\n/** Pinned app version — updated on regeneration. */\nconst APP_VERSION = \"20260615_00\";\n\nexport async function executeRafflysTool(\n tool: string,\n args: Record<string, unknown>,\n): Promise<unknown> {\n const { result } = await createKeystrokeClient().tools.execute({\n app: APP_SLUG,\n tool,\n arguments: args,\n version: APP_VERSION,\n });\n return result;\n}\n"],"mappings":";;AAEA,MAAM,WAAW;;AAEjB,MAAM,cAAc;AAEpB,eAAsB,mBACpB,MACA,MACkB;CAClB,MAAM,EAAE,WAAW,MAAM,sBAAsB,CAAC,CAAC,MAAM,QAAQ;EAC7D,KAAK;EACL;EACA,WAAW;EACX,SAAS;CACX,CAAC;CACD,OAAO;AACT"}
package/dist/index.cjs ADDED
@@ -0,0 +1,10 @@
1
+ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
2
+ const require_app = require("./app.cjs");
3
+ const require_catalog = require("./catalog.cjs");
4
+ const require_get_current_user = require("./actions/get-current-user.cjs");
5
+ const require_list_promotions = require("./actions/list-promotions.cjs");
6
+ require("./actions/index.cjs");
7
+ exports.rafflys = require_app.rafflys;
8
+ exports.rafflysCatalog = require_catalog.rafflysCatalog;
9
+ exports.rafflysGetCurrentUser = require_get_current_user.rafflysGetCurrentUser;
10
+ exports.rafflysListPromotions = require_list_promotions.rafflysListPromotions;
@@ -0,0 +1,5 @@
1
+ import { rafflysGetCurrentUser } from "./actions/get-current-user.cjs";
2
+ import { rafflysListPromotions } from "./actions/list-promotions.cjs";
3
+ import { rafflys } from "./app.cjs";
4
+ import { rafflysCatalog } from "./catalog.cjs";
5
+ export { rafflys, rafflysCatalog, rafflysGetCurrentUser, rafflysListPromotions };
@@ -0,0 +1,5 @@
1
+ import { rafflysGetCurrentUser } from "./actions/get-current-user.mjs";
2
+ import { rafflysListPromotions } from "./actions/list-promotions.mjs";
3
+ import { rafflys } from "./app.mjs";
4
+ import { rafflysCatalog } from "./catalog.mjs";
5
+ export { rafflys, rafflysCatalog, rafflysGetCurrentUser, rafflysListPromotions };
package/dist/index.mjs ADDED
@@ -0,0 +1,6 @@
1
+ import { rafflys } from "./app.mjs";
2
+ import { rafflysCatalog } from "./catalog.mjs";
3
+ import { rafflysGetCurrentUser } from "./actions/get-current-user.mjs";
4
+ import { rafflysListPromotions } from "./actions/list-promotions.mjs";
5
+ import "./actions/index.mjs";
6
+ export { rafflys, rafflysCatalog, rafflysGetCurrentUser, rafflysListPromotions };
package/package.json ADDED
@@ -0,0 +1,49 @@
1
+ {
2
+ "name": "@keystrokehq/rafflys",
3
+ "version": "0.1.0",
4
+ "publishConfig": {
5
+ "access": "public",
6
+ "registry": "https://registry.npmjs.org"
7
+ },
8
+ "repository": {
9
+ "type": "git",
10
+ "url": "git+https://github.com/keystrokehq/keystroke.git",
11
+ "directory": "packages/integrations/rafflys"
12
+ },
13
+ "files": [
14
+ "dist"
15
+ ],
16
+ "sideEffects": false,
17
+ "type": "module",
18
+ "main": "./dist/index.cjs",
19
+ "module": "./dist/index.mjs",
20
+ "types": "./dist/index.d.mts",
21
+ "exports": {
22
+ ".": {
23
+ "types": "./dist/index.d.mts",
24
+ "import": "./dist/index.mjs",
25
+ "require": "./dist/index.cjs"
26
+ },
27
+ "./actions": {
28
+ "types": "./dist/actions/index.d.mts",
29
+ "import": "./dist/actions/index.mjs",
30
+ "require": "./dist/actions/index.cjs"
31
+ }
32
+ },
33
+ "peerDependencies": {
34
+ "@keystrokehq/keystroke": "^0.1.4",
35
+ "zod": "^4.4.3"
36
+ },
37
+ "devDependencies": {
38
+ "@keystrokehq/keystroke": "link:../../keystroke",
39
+ "@types/node": "^25.9.1",
40
+ "tsdown": "^0.22.0",
41
+ "typescript": "^6.0.3",
42
+ "zod": "^4.4.3"
43
+ },
44
+ "scripts": {
45
+ "build": "tsdown",
46
+ "dev": "tsdown --watch --no-clean",
47
+ "typecheck": "tsc --noEmit"
48
+ }
49
+ }