@pikku/addon-cortex 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 +133 -0
  87. package/dist/.pikku/rpc/pikku-rpc-wirings-map.internal.gen.d.ts +137 -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/AnalyzerExecuteInput.schema.json +1 -0
  105. package/dist/.pikku/schemas/schemas/AnalyzerExecuteOutput.schema.json +1 -0
  106. package/dist/.pikku/schemas/schemas/CredentialSchema_cortex.schema.json +1 -0
  107. package/dist/.pikku/schemas/schemas/JobGetInput.schema.json +1 -0
  108. package/dist/.pikku/schemas/schemas/JobGetOutput.schema.json +1 -0
  109. package/dist/.pikku/schemas/schemas/JobReportInput.schema.json +1 -0
  110. package/dist/.pikku/schemas/schemas/JobReportOutput.schema.json +1 -0
  111. package/dist/.pikku/schemas/schemas/ResponderExecuteInput.schema.json +1 -0
  112. package/dist/.pikku/schemas/schemas/ResponderExecuteOutput.schema.json +1 -0
  113. package/dist/.pikku/schemas/schemas/VariableSchema_CORTEX_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/cortex-api.service.d.ts +10 -0
  158. package/dist/src/cortex-api.service.d.ts.map +1 -0
  159. package/dist/src/cortex-api.service.js +103 -0
  160. package/dist/src/cortex-api.service.js.map +1 -0
  161. package/dist/src/cortex.credential.d.ts +5 -0
  162. package/dist/src/cortex.credential.d.ts.map +1 -0
  163. package/dist/src/cortex.credential.js +13 -0
  164. package/dist/src/cortex.credential.js.map +1 -0
  165. package/dist/src/cortex.types.d.ts +7 -0
  166. package/dist/src/cortex.types.d.ts.map +1 -0
  167. package/dist/src/cortex.types.js +8 -0
  168. package/dist/src/cortex.types.js.map +1 -0
  169. package/dist/src/cortex.variable.d.ts +5 -0
  170. package/dist/src/cortex.variable.d.ts.map +1 -0
  171. package/dist/src/cortex.variable.js +11 -0
  172. package/dist/src/cortex.variable.js.map +1 -0
  173. package/dist/src/functions/analyzerExecute.function.d.ts +37 -0
  174. package/dist/src/functions/analyzerExecute.function.d.ts.map +1 -0
  175. package/dist/src/functions/analyzerExecute.function.js +21 -0
  176. package/dist/src/functions/analyzerExecute.function.js.map +1 -0
  177. package/dist/src/functions/jobGet.function.d.ts +29 -0
  178. package/dist/src/functions/jobGet.function.d.ts.map +1 -0
  179. package/dist/src/functions/jobGet.function.js +19 -0
  180. package/dist/src/functions/jobGet.function.js.map +1 -0
  181. package/dist/src/functions/jobReport.function.d.ts +25 -0
  182. package/dist/src/functions/jobReport.function.d.ts.map +1 -0
  183. package/dist/src/functions/jobReport.function.js +18 -0
  184. package/dist/src/functions/jobReport.function.js.map +1 -0
  185. package/dist/src/functions/responderExecute.function.d.ts +33 -0
  186. package/dist/src/functions/responderExecute.function.d.ts.map +1 -0
  187. package/dist/src/functions/responderExecute.function.js +20 -0
  188. package/dist/src/functions/responderExecute.function.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,118 @@
1
+ {
2
+ "analyzerExecute": {
3
+ "pikkuFuncId": "analyzerExecute",
4
+ "functionType": "user",
5
+ "funcWrapper": "pikkuSessionlessFunc",
6
+ "sessionless": true,
7
+ "name": "analyzerExecute",
8
+ "services": {
9
+ "optimized": true,
10
+ "services": [
11
+ "cortex"
12
+ ]
13
+ },
14
+ "inputSchemaName": "AnalyzerExecuteInput",
15
+ "outputSchemaName": "AnalyzerExecuteOutput",
16
+ "inputs": [
17
+ "AnalyzerExecuteInput"
18
+ ],
19
+ "outputs": [
20
+ "AnalyzerExecuteOutput"
21
+ ],
22
+ "implementationHash": "110531f2a378a50b",
23
+ "description": "Run an analyzer on an observable",
24
+ "isDirectFunction": false,
25
+ "sourceFile": "/home/runner/work/addons/addons/packages/monitoring/cortex/src/functions/analyzerExecute.function.ts",
26
+ "exportedName": "analyzerExecute",
27
+ "contractHash": "2c13ba9340b07fcd",
28
+ "inputHash": "0ef41814",
29
+ "outputHash": "c1019800"
30
+ },
31
+ "responderExecute": {
32
+ "pikkuFuncId": "responderExecute",
33
+ "functionType": "user",
34
+ "funcWrapper": "pikkuSessionlessFunc",
35
+ "sessionless": true,
36
+ "name": "responderExecute",
37
+ "services": {
38
+ "optimized": true,
39
+ "services": [
40
+ "cortex"
41
+ ]
42
+ },
43
+ "inputSchemaName": "ResponderExecuteInput",
44
+ "outputSchemaName": "ResponderExecuteOutput",
45
+ "inputs": [
46
+ "ResponderExecuteInput"
47
+ ],
48
+ "outputs": [
49
+ "ResponderExecuteOutput"
50
+ ],
51
+ "implementationHash": "e3566434c99d31df",
52
+ "description": "Run a responder on an entity",
53
+ "isDirectFunction": false,
54
+ "sourceFile": "/home/runner/work/addons/addons/packages/monitoring/cortex/src/functions/responderExecute.function.ts",
55
+ "exportedName": "responderExecute",
56
+ "contractHash": "cbb0664d2deabef0",
57
+ "inputHash": "5726a296",
58
+ "outputHash": "35e9ad1b"
59
+ },
60
+ "jobGet": {
61
+ "pikkuFuncId": "jobGet",
62
+ "functionType": "user",
63
+ "funcWrapper": "pikkuSessionlessFunc",
64
+ "sessionless": true,
65
+ "name": "jobGet",
66
+ "services": {
67
+ "optimized": true,
68
+ "services": [
69
+ "cortex"
70
+ ]
71
+ },
72
+ "inputSchemaName": "JobGetInput",
73
+ "outputSchemaName": "JobGetOutput",
74
+ "inputs": [
75
+ "JobGetInput"
76
+ ],
77
+ "outputs": [
78
+ "JobGetOutput"
79
+ ],
80
+ "implementationHash": "619c38d33cf750ad",
81
+ "description": "Get details of a job",
82
+ "isDirectFunction": false,
83
+ "sourceFile": "/home/runner/work/addons/addons/packages/monitoring/cortex/src/functions/jobGet.function.ts",
84
+ "exportedName": "jobGet",
85
+ "contractHash": "821cbd21fe575c58",
86
+ "inputHash": "1a731e33",
87
+ "outputHash": "6ebe5b36"
88
+ },
89
+ "jobReport": {
90
+ "pikkuFuncId": "jobReport",
91
+ "functionType": "user",
92
+ "funcWrapper": "pikkuSessionlessFunc",
93
+ "sessionless": true,
94
+ "name": "jobReport",
95
+ "services": {
96
+ "optimized": true,
97
+ "services": [
98
+ "cortex"
99
+ ]
100
+ },
101
+ "inputSchemaName": "JobReportInput",
102
+ "outputSchemaName": "JobReportOutput",
103
+ "inputs": [
104
+ "JobReportInput"
105
+ ],
106
+ "outputs": [
107
+ "JobReportOutput"
108
+ ],
109
+ "implementationHash": "83c5fa9fb206be3d",
110
+ "description": "Get details and report of a job",
111
+ "isDirectFunction": false,
112
+ "sourceFile": "/home/runner/work/addons/addons/packages/monitoring/cortex/src/functions/jobReport.function.ts",
113
+ "exportedName": "jobReport",
114
+ "contractHash": "4d93b45d26d49fe7",
115
+ "inputHash": "d50be9b0",
116
+ "outputHash": "9e04b627"
117
+ }
118
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=pikku-functions-meta.gen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pikku-functions-meta.gen.d.ts","sourceRoot":"","sources":["../../../.pikku/function/pikku-functions-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
+ import metaData from './pikku-functions-meta.gen.json' with { type: 'json' };
6
+ pikkuState('@pikku/addon-cortex', 'function', 'meta', metaData);
7
+ //# sourceMappingURL=pikku-functions-meta.gen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pikku-functions-meta.gen.js","sourceRoot":"","sources":["../../../.pikku/function/pikku-functions-meta.gen.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAA;AAEjD,OAAO,QAAQ,MAAM,iCAAiC,CAAC,OAAO,IAAI,EAAE,MAAM,EAAE,CAAA;AAC5E,UAAU,CAAC,qBAAqB,EAAE,UAAU,EAAE,MAAM,EAAE,QAAyB,CAAC,CAAA"}
@@ -0,0 +1,78 @@
1
+ {
2
+ "analyzerExecute": {
3
+ "pikkuFuncId": "analyzerExecute",
4
+ "functionType": "user",
5
+ "funcWrapper": "pikkuSessionlessFunc",
6
+ "sessionless": true,
7
+ "name": "analyzerExecute",
8
+ "inputSchemaName": "AnalyzerExecuteInput",
9
+ "outputSchemaName": "AnalyzerExecuteOutput",
10
+ "inputs": [
11
+ "AnalyzerExecuteInput"
12
+ ],
13
+ "outputs": [
14
+ "AnalyzerExecuteOutput"
15
+ ],
16
+ "implementationHash": "110531f2a378a50b",
17
+ "contractHash": "2c13ba9340b07fcd",
18
+ "inputHash": "0ef41814",
19
+ "outputHash": "c1019800"
20
+ },
21
+ "responderExecute": {
22
+ "pikkuFuncId": "responderExecute",
23
+ "functionType": "user",
24
+ "funcWrapper": "pikkuSessionlessFunc",
25
+ "sessionless": true,
26
+ "name": "responderExecute",
27
+ "inputSchemaName": "ResponderExecuteInput",
28
+ "outputSchemaName": "ResponderExecuteOutput",
29
+ "inputs": [
30
+ "ResponderExecuteInput"
31
+ ],
32
+ "outputs": [
33
+ "ResponderExecuteOutput"
34
+ ],
35
+ "implementationHash": "e3566434c99d31df",
36
+ "contractHash": "cbb0664d2deabef0",
37
+ "inputHash": "5726a296",
38
+ "outputHash": "35e9ad1b"
39
+ },
40
+ "jobGet": {
41
+ "pikkuFuncId": "jobGet",
42
+ "functionType": "user",
43
+ "funcWrapper": "pikkuSessionlessFunc",
44
+ "sessionless": true,
45
+ "name": "jobGet",
46
+ "inputSchemaName": "JobGetInput",
47
+ "outputSchemaName": "JobGetOutput",
48
+ "inputs": [
49
+ "JobGetInput"
50
+ ],
51
+ "outputs": [
52
+ "JobGetOutput"
53
+ ],
54
+ "implementationHash": "619c38d33cf750ad",
55
+ "contractHash": "821cbd21fe575c58",
56
+ "inputHash": "1a731e33",
57
+ "outputHash": "6ebe5b36"
58
+ },
59
+ "jobReport": {
60
+ "pikkuFuncId": "jobReport",
61
+ "functionType": "user",
62
+ "funcWrapper": "pikkuSessionlessFunc",
63
+ "sessionless": true,
64
+ "name": "jobReport",
65
+ "inputSchemaName": "JobReportInput",
66
+ "outputSchemaName": "JobReportOutput",
67
+ "inputs": [
68
+ "JobReportInput"
69
+ ],
70
+ "outputs": [
71
+ "JobReportOutput"
72
+ ],
73
+ "implementationHash": "83c5fa9fb206be3d",
74
+ "contractHash": "4d93b45d26d49fe7",
75
+ "inputHash": "d50be9b0",
76
+ "outputHash": "9e04b627"
77
+ }
78
+ }
@@ -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
+ import type { FunctionsMeta } from '@pikku/core'
6
+ import metaData from './pikku-functions-meta.gen.json' with { type: 'json' }
7
+ pikkuState('@pikku/addon-cortex', 'function', 'meta', metaData as FunctionsMeta)
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=pikku-functions.gen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pikku-functions.gen.d.ts","sourceRoot":"","sources":["../../../.pikku/function/pikku-functions.gen.ts"],"names":[],"mappings":""}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.54
3
+ */
4
+ /* Import and register functions used by RPCs */
5
+ import { addFunction } from '@pikku/core/function';
6
+ import { analyzerExecute } from '../../src/functions/analyzerExecute.function.js';
7
+ import { jobGet } from '../../src/functions/jobGet.function.js';
8
+ import { jobReport } from '../../src/functions/jobReport.function.js';
9
+ import { responderExecute } from '../../src/functions/responderExecute.function.js';
10
+ addFunction('analyzerExecute', analyzerExecute, '@pikku/addon-cortex');
11
+ addFunction('jobGet', jobGet, '@pikku/addon-cortex');
12
+ addFunction('jobReport', jobReport, '@pikku/addon-cortex');
13
+ addFunction('responderExecute', responderExecute, '@pikku/addon-cortex');
14
+ //# sourceMappingURL=pikku-functions.gen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pikku-functions.gen.js","sourceRoot":"","sources":["../../../.pikku/function/pikku-functions.gen.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,gDAAgD;AAChD,OAAO,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,iDAAiD,CAAA;AACjF,OAAO,EAAE,MAAM,EAAE,MAAM,wCAAwC,CAAA;AAC/D,OAAO,EAAE,SAAS,EAAE,MAAM,2CAA2C,CAAA;AACrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,kDAAkD,CAAA;AAEnF,WAAW,CAAC,iBAAiB,EAAE,eAAe,EAAE,qBAAqB,CAAC,CAAA;AACtE,WAAW,CAAC,QAAQ,EAAE,MAAM,EAAE,qBAAqB,CAAC,CAAA;AACpD,WAAW,CAAC,WAAW,EAAE,SAAS,EAAE,qBAAqB,CAAC,CAAA;AAC1D,WAAW,CAAC,kBAAkB,EAAE,gBAAgB,EAAE,qBAAqB,CAAC,CAAA"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.54
3
+ */
4
+ /* Import and register functions used by RPCs */
5
+ import { addFunction } from '@pikku/core/function'
6
+ import { analyzerExecute } from '../../src/functions/analyzerExecute.function.js'
7
+ import { jobGet } from '../../src/functions/jobGet.function.js'
8
+ import { jobReport } from '../../src/functions/jobReport.function.js'
9
+ import { responderExecute } from '../../src/functions/responderExecute.function.js'
10
+
11
+ addFunction('analyzerExecute', analyzerExecute, '@pikku/addon-cortex')
12
+ addFunction('jobGet', jobGet, '@pikku/addon-cortex')
13
+ addFunction('jobReport', jobReport, '@pikku/addon-cortex')
14
+ addFunction('responderExecute', responderExecute, '@pikku/addon-cortex')
@@ -0,0 +1,120 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.54
3
+ */
4
+ /**
5
+ * HTTP-specific type definitions for tree-shaking optimization
6
+ */
7
+ import { AssertHTTPWiringParams } from '@pikku/core/http';
8
+ import type { PikkuFunction, PikkuFunctionSessionless, PikkuPermission, PikkuMiddleware, PikkuFunctionConfig } from '../function/pikku-function-types.gen.js';
9
+ import type { CoreHTTPFunctionWiring, HTTPMethod, HTTPRouteBaseConfig } from '@pikku/core/http';
10
+ /**
11
+ * Type definition for HTTP API wirings with type-safe path parameters.
12
+ * Supports both authenticated and unauthenticated functions.
13
+ *
14
+ * @template In - Input type for the HTTP wiring
15
+ * @template Out - Output type for the HTTP wiring
16
+ * @template Route - String literal type for the HTTP path (e.g., "/users/:id")
17
+ */
18
+ type HTTPWiring<In, Out, Route extends string> = CoreHTTPFunctionWiring<In, Out, Route, PikkuFunction<In, Out, 'rpc' | 'session'>, PikkuFunctionSessionless<In, Out, 'rpc' | 'session'>, PikkuPermission<In>, PikkuMiddleware>;
19
+ /**
20
+ * Registers an HTTP wiring with the Pikku framework.
21
+ *
22
+ * @template In - Input type for the HTTP wiring
23
+ * @template Out - Output type for the HTTP wiring
24
+ * @template Route - String literal type for the HTTP path (e.g., "/users/:id")
25
+ * @param httpWiring - HTTP wiring definition with handler, method, and optional middleware
26
+ */
27
+ export declare const wireHTTP: <In, Out, Route extends string>(httpWiring: HTTPWiring<In, Out, Route> & AssertHTTPWiringParams<In, Route>) => void;
28
+ /**
29
+ * Registers HTTP middleware either globally or for a specific route pattern.
30
+ *
31
+ * When a string route pattern is provided along with middleware, the middleware
32
+ * is applied only to that route. Otherwise, if an array is provided, it is treated
33
+ * as global middleware (applied to all routes).
34
+ *
35
+ * @param routeOrMiddleware - Either a global middleware array or a route pattern string
36
+ * @param middleware - The middleware array to apply when a route pattern is specified
37
+ *
38
+ * @example
39
+ * ```typescript
40
+ * // Add global HTTP middleware
41
+ * addHTTPMiddleware([authMiddleware, loggingMiddleware])
42
+ *
43
+ * // Add route-specific middleware
44
+ * addHTTPMiddleware('/api/admin/*', [adminAuthMiddleware])
45
+ * ```
46
+ */
47
+ export declare const addHTTPMiddleware: (routeOrMiddleware: PikkuMiddleware[] | string, middleware?: PikkuMiddleware[]) => void;
48
+ /**
49
+ * Registers HTTP permissions either globally or for a specific route pattern.
50
+ *
51
+ * When a string route pattern is provided along with permissions, the permissions
52
+ * are applied only to that route. Permissions can be passed as an array or as a
53
+ * permission group object.
54
+ *
55
+ * @param pattern - Route pattern string (e.g., '*' for all routes, '/api/*' for specific routes)
56
+ * @param permissions - The permissions to apply for the specified route pattern
57
+ *
58
+ * @example
59
+ * ```typescript
60
+ * // Add global HTTP permissions
61
+ * addHTTPPermission('*', { global: globalPermission })
62
+ *
63
+ * // Add route-specific permissions
64
+ * addHTTPPermission('/api/admin/*', { admin: adminPermission })
65
+ * ```
66
+ */
67
+ export declare const addHTTPPermission: <In = unknown>(pattern: string, permissions: Record<string, PikkuPermission<In>> | PikkuPermission<In>[]) => void;
68
+ /**
69
+ * Route configuration for wireHTTPRoutes with proper typing
70
+ */
71
+ type HTTPRouteConfig = HTTPRouteBaseConfig & {
72
+ method: HTTPMethod;
73
+ route: string;
74
+ func: PikkuFunctionConfig<any, any, any, any, any, any>;
75
+ auth?: boolean;
76
+ permissions?: Record<string, PikkuPermission | PikkuPermission[]>;
77
+ middleware?: PikkuMiddleware[];
78
+ sse?: boolean;
79
+ };
80
+ /**
81
+ * Typed route map for wireHTTPRoutes
82
+ */
83
+ type TypedHTTPRouteMap = {
84
+ [key: string]: HTTPRouteConfig | TypedHTTPRouteMap | TypedHTTPRouteContract;
85
+ };
86
+ /**
87
+ * Typed route contract for defineHTTPRoutes
88
+ */
89
+ type TypedHTTPRouteContract<T extends TypedHTTPRouteMap = TypedHTTPRouteMap> = TypedHTTPRoutesGroupConfig & {
90
+ routes: T;
91
+ };
92
+ /**
93
+ * Group config with typed middleware/permissions
94
+ */
95
+ type TypedHTTPRoutesGroupConfig = {
96
+ basePath?: string;
97
+ tags?: string[];
98
+ auth?: boolean;
99
+ middleware?: PikkuMiddleware[];
100
+ permissions?: Record<string, PikkuPermission | PikkuPermission[]>;
101
+ };
102
+ /**
103
+ * Full config for wireHTTPRoutes
104
+ */
105
+ type TypedWireHTTPRoutesConfig = TypedHTTPRoutesGroupConfig & {
106
+ routes: TypedHTTPRouteMap | HTTPRouteConfig[];
107
+ };
108
+ /**
109
+ * Type-safe helper for defining route contracts that can be composed.
110
+ */
111
+ export declare function defineHTTPRoutes<T extends TypedHTTPRouteMap>(routes: T): TypedHTTPRouteContract<T>;
112
+ export declare function defineHTTPRoutes<T extends TypedHTTPRouteMap>(config: TypedHTTPRoutesGroupConfig & {
113
+ routes: T;
114
+ }): TypedHTTPRouteContract<T>;
115
+ /**
116
+ * Wires multiple HTTP routes from a nested map or array configuration.
117
+ */
118
+ export declare const wireHTTPRoutes: (config: TypedWireHTTPRoutesConfig) => void;
119
+ export {};
120
+ //# sourceMappingURL=pikku-http-types.gen.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pikku-http-types.gen.d.ts","sourceRoot":"","sources":["../../../.pikku/http/pikku-http-types.gen.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,72 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.54
3
+ */
4
+ /**
5
+ * HTTP-specific type definitions for tree-shaking optimization
6
+ */
7
+ import { wireHTTP as wireHTTPCore, addHTTPMiddleware as addHTTPMiddlewareCore, addHTTPPermission as addHTTPPermissionCore, wireHTTPRoutes as wireHTTPRoutesCore, defineHTTPRoutes as defineHTTPRoutesCore } from '@pikku/core/http';
8
+ /**
9
+ * Registers an HTTP wiring with the Pikku framework.
10
+ *
11
+ * @template In - Input type for the HTTP wiring
12
+ * @template Out - Output type for the HTTP wiring
13
+ * @template Route - String literal type for the HTTP path (e.g., "/users/:id")
14
+ * @param httpWiring - HTTP wiring definition with handler, method, and optional middleware
15
+ */
16
+ export const wireHTTP = (httpWiring) => {
17
+ wireHTTPCore(httpWiring);
18
+ };
19
+ /**
20
+ * Registers HTTP middleware either globally or for a specific route pattern.
21
+ *
22
+ * When a string route pattern is provided along with middleware, the middleware
23
+ * is applied only to that route. Otherwise, if an array is provided, it is treated
24
+ * as global middleware (applied to all routes).
25
+ *
26
+ * @param routeOrMiddleware - Either a global middleware array or a route pattern string
27
+ * @param middleware - The middleware array to apply when a route pattern is specified
28
+ *
29
+ * @example
30
+ * ```typescript
31
+ * // Add global HTTP middleware
32
+ * addHTTPMiddleware([authMiddleware, loggingMiddleware])
33
+ *
34
+ * // Add route-specific middleware
35
+ * addHTTPMiddleware('/api/admin/*', [adminAuthMiddleware])
36
+ * ```
37
+ */
38
+ export const addHTTPMiddleware = (routeOrMiddleware, middleware) => {
39
+ addHTTPMiddlewareCore(routeOrMiddleware, middleware);
40
+ };
41
+ /**
42
+ * Registers HTTP permissions either globally or for a specific route pattern.
43
+ *
44
+ * When a string route pattern is provided along with permissions, the permissions
45
+ * are applied only to that route. Permissions can be passed as an array or as a
46
+ * permission group object.
47
+ *
48
+ * @param pattern - Route pattern string (e.g., '*' for all routes, '/api/*' for specific routes)
49
+ * @param permissions - The permissions to apply for the specified route pattern
50
+ *
51
+ * @example
52
+ * ```typescript
53
+ * // Add global HTTP permissions
54
+ * addHTTPPermission('*', { global: globalPermission })
55
+ *
56
+ * // Add route-specific permissions
57
+ * addHTTPPermission('/api/admin/*', { admin: adminPermission })
58
+ * ```
59
+ */
60
+ export const addHTTPPermission = (pattern, permissions) => {
61
+ addHTTPPermissionCore(pattern, permissions);
62
+ };
63
+ export function defineHTTPRoutes(configOrRoutes) {
64
+ return defineHTTPRoutesCore(configOrRoutes);
65
+ }
66
+ /**
67
+ * Wires multiple HTTP routes from a nested map or array configuration.
68
+ */
69
+ export const wireHTTPRoutes = (config) => {
70
+ wireHTTPRoutesCore(config);
71
+ };
72
+ //# sourceMappingURL=pikku-http-types.gen.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pikku-http-types.gen.js","sourceRoot":"","sources":["../../../.pikku/http/pikku-http-types.gen.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH;;GAEG;AAEH,OAAO,EAA0B,QAAQ,IAAI,YAAY,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,iBAAiB,IAAI,qBAAqB,EAAE,cAAc,IAAI,kBAAkB,EAAE,gBAAgB,IAAI,oBAAoB,EAAE,MAAM,kBAAkB,CAAA;AAc3P;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CACtB,UAA0E,EAC1E,EAAE;IACF,YAAY,CAAC,UAAiB,CAAC,CAAA;AACjC,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,iBAA6C,EAC7C,UAA8B,EAC9B,EAAE;IACF,qBAAqB,CAAC,iBAAwB,EAAE,UAAiB,CAAC,CAAA;AACpE,CAAC,CAAA;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,OAAe,EACf,WAAwE,EACxE,EAAE;IACF,qBAAqB,CAAC,OAAO,EAAE,WAAkB,CAAC,CAAA;AACpD,CAAC,CAAA;AAoDD,MAAM,UAAU,gBAAgB,CAA8B,cAAgE;IAC5H,OAAO,oBAAoB,CAAC,cAAqB,CAAyC,CAAA;AAC5F,CAAC;AAED;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAiC,EAAQ,EAAE;IACxE,kBAAkB,CAAC,MAAa,CAAC,CAAA;AACnC,CAAC,CAAA"}
@@ -0,0 +1,147 @@
1
+ /**
2
+ * This file was generated by @pikku/cli@0.12.54
3
+ */
4
+ /**
5
+ * HTTP-specific type definitions for tree-shaking optimization
6
+ */
7
+
8
+ import { AssertHTTPWiringParams, wireHTTP as wireHTTPCore, addHTTPMiddleware as addHTTPMiddlewareCore, addHTTPPermission as addHTTPPermissionCore, wireHTTPRoutes as wireHTTPRoutesCore, defineHTTPRoutes as defineHTTPRoutesCore } from '@pikku/core/http'
9
+ import type { PikkuFunction, PikkuFunctionSessionless, PikkuPermission, PikkuMiddleware, PikkuFunctionConfig } from '../function/pikku-function-types.gen.js'
10
+ import type { CoreHTTPFunctionWiring, HTTPMethod, HTTPRouteBaseConfig } from '@pikku/core/http'
11
+
12
+ /**
13
+ * Type definition for HTTP API wirings with type-safe path parameters.
14
+ * Supports both authenticated and unauthenticated functions.
15
+ *
16
+ * @template In - Input type for the HTTP wiring
17
+ * @template Out - Output type for the HTTP wiring
18
+ * @template Route - String literal type for the HTTP path (e.g., "/users/:id")
19
+ */
20
+ type HTTPWiring<In, Out, Route extends string> = CoreHTTPFunctionWiring<In, Out, Route, PikkuFunction<In, Out, 'rpc' | 'session'>, PikkuFunctionSessionless<In, Out, 'rpc' | 'session'>, PikkuPermission<In>, PikkuMiddleware>
21
+
22
+ /**
23
+ * Registers an HTTP wiring with the Pikku framework.
24
+ *
25
+ * @template In - Input type for the HTTP wiring
26
+ * @template Out - Output type for the HTTP wiring
27
+ * @template Route - String literal type for the HTTP path (e.g., "/users/:id")
28
+ * @param httpWiring - HTTP wiring definition with handler, method, and optional middleware
29
+ */
30
+ export const wireHTTP = <In, Out, Route extends string>(
31
+ httpWiring: HTTPWiring<In, Out, Route> & AssertHTTPWiringParams<In, Route>
32
+ ) => {
33
+ wireHTTPCore(httpWiring as any)
34
+ }
35
+
36
+ /**
37
+ * Registers HTTP middleware either globally or for a specific route pattern.
38
+ *
39
+ * When a string route pattern is provided along with middleware, the middleware
40
+ * is applied only to that route. Otherwise, if an array is provided, it is treated
41
+ * as global middleware (applied to all routes).
42
+ *
43
+ * @param routeOrMiddleware - Either a global middleware array or a route pattern string
44
+ * @param middleware - The middleware array to apply when a route pattern is specified
45
+ *
46
+ * @example
47
+ * ```typescript
48
+ * // Add global HTTP middleware
49
+ * addHTTPMiddleware([authMiddleware, loggingMiddleware])
50
+ *
51
+ * // Add route-specific middleware
52
+ * addHTTPMiddleware('/api/admin/*', [adminAuthMiddleware])
53
+ * ```
54
+ */
55
+ export const addHTTPMiddleware = (
56
+ routeOrMiddleware: PikkuMiddleware[] | string,
57
+ middleware?: PikkuMiddleware[]
58
+ ) => {
59
+ addHTTPMiddlewareCore(routeOrMiddleware as any, middleware as any)
60
+ }
61
+
62
+ /**
63
+ * Registers HTTP permissions either globally or for a specific route pattern.
64
+ *
65
+ * When a string route pattern is provided along with permissions, the permissions
66
+ * are applied only to that route. Permissions can be passed as an array or as a
67
+ * permission group object.
68
+ *
69
+ * @param pattern - Route pattern string (e.g., '*' for all routes, '/api/*' for specific routes)
70
+ * @param permissions - The permissions to apply for the specified route pattern
71
+ *
72
+ * @example
73
+ * ```typescript
74
+ * // Add global HTTP permissions
75
+ * addHTTPPermission('*', { global: globalPermission })
76
+ *
77
+ * // Add route-specific permissions
78
+ * addHTTPPermission('/api/admin/*', { admin: adminPermission })
79
+ * ```
80
+ */
81
+ export const addHTTPPermission = <In = unknown>(
82
+ pattern: string,
83
+ permissions: Record<string, PikkuPermission<In>> | PikkuPermission<In>[]
84
+ ) => {
85
+ addHTTPPermissionCore(pattern, permissions as any)
86
+ }
87
+
88
+ /**
89
+ * Route configuration for wireHTTPRoutes with proper typing
90
+ */
91
+ type HTTPRouteConfig = HTTPRouteBaseConfig & {
92
+ method: HTTPMethod
93
+ route: string
94
+ func: PikkuFunctionConfig<any, any, any, any, any, any>
95
+ auth?: boolean
96
+ permissions?: Record<string, PikkuPermission | PikkuPermission[]>
97
+ middleware?: PikkuMiddleware[]
98
+ sse?: boolean
99
+ }
100
+
101
+ /**
102
+ * Typed route map for wireHTTPRoutes
103
+ */
104
+ type TypedHTTPRouteMap = {
105
+ [key: string]: HTTPRouteConfig | TypedHTTPRouteMap | TypedHTTPRouteContract
106
+ }
107
+
108
+ /**
109
+ * Typed route contract for defineHTTPRoutes
110
+ */
111
+ type TypedHTTPRouteContract<T extends TypedHTTPRouteMap = TypedHTTPRouteMap> = TypedHTTPRoutesGroupConfig & {
112
+ routes: T
113
+ }
114
+
115
+ /**
116
+ * Group config with typed middleware/permissions
117
+ */
118
+ type TypedHTTPRoutesGroupConfig = {
119
+ basePath?: string
120
+ tags?: string[]
121
+ auth?: boolean
122
+ middleware?: PikkuMiddleware[]
123
+ permissions?: Record<string, PikkuPermission | PikkuPermission[]>
124
+ }
125
+
126
+ /**
127
+ * Full config for wireHTTPRoutes
128
+ */
129
+ type TypedWireHTTPRoutesConfig = TypedHTTPRoutesGroupConfig & {
130
+ routes: TypedHTTPRouteMap | HTTPRouteConfig[]
131
+ }
132
+
133
+ /**
134
+ * Type-safe helper for defining route contracts that can be composed.
135
+ */
136
+ export function defineHTTPRoutes<T extends TypedHTTPRouteMap>(routes: T): TypedHTTPRouteContract<T>
137
+ export function defineHTTPRoutes<T extends TypedHTTPRouteMap>(config: TypedHTTPRoutesGroupConfig & { routes: T }): TypedHTTPRouteContract<T>
138
+ export function defineHTTPRoutes<T extends TypedHTTPRouteMap>(configOrRoutes: T | (TypedHTTPRoutesGroupConfig & { routes: T })): TypedHTTPRouteContract<T> {
139
+ return defineHTTPRoutesCore(configOrRoutes as any) as unknown as TypedHTTPRouteContract<T>
140
+ }
141
+
142
+ /**
143
+ * Wires multiple HTTP routes from a nested map or array configuration.
144
+ */
145
+ export const wireHTTPRoutes = (config: TypedWireHTTPRoutesConfig): void => {
146
+ wireHTTPRoutesCore(config as any)
147
+ }