@adventurelabs/scout-core 1.5.4 → 2.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (219) hide show
  1. package/README.md +47 -0
  2. package/dist/api_keys/actions.d.ts +0 -1
  3. package/dist/api_keys/actions.js +0 -14
  4. package/dist/client/index.d.ts +75 -0
  5. package/dist/client/index.js +82 -0
  6. package/dist/constants/index.d.ts +1 -0
  7. package/dist/constants/index.js +1 -0
  8. package/dist/helpers/analysis_usage/jobs_server.d.ts +25 -0
  9. package/dist/helpers/analysis_usage/jobs_server.js +10 -0
  10. package/dist/helpers/analysis_usage/tasks_server.d.ts +63 -0
  11. package/dist/helpers/analysis_usage/tasks_server.js +14 -0
  12. package/dist/helpers/artifacts.d.ts +0 -1
  13. package/dist/helpers/artifacts.js +10 -147
  14. package/dist/helpers/artifacts.queries.d.ts +26 -0
  15. package/dist/helpers/{artifacts.internal.js → artifacts.queries.js} +24 -41
  16. package/dist/helpers/auth.d.ts +1 -1
  17. package/dist/helpers/auth.js +2 -3
  18. package/dist/helpers/auth_server.d.ts +2 -0
  19. package/dist/helpers/auth_server.js +10 -0
  20. package/dist/helpers/certificates_server.d.ts +101 -0
  21. package/dist/helpers/certificates_server.js +42 -0
  22. package/dist/helpers/chat.d.ts +1 -2
  23. package/dist/helpers/chat.js +3 -38
  24. package/dist/helpers/chat.queries.d.ts +13 -0
  25. package/dist/helpers/chat.queries.js +39 -0
  26. package/dist/helpers/client_abilities_jwt_keys.js +0 -1
  27. package/dist/helpers/client_abilities_token_server.d.ts +1 -0
  28. package/dist/helpers/client_abilities_token_server.js +5 -2
  29. package/dist/helpers/connectivity.d.ts +1 -5
  30. package/dist/helpers/connectivity.js +7 -140
  31. package/dist/helpers/connectivity.queries.d.ts +18 -0
  32. package/dist/helpers/connectivity.queries.js +121 -0
  33. package/dist/helpers/contacts_server.d.ts +63 -0
  34. package/dist/helpers/contacts_server.js +18 -0
  35. package/dist/helpers/deviceTransfer.js +2 -11
  36. package/dist/helpers/deviceTransfer.queries.d.ts +4 -0
  37. package/dist/helpers/deviceTransfer.queries.js +11 -0
  38. package/dist/helpers/devices.js +4 -61
  39. package/dist/helpers/devices.queries.d.ts +4 -1
  40. package/dist/helpers/devices.queries.js +52 -0
  41. package/dist/helpers/document_templates.js +6 -52
  42. package/dist/helpers/document_templates.queries.d.ts +9 -0
  43. package/dist/helpers/document_templates.queries.js +56 -0
  44. package/dist/helpers/documents_server.d.ts +226 -0
  45. package/dist/helpers/documents_server.js +38 -0
  46. package/dist/helpers/email.d.ts +0 -6
  47. package/dist/helpers/email.js +1 -19
  48. package/dist/helpers/embeddings.d.ts +0 -5
  49. package/dist/helpers/embeddings.js +2 -19
  50. package/dist/helpers/embeddings.queries.d.ts +7 -0
  51. package/dist/helpers/{embeddings.internal.js → embeddings.queries.js} +2 -2
  52. package/dist/helpers/eventUtils.d.ts +3 -12
  53. package/dist/helpers/eventUtils.js +0 -10
  54. package/dist/helpers/events.d.ts +0 -1
  55. package/dist/helpers/events.js +7 -107
  56. package/dist/helpers/events.queries.d.ts +17 -0
  57. package/dist/helpers/{events.internal.js → events.queries.js} +24 -15
  58. package/dist/helpers/health_metrics.js +3 -38
  59. package/dist/helpers/health_metrics.queries.d.ts +12 -0
  60. package/dist/helpers/health_metrics.queries.js +39 -0
  61. package/dist/helpers/heartbeats.js +4 -83
  62. package/dist/helpers/heartbeats.queries.d.ts +11 -0
  63. package/dist/helpers/heartbeats.queries.js +76 -0
  64. package/dist/helpers/herd_allowed_domains.js +2 -12
  65. package/dist/helpers/{herd_allowed_domains_internal.d.ts → herd_allowed_domains.queries.d.ts} +1 -1
  66. package/dist/helpers/{herd_allowed_domains_internal.js → herd_allowed_domains.queries.js} +2 -2
  67. package/dist/helpers/herd_credentials_server.d.ts +76 -0
  68. package/dist/helpers/herd_credentials_server.js +22 -0
  69. package/dist/helpers/herd_modules.queries.js +10 -7
  70. package/dist/helpers/herd_roles.js +13 -148
  71. package/dist/helpers/herd_roles.queries.d.ts +18 -0
  72. package/dist/helpers/{herd_roles_internal.js → herd_roles.queries.js} +28 -28
  73. package/dist/helpers/herds.js +5 -47
  74. package/dist/helpers/herds.queries.d.ts +8 -1
  75. package/dist/helpers/herds.queries.js +48 -0
  76. package/dist/helpers/invitations.js +7 -58
  77. package/dist/helpers/invitations.queries.d.ts +10 -0
  78. package/dist/helpers/{invitations_internal.js → invitations.queries.js} +12 -12
  79. package/dist/helpers/issuers.js +6 -52
  80. package/dist/helpers/issuers.queries.d.ts +9 -0
  81. package/dist/helpers/issuers.queries.js +53 -0
  82. package/dist/helpers/layers.js +2 -20
  83. package/dist/helpers/layers.queries.d.ts +2 -1
  84. package/dist/helpers/layers.queries.js +9 -13
  85. package/dist/helpers/lifecycle_server.d.ts +175 -0
  86. package/dist/helpers/lifecycle_server.js +38 -0
  87. package/dist/helpers/localizations.js +5 -42
  88. package/dist/helpers/localizations.queries.d.ts +8 -0
  89. package/dist/helpers/localizations.queries.js +45 -0
  90. package/dist/helpers/maintenance_requests_server.d.ts +124 -0
  91. package/dist/helpers/maintenance_requests_server.js +34 -0
  92. package/dist/helpers/manufacturers.js +5 -43
  93. package/dist/helpers/manufacturers.queries.d.ts +10 -0
  94. package/dist/helpers/manufacturers.queries.js +46 -0
  95. package/dist/helpers/media_urls.d.ts +13 -0
  96. package/dist/helpers/media_urls.js +21 -0
  97. package/dist/helpers/models.js +8 -80
  98. package/dist/helpers/models.queries.d.ts +13 -0
  99. package/dist/helpers/models.queries.js +79 -0
  100. package/dist/helpers/observations_server.d.ts +51 -0
  101. package/dist/helpers/observations_server.js +22 -0
  102. package/dist/helpers/operating_contexts.js +39 -154
  103. package/dist/helpers/operating_contexts.queries.d.ts +48 -0
  104. package/dist/helpers/operating_contexts.queries.js +223 -0
  105. package/dist/helpers/operators.js +4 -57
  106. package/dist/helpers/operators.queries.d.ts +7 -0
  107. package/dist/helpers/operators.queries.js +55 -0
  108. package/dist/helpers/parts.d.ts +0 -87
  109. package/dist/helpers/parts.js +4 -90
  110. package/dist/helpers/parts_server.d.ts +260 -0
  111. package/dist/helpers/parts_server.js +71 -0
  112. package/dist/helpers/pins_server.d.ts +118 -0
  113. package/dist/helpers/pins_server.js +38 -0
  114. package/dist/helpers/plans.js +4 -56
  115. package/dist/helpers/plans.queries.d.ts +4 -1
  116. package/dist/helpers/plans.queries.js +39 -12
  117. package/dist/helpers/points_for_user_server.d.ts +9 -0
  118. package/dist/helpers/points_for_user_server.js +14 -0
  119. package/dist/helpers/product_compatibilities.js +6 -78
  120. package/dist/helpers/product_compatibilities.queries.d.ts +9 -0
  121. package/dist/helpers/product_compatibilities.queries.js +83 -0
  122. package/dist/helpers/product_numbers.js +6 -55
  123. package/dist/helpers/product_numbers.queries.d.ts +9 -0
  124. package/dist/helpers/product_numbers.queries.js +58 -0
  125. package/dist/helpers/products.js +6 -54
  126. package/dist/helpers/products.queries.d.ts +11 -0
  127. package/dist/helpers/products.queries.js +58 -0
  128. package/dist/helpers/providers.js +5 -71
  129. package/dist/helpers/providers.queries.d.ts +5 -1
  130. package/dist/helpers/providers.queries.js +52 -11
  131. package/dist/helpers/pubsub_token_server.d.ts +1 -0
  132. package/dist/helpers/pubsub_token_server.js +5 -2
  133. package/dist/helpers/segmentations_sam3.js +5 -78
  134. package/dist/helpers/segmentations_sam3.queries.d.ts +16 -0
  135. package/dist/helpers/segmentations_sam3.queries.js +81 -0
  136. package/dist/helpers/sensor_poses_server.d.ts +98 -0
  137. package/dist/helpers/sensor_poses_server.js +26 -0
  138. package/dist/helpers/session_incidents_server.d.ts +106 -0
  139. package/dist/helpers/session_incidents_server.js +22 -0
  140. package/dist/helpers/session_summaries.d.ts +2 -0
  141. package/dist/helpers/session_summaries.js +7 -23
  142. package/dist/helpers/session_summaries.queries.d.ts +6 -3
  143. package/dist/helpers/session_summaries.queries.js +27 -0
  144. package/dist/helpers/sessions.js +8 -122
  145. package/dist/helpers/sessions.queries.d.ts +14 -2
  146. package/dist/helpers/sessions.queries.js +88 -1
  147. package/dist/helpers/storage.js +0 -1
  148. package/dist/helpers/supabase_auth.d.ts +6 -0
  149. package/dist/helpers/supabase_auth.js +37 -0
  150. package/dist/helpers/tags.d.ts +0 -1
  151. package/dist/helpers/tags.js +13 -559
  152. package/dist/helpers/tags.queries.d.ts +33 -0
  153. package/dist/helpers/tags.queries.js +454 -0
  154. package/dist/helpers/user_credentials_server.d.ts +76 -0
  155. package/dist/helpers/user_credentials_server.js +22 -0
  156. package/dist/helpers/users.d.ts +2 -2
  157. package/dist/helpers/users.js +8 -107
  158. package/dist/helpers/users.queries.d.ts +9 -1
  159. package/dist/helpers/users.queries.js +107 -0
  160. package/dist/helpers/versions_software.d.ts +3 -1
  161. package/dist/helpers/versions_software.js +24 -0
  162. package/dist/helpers/versions_software_server.d.ts +83 -4
  163. package/dist/helpers/versions_software_server.js +23 -50
  164. package/dist/helpers/zones.d.ts +1 -16
  165. package/dist/helpers/zones.js +4 -104
  166. package/dist/helpers/zones.queries.d.ts +6 -0
  167. package/dist/helpers/zones.queries.js +78 -0
  168. package/dist/hooks/useAuthorizedRealtimeTopics.js +8 -2
  169. package/dist/hooks/useInfiniteQuery.js +18 -14
  170. package/dist/hooks/useScoutRealtimeBroadcast.js +8 -6
  171. package/dist/hooks/useScoutRealtimeDocuments.js +3 -2
  172. package/dist/hooks/useScoutRefresh.d.ts +9 -25
  173. package/dist/hooks/useScoutRefresh.js +33 -213
  174. package/dist/providers/ScoutRefreshProvider.d.ts +1 -1
  175. package/dist/providers/ScoutRefreshProvider.js +56 -13
  176. package/dist/server/index.d.ts +77 -0
  177. package/dist/server/index.js +79 -0
  178. package/dist/server/middleware.d.ts +2 -0
  179. package/dist/server/middleware.js +2 -0
  180. package/dist/server/supabase.d.ts +2 -0
  181. package/dist/server/supabase.js +2 -0
  182. package/dist/store/api.d.ts +40 -40
  183. package/dist/store/api.js +38 -109
  184. package/dist/store/configureStore.d.ts +0 -55
  185. package/dist/store/configureStore.js +1 -8
  186. package/dist/store/hooks.js +1 -0
  187. package/dist/supabase/client.d.ts +3 -0
  188. package/dist/supabase/client.js +10 -0
  189. package/dist/supabase/middleware.d.ts +1 -0
  190. package/dist/supabase/middleware.js +6 -20
  191. package/dist/supabase/server.d.ts +7 -2
  192. package/dist/supabase/server.js +13 -1
  193. package/dist/types/db.d.ts +2 -2
  194. package/dist/types/index.d.ts +5 -0
  195. package/dist/types/index.js +5 -0
  196. package/package.json +53 -4
  197. package/dist/api_keys/index.d.ts +0 -1
  198. package/dist/api_keys/index.js +0 -1
  199. package/dist/helpers/artifacts.internal.d.ts +0 -22
  200. package/dist/helpers/client_abilities_jwt_keys_internal.d.ts +0 -9
  201. package/dist/helpers/client_abilities_jwt_keys_internal.js +0 -20
  202. package/dist/helpers/connectivity.internal.d.ts +0 -10
  203. package/dist/helpers/connectivity.internal.js +0 -47
  204. package/dist/helpers/credentials.d.ts +0 -9
  205. package/dist/helpers/credentials.js +0 -92
  206. package/dist/helpers/embeddings.internal.d.ts +0 -5
  207. package/dist/helpers/events.internal.d.ts +0 -13
  208. package/dist/helpers/herd_roles_internal.d.ts +0 -18
  209. package/dist/helpers/index.d.ts +0 -56
  210. package/dist/helpers/index.js +0 -56
  211. package/dist/helpers/invitations_internal.d.ts +0 -10
  212. package/dist/helpers/versions_software_internal.d.ts +0 -6
  213. package/dist/helpers/versions_software_internal.js +0 -53
  214. package/dist/hooks/useDeviceDisplayName.d.ts +0 -8
  215. package/dist/hooks/useDeviceDisplayName.js +0 -49
  216. package/dist/index.d.ts +0 -108
  217. package/dist/index.js +0 -114
  218. package/dist/supabase/index.d.ts +0 -2
  219. package/dist/supabase/index.js +0 -2
@@ -0,0 +1,260 @@
1
+ import { EntityLifecycle, PartInsert } from "../types/db";
2
+ import { LifecycleUpdateOptions } from "./lifecycle";
3
+ export declare function server_get_parts_by_device_id(device_id: number): Promise<import("../types").IWebResponseCompatible<{
4
+ certificate_id: number | null;
5
+ created_at: string;
6
+ device_id: number | null;
7
+ health: import("../types").Database["public"]["Enums"]["health_item"];
8
+ herd_id: number | null;
9
+ id: number;
10
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
11
+ lifecycle_changed_at: string;
12
+ lifecycle_changed_by: string | null;
13
+ lifecycle_reason: string | null;
14
+ primary_calibration_id: number | null;
15
+ product_number: string;
16
+ serial_number: string;
17
+ updated_at: string | null;
18
+ }[]>>;
19
+ export declare function server_get_part_by_id(part_id: number): Promise<import("../types").IWebResponseCompatible<{
20
+ certificate_id: number | null;
21
+ created_at: string;
22
+ device_id: number | null;
23
+ health: import("../types").Database["public"]["Enums"]["health_item"];
24
+ herd_id: number | null;
25
+ id: number;
26
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
27
+ lifecycle_changed_at: string;
28
+ lifecycle_changed_by: string | null;
29
+ lifecycle_reason: string | null;
30
+ primary_calibration_id: number | null;
31
+ product_number: string;
32
+ serial_number: string;
33
+ updated_at: string | null;
34
+ } | null>>;
35
+ export declare function server_get_parts_by_serial_number(serial_number: string): Promise<import("../types").IWebResponseCompatible<{
36
+ certificate_id: number | null;
37
+ created_at: string;
38
+ device_id: number | null;
39
+ health: import("../types").Database["public"]["Enums"]["health_item"];
40
+ herd_id: number | null;
41
+ id: number;
42
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
43
+ lifecycle_changed_at: string;
44
+ lifecycle_changed_by: string | null;
45
+ lifecycle_reason: string | null;
46
+ primary_calibration_id: number | null;
47
+ product_number: string;
48
+ serial_number: string;
49
+ updated_at: string | null;
50
+ }[]>>;
51
+ export declare function server_get_parts_by_product_number(product_number: string): Promise<import("../types").IWebResponseCompatible<{
52
+ certificate_id: number | null;
53
+ created_at: string;
54
+ device_id: number | null;
55
+ health: import("../types").Database["public"]["Enums"]["health_item"];
56
+ herd_id: number | null;
57
+ id: number;
58
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
59
+ lifecycle_changed_at: string;
60
+ lifecycle_changed_by: string | null;
61
+ lifecycle_reason: string | null;
62
+ primary_calibration_id: number | null;
63
+ product_number: string;
64
+ serial_number: string;
65
+ updated_at: string | null;
66
+ }[]>>;
67
+ export declare function server_get_parts_by_lifecycle(lifecycle: EntityLifecycle): Promise<import("../types").IWebResponseCompatible<{
68
+ certificate_id: number | null;
69
+ created_at: string;
70
+ device_id: number | null;
71
+ health: import("../types").Database["public"]["Enums"]["health_item"];
72
+ herd_id: number | null;
73
+ id: number;
74
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
75
+ lifecycle_changed_at: string;
76
+ lifecycle_changed_by: string | null;
77
+ lifecycle_reason: string | null;
78
+ primary_calibration_id: number | null;
79
+ product_number: string;
80
+ serial_number: string;
81
+ updated_at: string | null;
82
+ }[]>>;
83
+ /** @deprecated Use server_get_parts_by_lifecycle */
84
+ export declare function server_get_parts_by_status(lifecycle: EntityLifecycle): Promise<import("../types").IWebResponseCompatible<{
85
+ certificate_id: number | null;
86
+ created_at: string;
87
+ device_id: number | null;
88
+ health: import("../types").Database["public"]["Enums"]["health_item"];
89
+ herd_id: number | null;
90
+ id: number;
91
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
92
+ lifecycle_changed_at: string;
93
+ lifecycle_changed_by: string | null;
94
+ lifecycle_reason: string | null;
95
+ primary_calibration_id: number | null;
96
+ product_number: string;
97
+ serial_number: string;
98
+ updated_at: string | null;
99
+ }[]>>;
100
+ export declare function server_create_part(newPart: PartInsert): Promise<import("../types").IWebResponseCompatible<{
101
+ certificate_id: number | null;
102
+ created_at: string;
103
+ device_id: number | null;
104
+ health: import("../types").Database["public"]["Enums"]["health_item"];
105
+ herd_id: number | null;
106
+ id: number;
107
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
108
+ lifecycle_changed_at: string;
109
+ lifecycle_changed_by: string | null;
110
+ lifecycle_reason: string | null;
111
+ primary_calibration_id: number | null;
112
+ product_number: string;
113
+ serial_number: string;
114
+ updated_at: string | null;
115
+ } | null>>;
116
+ export declare function server_update_part(part_id: number, updatedPart: Partial<PartInsert>): Promise<import("../types").IWebResponseCompatible<{
117
+ certificate_id: number | null;
118
+ created_at: string;
119
+ device_id: number | null;
120
+ health: import("../types").Database["public"]["Enums"]["health_item"];
121
+ herd_id: number | null;
122
+ id: number;
123
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
124
+ lifecycle_changed_at: string;
125
+ lifecycle_changed_by: string | null;
126
+ lifecycle_reason: string | null;
127
+ primary_calibration_id: number | null;
128
+ product_number: string;
129
+ serial_number: string;
130
+ updated_at: string | null;
131
+ } | null>>;
132
+ export declare function server_delete_part(part_id: number, options?: LifecycleUpdateOptions): Promise<import("../types").IWebResponseCompatible<{
133
+ certificate_id: number | null;
134
+ created_at: string;
135
+ device_id: number | null;
136
+ health: import("../types").Database["public"]["Enums"]["health_item"];
137
+ herd_id: number | null;
138
+ id: number;
139
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
140
+ lifecycle_changed_at: string;
141
+ lifecycle_changed_by: string | null;
142
+ lifecycle_reason: string | null;
143
+ primary_calibration_id: number | null;
144
+ product_number: string;
145
+ serial_number: string;
146
+ updated_at: string | null;
147
+ } | null>>;
148
+ export declare function server_update_part_status(part_id: number, lifecycle: EntityLifecycle, options?: LifecycleUpdateOptions): Promise<import("../types").IWebResponseCompatible<{
149
+ certificate_id: number | null;
150
+ created_at: string;
151
+ device_id: number | null;
152
+ health: import("../types").Database["public"]["Enums"]["health_item"];
153
+ herd_id: number | null;
154
+ id: number;
155
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
156
+ lifecycle_changed_at: string;
157
+ lifecycle_changed_by: string | null;
158
+ lifecycle_reason: string | null;
159
+ primary_calibration_id: number | null;
160
+ product_number: string;
161
+ serial_number: string;
162
+ updated_at: string | null;
163
+ } | null>>;
164
+ export declare function server_get_parts_by_certificate_id(certificate_id: number): Promise<import("../types").IWebResponseCompatible<{
165
+ certificate_id: number | null;
166
+ created_at: string;
167
+ device_id: number | null;
168
+ health: import("../types").Database["public"]["Enums"]["health_item"];
169
+ herd_id: number | null;
170
+ id: number;
171
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
172
+ lifecycle_changed_at: string;
173
+ lifecycle_changed_by: string | null;
174
+ lifecycle_reason: string | null;
175
+ primary_calibration_id: number | null;
176
+ product_number: string;
177
+ serial_number: string;
178
+ updated_at: string | null;
179
+ }[]>>;
180
+ export declare function server_get_parts_by_herd_id(herd_id: number): Promise<import("../types").IWebResponseCompatible<{
181
+ certificate_id: number | null;
182
+ created_at: string;
183
+ device_id: number | null;
184
+ health: import("../types").Database["public"]["Enums"]["health_item"];
185
+ herd_id: number | null;
186
+ id: number;
187
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
188
+ lifecycle_changed_at: string;
189
+ lifecycle_changed_by: string | null;
190
+ lifecycle_reason: string | null;
191
+ primary_calibration_id: number | null;
192
+ product_number: string;
193
+ serial_number: string;
194
+ updated_at: string | null;
195
+ }[]>>;
196
+ export declare function server_get_parts_by_herd_ids(herd_ids: number[]): Promise<import("../types").IWebResponseCompatible<Record<number, import("../types").IPartWithProduct[]>>>;
197
+ export declare function server_restore_part(part_id: number, options?: LifecycleUpdateOptions): Promise<import("../types").IWebResponseCompatible<{
198
+ certificate_id: number | null;
199
+ created_at: string;
200
+ device_id: number | null;
201
+ health: import("../types").Database["public"]["Enums"]["health_item"];
202
+ herd_id: number | null;
203
+ id: number;
204
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
205
+ lifecycle_changed_at: string;
206
+ lifecycle_changed_by: string | null;
207
+ lifecycle_reason: string | null;
208
+ primary_calibration_id: number | null;
209
+ product_number: string;
210
+ serial_number: string;
211
+ updated_at: string | null;
212
+ } | null>>;
213
+ export declare function server_hard_delete_part(part_id: number): Promise<import("../types").IWebResponseCompatible<{
214
+ certificate_id: number | null;
215
+ created_at: string;
216
+ device_id: number | null;
217
+ health: import("../types").Database["public"]["Enums"]["health_item"];
218
+ herd_id: number | null;
219
+ id: number;
220
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
221
+ lifecycle_changed_at: string;
222
+ lifecycle_changed_by: string | null;
223
+ lifecycle_reason: string | null;
224
+ primary_calibration_id: number | null;
225
+ product_number: string;
226
+ serial_number: string;
227
+ updated_at: string | null;
228
+ } | null>>;
229
+ export declare function server_get_deleted_parts_by_device_id(device_id: number): Promise<import("../types").IWebResponseCompatible<{
230
+ certificate_id: number | null;
231
+ created_at: string;
232
+ device_id: number | null;
233
+ health: import("../types").Database["public"]["Enums"]["health_item"];
234
+ herd_id: number | null;
235
+ id: number;
236
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
237
+ lifecycle_changed_at: string;
238
+ lifecycle_changed_by: string | null;
239
+ lifecycle_reason: string | null;
240
+ primary_calibration_id: number | null;
241
+ product_number: string;
242
+ serial_number: string;
243
+ updated_at: string | null;
244
+ }[]>>;
245
+ export declare function server_get_parts_by_product_and_serial(product_number: string, serial_number: string): Promise<import("../types").IWebResponseCompatible<{
246
+ certificate_id: number | null;
247
+ created_at: string;
248
+ device_id: number | null;
249
+ health: import("../types").Database["public"]["Enums"]["health_item"];
250
+ herd_id: number | null;
251
+ id: number;
252
+ lifecycle: import("../types").Database["public"]["Enums"]["entity_lifecycle"];
253
+ lifecycle_changed_at: string;
254
+ lifecycle_changed_by: string | null;
255
+ lifecycle_reason: string | null;
256
+ primary_calibration_id: number | null;
257
+ product_number: string;
258
+ serial_number: string;
259
+ updated_at: string | null;
260
+ } | null>>;
@@ -0,0 +1,71 @@
1
+ import { newServerClient } from "../supabase/server";
2
+ import { create_part, delete_part, get_deleted_parts_by_device_id, get_part_by_id, get_parts_by_certificate_id, get_parts_by_device_id, get_parts_by_herd_id, get_parts_by_herd_ids, get_parts_by_lifecycle, get_parts_by_product_and_serial, get_parts_by_product_number, get_parts_by_serial_number, get_parts_by_status, hard_delete_part, restore_part, update_part, update_part_status, } from "./parts";
3
+ export async function server_get_parts_by_device_id(device_id) {
4
+ const client = await newServerClient();
5
+ return get_parts_by_device_id(client, device_id);
6
+ }
7
+ export async function server_get_part_by_id(part_id) {
8
+ const client = await newServerClient();
9
+ return get_part_by_id(client, part_id);
10
+ }
11
+ export async function server_get_parts_by_serial_number(serial_number) {
12
+ const client = await newServerClient();
13
+ return get_parts_by_serial_number(client, serial_number);
14
+ }
15
+ export async function server_get_parts_by_product_number(product_number) {
16
+ const client = await newServerClient();
17
+ return get_parts_by_product_number(client, product_number);
18
+ }
19
+ export async function server_get_parts_by_lifecycle(lifecycle) {
20
+ const client = await newServerClient();
21
+ return get_parts_by_lifecycle(client, lifecycle);
22
+ }
23
+ /** @deprecated Use server_get_parts_by_lifecycle */
24
+ export async function server_get_parts_by_status(lifecycle) {
25
+ const client = await newServerClient();
26
+ return get_parts_by_status(client, lifecycle);
27
+ }
28
+ export async function server_create_part(newPart) {
29
+ const client = await newServerClient();
30
+ return create_part(client, newPart);
31
+ }
32
+ export async function server_update_part(part_id, updatedPart) {
33
+ const client = await newServerClient();
34
+ return update_part(client, part_id, updatedPart);
35
+ }
36
+ export async function server_delete_part(part_id, options) {
37
+ const client = await newServerClient();
38
+ return delete_part(client, part_id, options);
39
+ }
40
+ export async function server_update_part_status(part_id, lifecycle, options) {
41
+ const client = await newServerClient();
42
+ return update_part_status(client, part_id, lifecycle, options);
43
+ }
44
+ export async function server_get_parts_by_certificate_id(certificate_id) {
45
+ const client = await newServerClient();
46
+ return get_parts_by_certificate_id(client, certificate_id);
47
+ }
48
+ export async function server_get_parts_by_herd_id(herd_id) {
49
+ const client = await newServerClient();
50
+ return get_parts_by_herd_id(client, herd_id);
51
+ }
52
+ export async function server_get_parts_by_herd_ids(herd_ids) {
53
+ const client = await newServerClient();
54
+ return get_parts_by_herd_ids(client, herd_ids);
55
+ }
56
+ export async function server_restore_part(part_id, options) {
57
+ const client = await newServerClient();
58
+ return restore_part(client, part_id, options);
59
+ }
60
+ export async function server_hard_delete_part(part_id) {
61
+ const client = await newServerClient();
62
+ return hard_delete_part(client, part_id);
63
+ }
64
+ export async function server_get_deleted_parts_by_device_id(device_id) {
65
+ const client = await newServerClient();
66
+ return get_deleted_parts_by_device_id(client, device_id);
67
+ }
68
+ export async function server_get_parts_by_product_and_serial(product_number, serial_number) {
69
+ const client = await newServerClient();
70
+ return get_parts_by_product_and_serial(client, product_number, serial_number);
71
+ }
@@ -0,0 +1,118 @@
1
+ import { PinInsert } from "../types/db";
2
+ export declare function server_get_pins_for_herd(herd_id: number): Promise<import("../types").IWebResponseCompatible<{
3
+ id: number | null;
4
+ created_at: string | null;
5
+ location: unknown;
6
+ altitude_relative_to_ground: number | null;
7
+ color: string | null;
8
+ name: string | null;
9
+ description: string | null;
10
+ herd_id: number | null;
11
+ created_by: string | null;
12
+ latitude: number | null;
13
+ longitude: number | null;
14
+ }[]>>;
15
+ export declare function server_get_pin_by_id(pin_id: number): Promise<import("../types").IWebResponseCompatible<{
16
+ id: number | null;
17
+ created_at: string | null;
18
+ location: unknown;
19
+ altitude_relative_to_ground: number | null;
20
+ color: string | null;
21
+ name: string | null;
22
+ description: string | null;
23
+ herd_id: number | null;
24
+ created_by: string | null;
25
+ latitude: number | null;
26
+ longitude: number | null;
27
+ } | null>>;
28
+ export declare function server_create_pin(newPin: PinInsert): Promise<import("../types").IWebResponseCompatible<{
29
+ id: number | null;
30
+ created_at: string | null;
31
+ location: unknown;
32
+ altitude_relative_to_ground: number | null;
33
+ color: string | null;
34
+ name: string | null;
35
+ description: string | null;
36
+ herd_id: number | null;
37
+ created_by: string | null;
38
+ latitude: number | null;
39
+ longitude: number | null;
40
+ } | null>>;
41
+ export declare function server_create_pin_with_coordinates(latitude: number, longitude: number, pinData: Omit<PinInsert, "location">): Promise<import("../types").IWebResponseCompatible<{
42
+ id: number | null;
43
+ created_at: string | null;
44
+ location: unknown;
45
+ altitude_relative_to_ground: number | null;
46
+ color: string | null;
47
+ name: string | null;
48
+ description: string | null;
49
+ herd_id: number | null;
50
+ created_by: string | null;
51
+ latitude: number | null;
52
+ longitude: number | null;
53
+ } | null>>;
54
+ export declare function server_update_pin(pin_id: number, updatedPin: Partial<PinInsert>): Promise<import("../types").IWebResponseCompatible<{
55
+ id: number | null;
56
+ created_at: string | null;
57
+ location: unknown;
58
+ altitude_relative_to_ground: number | null;
59
+ color: string | null;
60
+ name: string | null;
61
+ description: string | null;
62
+ herd_id: number | null;
63
+ created_by: string | null;
64
+ latitude: number | null;
65
+ longitude: number | null;
66
+ } | null>>;
67
+ export declare function server_update_pin_location(pin_id: number, latitude: number, longitude: number, updatedPin?: Partial<Omit<PinInsert, "location">>): Promise<import("../types").IWebResponseCompatible<{
68
+ id: number | null;
69
+ created_at: string | null;
70
+ location: unknown;
71
+ altitude_relative_to_ground: number | null;
72
+ color: string | null;
73
+ name: string | null;
74
+ description: string | null;
75
+ herd_id: number | null;
76
+ created_by: string | null;
77
+ latitude: number | null;
78
+ longitude: number | null;
79
+ } | null>>;
80
+ export declare function server_delete_pin(pin_id: number): Promise<import("../types").IWebResponseCompatible<{
81
+ id: number | null;
82
+ created_at: string | null;
83
+ location: unknown;
84
+ altitude_relative_to_ground: number | null;
85
+ color: string | null;
86
+ name: string | null;
87
+ description: string | null;
88
+ herd_id: number | null;
89
+ created_by: string | null;
90
+ latitude: number | null;
91
+ longitude: number | null;
92
+ } | null>>;
93
+ export declare function server_get_pins_by_created_by(user_id: string): Promise<import("../types").IWebResponseCompatible<{
94
+ id: number | null;
95
+ created_at: string | null;
96
+ location: unknown;
97
+ altitude_relative_to_ground: number | null;
98
+ color: string | null;
99
+ name: string | null;
100
+ description: string | null;
101
+ herd_id: number | null;
102
+ created_by: string | null;
103
+ latitude: number | null;
104
+ longitude: number | null;
105
+ }[]>>;
106
+ export declare function server_get_pins_by_color(herd_id: number, color: string): Promise<import("../types").IWebResponseCompatible<{
107
+ id: number | null;
108
+ created_at: string | null;
109
+ location: unknown;
110
+ altitude_relative_to_ground: number | null;
111
+ color: string | null;
112
+ name: string | null;
113
+ description: string | null;
114
+ herd_id: number | null;
115
+ created_by: string | null;
116
+ latitude: number | null;
117
+ longitude: number | null;
118
+ }[]>>;
@@ -0,0 +1,38 @@
1
+ import { newServerClient } from "../supabase/server";
2
+ import { create_pin, create_pin_with_coordinates, delete_pin, get_pin_by_id, get_pins_by_color, get_pins_by_created_by, get_pins_for_herd, update_pin, update_pin_location, } from "./pins";
3
+ export async function server_get_pins_for_herd(herd_id) {
4
+ const client = await newServerClient();
5
+ return get_pins_for_herd(client, herd_id);
6
+ }
7
+ export async function server_get_pin_by_id(pin_id) {
8
+ const client = await newServerClient();
9
+ return get_pin_by_id(client, pin_id);
10
+ }
11
+ export async function server_create_pin(newPin) {
12
+ const client = await newServerClient();
13
+ return create_pin(client, newPin);
14
+ }
15
+ export async function server_create_pin_with_coordinates(latitude, longitude, pinData) {
16
+ const client = await newServerClient();
17
+ return create_pin_with_coordinates(client, latitude, longitude, pinData);
18
+ }
19
+ export async function server_update_pin(pin_id, updatedPin) {
20
+ const client = await newServerClient();
21
+ return update_pin(client, pin_id, updatedPin);
22
+ }
23
+ export async function server_update_pin_location(pin_id, latitude, longitude, updatedPin) {
24
+ const client = await newServerClient();
25
+ return update_pin_location(client, pin_id, latitude, longitude, updatedPin);
26
+ }
27
+ export async function server_delete_pin(pin_id) {
28
+ const client = await newServerClient();
29
+ return delete_pin(client, pin_id);
30
+ }
31
+ export async function server_get_pins_by_created_by(user_id) {
32
+ const client = await newServerClient();
33
+ return get_pins_by_created_by(client, user_id);
34
+ }
35
+ export async function server_get_pins_by_color(herd_id, color) {
36
+ const client = await newServerClient();
37
+ return get_pins_by_color(client, herd_id, color);
38
+ }
@@ -1,66 +1,14 @@
1
- "use server";
2
1
  import { newServerClient } from "../supabase/server";
3
- import { EnumWebResponse, IWebResponse, } from "../types/requests";
4
- import { get_plans_by_herd_ids_query } from "./herd_scoped.queries";
5
- // function that fetches the plans our db given a herd id
2
+ import { create_plans_query, delete_plans_by_ids_query, get_plans_by_herd_ids_query, get_plans_by_herd_query, } from "./plans.queries";
6
3
  export async function server_get_plans_by_herd(herd_id) {
7
- const supabase = await newServerClient();
8
- const { data, error } = await supabase
9
- .from("plans")
10
- .select("*")
11
- .eq("herd_id", herd_id);
12
- if (error) {
13
- return {
14
- status: EnumWebResponse.ERROR,
15
- msg: error.message,
16
- data: null,
17
- };
18
- }
19
- else {
20
- return IWebResponse.success(data).to_compatible();
21
- }
4
+ return get_plans_by_herd_query(await newServerClient(), herd_id);
22
5
  }
23
- // Fetches plans for many herds in one query, grouped by herd_id.
24
6
  export async function server_get_plans_by_herd_ids(herd_ids) {
25
7
  return get_plans_by_herd_ids_query(await newServerClient(), herd_ids);
26
8
  }
27
- // function that uploads plan to our db
28
9
  export async function server_create_plans(plans) {
29
- // loop through plans and format
30
- let formatted_plans = plans.map((plan) => {
31
- let formatted_plan = { ...plan };
32
- delete formatted_plan.id;
33
- delete formatted_plan.inserted_at;
34
- return formatted_plan;
35
- });
36
- const supabase = await newServerClient();
37
- // insert data and return the response
38
- const { data, error } = await supabase
39
- .from("plans")
40
- .insert(formatted_plans)
41
- .select("*");
42
- if (error) {
43
- return {
44
- status: EnumWebResponse.ERROR,
45
- msg: error.message,
46
- data: null,
47
- };
48
- }
49
- else {
50
- return IWebResponse.success(data).to_compatible();
51
- }
10
+ return create_plans_query(await newServerClient(), plans);
52
11
  }
53
12
  export async function server_delete_plans_by_ids(plan_ids) {
54
- const supabase = await newServerClient();
55
- const { error } = await supabase.from("plans").delete().in("id", plan_ids);
56
- if (error) {
57
- return {
58
- status: EnumWebResponse.ERROR,
59
- msg: error.message,
60
- data: false,
61
- };
62
- }
63
- else {
64
- return IWebResponse.success(true).to_compatible();
65
- }
13
+ return delete_plans_by_ids_query(await newServerClient(), plan_ids);
66
14
  }
@@ -2,4 +2,7 @@ import { SupabaseClient } from "@supabase/supabase-js";
2
2
  import { IPlan } from "../types/db";
3
3
  import { Database } from "../types/supabase";
4
4
  import { IWebResponseCompatible } from "../types/requests";
5
- export declare function get_plans_by_herd_ids_query(client: SupabaseClient<Database>, herd_ids: number[]): Promise<IWebResponseCompatible<Record<number, IPlan[]>>>;
5
+ export { get_plans_by_herd_ids_query } from "./herd_scoped.queries";
6
+ export declare function get_plans_by_herd_query(client: SupabaseClient<Database>, herd_id: number): Promise<IWebResponseCompatible<IPlan[]>>;
7
+ export declare function create_plans_query(client: SupabaseClient<Database>, plans: IPlan[]): Promise<IWebResponseCompatible<IPlan[]>>;
8
+ export declare function delete_plans_by_ids_query(client: SupabaseClient<Database>, plan_ids: number[]): Promise<IWebResponseCompatible<boolean>>;
@@ -1,20 +1,47 @@
1
1
  import { EnumWebResponse, IWebResponse, } from "../types/requests";
2
- export async function get_plans_by_herd_ids_query(client, herd_ids) {
3
- var _a;
4
- if (herd_ids.length === 0) {
5
- return IWebResponse.success({}).to_compatible();
6
- }
2
+ export { get_plans_by_herd_ids_query } from "./herd_scoped.queries";
3
+ export async function get_plans_by_herd_query(client, herd_id) {
7
4
  const { data, error } = await client
8
5
  .from("plans")
9
6
  .select("*")
10
- .in("herd_id", herd_ids)
11
- .order("id", { ascending: true });
7
+ .eq("herd_id", herd_id);
8
+ if (error) {
9
+ return {
10
+ status: EnumWebResponse.ERROR,
11
+ msg: error.message,
12
+ data: null,
13
+ };
14
+ }
15
+ return IWebResponse.success(data).to_compatible();
16
+ }
17
+ export async function create_plans_query(client, plans) {
18
+ const formatted_plans = plans.map(({ herd_id, instructions, name, plan_type }) => ({
19
+ herd_id,
20
+ instructions,
21
+ name,
22
+ plan_type,
23
+ }));
24
+ const { data, error } = await client
25
+ .from("plans")
26
+ .insert(formatted_plans)
27
+ .select("*");
12
28
  if (error) {
13
- return { status: EnumWebResponse.ERROR, msg: error.message, data: null };
29
+ return {
30
+ status: EnumWebResponse.ERROR,
31
+ msg: error.message,
32
+ data: null,
33
+ };
14
34
  }
15
- const grouped = {};
16
- for (const row of data ?? []) {
17
- (grouped[_a = row.herd_id] ?? (grouped[_a] = [])).push(row);
35
+ return IWebResponse.success(data).to_compatible();
36
+ }
37
+ export async function delete_plans_by_ids_query(client, plan_ids) {
38
+ const { error } = await client.from("plans").delete().in("id", plan_ids);
39
+ if (error) {
40
+ return {
41
+ status: EnumWebResponse.ERROR,
42
+ msg: error.message,
43
+ data: false,
44
+ };
18
45
  }
19
- return IWebResponse.success(grouped).to_compatible();
46
+ return IWebResponse.success(true).to_compatible();
20
47
  }
@@ -0,0 +1,9 @@
1
+ export declare function server_get_points_for_user_by_user_id(user_id: string): Promise<import("../types").IWebResponseCompatible<{
2
+ id: number;
3
+ inserted_at: string;
4
+ points: number;
5
+ update_reason: string;
6
+ user_id: string;
7
+ }[]>>;
8
+ export declare function server_get_points_balance_for_user_id(user_id: string): Promise<import("../types").IWebResponseCompatible<number>>;
9
+ export declare function server_update_points_balance_for_user(user_id: string, balance: number, update_reason: string): Promise<import("../types").IWebResponseCompatible<import("./points_for_user").PointsBalanceUpdateResult | null>>;
@@ -0,0 +1,14 @@
1
+ import { newServerClient } from "../supabase/server";
2
+ import { get_points_balance_for_user_id, get_points_for_user_by_user_id, update_points_balance_for_user, } from "./points_for_user";
3
+ export async function server_get_points_for_user_by_user_id(user_id) {
4
+ const client = await newServerClient();
5
+ return get_points_for_user_by_user_id(client, user_id);
6
+ }
7
+ export async function server_get_points_balance_for_user_id(user_id) {
8
+ const client = await newServerClient();
9
+ return get_points_balance_for_user_id(client, user_id);
10
+ }
11
+ export async function server_update_points_balance_for_user(user_id, balance, update_reason) {
12
+ const client = await newServerClient();
13
+ return update_points_balance_for_user(client, user_id, balance, update_reason);
14
+ }