@appconda/nextjs 1.0.112 → 1.0.113

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 (307) hide show
  1. package/package.json +3 -3
  2. package/dist/actions/actionClient.d.ts +0 -10
  3. package/dist/actions/actionClient.js +0 -38
  4. package/dist/actions/auth.d.ts +0 -1
  5. package/dist/actions/auth.js +0 -6
  6. package/dist/actions/authOptions.d.ts +0 -5
  7. package/dist/actions/authOptions.js +0 -235
  8. package/dist/actions/index.d.ts +0 -3
  9. package/dist/actions/index.js +0 -4
  10. package/dist/actions/nextAuthHandler.d.ts +0 -1
  11. package/dist/actions/nextAuthHandler.js +0 -6
  12. package/dist/actions/nodes.d.ts +0 -4
  13. package/dist/actions/nodes.js +0 -15
  14. package/dist/client.d.ts +0 -141
  15. package/dist/client.js +0 -335
  16. package/dist/decorators/Cache.d.ts +0 -1
  17. package/dist/decorators/Cache.js +0 -79
  18. package/dist/decorators/CacheKey.d.ts +0 -1
  19. package/dist/decorators/CacheKey.js +0 -9
  20. package/dist/decorators/Invalidate.d.ts +0 -1
  21. package/dist/decorators/Invalidate.js +0 -47
  22. package/dist/enums/api-service.d.ts +0 -13
  23. package/dist/enums/api-service.js +0 -15
  24. package/dist/enums/api.d.ts +0 -5
  25. package/dist/enums/api.js +0 -7
  26. package/dist/enums/auth-method.d.ts +0 -9
  27. package/dist/enums/auth-method.js +0 -11
  28. package/dist/enums/authentication-factor.d.ts +0 -6
  29. package/dist/enums/authentication-factor.js +0 -7
  30. package/dist/enums/authenticator-type.d.ts +0 -3
  31. package/dist/enums/authenticator-type.js +0 -4
  32. package/dist/enums/browser.d.ts +0 -16
  33. package/dist/enums/browser.js +0 -18
  34. package/dist/enums/compression.d.ts +0 -5
  35. package/dist/enums/compression.js +0 -7
  36. package/dist/enums/credit-card.d.ts +0 -18
  37. package/dist/enums/credit-card.js +0 -20
  38. package/dist/enums/database-usage-range.d.ts +0 -5
  39. package/dist/enums/database-usage-range.js +0 -7
  40. package/dist/enums/email-template-locale.d.ts +0 -133
  41. package/dist/enums/email-template-locale.js +0 -135
  42. package/dist/enums/email-template-type.d.ts +0 -9
  43. package/dist/enums/email-template-type.js +0 -11
  44. package/dist/enums/entities/EntityLimitType.d.ts +0 -4
  45. package/dist/enums/entities/EntityLimitType.js +0 -6
  46. package/dist/enums/entities/PropertyAttributeName.d.ts +0 -27
  47. package/dist/enums/entities/PropertyAttributeName.js +0 -29
  48. package/dist/enums/entities/PropertyCondition.d.ts +0 -7
  49. package/dist/enums/entities/PropertyCondition.js +0 -10
  50. package/dist/enums/entities/PropertyType.d.ts +0 -12
  51. package/dist/enums/entities/PropertyType.js +0 -18
  52. package/dist/enums/entities/PropertyValueType.d.ts +0 -6
  53. package/dist/enums/entities/PropertyValueType.js +0 -8
  54. package/dist/enums/entities/RowAccess.d.ts +0 -2
  55. package/dist/enums/entities/RowAccess.js +0 -2
  56. package/dist/enums/entities/ViewFilterCondition.d.ts +0 -12
  57. package/dist/enums/entities/ViewFilterCondition.js +0 -14
  58. package/dist/enums/execution-method.d.ts +0 -8
  59. package/dist/enums/execution-method.js +0 -10
  60. package/dist/enums/flag.d.ts +0 -197
  61. package/dist/enums/flag.js +0 -199
  62. package/dist/enums/function-usage-range.d.ts +0 -5
  63. package/dist/enums/function-usage-range.js +0 -7
  64. package/dist/enums/image-format.d.ts +0 -7
  65. package/dist/enums/image-format.js +0 -9
  66. package/dist/enums/image-gravity.d.ts +0 -11
  67. package/dist/enums/image-gravity.js +0 -13
  68. package/dist/enums/index-type.d.ts +0 -5
  69. package/dist/enums/index-type.js +0 -7
  70. package/dist/enums/messaging-provider-type.d.ts +0 -5
  71. package/dist/enums/messaging-provider-type.js +0 -7
  72. package/dist/enums/name.d.ts +0 -14
  73. package/dist/enums/name.js +0 -16
  74. package/dist/enums/o-auth-provider copy.d.ts +0 -41
  75. package/dist/enums/o-auth-provider copy.js +0 -43
  76. package/dist/enums/o-auth-provider.d.ts +0 -41
  77. package/dist/enums/o-auth-provider.js +0 -42
  78. package/dist/enums/password-hash.d.ts +0 -13
  79. package/dist/enums/password-hash.js +0 -15
  80. package/dist/enums/platform-type.d.ts +0 -17
  81. package/dist/enums/platform-type.js +0 -19
  82. package/dist/enums/project-usage-range.d.ts +0 -4
  83. package/dist/enums/project-usage-range.js +0 -6
  84. package/dist/enums/region.d.ts +0 -4
  85. package/dist/enums/region.js +0 -6
  86. package/dist/enums/relation-mutate.d.ts +0 -5
  87. package/dist/enums/relation-mutate.js +0 -7
  88. package/dist/enums/relationship-type.d.ts +0 -6
  89. package/dist/enums/relationship-type.js +0 -8
  90. package/dist/enums/resource-type.d.ts +0 -4
  91. package/dist/enums/resource-type.js +0 -6
  92. package/dist/enums/runtime.d.ts +0 -48
  93. package/dist/enums/runtime.js +0 -50
  94. package/dist/enums/s-m-t-p-secure.d.ts +0 -3
  95. package/dist/enums/s-m-t-p-secure.js +0 -5
  96. package/dist/enums/shared/ApplicationLayout.d.ts +0 -4
  97. package/dist/enums/shared/ApplicationLayout.js +0 -6
  98. package/dist/enums/shared/Colors.d.ts +0 -24
  99. package/dist/enums/shared/Colors.js +0 -26
  100. package/dist/enums/shared/InputType.d.ts +0 -6
  101. package/dist/enums/shared/InputType.js +0 -8
  102. package/dist/enums/shared/Periodicity.d.ts +0 -7
  103. package/dist/enums/shared/Periodicity.js +0 -9
  104. package/dist/enums/shared/SvgIcon.d.ts +0 -37
  105. package/dist/enums/shared/SvgIcon.js +0 -39
  106. package/dist/enums/shared/Theme.d.ts +0 -4
  107. package/dist/enums/shared/Theme.js +0 -6
  108. package/dist/enums/sms-template-locale.d.ts +0 -133
  109. package/dist/enums/sms-template-locale.js +0 -135
  110. package/dist/enums/sms-template-type.d.ts +0 -6
  111. package/dist/enums/sms-template-type.js +0 -8
  112. package/dist/enums/smtp-encryption.d.ts +0 -5
  113. package/dist/enums/smtp-encryption.js +0 -7
  114. package/dist/enums/storage-usage-range.d.ts +0 -5
  115. package/dist/enums/storage-usage-range.js +0 -7
  116. package/dist/enums/subscriptions/PricingModel.d.ts +0 -11
  117. package/dist/enums/subscriptions/PricingModel.js +0 -12
  118. package/dist/enums/subscriptions/SubscriptionBillingPeriod.d.ts +0 -10
  119. package/dist/enums/subscriptions/SubscriptionBillingPeriod.js +0 -11
  120. package/dist/enums/subscriptions/SubscriptionFeatureLimitType.d.ts +0 -10
  121. package/dist/enums/subscriptions/SubscriptionFeatureLimitType.js +0 -13
  122. package/dist/enums/subscriptions/SubscriptionPriceType.d.ts +0 -7
  123. package/dist/enums/subscriptions/SubscriptionPriceType.js +0 -8
  124. package/dist/enums/tenants/LinkedAccountStatus.d.ts +0 -5
  125. package/dist/enums/tenants/LinkedAccountStatus.js +0 -7
  126. package/dist/enums/tenants/TenantUserJoined.d.ts +0 -6
  127. package/dist/enums/tenants/TenantUserJoined.js +0 -8
  128. package/dist/enums/tenants/TenantUserStatus.d.ts +0 -6
  129. package/dist/enums/tenants/TenantUserStatus.js +0 -8
  130. package/dist/enums/tenants/TenantUserType.d.ts +0 -5
  131. package/dist/enums/tenants/TenantUserType.js +0 -7
  132. package/dist/enums/user-usage-range.d.ts +0 -5
  133. package/dist/enums/user-usage-range.js +0 -7
  134. package/dist/getAppcondaClient.d.ts +0 -2
  135. package/dist/getAppcondaClient.js +0 -44
  136. package/dist/getSDKForCurrentUser.d.ts +0 -43
  137. package/dist/getSDKForCurrentUser.js +0 -76
  138. package/dist/getSDKForService.d.ts +0 -6
  139. package/dist/getSDKForService.js +0 -51
  140. package/dist/getSDKForTenant.d.ts +0 -20
  141. package/dist/getSDKForTenant.js +0 -44
  142. package/dist/id.d.ts +0 -20
  143. package/dist/id.js +0 -45
  144. package/dist/index.d.ts +0 -44
  145. package/dist/index.js +0 -42
  146. package/dist/inputFile.d.ts +0 -6
  147. package/dist/inputFile.js +0 -17
  148. package/dist/lib/Cache/Adapter.d.ts +0 -10
  149. package/dist/lib/Cache/Adapter.js +0 -2
  150. package/dist/lib/Cache/Adapters/Filesystem.d.ts +0 -16
  151. package/dist/lib/Cache/Adapters/Filesystem.js +0 -103
  152. package/dist/lib/Cache/Adapters/Memory.d.ts +0 -18
  153. package/dist/lib/Cache/Adapters/Memory.js +0 -47
  154. package/dist/lib/Cache/Adapters/None.d.ts +0 -12
  155. package/dist/lib/Cache/Adapters/None.js +0 -28
  156. package/dist/lib/Cache/Adapters/Sharding.d.ts +0 -17
  157. package/dist/lib/Cache/Adapters/Sharding.js +0 -73
  158. package/dist/lib/Cache/Cache.d.ts +0 -16
  159. package/dist/lib/Cache/Cache.js +0 -52
  160. package/dist/lib/Cache/index.d.ts +0 -4
  161. package/dist/lib/Cache/index.js +0 -5
  162. package/dist/lib/Cache/test.d.ts +0 -0
  163. package/dist/lib/Cache/test.js +0 -1
  164. package/dist/lib/Registry/Registry.d.ts +0 -38
  165. package/dist/lib/Registry/Registry.js +0 -56
  166. package/dist/lib/Registry/index.d.ts +0 -1
  167. package/dist/lib/Registry/index.js +0 -2
  168. package/dist/lib/Services.d.ts +0 -6
  169. package/dist/lib/Services.js +0 -14
  170. package/dist/lib/crypto.d.ts +0 -23
  171. package/dist/lib/crypto.js +0 -78
  172. package/dist/lib/env.d.ts +0 -1
  173. package/dist/lib/env.js +0 -137
  174. package/dist/lib/errors.d.ts +0 -70
  175. package/dist/lib/errors.js +0 -76
  176. package/dist/lib/index.d.ts +0 -2
  177. package/dist/lib/index.js +0 -3
  178. package/dist/lib/jwt.d.ts +0 -12
  179. package/dist/lib/jwt.js +0 -103
  180. package/dist/models.d.ts +0 -3272
  181. package/dist/models.js +0 -2
  182. package/dist/modules/account/actions.d.ts +0 -25
  183. package/dist/modules/account/actions.js +0 -18
  184. package/dist/modules/account/enums/authentication-factor.d.ts +0 -6
  185. package/dist/modules/account/enums/authentication-factor.js +0 -8
  186. package/dist/modules/account/enums/authenticator-type.d.ts +0 -3
  187. package/dist/modules/account/enums/authenticator-type.js +0 -5
  188. package/dist/modules/account/enums/o-auth-provider.d.ts +0 -41
  189. package/dist/modules/account/enums/o-auth-provider.js +0 -43
  190. package/dist/modules/account/index.d.ts +0 -3
  191. package/dist/modules/account/index.js +0 -4
  192. package/dist/modules/account/schema.d.ts +0 -17
  193. package/dist/modules/account/schema.js +0 -8
  194. package/dist/modules/account/service.d.ts +0 -530
  195. package/dist/modules/account/service.js +0 -1260
  196. package/dist/modules/account/types.d.ts +0 -411
  197. package/dist/modules/account/types.js +0 -2
  198. package/dist/modules/acl/service.d.ts +0 -26
  199. package/dist/modules/acl/service.js +0 -27
  200. package/dist/modules/agent/action.d.ts +0 -53
  201. package/dist/modules/agent/action.js +0 -64
  202. package/dist/modules/agent/index.d.ts +0 -4
  203. package/dist/modules/agent/index.js +0 -5
  204. package/dist/modules/agent/schema.d.ts +0 -48
  205. package/dist/modules/agent/schema.js +0 -21
  206. package/dist/modules/agent/service.d.ts +0 -12
  207. package/dist/modules/agent/service.js +0 -22
  208. package/dist/modules/agent/types.d.ts +0 -11
  209. package/dist/modules/agent/types.js +0 -2
  210. package/dist/modules/ai/index.d.ts +0 -1
  211. package/dist/modules/ai/index.js +0 -2
  212. package/dist/modules/ai/node/actions.d.ts +0 -4
  213. package/dist/modules/ai/node/actions.js +0 -16
  214. package/dist/modules/ai/node/index.d.ts +0 -2
  215. package/dist/modules/ai/node/index.js +0 -3
  216. package/dist/modules/ai/node/service.d.ts +0 -5
  217. package/dist/modules/ai/node/service.js +0 -12
  218. package/dist/modules/index.d.ts +0 -6
  219. package/dist/modules/index.js +0 -7
  220. package/dist/modules/task/action.d.ts +0 -168
  221. package/dist/modules/task/action.js +0 -163
  222. package/dist/modules/task/index.d.ts +0 -4
  223. package/dist/modules/task/index.js +0 -5
  224. package/dist/modules/task/schema.d.ts +0 -107
  225. package/dist/modules/task/schema.js +0 -44
  226. package/dist/modules/task/service.d.ts +0 -19
  227. package/dist/modules/task/service.js +0 -43
  228. package/dist/modules/task/types.d.ts +0 -84
  229. package/dist/modules/task/types.js +0 -2
  230. package/dist/modules/tenant/actions.d.ts +0 -45
  231. package/dist/modules/tenant/actions.js +0 -38
  232. package/dist/modules/tenant/index.d.ts +0 -3
  233. package/dist/modules/tenant/index.js +0 -4
  234. package/dist/modules/tenant/tenant.d.ts +0 -32
  235. package/dist/modules/tenant/tenant.js +0 -125
  236. package/dist/modules/tenant/types.d.ts +0 -11
  237. package/dist/modules/tenant/types.js +0 -2
  238. package/dist/modules/waitlist/action.d.ts +0 -69
  239. package/dist/modules/waitlist/action.js +0 -78
  240. package/dist/modules/waitlist/index.d.ts +0 -4
  241. package/dist/modules/waitlist/index.js +0 -5
  242. package/dist/modules/waitlist/schema.d.ts +0 -39
  243. package/dist/modules/waitlist/schema.js +0 -18
  244. package/dist/modules/waitlist/service.d.ts +0 -13
  245. package/dist/modules/waitlist/service.js +0 -28
  246. package/dist/modules/waitlist/types.d.ts +0 -14
  247. package/dist/modules/waitlist/types.js +0 -2
  248. package/dist/permission.d.ts +0 -43
  249. package/dist/permission.js +0 -54
  250. package/dist/query.d.ts +0 -194
  251. package/dist/query.js +0 -204
  252. package/dist/role.d.ts +0 -70
  253. package/dist/role.js +0 -94
  254. package/dist/schemas/nodes.d.ts +0 -0
  255. package/dist/schemas/nodes.js +0 -1
  256. package/dist/service-client.d.ts +0 -7
  257. package/dist/service-client.js +0 -14
  258. package/dist/service.d.ts +0 -11
  259. package/dist/service.js +0 -23
  260. package/dist/services/account.d.ts +0 -530
  261. package/dist/services/account.js +0 -1259
  262. package/dist/services/applets.d.ts +0 -9
  263. package/dist/services/applets.js +0 -40
  264. package/dist/services/avatars.d.ts +0 -115
  265. package/dist/services/avatars.js +0 -251
  266. package/dist/services/chat-flow.d.ts +0 -7
  267. package/dist/services/chat-flow.js +0 -26
  268. package/dist/services/community.d.ts +0 -19
  269. package/dist/services/community.js +0 -69
  270. package/dist/services/configuration.d.ts +0 -5
  271. package/dist/services/configuration.js +0 -11
  272. package/dist/services/databases.d.ts +0 -613
  273. package/dist/services/databases.js +0 -1736
  274. package/dist/services/functions.d.ts +0 -319
  275. package/dist/services/functions.js +0 -810
  276. package/dist/services/graphql.d.ts +0 -25
  277. package/dist/services/graphql.js +0 -57
  278. package/dist/services/health.d.ts +0 -231
  279. package/dist/services/health.js +0 -463
  280. package/dist/services/locale.d.ts +0 -80
  281. package/dist/services/locale.js +0 -144
  282. package/dist/services/messaging.d.ts +0 -685
  283. package/dist/services/messaging.js +0 -1920
  284. package/dist/services/node.d.ts +0 -5
  285. package/dist/services/node.js +0 -11
  286. package/dist/services/permissions.d.ts +0 -20
  287. package/dist/services/permissions.js +0 -90
  288. package/dist/services/pricing.d.ts +0 -15
  289. package/dist/services/pricing.js +0 -21
  290. package/dist/services/projects.d.ts +0 -542
  291. package/dist/services/projects.js +0 -1526
  292. package/dist/services/roles.d.ts +0 -19
  293. package/dist/services/roles.js +0 -72
  294. package/dist/services/schema.d.ts +0 -17
  295. package/dist/services/schema.js +0 -48
  296. package/dist/services/storage.d.ts +0 -189
  297. package/dist/services/storage.js +0 -474
  298. package/dist/services/subscription.d.ts +0 -15
  299. package/dist/services/subscription.js +0 -30
  300. package/dist/services/teams.d.ts +0 -167
  301. package/dist/services/teams.js +0 -395
  302. package/dist/services/tenant-subscription.d.ts +0 -12
  303. package/dist/services/tenant-subscription.js +0 -52
  304. package/dist/services/tenant.d.ts +0 -32
  305. package/dist/services/tenant.js +0 -124
  306. package/dist/services/users.d.ts +0 -499
  307. package/dist/services/users.js +0 -1283
package/package.json CHANGED
@@ -2,10 +2,10 @@
2
2
  "name": "@appconda/nextjs",
3
3
  "homepage": "https://appconda.io/support",
4
4
  "description": "Appconda is an open-source self-hosted backend server that abstract and simplify complex and repetitive development tasks behind a very simple REST API",
5
- "version": "1.0.112",
5
+ "version": "1.0.113",
6
6
  "license": "BSD-3-Clause",
7
- "main": "dist/index.js",
8
- "types": "dist/index.d.ts",
7
+ "main": "src/index.ts",
8
+ "types": "src/index.ts",
9
9
  "repository": {
10
10
  "type": "git",
11
11
  "url": "https://github.com/appconda/sdk-for-console"
@@ -1,10 +0,0 @@
1
- export declare const actionClient: import("next-safe-action").SafeActionClient<string, undefined, undefined, unknown, {}, undefined, undefined, undefined, readonly [], {
2
- formErrors: string[];
3
- fieldErrors: {};
4
- }, readonly []>;
5
- export declare const authenticatedActionClient: import("next-safe-action").SafeActionClient<string, undefined, undefined, unknown, {
6
- user: any;
7
- }, undefined, undefined, undefined, readonly [], {
8
- formErrors: string[];
9
- fieldErrors: {};
10
- }, readonly []>;
@@ -1,38 +0,0 @@
1
- import { getServerSession } from "next-auth";
2
- import { DEFAULT_SERVER_ERROR_MESSAGE, createSafeActionClient } from "next-safe-action";
3
- import { authOptions } from "./authOptions";
4
- import { AuthenticationError, AuthorizationError } from "../lib/errors";
5
- export const actionClient = createSafeActionClient({
6
- handleServerError(e) {
7
- /* if (
8
- e instanceof ResourceNotFoundError ||
9
- e instanceof AuthorizationError ||
10
- e instanceof InvalidInputError ||
11
- e instanceof UnknownError ||
12
- e instanceof AuthenticationError ||
13
- e instanceof OperationNotAllowedError ||
14
- e instanceof AppcondaException
15
- ) {
16
- return e.message;
17
- } */
18
- // eslint-disable-next-line no-console -- This error needs to be logged for debugging server-side errors
19
- console.error("SERVER ERROR: ", e);
20
- return DEFAULT_SERVER_ERROR_MESSAGE;
21
- },
22
- });
23
- export const authenticatedActionClient = actionClient.use(async ({ next }) => {
24
- const session = await getServerSession(authOptions());
25
- //@ts-ignore
26
- if (!session?.user) {
27
- throw new AuthenticationError("Not authenticated");
28
- }
29
- //@ts-ignore
30
- const userId = session.user.id;
31
- //@ts-ignore
32
- const user = await getUser(userId);
33
- if (!user) {
34
- throw new AuthorizationError("User not found");
35
- }
36
- return next({ ctx: { user } });
37
- });
38
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWN0aW9uQ2xpZW50LmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvYWN0aW9uQ2xpZW50LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUNBLE9BQU8sRUFBRSxnQkFBZ0IsRUFBRSxNQUFNLFdBQVcsQ0FBQztBQUM3QyxPQUFPLEVBQUUsNEJBQTRCLEVBQUUsc0JBQXNCLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUN4RixPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBQzVDLE9BQU8sRUFBRSxtQkFBbUIsRUFBRSxrQkFBa0IsRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUd4RSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUcsc0JBQXNCLENBQUM7SUFDakQsaUJBQWlCLENBQUMsQ0FBUTtRQUN4Qjs7Ozs7Ozs7OztZQVVJO1FBRUosd0dBQXdHO1FBQ3hHLE9BQU8sQ0FBQyxLQUFLLENBQUMsZ0JBQWdCLEVBQUUsQ0FBQyxDQUFDLENBQUM7UUFDbkMsT0FBTyw0QkFBNEIsQ0FBQztJQUN0QyxDQUFDO0NBQ0YsQ0FBQyxDQUFDO0FBR0gsTUFBTSxDQUFDLE1BQU0seUJBQXlCLEdBQUcsWUFBWSxDQUFDLEdBQUcsQ0FBQyxLQUFLLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxFQUFFO0lBQzNFLE1BQU0sT0FBTyxHQUFHLE1BQU0sZ0JBQWdCLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQztJQUN0RCxZQUFZO0lBQ1osSUFBSSxDQUFDLE9BQU8sRUFBRSxJQUFJLEVBQUUsQ0FBQztRQUNuQixNQUFNLElBQUksbUJBQW1CLENBQUMsbUJBQW1CLENBQUMsQ0FBQztJQUNyRCxDQUFDO0lBRUQsWUFBWTtJQUNaLE1BQU0sTUFBTSxHQUFHLE9BQU8sQ0FBQyxJQUFJLENBQUMsRUFBRSxDQUFDO0lBRS9CLFlBQVk7SUFDWixNQUFNLElBQUksR0FBRyxNQUFNLE9BQU8sQ0FBQyxNQUFNLENBQUMsQ0FBQztJQUNuQyxJQUFJLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDVixNQUFNLElBQUksa0JBQWtCLENBQUMsZ0JBQWdCLENBQUMsQ0FBQztJQUNqRCxDQUFDO0lBRUQsT0FBTyxJQUFJLENBQUMsRUFBRSxHQUFHLEVBQUUsRUFBRSxJQUFJLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFDakMsQ0FBQyxDQUFDLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJcbmltcG9ydCB7IGdldFNlcnZlclNlc3Npb24gfSBmcm9tIFwibmV4dC1hdXRoXCI7XG5pbXBvcnQgeyBERUZBVUxUX1NFUlZFUl9FUlJPUl9NRVNTQUdFLCBjcmVhdGVTYWZlQWN0aW9uQ2xpZW50IH0gZnJvbSBcIm5leHQtc2FmZS1hY3Rpb25cIjtcbmltcG9ydCB7IGF1dGhPcHRpb25zIH0gZnJvbSBcIi4vYXV0aE9wdGlvbnNcIjtcbmltcG9ydCB7IEF1dGhlbnRpY2F0aW9uRXJyb3IsIEF1dGhvcml6YXRpb25FcnJvciB9IGZyb20gXCIuLi9saWIvZXJyb3JzXCI7XG5cblxuZXhwb3J0IGNvbnN0IGFjdGlvbkNsaWVudCA9IGNyZWF0ZVNhZmVBY3Rpb25DbGllbnQoe1xuICBoYW5kbGVTZXJ2ZXJFcnJvcihlOiBFcnJvcikge1xuICAgIC8qIGlmIChcbiAgICAgIGUgaW5zdGFuY2VvZiBSZXNvdXJjZU5vdEZvdW5kRXJyb3IgfHxcbiAgICAgIGUgaW5zdGFuY2VvZiBBdXRob3JpemF0aW9uRXJyb3IgfHxcbiAgICAgIGUgaW5zdGFuY2VvZiBJbnZhbGlkSW5wdXRFcnJvciB8fFxuICAgICAgZSBpbnN0YW5jZW9mIFVua25vd25FcnJvciB8fFxuICAgICAgZSBpbnN0YW5jZW9mIEF1dGhlbnRpY2F0aW9uRXJyb3IgfHxcbiAgICAgIGUgaW5zdGFuY2VvZiBPcGVyYXRpb25Ob3RBbGxvd2VkRXJyb3IgfHxcbiAgICAgIGUgaW5zdGFuY2VvZiBBcHBjb25kYUV4Y2VwdGlvblxuICAgICkge1xuICAgICAgcmV0dXJuIGUubWVzc2FnZTtcbiAgICB9ICovXG5cbiAgICAvLyBlc2xpbnQtZGlzYWJsZS1uZXh0LWxpbmUgbm8tY29uc29sZSAtLSBUaGlzIGVycm9yIG5lZWRzIHRvIGJlIGxvZ2dlZCBmb3IgZGVidWdnaW5nIHNlcnZlci1zaWRlIGVycm9yc1xuICAgIGNvbnNvbGUuZXJyb3IoXCJTRVJWRVIgRVJST1I6IFwiLCBlKTtcbiAgICByZXR1cm4gREVGQVVMVF9TRVJWRVJfRVJST1JfTUVTU0FHRTtcbiAgfSxcbn0pO1xuXG5cbmV4cG9ydCBjb25zdCBhdXRoZW50aWNhdGVkQWN0aW9uQ2xpZW50ID0gYWN0aW9uQ2xpZW50LnVzZShhc3luYyAoeyBuZXh0IH0pID0+IHtcbiAgY29uc3Qgc2Vzc2lvbiA9IGF3YWl0IGdldFNlcnZlclNlc3Npb24oYXV0aE9wdGlvbnMoKSk7XG4gIC8vQHRzLWlnbm9yZVxuICBpZiAoIXNlc3Npb24/LnVzZXIpIHtcbiAgICB0aHJvdyBuZXcgQXV0aGVudGljYXRpb25FcnJvcihcIk5vdCBhdXRoZW50aWNhdGVkXCIpO1xuICB9XG5cbiAgLy9AdHMtaWdub3JlXG4gIGNvbnN0IHVzZXJJZCA9IHNlc3Npb24udXNlci5pZDtcblxuICAvL0B0cy1pZ25vcmVcbiAgY29uc3QgdXNlciA9IGF3YWl0IGdldFVzZXIodXNlcklkKTtcbiAgaWYgKCF1c2VyKSB7XG4gICAgdGhyb3cgbmV3IEF1dGhvcml6YXRpb25FcnJvcihcIlVzZXIgbm90IGZvdW5kXCIpO1xuICB9XG5cbiAgcmV0dXJuIG5leHQoeyBjdHg6IHsgdXNlciB9IH0pO1xufSk7XG4iXX0=
@@ -1 +0,0 @@
1
- export declare const auth: () => Promise<unknown>;
@@ -1,6 +0,0 @@
1
- import { getServerSession } from "next-auth";
2
- import { authOptions } from "./authOptions";
3
- export const auth = async () => {
4
- return await getServerSession(authOptions());
5
- };
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uL3NyYy9hY3Rpb25zL2F1dGgudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0sV0FBVyxDQUFBO0FBQzVDLE9BQU8sRUFBRSxXQUFXLEVBQUUsTUFBTSxlQUFlLENBQUM7QUFFNUMsTUFBTSxDQUFDLE1BQU0sSUFBSSxHQUFHLEtBQUssSUFBRyxFQUFFO0lBQzFCLE9BQU8sTUFBTSxnQkFBZ0IsQ0FBQyxXQUFXLEVBQUUsQ0FBQyxDQUFDO0FBQ2pELENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IGdldFNlcnZlclNlc3Npb24gfSBmcm9tIFwibmV4dC1hdXRoXCJcbmltcG9ydCB7IGF1dGhPcHRpb25zIH0gZnJvbSBcIi4vYXV0aE9wdGlvbnNcIjtcblxuZXhwb3J0IGNvbnN0IGF1dGggPSBhc3luYyAoKT0+IHtcbiAgICByZXR1cm4gYXdhaXQgZ2V0U2VydmVyU2Vzc2lvbihhdXRoT3B0aW9ucygpKTtcbn1cbiJdfQ==
@@ -1,5 +0,0 @@
1
- export declare function signIn({ userName, password }: {
2
- userName: string;
3
- password: string;
4
- }): Promise<import("../modules/account/types").Session>;
5
- export declare const authOptions: () => any;
@@ -1,235 +0,0 @@
1
- import CredentialsProvider from "next-auth/providers/credentials";
2
- import { cookies } from "next/headers";
3
- import { getAppcondaClient } from "../getAppcondaClient";
4
- import { Account } from "../modules/account/service";
5
- import { getEnv } from "../lib/env";
6
- import { getSDKForCurrentUser } from "../getSDKForCurrentUser";
7
- import { Query } from "../query";
8
- /* const getEnv = () => {
9
- return {
10
- APPCONDA_ENDPOINT: 'process.env.APPCONDA_ENDPOINT',
11
- APPCONDA_CLIENT_ENDPOINT: 'process.env.APPCONDA_CLIENT_ENDPOINT',
12
- _SERVICE_TOKEN: 'process.env._SERVICE_TOKEN',
13
- ENTERPRISE_LICENSE_KEY: 'process.env.ENTERPRISE_LICENSE_KEY',
14
- };
15
- }; */
16
- export async function signIn({ userName, password }) {
17
- const adminClient = await getAppcondaClient();
18
- const account = new Account(adminClient);
19
- const session = await account.createEmailPasswordSession(userName, password);
20
- const c = await cookies();
21
- c.set('a_session', session.secret, {
22
- path: "/",
23
- httpOnly: true,
24
- sameSite: "strict",
25
- secure: true,
26
- });
27
- return session;
28
- }
29
- export const authOptions = (() => {
30
- let options = null;
31
- return () => {
32
- if (options == null) {
33
- options = {
34
- providers: [
35
- CredentialsProvider({
36
- id: "credentials",
37
- // The name to display on the sign in form (e.g. "Sign in with...")
38
- name: "Credentials",
39
- // The credentials is used to generate a suitable form on the sign in page.
40
- // You can specify whatever fields you are expecting to be submitted.
41
- // e.g. domain, username, password, 2FA token, etc.
42
- // You can pass any HTML attribute to the <input> tag through the object.
43
- credentials: {
44
- email: {
45
- label: "Email Address",
46
- type: "email",
47
- placeholder: "Your email address",
48
- },
49
- password: {
50
- label: "Password",
51
- type: "password",
52
- placeholder: "Your password",
53
- },
54
- totpCode: { label: "Two-factor Code", type: "input", placeholder: "Code from authenticator app" },
55
- backupCode: { label: "Backup Code", type: "input", placeholder: "Two-factor backup code" },
56
- },
57
- async authorize(credentials, _req) {
58
- debugger;
59
- let user;
60
- const appcondaSession = await signIn({ userName: credentials?.email, password: credentials?.password });
61
- console.log(credentials);
62
- /* try {
63
- user = await prisma.user.findUnique({
64
- where: {
65
- email: credentials?.email,
66
- },
67
- });
68
- } catch (e) {
69
- console.error(e);
70
- throw Error("Internal server error. Please try again later");
71
- }
72
- if (!user || !credentials) {
73
- throw new Error("Invalid credentials");
74
- }
75
- if (!user.password) {
76
- throw new Error("Invalid credentials");
77
- }
78
-
79
- const isValid = await verifyPassword(credentials.password, user.password);
80
-
81
- if (!isValid) {
82
- throw new Error("Invalid credentials");
83
- }
84
-
85
- if (user.twoFactorEnabled && credentials.backupCode) {
86
- if (!ENCRYPTION_KEY) {
87
- console.error("Missing encryption key; cannot proceed with backup code login.");
88
- throw new Error("Internal Server Error");
89
- }
90
-
91
- if (!user.backupCodes) throw new Error("No backup codes found");
92
-
93
- const backupCodes = JSON.parse(symmetricDecrypt(user.backupCodes, ENCRYPTION_KEY));
94
-
95
- // check if user-supplied code matches one
96
- const index = backupCodes.indexOf(credentials.backupCode.replaceAll("-", ""));
97
- if (index === -1) throw new Error("Invalid backup code");
98
-
99
- // delete verified backup code and re-encrypt remaining
100
- backupCodes[index] = null;
101
- await prisma.user.update({
102
- where: {
103
- id: user.id,
104
- },
105
- data: {
106
- backupCodes: symmetricEncrypt(JSON.stringify(backupCodes), ENCRYPTION_KEY),
107
- },
108
- });
109
- } else if (user.twoFactorEnabled) {
110
- if (!credentials.totpCode) {
111
- throw new Error("second factor required");
112
- }
113
-
114
- if (!user.twoFactorSecret) {
115
- throw new Error("Internal Server Error");
116
- }
117
-
118
- if (!ENCRYPTION_KEY) {
119
- throw new Error("Internal Server Error");
120
- }
121
-
122
- const secret = symmetricDecrypt(user.twoFactorSecret, ENCRYPTION_KEY);
123
- if (secret.length !== 32) {
124
- throw new Error("Internal Server Error");
125
- }
126
-
127
- const isValidToken = (await import("./totp")).totpAuthenticatorCheck(credentials.totpCode, secret);
128
- if (!isValidToken) {
129
- throw new Error("Invalid second factor code");
130
- }
131
- } */
132
- console.log("asafdf");
133
- return {
134
- id: appcondaSession.userId,
135
- email: appcondaSession.providerUid,
136
- emailVerified: true,
137
- imageUrl: "",
138
- };
139
- },
140
- }),
141
- CredentialsProvider({
142
- id: "token",
143
- // The name to display on the sign in form (e.g. "Sign in with...")
144
- name: "Token",
145
- // The credentials is used to generate a suitable form on the sign in page.
146
- // You can specify whatever fields you are expecting to be submitted.
147
- // e.g. domain, username, password, 2FA token, etc.
148
- // You can pass any HTML attribute to the <input> tag through the object.
149
- credentials: {
150
- token: {
151
- label: "Verification Token",
152
- type: "string",
153
- },
154
- },
155
- async authorize(credentials, _req) {
156
- let user;
157
- /* try {
158
- if (!credentials?.token) {
159
- throw new Error("Token not found");
160
- }
161
- const { id } = await verifyToken(credentials?.token);
162
- user = await prisma.user.findUnique({
163
- where: {
164
- id: id,
165
- },
166
- });
167
- } catch (e) {
168
- console.error(e);
169
- throw new Error("Either a user does not match the provided token or the token is invalid");
170
- }
171
-
172
- if (!user) {
173
- throw new Error("Either a user does not match the provided token or the token is invalid");
174
- }
175
-
176
- if (user.emailVerified) {
177
- throw new Error("Email already verified");
178
- }
179
-
180
- user = await updateUser(user.id, { emailVerified: new Date() }); */
181
- return user || null;
182
- },
183
- }),
184
- // Conditionally add enterprise SSO providers
185
- ...(getEnv().ENTERPRISE_LICENSE_KEY ? [] : []),
186
- ],
187
- callbacks: {
188
- async jwt({ token }) {
189
- const { users } = await getSDKForCurrentUser();
190
- const userList = await users.list([Query.equal("email", token.email)]);
191
- const user = userList.users[0] ?? {};
192
- /* const existingUser = await getUserByEmail(token?.email!);
193
-
194
- if (!existingUser) {
195
- return token;
196
- } */
197
- return {
198
- ...token,
199
- //@ts-ignore
200
- profile: { id: user.$id, ...user },
201
- };
202
- },
203
- async session({ session, token }) {
204
- //@ts-ignore
205
- session.user.id = token?.id;
206
- //@ts-ignore
207
- session.user = token.profile;
208
- return session;
209
- },
210
- //@ts-ignore
211
- async signIn({ user, account }) {
212
- /* if (account?.provider === "credentials" || account?.provider === "token") {
213
- // check if user's email is verified or not
214
- if (!user.emailVerified && !EMAIL_VERIFICATION_DISABLED) {
215
- throw new Error("Email Verification is Pending");
216
- }
217
- return true;
218
- }
219
- if (ENTERPRISE_LICENSE_KEY) {
220
- return handleSSOCallback({ user, account });
221
- } */
222
- return true;
223
- },
224
- },
225
- pages: {
226
- signIn: "/auth/login",
227
- signOut: "/auth/logout",
228
- error: "/auth/login", // Error code passed in query string as ?error=
229
- },
230
- };
231
- }
232
- return options;
233
- };
234
- })();
235
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYXV0aE9wdGlvbnMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aW9ucy9hdXRoT3B0aW9ucy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFDQSxPQUFPLG1CQUFtQixNQUFNLGlDQUFpQyxDQUFDO0FBQ2xFLE9BQU8sRUFBRSxPQUFPLEVBQUUsTUFBTSxjQUFjLENBQUM7QUFDdkMsT0FBTyxFQUFFLGlCQUFpQixFQUFFLE1BQU0sc0JBQXNCLENBQUM7QUFDekQsT0FBTyxFQUFFLE9BQU8sRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQ3JELE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxZQUFZLENBQUM7QUFDcEMsT0FBTyxFQUFFLG9CQUFvQixFQUFFLE1BQU0seUJBQXlCLENBQUM7QUFDL0QsT0FBTyxFQUFFLEtBQUssRUFBRSxNQUFNLFVBQVUsQ0FBQztBQUVqQzs7Ozs7OztLQU9LO0FBRUwsTUFBTSxDQUFDLEtBQUssVUFBVSxNQUFNLENBQUMsRUFBRSxRQUFRLEVBQUUsUUFBUSxFQUEwQztJQUN6RixNQUFNLFdBQVcsR0FBRyxNQUFNLGlCQUFpQixFQUFFLENBQUM7SUFFOUMsTUFBTSxPQUFPLEdBQUcsSUFBSSxPQUFPLENBQUMsV0FBVyxDQUFDLENBQUM7SUFFekMsTUFBTSxPQUFPLEdBQUcsTUFBTSxPQUFPLENBQUMsMEJBQTBCLENBQUMsUUFBUSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBRTdFLE1BQU0sQ0FBQyxHQUFHLE1BQU0sT0FBTyxFQUFFLENBQUM7SUFFMUIsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxXQUFXLEVBQUUsT0FBTyxDQUFDLE1BQU0sRUFBRTtRQUNqQyxJQUFJLEVBQUUsR0FBRztRQUNULFFBQVEsRUFBRSxJQUFJO1FBQ2QsUUFBUSxFQUFFLFFBQVE7UUFDbEIsTUFBTSxFQUFFLElBQUk7S0FDYixDQUFDLENBQUM7SUFFSCxPQUFPLE9BQU8sQ0FBQztBQUVqQixDQUFDO0FBRUQsTUFBTSxDQUFDLE1BQU0sV0FBVyxHQUFHLENBQUMsR0FBRyxFQUFFO0lBQy9CLElBQUksT0FBTyxHQUFHLElBQUksQ0FBQztJQUVuQixPQUFPLEdBQUcsRUFBRTtRQUNWLElBQUksT0FBTyxJQUFJLElBQUksRUFBRSxDQUFDO1lBQ3BCLE9BQU8sR0FBRztnQkFDUixTQUFTLEVBQUU7b0JBQ1QsbUJBQW1CLENBQUM7d0JBQ2xCLEVBQUUsRUFBRSxhQUFhO3dCQUNqQixtRUFBbUU7d0JBQ25FLElBQUksRUFBRSxhQUFhO3dCQUNuQiwyRUFBMkU7d0JBQzNFLHFFQUFxRTt3QkFDckUsbURBQW1EO3dCQUNuRCx5RUFBeUU7d0JBQ3pFLFdBQVcsRUFBRTs0QkFDWCxLQUFLLEVBQUU7Z0NBQ0wsS0FBSyxFQUFFLGVBQWU7Z0NBQ3RCLElBQUksRUFBRSxPQUFPO2dDQUNiLFdBQVcsRUFBRSxvQkFBb0I7NkJBQ2xDOzRCQUNELFFBQVEsRUFBRTtnQ0FDUixLQUFLLEVBQUUsVUFBVTtnQ0FDakIsSUFBSSxFQUFFLFVBQVU7Z0NBQ2hCLFdBQVcsRUFBRSxlQUFlOzZCQUM3Qjs0QkFDRCxRQUFRLEVBQUUsRUFBRSxLQUFLLEVBQUUsaUJBQWlCLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsNkJBQTZCLEVBQUU7NEJBQ2pHLFVBQVUsRUFBRSxFQUFFLEtBQUssRUFBRSxhQUFhLEVBQUUsSUFBSSxFQUFFLE9BQU8sRUFBRSxXQUFXLEVBQUUsd0JBQXdCLEVBQUU7eUJBQzNGO3dCQUNELEtBQUssQ0FBQyxTQUFTLENBQUMsV0FBVyxFQUFFLElBQUk7NEJBQy9CLFFBQVEsQ0FBQzs0QkFDVCxJQUFJLElBQUksQ0FBQzs0QkFDVCxNQUFNLGVBQWUsR0FBRyxNQUFNLE1BQU0sQ0FBQyxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsS0FBZSxFQUFFLFFBQVEsRUFBRSxXQUFXLEVBQUUsUUFBa0IsRUFBRSxDQUFDLENBQUM7NEJBRTVILE9BQU8sQ0FBQyxHQUFHLENBQUMsV0FBVyxDQUFDLENBQUM7NEJBQ3pCOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7aUNBcUVLOzRCQUVMLE9BQU8sQ0FBQyxHQUFHLENBQUMsUUFBUSxDQUFDLENBQUE7NEJBRXJCLE9BQU87Z0NBQ0wsRUFBRSxFQUFFLGVBQWUsQ0FBQyxNQUFNO2dDQUMxQixLQUFLLEVBQUUsZUFBZSxDQUFDLFdBQVc7Z0NBQ2xDLGFBQWEsRUFBRSxJQUFJO2dDQUNuQixRQUFRLEVBQUUsRUFBRTs2QkFDYixDQUFDO3dCQUNKLENBQUM7cUJBQ0YsQ0FBQztvQkFDRixtQkFBbUIsQ0FBQzt3QkFDbEIsRUFBRSxFQUFFLE9BQU87d0JBQ1gsbUVBQW1FO3dCQUNuRSxJQUFJLEVBQUUsT0FBTzt3QkFDYiwyRUFBMkU7d0JBQzNFLHFFQUFxRTt3QkFDckUsbURBQW1EO3dCQUNuRCx5RUFBeUU7d0JBQ3pFLFdBQVcsRUFBRTs0QkFDWCxLQUFLLEVBQUU7Z0NBQ0wsS0FBSyxFQUFFLG9CQUFvQjtnQ0FDM0IsSUFBSSxFQUFFLFFBQVE7NkJBQ2Y7eUJBQ0Y7d0JBQ0QsS0FBSyxDQUFDLFNBQVMsQ0FBQyxXQUFXLEVBQUUsSUFBSTs0QkFFL0IsSUFBSSxJQUFJLENBQUM7NEJBQ1Q7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O2dHQXVCb0U7NEJBRXBFLE9BQU8sSUFBSSxJQUFJLElBQUksQ0FBQzt3QkFDdEIsQ0FBQztxQkFDRixDQUFDO29CQUNGLDZDQUE2QztvQkFDN0MsR0FBRyxDQUFDLE1BQU0sRUFBRSxDQUFDLHNCQUFzQixDQUFDLENBQUMsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQztpQkFDL0M7Z0JBQ0QsU0FBUyxFQUFFO29CQUNULEtBQUssQ0FBQyxHQUFHLENBQUMsRUFBRSxLQUFLLEVBQUU7d0JBRWpCLE1BQU0sRUFBRSxLQUFLLEVBQUUsR0FBRyxNQUFNLG9CQUFvQixFQUFFLENBQUM7d0JBQy9DLE1BQU0sUUFBUSxHQUFHLE1BQU0sS0FBSyxDQUFDLElBQUksQ0FBQyxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsT0FBTyxFQUFFLEtBQUssQ0FBQyxLQUFNLENBQUMsQ0FBQyxDQUFDLENBQUE7d0JBRXZFLE1BQU0sSUFBSSxHQUFHLFFBQVEsQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLElBQUksRUFBRSxDQUFDO3dCQUVyQzs7Ozs2QkFJSzt3QkFFTCxPQUFPOzRCQUNMLEdBQUcsS0FBSzs0QkFDUixZQUFZOzRCQUNaLE9BQU8sRUFBRSxFQUFFLEVBQUUsRUFBRSxJQUFJLENBQUMsR0FBRyxFQUFFLEdBQUcsSUFBSSxFQUFFO3lCQUNuQyxDQUFDO29CQUNKLENBQUM7b0JBQ0QsS0FBSyxDQUFDLE9BQU8sQ0FBQyxFQUFFLE9BQU8sRUFBRSxLQUFLLEVBQUU7d0JBQzlCLFlBQVk7d0JBQ1osT0FBTyxDQUFDLElBQUksQ0FBQyxFQUFFLEdBQUcsS0FBSyxFQUFFLEVBQUUsQ0FBQzt3QkFDNUIsWUFBWTt3QkFDWixPQUFPLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQyxPQUFPLENBQUM7d0JBRTdCLE9BQU8sT0FBTyxDQUFDO29CQUNqQixDQUFDO29CQUNELFlBQVk7b0JBQ1osS0FBSyxDQUFDLE1BQU0sQ0FBQyxFQUFFLElBQUksRUFBRSxPQUFPLEVBQTBDO3dCQUNwRTs7Ozs7Ozs7OzhCQVNNO3dCQUNOLE9BQU8sSUFBSSxDQUFDO29CQUNkLENBQUM7aUJBQ0Y7Z0JBQ0QsS0FBSyxFQUFFO29CQUNMLE1BQU0sRUFBRSxhQUFhO29CQUNyQixPQUFPLEVBQUUsY0FBYztvQkFDdkIsS0FBSyxFQUFFLGFBQWEsRUFBRSwrQ0FBK0M7aUJBQ3RFO2FBQ0YsQ0FBQTtRQUNILENBQUM7UUFDRCxPQUFPLE9BQU8sQ0FBQztJQUNqQixDQUFDLENBQUE7QUFDSCxDQUFDLENBQUMsRUFBRSxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHR5cGUgeyBOZXh0QXV0aE9wdGlvbnMgfSBmcm9tIFwibmV4dC1hdXRoXCI7XG5pbXBvcnQgQ3JlZGVudGlhbHNQcm92aWRlciBmcm9tIFwibmV4dC1hdXRoL3Byb3ZpZGVycy9jcmVkZW50aWFsc1wiO1xuaW1wb3J0IHsgY29va2llcyB9IGZyb20gXCJuZXh0L2hlYWRlcnNcIjtcbmltcG9ydCB7IGdldEFwcGNvbmRhQ2xpZW50IH0gZnJvbSBcIi4uL2dldEFwcGNvbmRhQ2xpZW50XCI7XG5pbXBvcnQgeyBBY2NvdW50IH0gZnJvbSBcIi4uL21vZHVsZXMvYWNjb3VudC9zZXJ2aWNlXCI7XG5pbXBvcnQgeyBnZXRFbnYgfSBmcm9tIFwiLi4vbGliL2VudlwiO1xuaW1wb3J0IHsgZ2V0U0RLRm9yQ3VycmVudFVzZXIgfSBmcm9tIFwiLi4vZ2V0U0RLRm9yQ3VycmVudFVzZXJcIjtcbmltcG9ydCB7IFF1ZXJ5IH0gZnJvbSBcIi4uL3F1ZXJ5XCI7XG5cbi8qIGNvbnN0IGdldEVudiA9ICgpID0+IHtcbiAgcmV0dXJuIHtcbiAgICBBUFBDT05EQV9FTkRQT0lOVDogJ3Byb2Nlc3MuZW52LkFQUENPTkRBX0VORFBPSU5UJyxcbiAgICBBUFBDT05EQV9DTElFTlRfRU5EUE9JTlQ6ICdwcm9jZXNzLmVudi5BUFBDT05EQV9DTElFTlRfRU5EUE9JTlQnLFxuICAgIF9TRVJWSUNFX1RPS0VOOiAncHJvY2Vzcy5lbnYuX1NFUlZJQ0VfVE9LRU4nLFxuICAgIEVOVEVSUFJJU0VfTElDRU5TRV9LRVk6ICdwcm9jZXNzLmVudi5FTlRFUlBSSVNFX0xJQ0VOU0VfS0VZJyxcbiAgfTtcbn07ICovXG5cbmV4cG9ydCBhc3luYyBmdW5jdGlvbiBzaWduSW4oeyB1c2VyTmFtZSwgcGFzc3dvcmQgfTogeyB1c2VyTmFtZTogc3RyaW5nLCBwYXNzd29yZDogc3RyaW5nIH0pIHtcbiAgY29uc3QgYWRtaW5DbGllbnQgPSBhd2FpdCBnZXRBcHBjb25kYUNsaWVudCgpO1xuXG4gIGNvbnN0IGFjY291bnQgPSBuZXcgQWNjb3VudChhZG1pbkNsaWVudCk7XG5cbiAgY29uc3Qgc2Vzc2lvbiA9IGF3YWl0IGFjY291bnQuY3JlYXRlRW1haWxQYXNzd29yZFNlc3Npb24odXNlck5hbWUsIHBhc3N3b3JkKTtcblxuICBjb25zdCBjID0gYXdhaXQgY29va2llcygpO1xuXG4gIGMuc2V0KCdhX3Nlc3Npb24nLCBzZXNzaW9uLnNlY3JldCwge1xuICAgIHBhdGg6IFwiL1wiLFxuICAgIGh0dHBPbmx5OiB0cnVlLFxuICAgIHNhbWVTaXRlOiBcInN0cmljdFwiLFxuICAgIHNlY3VyZTogdHJ1ZSxcbiAgfSk7XG5cbiAgcmV0dXJuIHNlc3Npb247XG5cbn1cblxuZXhwb3J0IGNvbnN0IGF1dGhPcHRpb25zID0gKCgpID0+IHtcbiAgbGV0IG9wdGlvbnMgPSBudWxsO1xuXG4gIHJldHVybiAoKSA9PiB7XG4gICAgaWYgKG9wdGlvbnMgPT0gbnVsbCkge1xuICAgICAgb3B0aW9ucyA9IHtcbiAgICAgICAgcHJvdmlkZXJzOiBbXG4gICAgICAgICAgQ3JlZGVudGlhbHNQcm92aWRlcih7XG4gICAgICAgICAgICBpZDogXCJjcmVkZW50aWFsc1wiLFxuICAgICAgICAgICAgLy8gVGhlIG5hbWUgdG8gZGlzcGxheSBvbiB0aGUgc2lnbiBpbiBmb3JtIChlLmcuIFwiU2lnbiBpbiB3aXRoLi4uXCIpXG4gICAgICAgICAgICBuYW1lOiBcIkNyZWRlbnRpYWxzXCIsXG4gICAgICAgICAgICAvLyBUaGUgY3JlZGVudGlhbHMgaXMgdXNlZCB0byBnZW5lcmF0ZSBhIHN1aXRhYmxlIGZvcm0gb24gdGhlIHNpZ24gaW4gcGFnZS5cbiAgICAgICAgICAgIC8vIFlvdSBjYW4gc3BlY2lmeSB3aGF0ZXZlciBmaWVsZHMgeW91IGFyZSBleHBlY3RpbmcgdG8gYmUgc3VibWl0dGVkLlxuICAgICAgICAgICAgLy8gZS5nLiBkb21haW4sIHVzZXJuYW1lLCBwYXNzd29yZCwgMkZBIHRva2VuLCBldGMuXG4gICAgICAgICAgICAvLyBZb3UgY2FuIHBhc3MgYW55IEhUTUwgYXR0cmlidXRlIHRvIHRoZSA8aW5wdXQ+IHRhZyB0aHJvdWdoIHRoZSBvYmplY3QuXG4gICAgICAgICAgICBjcmVkZW50aWFsczoge1xuICAgICAgICAgICAgICBlbWFpbDoge1xuICAgICAgICAgICAgICAgIGxhYmVsOiBcIkVtYWlsIEFkZHJlc3NcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBcImVtYWlsXCIsXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IFwiWW91ciBlbWFpbCBhZGRyZXNzXCIsXG4gICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgIHBhc3N3b3JkOiB7XG4gICAgICAgICAgICAgICAgbGFiZWw6IFwiUGFzc3dvcmRcIixcbiAgICAgICAgICAgICAgICB0eXBlOiBcInBhc3N3b3JkXCIsXG4gICAgICAgICAgICAgICAgcGxhY2Vob2xkZXI6IFwiWW91ciBwYXNzd29yZFwiLFxuICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICB0b3RwQ29kZTogeyBsYWJlbDogXCJUd28tZmFjdG9yIENvZGVcIiwgdHlwZTogXCJpbnB1dFwiLCBwbGFjZWhvbGRlcjogXCJDb2RlIGZyb20gYXV0aGVudGljYXRvciBhcHBcIiB9LFxuICAgICAgICAgICAgICBiYWNrdXBDb2RlOiB7IGxhYmVsOiBcIkJhY2t1cCBDb2RlXCIsIHR5cGU6IFwiaW5wdXRcIiwgcGxhY2Vob2xkZXI6IFwiVHdvLWZhY3RvciBiYWNrdXAgY29kZVwiIH0sXG4gICAgICAgICAgICB9LFxuICAgICAgICAgICAgYXN5bmMgYXV0aG9yaXplKGNyZWRlbnRpYWxzLCBfcmVxKSB7XG4gICAgICAgICAgICAgIGRlYnVnZ2VyO1xuICAgICAgICAgICAgICBsZXQgdXNlcjtcbiAgICAgICAgICAgICAgY29uc3QgYXBwY29uZGFTZXNzaW9uID0gYXdhaXQgc2lnbkluKHsgdXNlck5hbWU6IGNyZWRlbnRpYWxzPy5lbWFpbCBhcyBzdHJpbmcsIHBhc3N3b3JkOiBjcmVkZW50aWFscz8ucGFzc3dvcmQgYXMgc3RyaW5nIH0pO1xuXG4gICAgICAgICAgICAgIGNvbnNvbGUubG9nKGNyZWRlbnRpYWxzKTtcbiAgICAgICAgICAgICAgLyogIHRyeSB7XG4gICAgICAgICAgICAgICAgIHVzZXIgPSBhd2FpdCBwcmlzbWEudXNlci5maW5kVW5pcXVlKHtcbiAgICAgICAgICAgICAgICAgICB3aGVyZToge1xuICAgICAgICAgICAgICAgICAgICAgZW1haWw6IGNyZWRlbnRpYWxzPy5lbWFpbCxcbiAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgICAgICAgICAgICAgICAgdGhyb3cgRXJyb3IoXCJJbnRlcm5hbCBzZXJ2ZXIgZXJyb3IuIFBsZWFzZSB0cnkgYWdhaW4gbGF0ZXJcIik7XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICBpZiAoIXVzZXIgfHwgIWNyZWRlbnRpYWxzKSB7XG4gICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludmFsaWQgY3JlZGVudGlhbHNcIik7XG4gICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICBpZiAoIXVzZXIucGFzc3dvcmQpIHtcbiAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBjcmVkZW50aWFsc1wiKTtcbiAgICAgICAgICAgICAgIH1cbiAgICAgICBcbiAgICAgICAgICAgICAgIGNvbnN0IGlzVmFsaWQgPSBhd2FpdCB2ZXJpZnlQYXNzd29yZChjcmVkZW50aWFscy5wYXNzd29yZCwgdXNlci5wYXNzd29yZCk7XG4gICAgICAgXG4gICAgICAgICAgICAgICBpZiAoIWlzVmFsaWQpIHtcbiAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBjcmVkZW50aWFsc1wiKTtcbiAgICAgICAgICAgICAgIH1cbiAgICAgICBcbiAgICAgICAgICAgICAgIGlmICh1c2VyLnR3b0ZhY3RvckVuYWJsZWQgJiYgY3JlZGVudGlhbHMuYmFja3VwQ29kZSkge1xuICAgICAgICAgICAgICAgICBpZiAoIUVOQ1JZUFRJT05fS0VZKSB7XG4gICAgICAgICAgICAgICAgICAgY29uc29sZS5lcnJvcihcIk1pc3NpbmcgZW5jcnlwdGlvbiBrZXk7IGNhbm5vdCBwcm9jZWVkIHdpdGggYmFja3VwIGNvZGUgbG9naW4uXCIpO1xuICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludGVybmFsIFNlcnZlciBFcnJvclwiKTtcbiAgICAgICAgICAgICAgICAgfVxuICAgICAgIFxuICAgICAgICAgICAgICAgICBpZiAoIXVzZXIuYmFja3VwQ29kZXMpIHRocm93IG5ldyBFcnJvcihcIk5vIGJhY2t1cCBjb2RlcyBmb3VuZFwiKTtcbiAgICAgICBcbiAgICAgICAgICAgICAgICAgY29uc3QgYmFja3VwQ29kZXMgPSBKU09OLnBhcnNlKHN5bW1ldHJpY0RlY3J5cHQodXNlci5iYWNrdXBDb2RlcywgRU5DUllQVElPTl9LRVkpKTtcbiAgICAgICBcbiAgICAgICAgICAgICAgICAgLy8gY2hlY2sgaWYgdXNlci1zdXBwbGllZCBjb2RlIG1hdGNoZXMgb25lXG4gICAgICAgICAgICAgICAgIGNvbnN0IGluZGV4ID0gYmFja3VwQ29kZXMuaW5kZXhPZihjcmVkZW50aWFscy5iYWNrdXBDb2RlLnJlcGxhY2VBbGwoXCItXCIsIFwiXCIpKTtcbiAgICAgICAgICAgICAgICAgaWYgKGluZGV4ID09PSAtMSkgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBiYWNrdXAgY29kZVwiKTtcbiAgICAgICBcbiAgICAgICAgICAgICAgICAgLy8gZGVsZXRlIHZlcmlmaWVkIGJhY2t1cCBjb2RlIGFuZCByZS1lbmNyeXB0IHJlbWFpbmluZ1xuICAgICAgICAgICAgICAgICBiYWNrdXBDb2Rlc1tpbmRleF0gPSBudWxsO1xuICAgICAgICAgICAgICAgICBhd2FpdCBwcmlzbWEudXNlci51cGRhdGUoe1xuICAgICAgICAgICAgICAgICAgIHdoZXJlOiB7XG4gICAgICAgICAgICAgICAgICAgICBpZDogdXNlci5pZCxcbiAgICAgICAgICAgICAgICAgICB9LFxuICAgICAgICAgICAgICAgICAgIGRhdGE6IHtcbiAgICAgICAgICAgICAgICAgICAgIGJhY2t1cENvZGVzOiBzeW1tZXRyaWNFbmNyeXB0KEpTT04uc3RyaW5naWZ5KGJhY2t1cENvZGVzKSwgRU5DUllQVElPTl9LRVkpLFxuICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgfSBlbHNlIGlmICh1c2VyLnR3b0ZhY3RvckVuYWJsZWQpIHtcbiAgICAgICAgICAgICAgICAgaWYgKCFjcmVkZW50aWFscy50b3RwQ29kZSkge1xuICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcInNlY29uZCBmYWN0b3IgcmVxdWlyZWRcIik7XG4gICAgICAgICAgICAgICAgIH1cbiAgICAgICBcbiAgICAgICAgICAgICAgICAgaWYgKCF1c2VyLnR3b0ZhY3RvclNlY3JldCkge1xuICAgICAgICAgICAgICAgICAgIHRocm93IG5ldyBFcnJvcihcIkludGVybmFsIFNlcnZlciBFcnJvclwiKTtcbiAgICAgICAgICAgICAgICAgfVxuICAgICAgIFxuICAgICAgICAgICAgICAgICBpZiAoIUVOQ1JZUFRJT05fS0VZKSB7XG4gICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW50ZXJuYWwgU2VydmVyIEVycm9yXCIpO1xuICAgICAgICAgICAgICAgICB9XG4gICAgICAgXG4gICAgICAgICAgICAgICAgIGNvbnN0IHNlY3JldCA9IHN5bW1ldHJpY0RlY3J5cHQodXNlci50d29GYWN0b3JTZWNyZXQsIEVOQ1JZUFRJT05fS0VZKTtcbiAgICAgICAgICAgICAgICAgaWYgKHNlY3JldC5sZW5ndGggIT09IDMyKSB7XG4gICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW50ZXJuYWwgU2VydmVyIEVycm9yXCIpO1xuICAgICAgICAgICAgICAgICB9XG4gICAgICAgXG4gICAgICAgICAgICAgICAgIGNvbnN0IGlzVmFsaWRUb2tlbiA9IChhd2FpdCBpbXBvcnQoXCIuL3RvdHBcIikpLnRvdHBBdXRoZW50aWNhdG9yQ2hlY2soY3JlZGVudGlhbHMudG90cENvZGUsIHNlY3JldCk7XG4gICAgICAgICAgICAgICAgIGlmICghaXNWYWxpZFRva2VuKSB7XG4gICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiSW52YWxpZCBzZWNvbmQgZmFjdG9yIGNvZGVcIik7XG4gICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgIH0gKi9cblxuICAgICAgICAgICAgICBjb25zb2xlLmxvZyhcImFzYWZkZlwiKVxuXG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgaWQ6IGFwcGNvbmRhU2Vzc2lvbi51c2VySWQsXG4gICAgICAgICAgICAgICAgZW1haWw6IGFwcGNvbmRhU2Vzc2lvbi5wcm92aWRlclVpZCxcbiAgICAgICAgICAgICAgICBlbWFpbFZlcmlmaWVkOiB0cnVlLFxuICAgICAgICAgICAgICAgIGltYWdlVXJsOiBcIlwiLFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICBDcmVkZW50aWFsc1Byb3ZpZGVyKHtcbiAgICAgICAgICAgIGlkOiBcInRva2VuXCIsXG4gICAgICAgICAgICAvLyBUaGUgbmFtZSB0byBkaXNwbGF5IG9uIHRoZSBzaWduIGluIGZvcm0gKGUuZy4gXCJTaWduIGluIHdpdGguLi5cIilcbiAgICAgICAgICAgIG5hbWU6IFwiVG9rZW5cIixcbiAgICAgICAgICAgIC8vIFRoZSBjcmVkZW50aWFscyBpcyB1c2VkIHRvIGdlbmVyYXRlIGEgc3VpdGFibGUgZm9ybSBvbiB0aGUgc2lnbiBpbiBwYWdlLlxuICAgICAgICAgICAgLy8gWW91IGNhbiBzcGVjaWZ5IHdoYXRldmVyIGZpZWxkcyB5b3UgYXJlIGV4cGVjdGluZyB0byBiZSBzdWJtaXR0ZWQuXG4gICAgICAgICAgICAvLyBlLmcuIGRvbWFpbiwgdXNlcm5hbWUsIHBhc3N3b3JkLCAyRkEgdG9rZW4sIGV0Yy5cbiAgICAgICAgICAgIC8vIFlvdSBjYW4gcGFzcyBhbnkgSFRNTCBhdHRyaWJ1dGUgdG8gdGhlIDxpbnB1dD4gdGFnIHRocm91Z2ggdGhlIG9iamVjdC5cbiAgICAgICAgICAgIGNyZWRlbnRpYWxzOiB7XG4gICAgICAgICAgICAgIHRva2VuOiB7XG4gICAgICAgICAgICAgICAgbGFiZWw6IFwiVmVyaWZpY2F0aW9uIFRva2VuXCIsXG4gICAgICAgICAgICAgICAgdHlwZTogXCJzdHJpbmdcIixcbiAgICAgICAgICAgICAgfSxcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgICBhc3luYyBhdXRob3JpemUoY3JlZGVudGlhbHMsIF9yZXEpIHtcblxuICAgICAgICAgICAgICBsZXQgdXNlcjtcbiAgICAgICAgICAgICAgLyogIHRyeSB7XG4gICAgICAgICAgICAgICAgIGlmICghY3JlZGVudGlhbHM/LnRva2VuKSB7XG4gICAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiVG9rZW4gbm90IGZvdW5kXCIpO1xuICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgIGNvbnN0IHsgaWQgfSA9IGF3YWl0IHZlcmlmeVRva2VuKGNyZWRlbnRpYWxzPy50b2tlbik7XG4gICAgICAgICAgICAgICAgIHVzZXIgPSBhd2FpdCBwcmlzbWEudXNlci5maW5kVW5pcXVlKHtcbiAgICAgICAgICAgICAgICAgICB3aGVyZToge1xuICAgICAgICAgICAgICAgICAgICAgaWQ6IGlkLFxuICAgICAgICAgICAgICAgICAgIH0sXG4gICAgICAgICAgICAgICAgIH0pO1xuICAgICAgICAgICAgICAgfSBjYXRjaCAoZSkge1xuICAgICAgICAgICAgICAgICBjb25zb2xlLmVycm9yKGUpO1xuICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFaXRoZXIgYSB1c2VyIGRvZXMgbm90IG1hdGNoIHRoZSBwcm92aWRlZCB0b2tlbiBvciB0aGUgdG9rZW4gaXMgaW52YWxpZFwiKTtcbiAgICAgICAgICAgICAgIH1cbiAgICAgICBcbiAgICAgICAgICAgICAgIGlmICghdXNlcikge1xuICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFaXRoZXIgYSB1c2VyIGRvZXMgbm90IG1hdGNoIHRoZSBwcm92aWRlZCB0b2tlbiBvciB0aGUgdG9rZW4gaXMgaW52YWxpZFwiKTtcbiAgICAgICAgICAgICAgIH1cbiAgICAgICBcbiAgICAgICAgICAgICAgIGlmICh1c2VyLmVtYWlsVmVyaWZpZWQpIHtcbiAgICAgICAgICAgICAgICAgdGhyb3cgbmV3IEVycm9yKFwiRW1haWwgYWxyZWFkeSB2ZXJpZmllZFwiKTtcbiAgICAgICAgICAgICAgIH1cbiAgICAgICBcbiAgICAgICAgICAgICAgIHVzZXIgPSBhd2FpdCB1cGRhdGVVc2VyKHVzZXIuaWQsIHsgZW1haWxWZXJpZmllZDogbmV3IERhdGUoKSB9KTsgKi9cblxuICAgICAgICAgICAgICByZXR1cm4gdXNlciB8fCBudWxsO1xuICAgICAgICAgICAgfSxcbiAgICAgICAgICB9KSxcbiAgICAgICAgICAvLyBDb25kaXRpb25hbGx5IGFkZCBlbnRlcnByaXNlIFNTTyBwcm92aWRlcnNcbiAgICAgICAgICAuLi4oZ2V0RW52KCkuRU5URVJQUklTRV9MSUNFTlNFX0tFWSA/IFtdIDogW10pLFxuICAgICAgICBdLFxuICAgICAgICBjYWxsYmFja3M6IHtcbiAgICAgICAgICBhc3luYyBqd3QoeyB0b2tlbiB9KSB7XG5cbiAgICAgICAgICAgIGNvbnN0IHsgdXNlcnMgfSA9IGF3YWl0IGdldFNES0ZvckN1cnJlbnRVc2VyKCk7XG4gICAgICAgICAgICBjb25zdCB1c2VyTGlzdCA9IGF3YWl0IHVzZXJzLmxpc3QoW1F1ZXJ5LmVxdWFsKFwiZW1haWxcIiwgdG9rZW4uZW1haWwhKV0pXG5cbiAgICAgICAgICAgIGNvbnN0IHVzZXIgPSB1c2VyTGlzdC51c2Vyc1swXSA/PyB7fTtcblxuICAgICAgICAgICAgLyogIGNvbnN0IGV4aXN0aW5nVXNlciA9IGF3YWl0IGdldFVzZXJCeUVtYWlsKHRva2VuPy5lbWFpbCEpO1xuICAgICAgIFxuICAgICAgICAgICAgIGlmICghZXhpc3RpbmdVc2VyKSB7XG4gICAgICAgICAgICAgICByZXR1cm4gdG9rZW47XG4gICAgICAgICAgICAgfSAqL1xuXG4gICAgICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgICAuLi50b2tlbixcbiAgICAgICAgICAgICAgLy9AdHMtaWdub3JlXG4gICAgICAgICAgICAgIHByb2ZpbGU6IHsgaWQ6IHVzZXIuJGlkLCAuLi51c2VyIH0sXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIH0sXG4gICAgICAgICAgYXN5bmMgc2Vzc2lvbih7IHNlc3Npb24sIHRva2VuIH0pIHtcbiAgICAgICAgICAgIC8vQHRzLWlnbm9yZVxuICAgICAgICAgICAgc2Vzc2lvbi51c2VyLmlkID0gdG9rZW4/LmlkO1xuICAgICAgICAgICAgLy9AdHMtaWdub3JlXG4gICAgICAgICAgICBzZXNzaW9uLnVzZXIgPSB0b2tlbi5wcm9maWxlO1xuXG4gICAgICAgICAgICByZXR1cm4gc2Vzc2lvbjtcbiAgICAgICAgICB9LFxuICAgICAgICAgIC8vQHRzLWlnbm9yZVxuICAgICAgICAgIGFzeW5jIHNpZ25Jbih7IHVzZXIsIGFjY291bnQgfTogeyB1c2VyOiBhbnk7IGFjY291bnQ6IEFjY291bnQgfCBudWxsIH0pIHtcbiAgICAgICAgICAgIC8qICAgaWYgKGFjY291bnQ/LnByb3ZpZGVyID09PSBcImNyZWRlbnRpYWxzXCIgfHwgYWNjb3VudD8ucHJvdmlkZXIgPT09IFwidG9rZW5cIikge1xuICAgICAgICAgICAgICAgIC8vIGNoZWNrIGlmIHVzZXIncyBlbWFpbCBpcyB2ZXJpZmllZCBvciBub3RcbiAgICAgICAgICAgICAgICBpZiAoIXVzZXIuZW1haWxWZXJpZmllZCAmJiAhRU1BSUxfVkVSSUZJQ0FUSU9OX0RJU0FCTEVEKSB7XG4gICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoXCJFbWFpbCBWZXJpZmljYXRpb24gaXMgUGVuZGluZ1wiKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgcmV0dXJuIHRydWU7XG4gICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgaWYgKEVOVEVSUFJJU0VfTElDRU5TRV9LRVkpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gaGFuZGxlU1NPQ2FsbGJhY2soeyB1c2VyLCBhY2NvdW50IH0pO1xuICAgICAgICAgICAgICB9ICovXG4gICAgICAgICAgICByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICB9LFxuICAgICAgICB9LFxuICAgICAgICBwYWdlczoge1xuICAgICAgICAgIHNpZ25JbjogXCIvYXV0aC9sb2dpblwiLFxuICAgICAgICAgIHNpZ25PdXQ6IFwiL2F1dGgvbG9nb3V0XCIsXG4gICAgICAgICAgZXJyb3I6IFwiL2F1dGgvbG9naW5cIiwgLy8gRXJyb3IgY29kZSBwYXNzZWQgaW4gcXVlcnkgc3RyaW5nIGFzID9lcnJvcj1cbiAgICAgICAgfSxcbiAgICAgIH1cbiAgICB9XG4gICAgcmV0dXJuIG9wdGlvbnM7XG4gIH1cbn0pKCk7XG4iXX0=
@@ -1,3 +0,0 @@
1
- export * from "./actionClient";
2
- export * from "./auth";
3
- export * from "./nextAuthHandler";
@@ -1,4 +0,0 @@
1
- export * from "./actionClient";
2
- export * from "./auth";
3
- export * from "./nextAuthHandler";
4
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvYWN0aW9ucy9pbmRleC50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxjQUFjLGdCQUFnQixDQUFDO0FBQy9CLGNBQWMsUUFBUSxDQUFDO0FBQ3ZCLGNBQWMsbUJBQW1CLENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tIFwiLi9hY3Rpb25DbGllbnRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL2F1dGhcIjtcbmV4cG9ydCAqIGZyb20gXCIuL25leHRBdXRoSGFuZGxlclwiO1xuIl19
@@ -1 +0,0 @@
1
- export declare const getHandler: () => any;
@@ -1,6 +0,0 @@
1
- import NextAuth from "next-auth";
2
- import { authOptions } from "./authOptions";
3
- export const getHandler = () => {
4
- return NextAuth(authOptions());
5
- };
6
- //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmV4dEF1dGhIYW5kbGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vc3JjL2FjdGlvbnMvbmV4dEF1dGhIYW5kbGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUVBLE9BQU8sUUFBUSxNQUFNLFdBQVcsQ0FBQztBQUNqQyxPQUFPLEVBQUUsV0FBVyxFQUFFLE1BQU0sZUFBZSxDQUFDO0FBRTVDLE1BQU0sQ0FBQyxNQUFNLFVBQVUsR0FBRyxHQUFHLEVBQUU7SUFDM0IsT0FBTyxRQUFRLENBQUMsV0FBVyxFQUFFLENBQUMsQ0FBQTtBQUNsQyxDQUFDLENBQUUiLCJzb3VyY2VzQ29udGVudCI6WyJcblxuaW1wb3J0IE5leHRBdXRoIGZyb20gXCJuZXh0LWF1dGhcIjtcbmltcG9ydCB7IGF1dGhPcHRpb25zIH0gZnJvbSBcIi4vYXV0aE9wdGlvbnNcIjtcblxuZXhwb3J0IGNvbnN0IGdldEhhbmRsZXIgPSAoKSA9PiB7XG4gICAgcmV0dXJuIE5leHRBdXRoKGF1dGhPcHRpb25zKCkpXG59IDtcblxuIl19
@@ -1,4 +0,0 @@
1
- export declare const getAllNodesAction: import("next-safe-action").SafeActionFn<string, undefined, readonly [], {
2
- formErrors: string[];
3
- fieldErrors: {};
4
- }, readonly [], any[]>;
@@ -1,15 +0,0 @@
1
- 'use server';
2
- import { actionClient } from "./actionClient";
3
- import { getSDKForCurrentUser } from '../getSDKForCurrentUser';
4
- export const getAllNodesAction = actionClient
5
- // .schema(listModelsSchema)
6
- .action(async ({ parsedInput }) => {
7
- try {
8
- const { node } = await getSDKForCurrentUser();
9
- return await node.GetAllNodes();
10
- }
11
- catch (error) {
12
- console.error('Error in getAllNodesAction:', error);
13
- throw new Error('Failed to fetch nodes');
14
- }
15
- });
package/dist/client.d.ts DELETED
@@ -1,141 +0,0 @@
1
- import { Models } from './models';
2
- type Payload = {
3
- [key: string]: any;
4
- };
5
- type UploadProgress = {
6
- $id: string;
7
- progress: number;
8
- sizeUploaded: number;
9
- chunksTotal: number;
10
- chunksUploaded: number;
11
- };
12
- type Headers = {
13
- [key: string]: string;
14
- };
15
- declare class AppcondaException extends Error {
16
- code: number;
17
- response: string;
18
- type: string;
19
- constructor(message: string, code?: number, type?: string, response?: string);
20
- }
21
- declare class Client {
22
- static CHUNK_SIZE: number;
23
- config: {
24
- endpoint: string;
25
- selfSigned: boolean;
26
- project: string;
27
- mode: string;
28
- key: string;
29
- jwt: string;
30
- locale: string;
31
- session: string;
32
- forwardeduseragent: string;
33
- };
34
- headers: Headers;
35
- /**
36
- * Set Endpoint
37
- *
38
- * Your project endpoint
39
- *
40
- * @param {string} endpoint
41
- *
42
- * @returns {this}
43
- */
44
- setEndpoint(endpoint: string): this;
45
- /**
46
- * Set self-signed
47
- *
48
- * @param {boolean} selfSigned
49
- *
50
- * @returns {this}
51
- */
52
- setSelfSigned(selfSigned: boolean): this;
53
- /**
54
- * Add header
55
- *
56
- * @param {string} header
57
- * @param {string} value
58
- *
59
- * @returns {this}
60
- */
61
- addHeader(header: string, value: string): this;
62
- /**
63
- * Set Project
64
- *
65
- * Your project ID
66
- *
67
- * @param value string
68
- *
69
- * @return {this}
70
- */
71
- setProject(value: string): this;
72
- /**
73
- * Set Mode
74
- *
75
- * @param value string
76
- *
77
- * @return {this}
78
- */
79
- setMode(value: string): this;
80
- /**
81
- * Set Key
82
- *
83
- * Your secret API key
84
- *
85
- * @param value string
86
- *
87
- * @return {this}
88
- */
89
- setKey(value: string): this;
90
- /**
91
- * Set JWT
92
- *
93
- * Your secret JSON Web Token
94
- *
95
- * @param value string
96
- *
97
- * @return {this}
98
- */
99
- setJWT(value: string): this;
100
- /**
101
- * Set Locale
102
- *
103
- * @param value string
104
- *
105
- * @return {this}
106
- */
107
- setLocale(value: string): this;
108
- /**
109
- * Set Session
110
- *
111
- * The user session to authenticate with
112
- *
113
- * @param value string
114
- *
115
- * @return {this}
116
- */
117
- setSession(value: string): this;
118
- /**
119
- * Set ForwardedUserAgent
120
- *
121
- * The user agent string of the client that made the request
122
- *
123
- * @param value string
124
- *
125
- * @return {this}
126
- */
127
- setForwardedUserAgent(value: string): this;
128
- setFallbackCookies(value: string): this;
129
- prepareRequest(method: string, url: URL, headers?: Headers, params?: Payload): {
130
- uri: string;
131
- options: RequestInit;
132
- };
133
- chunkedUpload(method: string, url: URL, headers: Headers, originalPayload: Payload, onProgress: (progress: UploadProgress) => void): Promise<any>;
134
- redirect(method: string, url: URL, headers?: Headers, params?: Payload): Promise<string>;
135
- call(method: string, url: URL, headers?: Headers, params?: Payload, responseType?: string): Promise<any>;
136
- static flatten(data: Payload, prefix?: string): Payload;
137
- }
138
- export { Client, AppcondaException };
139
- export { Query } from './query';
140
- export type { Models, Payload, UploadProgress };
141
- export type { QueryTypes, QueryTypesList } from './query';