@pikku/addon-grist 0.0.2

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 (197) hide show
  1. package/README.md +12 -0
  2. package/dist/.pikku/addon/pikku-addon-types.gen.d.ts +67 -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 +78 -0
  5. package/dist/.pikku/addon/pikku-addon-types.gen.js.map +1 -0
  6. package/dist/.pikku/addon/pikku-addon-types.gen.ts +106 -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 +10 -0
  10. package/dist/.pikku/addon/pikku-package.gen.js.map +1 -0
  11. package/dist/.pikku/addon/pikku-package.gen.ts +11 -0
  12. package/dist/.pikku/agent/pikku-agent-map.gen.d.ts +4 -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 +82 -0
  18. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts +112 -0
  19. package/dist/.pikku/channel/pikku-channel-types.gen.d.ts.map +1 -0
  20. package/dist/.pikku/channel/pikku-channel-types.gen.js +60 -0
  21. package/dist/.pikku/channel/pikku-channel-types.gen.js.map +1 -0
  22. package/dist/.pikku/channel/pikku-channel-types.gen.ts +177 -0
  23. package/dist/.pikku/console/pikku-node-types.gen.d.ts +7 -0
  24. package/dist/.pikku/console/pikku-node-types.gen.d.ts.map +1 -0
  25. package/dist/.pikku/console/pikku-node-types.gen.js +2 -0
  26. package/dist/.pikku/console/pikku-node-types.gen.js.map +1 -0
  27. package/dist/.pikku/console/pikku-node-types.gen.ts +8 -0
  28. package/dist/.pikku/credentials/pikku-credentials-meta.gen.json +10 -0
  29. package/dist/.pikku/credentials/pikku-credentials.gen.d.ts +15 -0
  30. package/dist/.pikku/credentials/pikku-credentials.gen.d.ts.map +1 -0
  31. package/dist/.pikku/credentials/pikku-credentials.gen.js +13 -0
  32. package/dist/.pikku/credentials/pikku-credentials.gen.js.map +1 -0
  33. package/dist/.pikku/credentials/pikku-credentials.gen.ts +23 -0
  34. package/dist/.pikku/function/pikku-function-types.gen.d.ts +490 -0
  35. package/dist/.pikku/function/pikku-function-types.gen.d.ts.map +1 -0
  36. package/dist/.pikku/function/pikku-function-types.gen.js +334 -0
  37. package/dist/.pikku/function/pikku-function-types.gen.js.map +1 -0
  38. package/dist/.pikku/function/pikku-function-types.gen.ts +754 -0
  39. package/dist/.pikku/function/pikku-functions-meta-verbose.gen.json +118 -0
  40. package/dist/.pikku/function/pikku-functions-meta.gen.d.ts +2 -0
  41. package/dist/.pikku/function/pikku-functions-meta.gen.d.ts.map +1 -0
  42. package/dist/.pikku/function/pikku-functions-meta.gen.js +7 -0
  43. package/dist/.pikku/function/pikku-functions-meta.gen.js.map +1 -0
  44. package/dist/.pikku/function/pikku-functions-meta.gen.json +78 -0
  45. package/dist/.pikku/function/pikku-functions-meta.gen.ts +7 -0
  46. package/dist/.pikku/function/pikku-functions.gen.d.ts +2 -0
  47. package/dist/.pikku/function/pikku-functions.gen.d.ts.map +1 -0
  48. package/dist/.pikku/function/pikku-functions.gen.js +14 -0
  49. package/dist/.pikku/function/pikku-functions.gen.js.map +1 -0
  50. package/dist/.pikku/function/pikku-functions.gen.ts +14 -0
  51. package/dist/.pikku/http/pikku-http-types.gen.d.ts +120 -0
  52. package/dist/.pikku/http/pikku-http-types.gen.d.ts.map +1 -0
  53. package/dist/.pikku/http/pikku-http-types.gen.js +72 -0
  54. package/dist/.pikku/http/pikku-http-types.gen.js.map +1 -0
  55. package/dist/.pikku/http/pikku-http-types.gen.ts +147 -0
  56. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts +131 -0
  57. package/dist/.pikku/mcp/pikku-mcp-types.gen.d.ts.map +1 -0
  58. package/dist/.pikku/mcp/pikku-mcp-types.gen.js +38 -0
  59. package/dist/.pikku/mcp/pikku-mcp-types.gen.js.map +1 -0
  60. package/dist/.pikku/mcp/pikku-mcp-types.gen.ts +183 -0
  61. package/dist/.pikku/pikku-bootstrap.gen.d.ts +9 -0
  62. package/dist/.pikku/pikku-bootstrap.gen.d.ts.map +1 -0
  63. package/dist/.pikku/pikku-bootstrap.gen.js +9 -0
  64. package/dist/.pikku/pikku-bootstrap.gen.js.map +1 -0
  65. package/dist/.pikku/pikku-bootstrap.gen.ts +8 -0
  66. package/dist/.pikku/pikku-meta-service.gen.d.ts +8 -0
  67. package/dist/.pikku/pikku-meta-service.gen.d.ts.map +1 -0
  68. package/dist/.pikku/pikku-meta-service.gen.js +10 -0
  69. package/dist/.pikku/pikku-meta-service.gen.js.map +1 -0
  70. package/dist/.pikku/pikku-meta-service.gen.ts +10 -0
  71. package/dist/.pikku/pikku-services.gen.d.ts +35 -0
  72. package/dist/.pikku/pikku-services.gen.d.ts.map +1 -0
  73. package/dist/.pikku/pikku-services.gen.js +30 -0
  74. package/dist/.pikku/pikku-services.gen.js.map +1 -0
  75. package/dist/.pikku/pikku-services.gen.ts +42 -0
  76. package/dist/.pikku/pikku-types.gen.d.ts +12 -0
  77. package/dist/.pikku/pikku-types.gen.d.ts.map +1 -0
  78. package/dist/.pikku/pikku-types.gen.js +17 -0
  79. package/dist/.pikku/pikku-types.gen.js.map +1 -0
  80. package/dist/.pikku/pikku-types.gen.ts +21 -0
  81. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts +24 -0
  82. package/dist/.pikku/queue/pikku-queue-types.gen.d.ts.map +1 -0
  83. package/dist/.pikku/queue/pikku-queue-types.gen.js +17 -0
  84. package/dist/.pikku/queue/pikku-queue-types.gen.js.map +1 -0
  85. package/dist/.pikku/queue/pikku-queue-types.gen.ts +27 -0
  86. package/dist/.pikku/rpc/pikku-rpc-wirings-map.gen.d.ts +141 -0
  87. package/dist/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +145 -0
  88. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.d.ts +2 -0
  89. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.d.ts.map +1 -0
  90. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js +7 -0
  91. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.js.map +1 -0
  92. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.json +6 -0
  93. package/dist/.pikku/rpc/pikku-rpc-wirings-meta.internal.gen.ts +6 -0
  94. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts +22 -0
  95. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.d.ts.map +1 -0
  96. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js +17 -0
  97. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.js.map +1 -0
  98. package/dist/.pikku/scheduler/pikku-scheduler-types.gen.ts +25 -0
  99. package/dist/.pikku/schemas/register.gen.d.ts +2 -0
  100. package/dist/.pikku/schemas/register.gen.d.ts.map +1 -0
  101. package/dist/.pikku/schemas/register.gen.js +25 -0
  102. package/dist/.pikku/schemas/register.gen.js.map +1 -0
  103. package/dist/.pikku/schemas/register.gen.ts +43 -0
  104. package/dist/.pikku/schemas/schemas/CreateInput.schema.json +1 -0
  105. package/dist/.pikku/schemas/schemas/CreateOutput.schema.json +1 -0
  106. package/dist/.pikku/schemas/schemas/CredentialSchema_grist.schema.json +1 -0
  107. package/dist/.pikku/schemas/schemas/DeleteInput.schema.json +1 -0
  108. package/dist/.pikku/schemas/schemas/DeleteOutput.schema.json +1 -0
  109. package/dist/.pikku/schemas/schemas/GetAllInput.schema.json +1 -0
  110. package/dist/.pikku/schemas/schemas/GetAllOutput.schema.json +1 -0
  111. package/dist/.pikku/schemas/schemas/UpdateInput.schema.json +1 -0
  112. package/dist/.pikku/schemas/schemas/UpdateOutput.schema.json +1 -0
  113. package/dist/.pikku/schemas/schemas/VariableSchema_GRIST_BASE_URL.schema.json +1 -0
  114. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts +6 -0
  115. package/dist/.pikku/secrets/pikku-secret-types.gen.d.ts.map +1 -0
  116. package/dist/.pikku/secrets/pikku-secret-types.gen.js +5 -0
  117. package/dist/.pikku/secrets/pikku-secret-types.gen.js.map +1 -0
  118. package/dist/.pikku/secrets/pikku-secret-types.gen.ts +5 -0
  119. package/dist/.pikku/secrets/pikku-secrets-meta.gen.json +1 -0
  120. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts +12 -0
  121. package/dist/.pikku/secrets/pikku-secrets.gen.d.ts.map +1 -0
  122. package/dist/.pikku/secrets/pikku-secrets.gen.js +11 -0
  123. package/dist/.pikku/secrets/pikku-secrets.gen.js.map +1 -0
  124. package/dist/.pikku/secrets/pikku-secrets.gen.ts +21 -0
  125. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts +114 -0
  126. package/dist/.pikku/trigger/pikku-trigger-types.gen.d.ts.map +1 -0
  127. package/dist/.pikku/trigger/pikku-trigger-types.gen.js +34 -0
  128. package/dist/.pikku/trigger/pikku-trigger-types.gen.js.map +1 -0
  129. package/dist/.pikku/trigger/pikku-trigger-types.gen.ts +160 -0
  130. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts +6 -0
  131. package/dist/.pikku/variables/pikku-variable-types.gen.d.ts.map +1 -0
  132. package/dist/.pikku/variables/pikku-variable-types.gen.js +5 -0
  133. package/dist/.pikku/variables/pikku-variable-types.gen.js.map +1 -0
  134. package/dist/.pikku/variables/pikku-variable-types.gen.ts +5 -0
  135. package/dist/.pikku/variables/pikku-variables-meta.gen.json +10 -0
  136. package/dist/.pikku/variables/pikku-variables.gen.d.ts +15 -0
  137. package/dist/.pikku/variables/pikku-variables.gen.d.ts.map +1 -0
  138. package/dist/.pikku/variables/pikku-variables.gen.js +13 -0
  139. package/dist/.pikku/variables/pikku-variables.gen.js.map +1 -0
  140. package/dist/.pikku/variables/pikku-variables.gen.ts +23 -0
  141. package/dist/.pikku/workflow/pikku-workflow-map.gen.d.ts +38 -0
  142. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts +90 -0
  143. package/dist/.pikku/workflow/pikku-workflow-types.gen.d.ts.map +1 -0
  144. package/dist/.pikku/workflow/pikku-workflow-types.gen.js +18 -0
  145. package/dist/.pikku/workflow/pikku-workflow-types.gen.js.map +1 -0
  146. package/dist/.pikku/workflow/pikku-workflow-types.gen.ts +167 -0
  147. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.d.ts +2 -0
  148. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.d.ts.map +1 -0
  149. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js +7 -0
  150. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.js.map +1 -0
  151. package/dist/.pikku/workflow/pikku-workflow-wirings-meta.gen.ts +9 -0
  152. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts +5 -0
  153. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.d.ts.map +1 -0
  154. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js +5 -0
  155. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.js.map +1 -0
  156. package/dist/.pikku/workflow/pikku-workflow-wirings.gen.ts +3 -0
  157. package/dist/src/functions/_delete.function.d.ts +29 -0
  158. package/dist/src/functions/_delete.function.d.ts.map +1 -0
  159. package/dist/src/functions/_delete.function.js +19 -0
  160. package/dist/src/functions/_delete.function.js.map +1 -0
  161. package/dist/src/functions/create.function.d.ts +29 -0
  162. package/dist/src/functions/create.function.d.ts.map +1 -0
  163. package/dist/src/functions/create.function.js +19 -0
  164. package/dist/src/functions/create.function.js.map +1 -0
  165. package/dist/src/functions/getAll.function.d.ts +37 -0
  166. package/dist/src/functions/getAll.function.d.ts.map +1 -0
  167. package/dist/src/functions/getAll.function.js +21 -0
  168. package/dist/src/functions/getAll.function.js.map +1 -0
  169. package/dist/src/functions/update.function.d.ts +21 -0
  170. package/dist/src/functions/update.function.d.ts.map +1 -0
  171. package/dist/src/functions/update.function.js +17 -0
  172. package/dist/src/functions/update.function.js.map +1 -0
  173. package/dist/src/grist-api.service.d.ts +10 -0
  174. package/dist/src/grist-api.service.d.ts.map +1 -0
  175. package/dist/src/grist-api.service.js +111 -0
  176. package/dist/src/grist-api.service.js.map +1 -0
  177. package/dist/src/grist.credential.d.ts +5 -0
  178. package/dist/src/grist.credential.d.ts.map +1 -0
  179. package/dist/src/grist.credential.js +13 -0
  180. package/dist/src/grist.credential.js.map +1 -0
  181. package/dist/src/grist.types.d.ts +7 -0
  182. package/dist/src/grist.types.d.ts.map +1 -0
  183. package/dist/src/grist.types.js +8 -0
  184. package/dist/src/grist.types.js.map +1 -0
  185. package/dist/src/grist.variable.d.ts +5 -0
  186. package/dist/src/grist.variable.d.ts.map +1 -0
  187. package/dist/src/grist.variable.js +11 -0
  188. package/dist/src/grist.variable.js.map +1 -0
  189. package/dist/src/index.d.ts +5 -0
  190. package/dist/src/index.d.ts.map +1 -0
  191. package/dist/src/index.js +5 -0
  192. package/dist/src/index.js.map +1 -0
  193. package/dist/src/services.d.ts +2 -0
  194. package/dist/src/services.d.ts.map +1 -0
  195. package/dist/src/services.js +14 -0
  196. package/dist/src/services.js.map +1 -0
  197. package/package.json +39 -0
@@ -0,0 +1,167 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.54
3
+ */
4
+ import { WorkflowCancelledException } from '@pikku/core/workflow'
5
+ import { template } from '@pikku/core/workflow'
6
+ import {
7
+ pikkuWorkflowGraph as corePikkuWorkflowGraph,
8
+ type PikkuWorkflowGraphConfig,
9
+ type PikkuWorkflowGraphResult,
10
+ } from '@pikku/core/workflow'
11
+ import type { PikkuWorkflowWire, WorkflowStepOptions } from '@pikku/core/workflow'
12
+
13
+ export { WorkflowCancelledException }
14
+ import type { PikkuFunctionSessionless, PikkuFunctionConfig } from '../function/pikku-function-types.gen.js'
15
+ import type { FlattenedRPCMap } from '../rpc/pikku-rpc-wirings-map.internal.gen.d.js'
16
+ import type { FlattenedWorkflowMap } from './pikku-workflow-map.gen.d.js'
17
+
18
+ export { template }
19
+
20
+ export interface TypedWorkflow extends PikkuWorkflowWire {
21
+ do<K extends keyof FlattenedRPCMap>(
22
+ stepName: string,
23
+ rpcName: K,
24
+ data: FlattenedRPCMap[K]['input'],
25
+ options?: WorkflowStepOptions
26
+ ): Promise<FlattenedRPCMap[K]['output']>
27
+
28
+ do<K extends keyof FlattenedWorkflowMap>(
29
+ stepName: string,
30
+ workflowName: K,
31
+ data: FlattenedWorkflowMap[K]['input'],
32
+ options?: WorkflowStepOptions
33
+ ): Promise<FlattenedWorkflowMap[K]['output']>
34
+
35
+ do<T>(
36
+ stepName: string,
37
+ fn: () => T | Promise<T>,
38
+ options?: WorkflowStepOptions
39
+ ): Promise<T>
40
+ }
41
+
42
+ import type { StandardSchemaV1 } from '@standard-schema/spec'
43
+ import type { InferSchemaOutput, PikkuPermission, PikkuMiddleware, NodeConfig, PikkuApprovalDescription } from '../function/pikku-function-types.gen.js'
44
+ import { PikkuError } from '@pikku/core/errors'
45
+ import type { CorePermissionGroup } from '@pikku/core'
46
+
47
+ export type PikkuFunctionWorkflow<
48
+ In = unknown,
49
+ Out = never
50
+ > = PikkuFunctionSessionless<In, Out, 'workflow'>
51
+
52
+ export type PikkuWorkflowConfigWithSchema<
53
+ InputSchema extends StandardSchemaV1 | undefined = undefined,
54
+ OutputSchema extends StandardSchemaV1 | undefined = undefined
55
+ > = {
56
+ title?: string
57
+ description?: string
58
+ tags?: string[]
59
+ expose?: boolean
60
+ internal?: boolean
61
+ override?: string
62
+ version?: number
63
+ remote?: boolean
64
+ mcp?: boolean
65
+ readonly?: boolean
66
+ approvalRequired?: boolean
67
+ approvalDescription?: InputSchema extends StandardSchemaV1 ? PikkuApprovalDescription<InferSchemaOutput<InputSchema>> : never
68
+ func: PikkuFunctionWorkflow<
69
+ InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown,
70
+ OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown
71
+ >
72
+ auth?: boolean
73
+ permissions?: InputSchema extends StandardSchemaV1 ? CorePermissionGroup<PikkuPermission<InferSchemaOutput<InputSchema>>> : undefined
74
+ middleware?: PikkuMiddleware[]
75
+ input?: InputSchema
76
+ output?: OutputSchema
77
+ node?: NodeConfig
78
+ errors?: Array<typeof PikkuError>
79
+ inline?: boolean
80
+ }
81
+
82
+ export function pikkuWorkflowFunc<
83
+ InputSchema extends StandardSchemaV1 | undefined = undefined,
84
+ OutputSchema extends StandardSchemaV1 | undefined = undefined
85
+ >(
86
+ config: PikkuWorkflowConfigWithSchema<InputSchema, OutputSchema>
87
+ ): PikkuFunctionConfig<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, 'workflow', PikkuFunctionWorkflow<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown>, InputSchema, OutputSchema>
88
+ export function pikkuWorkflowFunc<In, Out = unknown>(
89
+ func:
90
+ | PikkuFunctionWorkflow<In, Out>
91
+ | PikkuFunctionConfig<In, Out, 'workflow', PikkuFunctionWorkflow<In, Out>>
92
+ ): PikkuFunctionConfig<In, Out, 'workflow'>
93
+ export function pikkuWorkflowFunc(func: any) {
94
+ return typeof func === 'function' ? { func } : func
95
+ }
96
+
97
+ export function pikkuWorkflowComplexFunc<
98
+ InputSchema extends StandardSchemaV1 | undefined = undefined,
99
+ OutputSchema extends StandardSchemaV1 | undefined = undefined
100
+ >(
101
+ config: PikkuWorkflowConfigWithSchema<InputSchema, OutputSchema>
102
+ ): PikkuFunctionConfig<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown, 'workflow', PikkuFunctionWorkflow<InputSchema extends StandardSchemaV1 ? InferSchemaOutput<InputSchema> : unknown, OutputSchema extends StandardSchemaV1 ? InferSchemaOutput<OutputSchema> : unknown>, InputSchema, OutputSchema>
103
+ export function pikkuWorkflowComplexFunc<In, Out = unknown>(
104
+ func:
105
+ | PikkuFunctionWorkflow<In, Out>
106
+ | PikkuFunctionConfig<In, Out, 'workflow', PikkuFunctionWorkflow<In, Out>>
107
+ ): PikkuFunctionConfig<In, Out, 'workflow'>
108
+ export function pikkuWorkflowComplexFunc(func: any) {
109
+ return typeof func === 'function' ? { func } : func
110
+ }
111
+
112
+ type TypedRef<T> = { $ref: string; path?: string } & { __phantomType?: T }
113
+
114
+ type TemplateString = {
115
+ $template: {
116
+ parts: string[]
117
+ expressions: Array<{ $ref: string; path?: string }>
118
+ }
119
+ } & { __brand: 'TemplateString' }
120
+
121
+ type InputWithRefs<T> = {
122
+ [K in keyof T]?: T[K] | TypedRef<T[K]> | TypedRef<unknown> | TemplateString
123
+ }
124
+
125
+ type NodeInputType<FuncMap extends Record<string, string>, K extends keyof FuncMap> =
126
+ FuncMap[K] extends keyof FlattenedRPCMap
127
+ ? InputWithRefs<FlattenedRPCMap[FuncMap[K]]['input']>
128
+ : Record<string, unknown>
129
+
130
+ type NodeOutputKeys<FuncMap extends Record<string, string>, N extends string> =
131
+ N extends keyof FuncMap
132
+ ? FuncMap[N] extends keyof FlattenedRPCMap
133
+ ? keyof FlattenedRPCMap[FuncMap[N]]['output'] & string
134
+ : string
135
+ : string
136
+
137
+ type RefFunction<FuncMap extends Record<string, string>> = {
138
+ <N extends Extract<keyof FuncMap, string>>(
139
+ nodeId: N,
140
+ path: NodeOutputKeys<FuncMap, N>
141
+ ): TypedRef<unknown>
142
+ (nodeId: 'trigger' | '$item', path?: string): TypedRef<unknown>
143
+ }
144
+
145
+ type TemplateFunction = (templateStr: string, refs: TypedRef<unknown>[]) => TemplateString
146
+
147
+ type GraphNodeConfigMap<FuncMap extends Record<string, string>> = {
148
+ [K in Extract<keyof FuncMap, string>]?: {
149
+ next?: NextConfig<Extract<keyof FuncMap, string>>
150
+ input?:
151
+ | NodeInputType<FuncMap, K>
152
+ | (() => NodeInputType<FuncMap, K>)
153
+ | ((ref: RefFunction<FuncMap>, template: TemplateFunction) => NodeInputType<FuncMap, K>)
154
+ onError?: Extract<keyof FuncMap, string> | Extract<keyof FuncMap, string>[]
155
+ }
156
+ }
157
+
158
+ type NextConfig<NodeIds extends string> = NodeIds | NodeIds[] | { if: string; then: NodeIds; else?: NodeIds }
159
+
160
+ export function pikkuWorkflowGraph<
161
+ const FuncMap extends Record<string, keyof FlattenedRPCMap & string>
162
+ >(
163
+ config: PikkuWorkflowGraphConfig<FuncMap, GraphNodeConfigMap<FuncMap>>
164
+ ): PikkuWorkflowGraphResult {
165
+ return corePikkuWorkflowGraph(config as any)
166
+ }
167
+
@@ -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.54
3
+ */
4
+ import { pikkuState } from '@pikku/core/internal';
5
+ const workflowsMeta = {};
6
+ pikkuState('@pikku/addon-grist', '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,oBAAoB,EAAE,WAAW,EAAE,MAAM,EAAE,aAAa,CAAC,CAAA"}
@@ -0,0 +1,9 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.54
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-grist', 'workflows', 'meta', workflowsMeta)
@@ -0,0 +1,5 @@
1
+ export {};
2
+ /**
3
+ * This file was generated by @pikku/cli@0.12.54
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.54
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.54
3
+ */
@@ -0,0 +1,29 @@
1
+ import { z } from 'zod';
2
+ export declare const _deleteInput: z.ZodObject<{
3
+ docId: z.ZodString;
4
+ tableId: z.ZodString;
5
+ body: z.ZodArray<z.ZodNumber>;
6
+ }, z.core.$strip>;
7
+ export declare const _deleteOutput: z.ZodObject<{
8
+ success: z.ZodOptional<z.ZodBoolean>;
9
+ }, z.core.$strip>;
10
+ export declare const _delete: import("#pikku").PikkuFunctionConfig<{
11
+ docId: string;
12
+ tableId: string;
13
+ body: number[];
14
+ }, {
15
+ success?: boolean | undefined;
16
+ }, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<{
17
+ docId: string;
18
+ tableId: string;
19
+ body: number[];
20
+ }, {
21
+ success?: boolean | undefined;
22
+ }, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<{
23
+ docId: string;
24
+ tableId: string;
25
+ body: number[];
26
+ }, {
27
+ success?: boolean | undefined;
28
+ }, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
29
+ //# sourceMappingURL=_delete.function.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_delete.function.d.ts","sourceRoot":"","sources":["../../../src/functions/_delete.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,YAAY;;;;iBAIvB,CAAA;AAEF,eAAO,MAAM,aAAa;;iBAExB,CAAA;AAEF,eAAO,MAAM,OAAO;;;;;;;;;;;;;;;;;;uEAOlB,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { z } from 'zod';
2
+ import { pikkuSessionlessFunc } from '#pikku';
3
+ export const _deleteInput = z.object({
4
+ docId: z.string(),
5
+ tableId: z.string(),
6
+ body: z.array(z.number().int()),
7
+ });
8
+ export const _deleteOutput = z.object({
9
+ success: z.boolean().optional(),
10
+ });
11
+ export const _delete = pikkuSessionlessFunc({
12
+ description: "Delete rows from a table",
13
+ input: _deleteInput,
14
+ output: _deleteOutput,
15
+ func: async ({ grist }, data) => {
16
+ return grist.call("POST", "/docs/{docId}/tables/{tableId}/data/delete", data);
17
+ },
18
+ });
19
+ //# sourceMappingURL=_delete.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_delete.function.js","sourceRoot":"","sources":["../../../src/functions/_delete.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAA;AAE7C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC;CAChC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,QAAQ,EAAE;CAChC,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,OAAO,GAAG,oBAAoB,CAAC;IAC1C,WAAW,EAAE,0BAA0B;IACvC,KAAK,EAAE,YAAY;IACnB,MAAM,EAAE,aAAa;IACrB,IAAI,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE;QAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,4CAA4C,EAAE,IAAI,CAAQ,CAAA;IACtF,CAAC;CACF,CAAC,CAAA"}
@@ -0,0 +1,29 @@
1
+ import { z } from 'zod';
2
+ export declare const CreateInput: z.ZodObject<{
3
+ docId: z.ZodString;
4
+ tableId: z.ZodString;
5
+ records: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
6
+ }, z.core.$strip>;
7
+ export declare const CreateOutput: z.ZodObject<{
8
+ records: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
9
+ }, z.core.$strip>;
10
+ export declare const create: import("#pikku").PikkuFunctionConfig<{
11
+ docId: string;
12
+ tableId: string;
13
+ records?: Record<string, unknown>[] | undefined;
14
+ }, {
15
+ records?: Record<string, unknown>[] | undefined;
16
+ }, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<{
17
+ docId: string;
18
+ tableId: string;
19
+ records?: Record<string, unknown>[] | undefined;
20
+ }, {
21
+ records?: Record<string, unknown>[] | undefined;
22
+ }, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<{
23
+ docId: string;
24
+ tableId: string;
25
+ records?: Record<string, unknown>[] | undefined;
26
+ }, {
27
+ records?: Record<string, unknown>[] | undefined;
28
+ }, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
29
+ //# sourceMappingURL=create.function.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.function.d.ts","sourceRoot":"","sources":["../../../src/functions/create.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,WAAW;;;;iBAItB,CAAA;AAEF,eAAO,MAAM,YAAY;;iBAEvB,CAAA;AAEF,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;uEAOjB,CAAA"}
@@ -0,0 +1,19 @@
1
+ import { z } from 'zod';
2
+ import { pikkuSessionlessFunc } from '#pikku';
3
+ export const CreateInput = z.object({
4
+ docId: z.string(),
5
+ tableId: z.string(),
6
+ records: z.array(z.record(z.string(), z.unknown())).optional(),
7
+ });
8
+ export const CreateOutput = z.object({
9
+ records: z.array(z.record(z.string(), z.unknown())).optional(),
10
+ });
11
+ export const create = pikkuSessionlessFunc({
12
+ description: "Create rows in a table",
13
+ input: CreateInput,
14
+ output: CreateOutput,
15
+ func: async ({ grist }, data) => {
16
+ return grist.call("POST", "/docs/{docId}/tables/{tableId}/records", data);
17
+ },
18
+ });
19
+ //# sourceMappingURL=create.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.function.js","sourceRoot":"","sources":["../../../src/functions/create.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAA;AAE7C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC/D,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC/D,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,oBAAoB,CAAC;IACzC,WAAW,EAAE,wBAAwB;IACrC,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE;QAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,MAAM,EAAE,wCAAwC,EAAE,IAAI,CAAQ,CAAA;IAClF,CAAC;CACF,CAAC,CAAA"}
@@ -0,0 +1,37 @@
1
+ import { z } from 'zod';
2
+ export declare const GetAllInput: z.ZodObject<{
3
+ docId: z.ZodString;
4
+ tableId: z.ZodString;
5
+ limit: z.ZodOptional<z.ZodNumber>;
6
+ sort: z.ZodOptional<z.ZodString>;
7
+ filter: z.ZodOptional<z.ZodString>;
8
+ }, z.core.$strip>;
9
+ export declare const GetAllOutput: z.ZodObject<{
10
+ records: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
11
+ }, z.core.$strip>;
12
+ export declare const getAll: import("#pikku").PikkuFunctionConfig<{
13
+ docId: string;
14
+ tableId: string;
15
+ limit?: number | undefined;
16
+ sort?: string | undefined;
17
+ filter?: string | undefined;
18
+ }, {
19
+ records?: Record<string, unknown>[] | undefined;
20
+ }, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<{
21
+ docId: string;
22
+ tableId: string;
23
+ limit?: number | undefined;
24
+ sort?: string | undefined;
25
+ filter?: string | undefined;
26
+ }, {
27
+ records?: Record<string, unknown>[] | undefined;
28
+ }, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<{
29
+ docId: string;
30
+ tableId: string;
31
+ limit?: number | undefined;
32
+ sort?: string | undefined;
33
+ filter?: string | undefined;
34
+ }, {
35
+ records?: Record<string, unknown>[] | undefined;
36
+ }, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
37
+ //# sourceMappingURL=getAll.function.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAll.function.d.ts","sourceRoot":"","sources":["../../../src/functions/getAll.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,WAAW;;;;;;iBAMtB,CAAA;AAEF,eAAO,MAAM,YAAY;;iBAEvB,CAAA;AAEF,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;uEAOjB,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { z } from 'zod';
2
+ import { pikkuSessionlessFunc } from '#pikku';
3
+ export const GetAllInput = z.object({
4
+ docId: z.string(),
5
+ tableId: z.string(),
6
+ limit: z.number().int().optional(),
7
+ sort: z.string().optional(),
8
+ filter: z.string().optional(),
9
+ });
10
+ export const GetAllOutput = z.object({
11
+ records: z.array(z.record(z.string(), z.unknown())).optional(),
12
+ });
13
+ export const getAll = pikkuSessionlessFunc({
14
+ description: "Get many rows from a table",
15
+ input: GetAllInput,
16
+ output: GetAllOutput,
17
+ func: async ({ grist }, data) => {
18
+ return grist.call("GET", "/docs/{docId}/tables/{tableId}/records", data);
19
+ },
20
+ });
21
+ //# sourceMappingURL=getAll.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"getAll.function.js","sourceRoot":"","sources":["../../../src/functions/getAll.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAA;AAE7C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IAClC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IAC3B,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAC9B,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC/D,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,oBAAoB,CAAC;IACzC,WAAW,EAAE,4BAA4B;IACzC,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE;QAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,EAAE,wCAAwC,EAAE,IAAI,CAAQ,CAAA;IACjF,CAAC;CACF,CAAC,CAAA"}
@@ -0,0 +1,21 @@
1
+ import { z } from 'zod';
2
+ export declare const UpdateInput: z.ZodObject<{
3
+ docId: z.ZodString;
4
+ tableId: z.ZodString;
5
+ records: z.ZodOptional<z.ZodArray<z.ZodRecord<z.ZodString, z.ZodUnknown>>>;
6
+ }, z.core.$strip>;
7
+ export declare const UpdateOutput: z.ZodRecord<z.ZodString, z.ZodUnknown>;
8
+ export declare const update: import("#pikku").PikkuFunctionConfig<{
9
+ docId: string;
10
+ tableId: string;
11
+ records?: Record<string, unknown>[] | undefined;
12
+ }, Record<string, unknown>, "rpc" | "session", import("#pikku").PikkuFunctionSessionless<{
13
+ docId: string;
14
+ tableId: string;
15
+ records?: Record<string, unknown>[] | undefined;
16
+ }, Record<string, unknown>, "rpc" | "session", import("#pikku").Services> | import("#pikku").PikkuFunction<{
17
+ docId: string;
18
+ tableId: string;
19
+ records?: Record<string, unknown>[] | undefined;
20
+ }, Record<string, unknown>, "rpc" | "session", import("#pikku").Services>, undefined, undefined>;
21
+ //# sourceMappingURL=update.function.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.function.d.ts","sourceRoot":"","sources":["../../../src/functions/update.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,WAAW;;;;iBAItB,CAAA;AAEF,eAAO,MAAM,YAAY,wCAAoC,CAAA;AAE7D,eAAO,MAAM,MAAM;;;;;;;;;;;;gGAOjB,CAAA"}
@@ -0,0 +1,17 @@
1
+ import { z } from 'zod';
2
+ import { pikkuSessionlessFunc } from '#pikku';
3
+ export const UpdateInput = z.object({
4
+ docId: z.string(),
5
+ tableId: z.string(),
6
+ records: z.array(z.record(z.string(), z.unknown())).optional(),
7
+ });
8
+ export const UpdateOutput = z.record(z.string(), z.unknown());
9
+ export const update = pikkuSessionlessFunc({
10
+ description: "Update rows in a table",
11
+ input: UpdateInput,
12
+ output: UpdateOutput,
13
+ func: async ({ grist }, data) => {
14
+ return grist.call("PATCH", "/docs/{docId}/tables/{tableId}/records", data);
15
+ },
16
+ });
17
+ //# sourceMappingURL=update.function.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"update.function.js","sourceRoot":"","sources":["../../../src/functions/update.function.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,oBAAoB,EAAE,MAAM,QAAQ,CAAA;AAE7C,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,MAAM,CAAC;IAClC,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE;IACnB,OAAO,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,QAAQ,EAAE;CAC/D,CAAC,CAAA;AAEF,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAA;AAE7D,MAAM,CAAC,MAAM,MAAM,GAAG,oBAAoB,CAAC;IACzC,WAAW,EAAE,wBAAwB;IACrC,KAAK,EAAE,WAAW;IAClB,MAAM,EAAE,YAAY;IACpB,IAAI,EAAE,KAAK,EAAE,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE;QAC9B,OAAO,KAAK,CAAC,IAAI,CAAC,OAAO,EAAE,wCAAwC,EAAE,IAAI,CAAQ,CAAA;IACnF,CAAC;CACF,CAAC,CAAA"}
@@ -0,0 +1,10 @@
1
+ import type { TypedVariablesService } from '#pikku/variables/pikku-variables.gen.js';
2
+ export declare class GristService {
3
+ private creds;
4
+ private baseUrl;
5
+ constructor(creds: {
6
+ apiKey: string;
7
+ }, variables: TypedVariablesService);
8
+ call<T>(method: 'GET' | 'POST' | 'PUT' | 'DELETE' | 'PATCH', path: string, data?: Record<string, unknown>): Promise<T>;
9
+ }
10
+ //# sourceMappingURL=grist-api.service.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grist-api.service.d.ts","sourceRoot":"","sources":["../../src/grist-api.service.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAA;AAyCpF,qBAAa,YAAY;IAGX,OAAO,CAAC,KAAK;IAFzB,OAAO,CAAC,OAAO,CAAQ;gBAEH,KAAK,EAAE;QAAE,MAAM,EAAE,MAAM,CAAA;KAAE,EAAE,SAAS,EAAE,qBAAqB;IAIzE,IAAI,CAAC,CAAC,EACV,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,GAAG,OAAO,EACnD,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,CAAC,CAAC;CAwEd"}
@@ -0,0 +1,111 @@
1
+ import { BadRequestError, ConflictError, ForbiddenError, InternalServerError, MethodNotAllowedError, NotFoundError, TooManyRequestsError, UnauthorizedError, UnprocessableContentError } from '@pikku/core/errors';
2
+ const ROUTES = {
3
+ "GET /docs/{docId}/tables/{tableId}/records": {
4
+ "path": [
5
+ "docId",
6
+ "tableId"
7
+ ],
8
+ "query": [
9
+ "limit",
10
+ "sort",
11
+ "filter"
12
+ ],
13
+ "headers": []
14
+ },
15
+ "POST /docs/{docId}/tables/{tableId}/records": {
16
+ "path": [
17
+ "docId",
18
+ "tableId"
19
+ ],
20
+ "query": [],
21
+ "headers": []
22
+ },
23
+ "PATCH /docs/{docId}/tables/{tableId}/records": {
24
+ "path": [
25
+ "docId",
26
+ "tableId"
27
+ ],
28
+ "query": [],
29
+ "headers": []
30
+ },
31
+ "POST /docs/{docId}/tables/{tableId}/data/delete": {
32
+ "path": [
33
+ "docId",
34
+ "tableId"
35
+ ],
36
+ "query": [],
37
+ "headers": []
38
+ }
39
+ };
40
+ export class GristService {
41
+ constructor(creds, variables) {
42
+ this.creds = creds;
43
+ this.baseUrl = variables.get('GRIST_BASE_URL');
44
+ }
45
+ async call(method, path, data) {
46
+ const route = ROUTES[`${method} ${path}`];
47
+ let endpoint = path;
48
+ let body;
49
+ const query = {};
50
+ const headers = {
51
+ 'Content-Type': 'application/json',
52
+ };
53
+ if (data && route) {
54
+ // Interpolate path params
55
+ for (const param of route.path) {
56
+ if (data[param] !== undefined) {
57
+ endpoint = endpoint.replace(`{${param}}`, String(data[param]));
58
+ }
59
+ }
60
+ // Extract query params
61
+ for (const param of route.query) {
62
+ if (data[param] !== undefined) {
63
+ query[param] = String(data[param]);
64
+ }
65
+ }
66
+ // Extract header params
67
+ for (const param of route.headers) {
68
+ if (data[param] !== undefined) {
69
+ headers[param] = String(data[param]);
70
+ }
71
+ }
72
+ // Everything else goes into body
73
+ const pathQueryHeaders = new Set([...route.path, ...route.query, ...route.headers]);
74
+ const remaining = Object.fromEntries(Object.entries(data).filter(([k]) => !pathQueryHeaders.has(k)));
75
+ if (Object.keys(remaining).length > 0) {
76
+ body = remaining;
77
+ }
78
+ }
79
+ const url = new URL(`${this.baseUrl}${endpoint}`);
80
+ for (const [key, value] of Object.entries(query)) {
81
+ url.searchParams.set(key, value);
82
+ }
83
+ headers.Authorization = `Bearer ${this.creds.apiKey}`;
84
+ const response = await fetch(url.toString(), {
85
+ method,
86
+ headers,
87
+ body: body ? JSON.stringify(body) : undefined,
88
+ });
89
+ if (!response.ok) {
90
+ const errorText = await response.text();
91
+ const errorMessage = route?.errors?.[response.status] ?? errorText;
92
+ switch (response.status) {
93
+ case 400: throw new BadRequestError(errorMessage);
94
+ case 401: throw new UnauthorizedError(errorMessage);
95
+ case 403: throw new ForbiddenError(errorMessage);
96
+ case 404: throw new NotFoundError(errorMessage);
97
+ case 405: throw new MethodNotAllowedError(errorMessage);
98
+ case 409: throw new ConflictError(errorMessage);
99
+ case 422: throw new UnprocessableContentError(errorMessage);
100
+ case 429: throw new TooManyRequestsError(errorMessage);
101
+ case 500: throw new InternalServerError(errorMessage);
102
+ default: throw new Error(`Grist API error (${response.status}): ${errorText}`);
103
+ }
104
+ }
105
+ const text = await response.text();
106
+ if (!text)
107
+ return {};
108
+ return JSON.parse(text);
109
+ }
110
+ }
111
+ //# sourceMappingURL=grist-api.service.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grist-api.service.js","sourceRoot":"","sources":["../../src/grist-api.service.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import { z } from 'zod';
2
+ export declare const gristCredentialSchema: z.ZodObject<{
3
+ apiKey: z.ZodString;
4
+ }, z.core.$strip>;
5
+ //# sourceMappingURL=grist.credential.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grist.credential.d.ts","sourceRoot":"","sources":["../../src/grist.credential.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAGvB,eAAO,MAAM,qBAAqB;;iBAEhC,CAAA"}
@@ -0,0 +1,13 @@
1
+ import { z } from 'zod';
2
+ import { wireCredential } from '@pikku/core/credential';
3
+ export const gristCredentialSchema = z.object({
4
+ apiKey: z.string().describe('Grist API key'),
5
+ });
6
+ wireCredential({
7
+ name: 'grist',
8
+ displayName: 'Grist',
9
+ description: 'Grist integration for Pikku',
10
+ type: 'wire',
11
+ schema: gristCredentialSchema,
12
+ });
13
+ //# sourceMappingURL=grist.credential.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grist.credential.js","sourceRoot":"","sources":["../../src/grist.credential.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AACvB,OAAO,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAA;AAEvD,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,CAAC,eAAe,CAAC;CAC7C,CAAC,CAAA;AAEF,cAAc,CAAC;IACb,IAAI,EAAE,OAAO;IACb,WAAW,EAAE,OAAO;IACpB,WAAW,EAAE,6BAA6B;IAC1C,IAAI,EAAE,MAAM;IACZ,MAAM,EAAE,qBAAqB;CAC9B,CAAC,CAAA"}
@@ -0,0 +1,7 @@
1
+ import { z } from 'zod';
2
+ export declare const GristResourceSchema: z.ZodObject<{
3
+ id: z.ZodString;
4
+ name: z.ZodString;
5
+ }, z.core.$strip>;
6
+ export type GristResource = z.infer<typeof GristResourceSchema>;
7
+ //# sourceMappingURL=grist.types.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"grist.types.d.ts","sourceRoot":"","sources":["../../src/grist.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAA;AAIvB,eAAO,MAAM,mBAAmB;;;iBAI9B,CAAA;AAEF,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAA"}