@pikku/addon-meta-conversions 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.
Files changed (140) hide show
  1. package/README.md +15 -0
  2. package/dist/.pikku/addon/pikku-addon-types.gen.d.ts +65 -0
  3. package/dist/.pikku/addon/pikku-addon-types.gen.d.ts.map +1 -0
  4. package/dist/.pikku/addon/pikku-addon-types.gen.js +74 -0
  5. package/dist/.pikku/addon/pikku-addon-types.gen.js.map +1 -0
  6. package/dist/.pikku/addon/pikku-addon-types.gen.ts +100 -0
  7. package/dist/.pikku/addon/pikku-package.gen.d.ts +2 -0
  8. package/dist/.pikku/addon/pikku-package.gen.d.ts.map +1 -0
  9. package/dist/.pikku/addon/pikku-package.gen.js +9 -0
  10. package/dist/.pikku/addon/pikku-package.gen.js.map +1 -0
  11. package/dist/.pikku/addon/pikku-package.gen.ts +9 -0
  12. package/dist/.pikku/agent/pikku-agent-map.gen.d.ts +16 -0
  13. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts +47 -0
  14. package/dist/.pikku/agent/pikku-agent-types.gen.d.ts.map +1 -0
  15. package/dist/.pikku/agent/pikku-agent-types.gen.js +18 -0
  16. package/dist/.pikku/agent/pikku-agent-types.gen.js.map +1 -0
  17. package/dist/.pikku/agent/pikku-agent-types.gen.ts +76 -0
  18. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.d.ts +2 -0
  19. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.d.ts.map +1 -0
  20. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.js +7 -0
  21. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.js.map +1 -0
  22. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.json +3 -0
  23. package/dist/.pikku/agent/pikku-agent-wirings-meta.gen.ts +7 -0
  24. package/dist/.pikku/agent/pikku-agent-wirings.gen.d.ts +5 -0
  25. package/dist/.pikku/agent/pikku-agent-wirings.gen.d.ts.map +1 -0
  26. package/dist/.pikku/agent/pikku-agent-wirings.gen.js +5 -0
  27. package/dist/.pikku/agent/pikku-agent-wirings.gen.js.map +1 -0
  28. package/dist/.pikku/agent/pikku-agent-wirings.gen.ts +3 -0
  29. package/dist/.pikku/console/pikku-addon-meta.gen.json +33 -0
  30. package/dist/.pikku/console/pikku-node-types.gen.d.ts +7 -0
  31. package/dist/.pikku/console/pikku-node-types.gen.d.ts.map +1 -0
  32. package/dist/.pikku/console/pikku-node-types.gen.js +2 -0
  33. package/dist/.pikku/console/pikku-node-types.gen.js.map +1 -0
  34. package/dist/.pikku/console/pikku-node-types.gen.ts +8 -0
  35. package/dist/.pikku/function/pikku-function-types.gen.d.ts +506 -0
  36. package/dist/.pikku/function/pikku-function-types.gen.d.ts.map +1 -0
  37. package/dist/.pikku/function/pikku-function-types.gen.js +314 -0
  38. package/dist/.pikku/function/pikku-function-types.gen.js.map +1 -0
  39. package/dist/.pikku/function/pikku-function-types.gen.ts +686 -0
  40. package/dist/.pikku/function/pikku-functions-meta-verbose.gen.json +28 -0
  41. package/dist/.pikku/function/pikku-functions-meta.gen.d.ts +2 -0
  42. package/dist/.pikku/function/pikku-functions-meta.gen.d.ts.map +1 -0
  43. package/dist/.pikku/function/pikku-functions-meta.gen.js +7 -0
  44. package/dist/.pikku/function/pikku-functions-meta.gen.js.map +1 -0
  45. package/dist/.pikku/function/pikku-functions-meta.gen.json +20 -0
  46. package/dist/.pikku/function/pikku-functions-meta.gen.ts +7 -0
  47. package/dist/.pikku/function/pikku-functions.gen.d.ts +2 -0
  48. package/dist/.pikku/function/pikku-functions.gen.d.ts.map +1 -0
  49. package/dist/.pikku/function/pikku-functions.gen.js +8 -0
  50. package/dist/.pikku/function/pikku-functions.gen.js.map +1 -0
  51. package/dist/.pikku/function/pikku-functions.gen.ts +8 -0
  52. package/dist/.pikku/pikku-bootstrap.gen.d.ts +7 -0
  53. package/dist/.pikku/pikku-bootstrap.gen.d.ts.map +1 -0
  54. package/dist/.pikku/pikku-bootstrap.gen.js +17 -0
  55. package/dist/.pikku/pikku-bootstrap.gen.js.map +1 -0
  56. package/dist/.pikku/pikku-bootstrap.gen.ts +15 -0
  57. package/dist/.pikku/pikku-services.gen.d.ts +28 -0
  58. package/dist/.pikku/pikku-services.gen.d.ts.map +1 -0
  59. package/dist/.pikku/pikku-services.gen.js +23 -0
  60. package/dist/.pikku/pikku-services.gen.js.map +1 -0
  61. package/dist/.pikku/pikku-services.gen.ts +35 -0
  62. package/dist/.pikku/pikku-types.gen.d.ts +12 -0
  63. package/dist/.pikku/pikku-types.gen.d.ts.map +1 -0
  64. package/dist/.pikku/pikku-types.gen.js +17 -0
  65. package/dist/.pikku/pikku-types.gen.js.map +1 -0
  66. package/dist/.pikku/pikku-types.gen.ts +21 -0
  67. package/dist/.pikku/rpc/pikku-rpc-wirings-map.gen.d.ts +115 -0
  68. package/dist/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +116 -0
  69. package/dist/.pikku/schemas/register.gen.d.ts +2 -0
  70. package/dist/.pikku/schemas/register.gen.d.ts.map +1 -0
  71. package/dist/.pikku/schemas/register.gen.js +11 -0
  72. package/dist/.pikku/schemas/register.gen.js.map +1 -0
  73. package/dist/.pikku/schemas/register.gen.ts +15 -0
  74. package/dist/.pikku/schemas/schemas/EventSendInput.schema.json +1 -0
  75. package/dist/.pikku/schemas/schemas/EventSendOutput.schema.json +1 -0
  76. package/dist/.pikku/schemas/schemas/SecretSchema_metaConversions.schema.json +1 -0
  77. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +6 -0
  78. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts.map +1 -0
  79. package/dist/.pikku/secrets/pikku-secret-types.gen.js +5 -0
  80. package/dist/.pikku/secrets/pikku-secret-types.gen.js.map +1 -0
  81. package/dist/.pikku/secrets/pikku-secret-types.gen.ts +5 -0
  82. package/dist/.pikku/secrets/pikku-secrets-meta.gen.json +10 -0
  83. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +15 -0
  84. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts.map +1 -0
  85. package/dist/.pikku/secrets/pikku-secrets.gen.js +13 -0
  86. package/dist/.pikku/secrets/pikku-secrets.gen.js.map +1 -0
  87. package/dist/.pikku/secrets/pikku-secrets.gen.ts +23 -0
  88. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +114 -0
  89. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts.map +1 -0
  90. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +34 -0
  91. package/dist/.pikku/trigger/pikku-trigger-types.gen.js.map +1 -0
  92. package/dist/.pikku/trigger/pikku-trigger-types.gen.ts +160 -0
  93. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +6 -0
  94. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts.map +1 -0
  95. package/dist/.pikku/variables/pikku-variable-types.gen.js +5 -0
  96. package/dist/.pikku/variables/pikku-variable-types.gen.js.map +1 -0
  97. package/dist/.pikku/variables/pikku-variable-types.gen.ts +5 -0
  98. package/dist/.pikku/variables/pikku-variables-meta.gen.json +1 -0
  99. package/dist/.pikku/variables/pikku-variables.gen.d.ts +12 -0
  100. package/dist/.pikku/variables/pikku-variables.gen.d.ts.map +1 -0
  101. package/dist/.pikku/variables/pikku-variables.gen.js +11 -0
  102. package/dist/.pikku/variables/pikku-variables.gen.js.map +1 -0
  103. package/dist/.pikku/variables/pikku-variables.gen.ts +21 -0
  104. package/dist/.pikku/workflow/pikku-workflow-map.gen.d.ts +34 -0
  105. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +81 -0
  106. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts.map +1 -0
  107. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +31 -0
  108. package/dist/.pikku/workflow/pikku-workflow-types.gen.js.map +1 -0
  109. package/dist/.pikku/workflow/pikku-workflow-types.gen.ts +158 -0
  110. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.d.ts +2 -0
  111. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.d.ts.map +1 -0
  112. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +7 -0
  113. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js.map +1 -0
  114. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.ts +9 -0
  115. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +5 -0
  116. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts.map +1 -0
  117. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +5 -0
  118. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js.map +1 -0
  119. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.ts +3 -0
  120. package/dist/src/functions/events/send.function.d.ts +109 -0
  121. package/dist/src/functions/events/send.function.d.ts.map +1 -0
  122. package/dist/src/functions/events/send.function.js +43 -0
  123. package/dist/src/functions/events/send.function.js.map +1 -0
  124. package/dist/src/index.d.ts +2 -0
  125. package/dist/src/index.d.ts.map +1 -0
  126. package/dist/src/index.js +3 -0
  127. package/dist/src/index.js.map +1 -0
  128. package/dist/src/meta-conversions-api.service.d.ts +23 -0
  129. package/dist/src/meta-conversions-api.service.d.ts.map +1 -0
  130. package/dist/src/meta-conversions-api.service.js +29 -0
  131. package/dist/src/meta-conversions-api.service.js.map +1 -0
  132. package/dist/src/meta-conversions.secret.d.ts +7 -0
  133. package/dist/src/meta-conversions.secret.d.ts.map +1 -0
  134. package/dist/src/meta-conversions.secret.js +14 -0
  135. package/dist/src/meta-conversions.secret.js.map +1 -0
  136. package/dist/src/services.d.ts +2 -0
  137. package/dist/src/services.d.ts.map +1 -0
  138. package/dist/src/services.js +8 -0
  139. package/dist/src/services.js.map +1 -0
  140. package/package.json +37 -0
@@ -0,0 +1,158 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.6
3
+ */
4
+ import { WorkflowCancelledException } from '@pikku/core/workflow'
5
+ import {
6
+ workflow as coreWorkflow,
7
+ workflowStart as coreWorkflowStart,
8
+ workflowStatus as coreWorkflowStatus,
9
+ graphStart as coreGraphStart,
10
+ } from '@pikku/core/workflow'
11
+ import { template } from '@pikku/core/workflow'
12
+ import {
13
+ pikkuWorkflowGraph as corePikkuWorkflowGraph,
14
+ type PikkuWorkflowGraphConfig,
15
+ type PikkuWorkflowGraphResult,
16
+ } from '@pikku/core/workflow'
17
+ import type { PikkuWorkflowWire, WorkflowStepOptions } from '@pikku/core/workflow'
18
+
19
+ export { WorkflowCancelledException }
20
+ import type { PikkuFunctionSessionless, PikkuFunctionConfig } from '../function/pikku-function-types.gen.js'
21
+ import type { RPCMap, FlattenedRPCMap } from '../rpc/pikku-rpc-wirings-map.internal.gen.d.js'
22
+ import type { WorkflowMap, GraphsMap } from './pikku-workflow-map.gen.d.js'
23
+
24
+ export { template }
25
+
26
+ export interface TypedWorkflow extends PikkuWorkflowWire {
27
+ do<K extends keyof RPCMap>(
28
+ stepName: string,
29
+ rpcName: K,
30
+ data: RPCMap[K]['input'],
31
+ options?: WorkflowStepOptions
32
+ ): Promise<RPCMap[K]['output']>
33
+
34
+ do<T>(
35
+ stepName: string,
36
+ fn: () => T | Promise<T>,
37
+ options?: WorkflowStepOptions
38
+ ): Promise<T>
39
+ }
40
+
41
+ export type PikkuFunctionWorkflow<
42
+ In = unknown,
43
+ Out = never
44
+ > = PikkuFunctionSessionless<In, Out, 'workflow'>
45
+
46
+ export const pikkuWorkflowFunc = <In, Out = unknown>(
47
+ func:
48
+ | PikkuFunctionWorkflow<In, Out>
49
+ | PikkuFunctionConfig<In, Out, 'workflow', PikkuFunctionWorkflow<In, Out>>
50
+ ) => {
51
+ return typeof func === 'function' ? { func } : func
52
+ }
53
+
54
+ export const pikkuWorkflowComplexFunc = <In, Out = unknown>(
55
+ func:
56
+ | PikkuFunctionWorkflow<In, Out>
57
+ | PikkuFunctionConfig<In, Out, 'workflow', PikkuFunctionWorkflow<In, Out>>
58
+ ) => {
59
+ return typeof func === 'function' ? { func } : func
60
+ }
61
+
62
+ type TypedRef<T> = { $ref: string; path?: string } & { __phantomType?: T }
63
+
64
+ type TemplateString = {
65
+ $template: {
66
+ parts: string[]
67
+ expressions: Array<{ $ref: string; path?: string }>
68
+ }
69
+ } & { __brand: 'TemplateString' }
70
+
71
+ type InputWithRefs<T> = {
72
+ [K in keyof T]?: T[K] | TypedRef<T[K]> | TypedRef<unknown> | TemplateString
73
+ }
74
+
75
+ type NodeInputType<FuncMap extends Record<string, string>, K extends keyof FuncMap> =
76
+ FuncMap[K] extends keyof FlattenedRPCMap
77
+ ? InputWithRefs<FlattenedRPCMap[FuncMap[K]]['input']>
78
+ : Record<string, unknown>
79
+
80
+ type NodeOutputKeys<FuncMap extends Record<string, string>, N extends string> =
81
+ N extends keyof FuncMap
82
+ ? FuncMap[N] extends keyof FlattenedRPCMap
83
+ ? keyof FlattenedRPCMap[FuncMap[N]]['output'] & string
84
+ : string
85
+ : string
86
+
87
+ type RefFunction<FuncMap extends Record<string, string>> = {
88
+ <N extends Extract<keyof FuncMap, string>>(
89
+ nodeId: N,
90
+ path: NodeOutputKeys<FuncMap, N>
91
+ ): TypedRef<unknown>
92
+ (nodeId: 'trigger' | '$item', path?: string): TypedRef<unknown>
93
+ }
94
+
95
+ type TemplateFunction = (templateStr: string, refs: TypedRef<unknown>[]) => TemplateString
96
+
97
+ type GraphNodeConfigMap<FuncMap extends Record<string, string>> = {
98
+ [K in Extract<keyof FuncMap, string>]?: {
99
+ next?: NextConfig<Extract<keyof FuncMap, string>>
100
+ input?:
101
+ | NodeInputType<FuncMap, K>
102
+ | (() => NodeInputType<FuncMap, K>)
103
+ | ((ref: RefFunction<FuncMap>, template: TemplateFunction) => NodeInputType<FuncMap, K>)
104
+ onError?: Extract<keyof FuncMap, string> | Extract<keyof FuncMap, string>[]
105
+ }
106
+ }
107
+
108
+ type NextConfig<NodeIds extends string> = NodeIds | NodeIds[] | { if: string; then: NodeIds; else?: NodeIds }
109
+
110
+ export function pikkuWorkflowGraph<
111
+ const FuncMap extends Record<string, keyof FlattenedRPCMap & string>
112
+ >(
113
+ config: PikkuWorkflowGraphConfig<FuncMap, GraphNodeConfigMap<FuncMap>>
114
+ ): PikkuWorkflowGraphResult {
115
+ return corePikkuWorkflowGraph(config as any)
116
+ }
117
+
118
+ export const workflow = <Name extends keyof WorkflowMap>(
119
+ workflowName: Name,
120
+ options?: { pollIntervalMs?: number }
121
+ ) => {
122
+ return coreWorkflow<WorkflowMap>(workflowName as string & keyof WorkflowMap, options) as PikkuFunctionConfig<
123
+ WorkflowMap[Name]['input'],
124
+ WorkflowMap[Name]['output'],
125
+ 'session' | 'rpc'
126
+ >
127
+ }
128
+
129
+ export const workflowStart = <Name extends keyof WorkflowMap>(
130
+ workflowName: Name
131
+ ) => {
132
+ return coreWorkflowStart<WorkflowMap>(workflowName as string & keyof WorkflowMap) as PikkuFunctionConfig<
133
+ WorkflowMap[Name]['input'],
134
+ { runId: string },
135
+ 'session' | 'rpc'
136
+ >
137
+ }
138
+
139
+ export const workflowStatus = <Name extends keyof WorkflowMap>(
140
+ _workflowName: Name
141
+ ) => {
142
+ return coreWorkflowStatus<WorkflowMap>(_workflowName as string & keyof WorkflowMap) as PikkuFunctionConfig<
143
+ { runId: string },
144
+ { id: string; status: 'running' | 'completed' | 'failed' | 'cancelled'; output?: WorkflowMap[Name]['output']; error?: { message?: string } },
145
+ 'session' | 'rpc'
146
+ >
147
+ }
148
+
149
+ export const graphStart = <Name extends keyof GraphsMap, Node extends string & keyof GraphsMap[Name]>(
150
+ graphName: Name,
151
+ startNode: Node
152
+ ) => {
153
+ return coreGraphStart<GraphsMap>(graphName as string & keyof GraphsMap, startNode as string) as PikkuFunctionConfig<
154
+ GraphsMap[Name][Node] extends { input: infer I } ? I : never,
155
+ { runId: string },
156
+ 'session' | 'rpc'
157
+ >
158
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=pikku-workflow-wirings-meta.gen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pikku-workflow-wirings-meta.gen.d.ts","sourceRoot":"","sources":["../../../.pikku/workflow/pikku-workflow-wirings-meta.gen.ts"],"names":[],"mappings":""}
@@ -0,0 +1,7 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.6
3
+ */
4
+ import { pikkuState } from '@pikku/core/internal';
5
+ const workflowsMeta = {};
6
+ pikkuState('@pikku/addon-meta-conversions', 'workflows', 'meta', workflowsMeta);
7
+ //# sourceMappingURL=pikku-workflow-wirings-meta.gen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pikku-workflow-wirings-meta.gen.js","sourceRoot":"","sources":["../../../.pikku/workflow/pikku-workflow-wirings-meta.gen.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAGjD,MAAM,aAAa,GAA6B,EAAE,CAAA;AAElD,UAAU,CAAC,+BAA+B,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,CAAA"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.6
3
+ */
4
+ import { pikkuState } from '@pikku/core/internal'
5
+ import type { SerializedWorkflowGraphs } from '@pikku/inspector/workflow-graph'
6
+
7
+ const workflowsMeta: SerializedWorkflowGraphs = {}
8
+
9
+ pikkuState('@pikku/addon-meta-conversions', 'workflows', 'meta', workflowsMeta)
@@ -0,0 +1,5 @@
1
+ export {};
2
+ /**
3
+ * This file was generated by @pikku/cli@0.12.6
4
+ */
5
+ //# sourceMappingURL=pikku-workflow-wirings.gen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pikku-workflow-wirings.gen.d.ts","sourceRoot":"","sources":["../../../.pikku/workflow/pikku-workflow-wirings.gen.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1,5 @@
1
+ export {};
2
+ /**
3
+ * This file was generated by @pikku/cli@0.12.6
4
+ */
5
+ //# sourceMappingURL=pikku-workflow-wirings.gen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pikku-workflow-wirings.gen.js","sourceRoot":"","sources":["../../../.pikku/workflow/pikku-workflow-wirings.gen.ts"],"names":[],"mappings":";AAAA;;GAEG"}
@@ -0,0 +1,3 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.6
3
+ */
@@ -0,0 +1,109 @@
1
+ import { z } from 'zod';
2
+ export declare const ActionSourceEnum: z.ZodEnum<{
3
+ website: "website";
4
+ email: "email";
5
+ app: "app";
6
+ phone_call: "phone_call";
7
+ chat: "chat";
8
+ physical_store: "physical_store";
9
+ system_generated: "system_generated";
10
+ other: "other";
11
+ }>;
12
+ export declare const UserDataSchema: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
13
+ export declare const CustomDataSchema: z.ZodRecord<z.ZodString, z.ZodUnknown>;
14
+ export declare const MetaEventSchema: z.ZodObject<{
15
+ event_name: z.ZodString;
16
+ event_time: z.ZodNumber;
17
+ event_id: z.ZodOptional<z.ZodString>;
18
+ event_source_url: z.ZodOptional<z.ZodString>;
19
+ action_source: z.ZodEnum<{
20
+ website: "website";
21
+ email: "email";
22
+ app: "app";
23
+ phone_call: "phone_call";
24
+ chat: "chat";
25
+ physical_store: "physical_store";
26
+ system_generated: "system_generated";
27
+ other: "other";
28
+ }>;
29
+ user_data: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
30
+ custom_data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
31
+ opt_out: z.ZodOptional<z.ZodBoolean>;
32
+ }, z.core.$strip>;
33
+ export declare const EventSendInput: z.ZodObject<{
34
+ data: z.ZodArray<z.ZodObject<{
35
+ event_name: z.ZodString;
36
+ event_time: z.ZodNumber;
37
+ event_id: z.ZodOptional<z.ZodString>;
38
+ event_source_url: z.ZodOptional<z.ZodString>;
39
+ action_source: z.ZodEnum<{
40
+ website: "website";
41
+ email: "email";
42
+ app: "app";
43
+ phone_call: "phone_call";
44
+ chat: "chat";
45
+ physical_store: "physical_store";
46
+ system_generated: "system_generated";
47
+ other: "other";
48
+ }>;
49
+ user_data: z.ZodRecord<z.ZodString, z.ZodUnion<readonly [z.ZodString, z.ZodArray<z.ZodString>]>>;
50
+ custom_data: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
51
+ opt_out: z.ZodOptional<z.ZodBoolean>;
52
+ }, z.core.$strip>>;
53
+ test_event_code: z.ZodOptional<z.ZodString>;
54
+ }, z.core.$strip>;
55
+ export declare const EventSendOutput: z.ZodObject<{
56
+ events_received: z.ZodNumber;
57
+ messages: z.ZodArray<z.ZodString>;
58
+ fbtrace_id: z.ZodString;
59
+ }, z.core.$strip>;
60
+ export declare const eventSend: import("#pikku").PikkuFunctionConfig<{
61
+ data: {
62
+ event_name: string;
63
+ event_time: number;
64
+ action_source: "website" | "email" | "app" | "phone_call" | "chat" | "physical_store" | "system_generated" | "other";
65
+ user_data: Record<string, string | string[]>;
66
+ event_id?: string | undefined;
67
+ event_source_url?: string | undefined;
68
+ custom_data?: Record<string, unknown> | undefined;
69
+ opt_out?: boolean | undefined;
70
+ }[];
71
+ test_event_code?: string | undefined;
72
+ }, {
73
+ events_received: number;
74
+ messages: string[];
75
+ fbtrace_id: string;
76
+ }, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<{
77
+ data: {
78
+ event_name: string;
79
+ event_time: number;
80
+ action_source: "website" | "email" | "app" | "phone_call" | "chat" | "physical_store" | "system_generated" | "other";
81
+ user_data: Record<string, string | string[]>;
82
+ event_id?: string | undefined;
83
+ event_source_url?: string | undefined;
84
+ custom_data?: Record<string, unknown> | undefined;
85
+ opt_out?: boolean | undefined;
86
+ }[];
87
+ test_event_code?: string | undefined;
88
+ }, {
89
+ events_received: number;
90
+ messages: string[];
91
+ fbtrace_id: string;
92
+ }, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<{
93
+ data: {
94
+ event_name: string;
95
+ event_time: number;
96
+ action_source: "website" | "email" | "app" | "phone_call" | "chat" | "physical_store" | "system_generated" | "other";
97
+ user_data: Record<string, string | string[]>;
98
+ event_id?: string | undefined;
99
+ event_source_url?: string | undefined;
100
+ custom_data?: Record<string, unknown> | undefined;
101
+ opt_out?: boolean | undefined;
102
+ }[];
103
+ test_event_code?: string | undefined;
104
+ }, {
105
+ events_received: number;
106
+ messages: string[];
107
+ fbtrace_id: string;
108
+ }, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
109
+ //# sourceMappingURL=send.function.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send.function.d.ts","sourceRoot":"","sources":["../../../../src/functions/events/send.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,gBAAgB;;;;;;;;;EAG3B,CAAA;AAEF,eAAO,MAAM,cAAc,uFACoH,CAAA;AAE/I,eAAO,MAAM,gBAAgB,wCAC2E,CAAA;AAExG,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;iBAS1B,CAAA;AAEF,eAAO,MAAM,cAAc;;;;;;;;;;;;;;;;;;;;;iBAGzB,CAAA;AAEF,eAAO,MAAM,eAAe;;;;iBAI1B,CAAA;AAIF,eAAO,MAAM,SAAS;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;uEAYpB,CAAA"}
@@ -0,0 +1,43 @@
1
+ import { z } from 'zod';
2
+ import { pikkuSessionlessFunc } from '#pikku';
3
+ export const ActionSourceEnum = z.enum([
4
+ 'website', 'email', 'app', 'phone_call', 'chat',
5
+ 'physical_store', 'system_generated', 'other',
6
+ ]);
7
+ export const UserDataSchema = z.record(z.string(), z.union([z.string(), z.array(z.string())]))
8
+ .describe('Hashed user data for matching (em, ph, fn, ln, ct, st, zp, country, external_id, client_ip_address, client_user_agent, fbc, fbp)');
9
+ export const CustomDataSchema = z.record(z.string(), z.unknown())
10
+ .describe('Custom event data (value, currency, content_name, content_ids, contents, num_items, etc.)');
11
+ export const MetaEventSchema = z.object({
12
+ event_name: z.string().describe('Standard or custom event name (e.g., Purchase, Lead, AddToCart, PageView, ViewContent)'),
13
+ event_time: z.number().describe('Unix timestamp in seconds when the event occurred'),
14
+ event_id: z.string().optional().describe('Unique event ID for deduplication with browser pixel events'),
15
+ event_source_url: z.string().optional().describe('URL where the event occurred'),
16
+ action_source: ActionSourceEnum.describe('Where the conversion occurred'),
17
+ user_data: UserDataSchema,
18
+ custom_data: CustomDataSchema.optional(),
19
+ opt_out: z.boolean().optional().describe('If true, event is used for attribution but not ad delivery optimization'),
20
+ });
21
+ export const EventSendInput = z.object({
22
+ data: z.array(MetaEventSchema).min(1).describe('Array of server events to send (max 1000 per request)'),
23
+ test_event_code: z.string().optional().describe('Test event code from Events Manager for testing without affecting production data'),
24
+ });
25
+ export const EventSendOutput = z.object({
26
+ events_received: z.number().describe('Number of events received by Meta'),
27
+ messages: z.array(z.string()).describe('Diagnostic messages from the API'),
28
+ fbtrace_id: z.string().describe('Trace ID for debugging with Meta support'),
29
+ });
30
+ export const eventSend = pikkuSessionlessFunc({
31
+ description: 'Send server-side conversion events to Meta via the Conversions API',
32
+ node: {
33
+ displayName: 'Send Event',
34
+ category: 'Events',
35
+ type: 'action',
36
+ },
37
+ input: EventSendInput,
38
+ output: EventSendOutput,
39
+ func: async ({ metaConversions }, { data, test_event_code }) => {
40
+ return await metaConversions.sendEvents(data, test_event_code);
41
+ },
42
+ });
43
+ //# sourceMappingURL=send.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"send.function.js","sourceRoot":"","sources":["../../../../src/functions/events/send.function.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export { eventSend } from './functions/events/send.function.js';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAA"}
@@ -0,0 +1,3 @@
1
+ // Meta Conversions functions - Events
2
+ export { eventSend } from './functions/events/send.function.js';
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,sCAAsC;AACtC,OAAO,EAAE,SAAS,EAAE,MAAM,qCAAqC,CAAA"}
@@ -0,0 +1,23 @@
1
+ import type { MetaConversionsSecrets } from './meta-conversions.secret.js';
2
+ export interface MetaEvent {
3
+ event_name: string;
4
+ event_time: number;
5
+ event_id?: string;
6
+ event_source_url?: string;
7
+ action_source: 'website' | 'email' | 'app' | 'phone_call' | 'chat' | 'physical_store' | 'system_generated' | 'other';
8
+ user_data: Record<string, string | string[] | undefined>;
9
+ custom_data?: Record<string, unknown>;
10
+ opt_out?: boolean;
11
+ }
12
+ export interface MetaSendEventsResponse {
13
+ events_received: number;
14
+ messages: string[];
15
+ fbtrace_id: string;
16
+ }
17
+ export declare class MetaConversionsService {
18
+ private pixelId;
19
+ private accessToken;
20
+ constructor(secrets: MetaConversionsSecrets);
21
+ sendEvents(events: MetaEvent[], testEventCode?: string): Promise<MetaSendEventsResponse>;
22
+ }
23
+ //# sourceMappingURL=meta-conversions-api.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta-conversions-api.service.d.ts","sourceRoot":"","sources":["../../src/meta-conversions-api.service.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,8BAA8B,CAAA;AAK1E,MAAM,WAAW,SAAS;IACxB,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAA;IACjB,gBAAgB,CAAC,EAAE,MAAM,CAAA;IACzB,aAAa,EAAE,SAAS,GAAG,OAAO,GAAG,KAAK,GAAG,YAAY,GAAG,MAAM,GAAG,gBAAgB,GAAG,kBAAkB,GAAG,OAAO,CAAA;IACpH,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC,CAAA;IACxD,WAAW,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAA;IACrC,OAAO,CAAC,EAAE,OAAO,CAAA;CAClB;AAED,MAAM,WAAW,sBAAsB;IACrC,eAAe,EAAE,MAAM,CAAA;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,qBAAa,sBAAsB;IACjC,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,WAAW,CAAQ;gBAEf,OAAO,EAAE,sBAAsB;IAKrC,UAAU,CAAC,MAAM,EAAE,SAAS,EAAE,EAAE,aAAa,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,CAAC;CAwB/F"}
@@ -0,0 +1,29 @@
1
+ const BASE_URL = 'https://graph.facebook.com';
2
+ const API_VERSION = 'v21.0';
3
+ export class MetaConversionsService {
4
+ constructor(secrets) {
5
+ this.pixelId = secrets.pixelId;
6
+ this.accessToken = secrets.accessToken;
7
+ }
8
+ async sendEvents(events, testEventCode) {
9
+ const url = `${BASE_URL}/${API_VERSION}/${this.pixelId}/events`;
10
+ const body = {
11
+ data: events,
12
+ access_token: this.accessToken,
13
+ };
14
+ if (testEventCode) {
15
+ body.test_event_code = testEventCode;
16
+ }
17
+ const response = await fetch(url, {
18
+ method: 'POST',
19
+ headers: { 'Content-Type': 'application/json' },
20
+ body: JSON.stringify(body),
21
+ });
22
+ if (!response.ok) {
23
+ const errorText = await response.text();
24
+ throw new Error(`Meta Conversions API error (${response.status}): ${errorText}`);
25
+ }
26
+ return response.json();
27
+ }
28
+ }
29
+ //# sourceMappingURL=meta-conversions-api.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta-conversions-api.service.js","sourceRoot":"","sources":["../../src/meta-conversions-api.service.ts"],"names":[],"mappings":"AAEA,MAAM,QAAQ,GAAG,4BAA4B,CAAA;AAC7C,MAAM,WAAW,GAAG,OAAO,CAAA;AAmB3B,MAAM,OAAO,sBAAsB;IAIjC,YAAY,OAA+B;QACzC,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC,OAAO,CAAA;QAC9B,IAAI,CAAC,WAAW,GAAG,OAAO,CAAC,WAAW,CAAA;IACxC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,MAAmB,EAAE,aAAsB;QAC1D,MAAM,GAAG,GAAG,GAAG,QAAQ,IAAI,WAAW,IAAI,IAAI,CAAC,OAAO,SAAS,CAAA;QAE/D,MAAM,IAAI,GAA4B;YACpC,IAAI,EAAE,MAAM;YACZ,YAAY,EAAE,IAAI,CAAC,WAAW;SAC/B,CAAA;QACD,IAAI,aAAa,EAAE,CAAC;YAClB,IAAI,CAAC,eAAe,GAAG,aAAa,CAAA;QACtC,CAAC;QAED,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;YAChC,MAAM,EAAE,MAAM;YACd,OAAO,EAAE,EAAE,cAAc,EAAE,kBAAkB,EAAE;YAC/C,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;SAC3B,CAAC,CAAA;QAEF,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,SAAS,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAA;YACvC,MAAM,IAAI,KAAK,CAAC,+BAA+B,QAAQ,CAAC,MAAM,MAAM,SAAS,EAAE,CAAC,CAAA;QAClF,CAAC;QAED,OAAO,QAAQ,CAAC,IAAI,EAAqC,CAAA;IAC3D,CAAC;CACF"}
@@ -0,0 +1,7 @@
1
+ import { z } from 'zod';
2
+ export declare const metaConversionsSecretsSchema: z.ZodObject<{
3
+ pixelId: z.ZodString;
4
+ accessToken: z.ZodString;
5
+ }, z.core.$strip>;
6
+ export type MetaConversionsSecrets = z.infer<typeof metaConversionsSecretsSchema>;
7
+ //# sourceMappingURL=meta-conversions.secret.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta-conversions.secret.d.ts","sourceRoot":"","sources":["../../src/meta-conversions.secret.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,4BAA4B;;;iBAGvC,CAAA;AAEF,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAA"}
@@ -0,0 +1,14 @@
1
+ import { z } from 'zod';
2
+ import { wireSecret } from '@pikku/core/secret';
3
+ export const metaConversionsSecretsSchema = z.object({
4
+ pixelId: z.string().describe('Meta Pixel ID'),
5
+ accessToken: z.string().describe('Conversions API access token (generated in Events Manager)'),
6
+ });
7
+ wireSecret({
8
+ name: 'metaConversions',
9
+ displayName: 'Meta Conversions API',
10
+ description: 'Meta (Facebook) Conversions API for server-side event tracking',
11
+ secretId: 'META_CONVERSIONS_CREDENTIALS',
12
+ schema: metaConversionsSecretsSchema,
13
+ });
14
+ //# sourceMappingURL=meta-conversions.secret.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"meta-conversions.secret.js","sourceRoot":"","sources":["../../src/meta-conversions.secret.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,UAAU,EAAE,MAAM,oBAAoB,CAAA;AAE/C,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;IAC7C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,4DAA4D,CAAC;CAC/F,CAAC,CAAA;AAIF,UAAU,CAAC;IACT,IAAI,EAAE,iBAAiB;IACvB,WAAW,EAAE,sBAAsB;IACnC,WAAW,EAAE,gEAAgE;IAC7E,QAAQ,EAAE,8BAA8B;IACxC,MAAM,EAAE,4BAA4B;CACrC,CAAC,CAAA"}
@@ -0,0 +1,2 @@
1
+ export declare const createSingletonServices: (config: import("../types/application-types.js").Config, existingServices?: Partial<import("#pikku").SingletonServices>) => Promise<import("../.pikku/pikku-services.gen.js").RequiredSingletonServices>;
2
+ //# sourceMappingURL=services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAIA,eAAO,MAAM,uBAAuB,0MAQlC,CAAA"}
@@ -0,0 +1,8 @@
1
+ import { MetaConversionsService } from './meta-conversions-api.service.js';
2
+ import { pikkuAddonServices } from '#pikku';
3
+ export const createSingletonServices = pikkuAddonServices(async (config, { secrets }) => {
4
+ const creds = await secrets.getSecretJSON('META_CONVERSIONS_CREDENTIALS');
5
+ const metaConversions = new MetaConversionsService(creds);
6
+ return { metaConversions };
7
+ });
8
+ //# sourceMappingURL=services.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.js","sourceRoot":"","sources":["../../src/services.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,mCAAmC,CAAA;AAE1E,OAAO,EAAE,kBAAkB,EAAE,MAAM,QAAQ,CAAA;AAE3C,MAAM,CAAC,MAAM,uBAAuB,GAAG,kBAAkB,CAAC,KAAK,EAC7D,MAAM,EACN,EAAE,OAAO,EAAE,EACX,EAAE;IACF,MAAM,KAAK,GAAG,MAAM,OAAO,CAAC,aAAa,CAAyB,8BAA8B,CAAC,CAAA;IACjG,MAAM,eAAe,GAAG,IAAI,sBAAsB,CAAC,KAAK,CAAC,CAAA;IAEzD,OAAO,EAAE,eAAe,EAAE,CAAA;AAC5B,CAAC,CAAC,CAAA"}
package/package.json ADDED
@@ -0,0 +1,37 @@
1
+ {
2
+ "name": "@pikku/addon-meta-conversions",
3
+ "version": "0.1.1",
4
+ "type": "module",
5
+ "imports": {
6
+ "#pikku": "./.pikku/pikku-types.gen.ts"
7
+ },
8
+ "exports": {
9
+ ".": {
10
+ "types": "./dist/src/index.d.ts",
11
+ "import": "./dist/src/index.js"
12
+ },
13
+ "./.pikku/*": "./dist/.pikku/*",
14
+ "./.pikku/pikku-metadata.gen.json": "./dist/.pikku/pikku-metadata.gen.json",
15
+ "./.pikku/rpc/pikku-rpc-wirings-map.internal.gen.js": {
16
+ "types": "./dist/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts"
17
+ }
18
+ },
19
+ "files": [
20
+ "dist"
21
+ ],
22
+ "scripts": {
23
+ "prebuild": "pikku all",
24
+ "build": "tsc && cp -r .pikku dist/",
25
+ "pikku": "pikku all"
26
+ },
27
+ "peerDependencies": {
28
+ "@pikku/core": "*",
29
+ "zod": "^4"
30
+ },
31
+ "devDependencies": {
32
+ "@pikku/cli": "^0.12.6",
33
+ "@pikku/core": "^0.12.5",
34
+ "typescript": "^5.7.2",
35
+ "zod": "^4"
36
+ }
37
+ }