@solidxai/core-ui 0.1.7-beta.7 → 0.1.7-beta.9

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 (136) hide show
  1. package/dist/adapters/auth/helper.d.ts +9 -0
  2. package/dist/adapters/auth/helper.d.ts.map +1 -0
  3. package/dist/adapters/auth/helper.js +37 -0
  4. package/dist/adapters/auth/helper.js.map +1 -0
  5. package/dist/adapters/auth/helper.ts +45 -0
  6. package/dist/adapters/auth/signInWithOtp.d.ts.map +1 -1
  7. package/dist/adapters/auth/signInWithOtp.js +3 -27
  8. package/dist/adapters/auth/signInWithOtp.js.map +1 -1
  9. package/dist/adapters/auth/signInWithOtp.ts +3 -23
  10. package/dist/components/common/GeneralSettings.d.ts.map +1 -1
  11. package/dist/components/common/GeneralSettings.js +68 -36
  12. package/dist/components/common/GeneralSettings.js.map +1 -1
  13. package/dist/components/common/GeneralSettings.tsx +81 -42
  14. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.d.ts +27 -5
  15. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.d.ts.map +1 -1
  16. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js +25 -37
  17. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.js.map +1 -1
  18. package/dist/components/common/SolidSettings/LlmSettings/AiModelConfigTab.tsx +131 -52
  19. package/dist/components/core/chatter/SolidChatter.d.ts +2 -1
  20. package/dist/components/core/chatter/SolidChatter.d.ts.map +1 -1
  21. package/dist/components/core/chatter/SolidChatter.js +2 -2
  22. package/dist/components/core/chatter/SolidChatter.js.map +1 -1
  23. package/dist/components/core/chatter/SolidChatter.tsx +2 -1
  24. package/dist/components/core/chatter/SolidChatterHeader.d.ts +1 -0
  25. package/dist/components/core/chatter/SolidChatterHeader.d.ts.map +1 -1
  26. package/dist/components/core/chatter/SolidChatterHeader.js +3 -3
  27. package/dist/components/core/chatter/SolidChatterHeader.js.map +1 -1
  28. package/dist/components/core/chatter/SolidChatterHeader.tsx +4 -3
  29. package/dist/components/core/chatter/SolidMessageComposer.d.ts +2 -1
  30. package/dist/components/core/chatter/SolidMessageComposer.d.ts.map +1 -1
  31. package/dist/components/core/chatter/SolidMessageComposer.js +3 -1
  32. package/dist/components/core/chatter/SolidMessageComposer.js.map +1 -1
  33. package/dist/components/core/chatter/SolidMessageComposer.tsx +3 -1
  34. package/dist/components/core/common/SolidViewLayoutManager.d.ts +17 -0
  35. package/dist/components/core/common/SolidViewLayoutManager.d.ts.map +1 -1
  36. package/dist/components/core/common/SolidViewLayoutManager.js +58 -1
  37. package/dist/components/core/common/SolidViewLayoutManager.js.map +1 -1
  38. package/dist/components/core/common/SolidViewLayoutManager.ts +43 -2
  39. package/dist/components/core/extension/solid-core/chatterMessage/form/SolidChatterMessageCoModelEntityIdFormViewWidget.d.ts +3 -0
  40. package/dist/components/core/extension/solid-core/chatterMessage/form/SolidChatterMessageCoModelEntityIdFormViewWidget.d.ts.map +1 -0
  41. package/dist/components/core/extension/solid-core/chatterMessage/form/SolidChatterMessageCoModelEntityIdFormViewWidget.js +92 -0
  42. package/dist/components/core/extension/solid-core/chatterMessage/form/SolidChatterMessageCoModelEntityIdFormViewWidget.js.map +1 -0
  43. package/dist/components/core/extension/solid-core/chatterMessage/form/SolidChatterMessageCoModelEntityIdFormViewWidget.tsx +68 -0
  44. package/dist/components/core/extension/solid-core/chatterMessage/list/SolidChatterMessageCoModelEntityIdListViewWidget.d.ts +3 -0
  45. package/dist/components/core/extension/solid-core/chatterMessage/list/SolidChatterMessageCoModelEntityIdListViewWidget.d.ts.map +1 -0
  46. package/dist/components/core/extension/solid-core/chatterMessage/list/SolidChatterMessageCoModelEntityIdListViewWidget.js +87 -0
  47. package/dist/components/core/extension/solid-core/chatterMessage/list/SolidChatterMessageCoModelEntityIdListViewWidget.js.map +1 -0
  48. package/dist/components/core/extension/solid-core/chatterMessage/list/SolidChatterMessageCoModelEntityIdListViewWidget.tsx +70 -0
  49. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.d.ts +3 -0
  50. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.d.ts.map +1 -0
  51. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.js +111 -0
  52. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.js.map +1 -0
  53. package/dist/components/core/extension/solid-core/listOfValues/form/SolidLovTypeChangeFormEditWidget.tsx +122 -0
  54. package/dist/components/core/extension/solid-core/mqMessage/form/SolidMqMessageStageFormViewWIdget.d.ts +3 -0
  55. package/dist/components/core/extension/solid-core/mqMessage/form/SolidMqMessageStageFormViewWIdget.d.ts.map +1 -0
  56. package/dist/components/core/extension/solid-core/mqMessage/form/SolidMqMessageStageFormViewWIdget.js +10 -0
  57. package/dist/components/core/extension/solid-core/mqMessage/form/SolidMqMessageStageFormViewWIdget.js.map +1 -0
  58. package/dist/components/core/extension/solid-core/mqMessage/form/SolidMqMessageStageFormViewWIdget.tsx +21 -0
  59. package/dist/components/core/extension/solid-core/mqMessage/form/mqMessageOnFormLoadHandler.d.ts +8 -0
  60. package/dist/components/core/extension/solid-core/mqMessage/form/mqMessageOnFormLoadHandler.d.ts.map +1 -0
  61. package/dist/components/core/extension/solid-core/mqMessage/form/mqMessageOnFormLoadHandler.js +62 -0
  62. package/dist/components/core/extension/solid-core/mqMessage/form/mqMessageOnFormLoadHandler.js.map +1 -0
  63. package/dist/components/core/extension/solid-core/mqMessage/form/mqMessageOnFormLoadHandler.tsx +27 -0
  64. package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessageStageListViewWidget.d.ts +3 -0
  65. package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessageStageListViewWidget.d.ts.map +1 -0
  66. package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessageStageListViewWidget.js +8 -0
  67. package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessageStageListViewWidget.js.map +1 -0
  68. package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessageStageListViewWidget.tsx +15 -0
  69. package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessagesSummarizeListHeaderAction.d.ts +3 -0
  70. package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessagesSummarizeListHeaderAction.d.ts.map +1 -0
  71. package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessagesSummarizeListHeaderAction.js +158 -0
  72. package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessagesSummarizeListHeaderAction.js.map +1 -0
  73. package/dist/components/core/extension/solid-core/mqMessage/list/SolidMqMessagesSummarizeListHeaderAction.tsx +185 -0
  74. package/dist/components/core/extension/solid-core/mqMessage/ui/MqMessageStageBadge.d.ts +17 -0
  75. package/dist/components/core/extension/solid-core/mqMessage/ui/MqMessageStageBadge.d.ts.map +1 -0
  76. package/dist/components/core/extension/solid-core/mqMessage/ui/MqMessageStageBadge.js +52 -0
  77. package/dist/components/core/extension/solid-core/mqMessage/ui/MqMessageStageBadge.js.map +1 -0
  78. package/dist/components/core/extension/solid-core/mqMessage/ui/MqMessageStageBadge.tsx +83 -0
  79. package/dist/components/core/locales/SolidChatterLocaleTabView.d.ts.map +1 -1
  80. package/dist/components/core/locales/SolidChatterLocaleTabView.js +7 -5
  81. package/dist/components/core/locales/SolidChatterLocaleTabView.js.map +1 -1
  82. package/dist/components/core/locales/SolidChatterLocaleTabView.tsx +3 -0
  83. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.css +38 -0
  84. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.d.ts +1 -0
  85. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.d.ts.map +1 -1
  86. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.js +4 -3
  87. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.js.map +1 -1
  88. package/dist/components/core/users/ApiKeysTab/ApiKeysTab.tsx +13 -3
  89. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.d.ts +2 -1
  90. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.d.ts.map +1 -1
  91. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.js +6 -5
  92. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.js.map +1 -1
  93. package/dist/components/core/users/ApiKeysTab/GenerateApiKeyModal.tsx +6 -7
  94. package/dist/components/core/users/CreateUser.d.ts.map +1 -1
  95. package/dist/components/core/users/CreateUser.js +89 -35
  96. package/dist/components/core/users/CreateUser.js.map +1 -1
  97. package/dist/components/core/users/CreateUser.tsx +291 -165
  98. package/dist/components/layout/SolidAiStudioLayout.d.ts.map +1 -1
  99. package/dist/components/layout/SolidAiStudioLayout.js +123 -8
  100. package/dist/components/layout/SolidAiStudioLayout.js.map +1 -1
  101. package/dist/components/layout/SolidAiStudioLayout.tsx +70 -6
  102. package/dist/helpers/registry.d.ts.map +1 -1
  103. package/dist/helpers/registry.js +10 -6
  104. package/dist/helpers/registry.js.map +1 -1
  105. package/dist/helpers/registry.ts +11 -7
  106. package/dist/index.d.ts +4 -0
  107. package/dist/index.d.ts.map +1 -1
  108. package/dist/index.js +4 -0
  109. package/dist/index.js.map +1 -1
  110. package/dist/index.ts +12 -0
  111. package/dist/redux/api/apiKeyApi.d.ts +8 -1
  112. package/dist/redux/api/apiKeyApi.d.ts.map +1 -1
  113. package/dist/redux/api/apiKeyApi.js +12 -1
  114. package/dist/redux/api/apiKeyApi.js.map +1 -1
  115. package/dist/redux/api/apiKeyApi.ts +9 -0
  116. package/dist/redux/store/defaultStoreConfig.d.ts +16 -1
  117. package/dist/redux/store/defaultStoreConfig.d.ts.map +1 -1
  118. package/dist/redux/store/defaultStoreConfig.js +3 -1
  119. package/dist/redux/store/defaultStoreConfig.js.map +1 -1
  120. package/dist/redux/store/defaultStoreConfig.ts +3 -1
  121. package/dist/routes/guards/AuthGuard.d.ts +5 -1
  122. package/dist/routes/guards/AuthGuard.d.ts.map +1 -1
  123. package/dist/routes/guards/AuthGuard.js +13 -2
  124. package/dist/routes/guards/AuthGuard.js.map +1 -1
  125. package/dist/routes/guards/AuthGuard.tsx +27 -3
  126. package/dist/routes/guards/GuestGuard.d.ts +2 -0
  127. package/dist/routes/guards/GuestGuard.d.ts.map +1 -0
  128. package/dist/routes/guards/GuestGuard.js +23 -0
  129. package/dist/routes/guards/GuestGuard.js.map +1 -0
  130. package/dist/routes/guards/GuestGuard.tsx +24 -0
  131. package/dist/routes/solidRoutes.d.ts.map +1 -1
  132. package/dist/routes/solidRoutes.js +2 -1
  133. package/dist/routes/solidRoutes.js.map +1 -1
  134. package/dist/routes/solidRoutes.tsx +2 -1
  135. package/dist/types/solid-core.d.ts +1 -0
  136. package/package.json +1 -1
@@ -0,0 +1,9 @@
1
+ type AuthResult = {
2
+ ok: boolean;
3
+ error: string | null;
4
+ status: number;
5
+ url: string | null;
6
+ };
7
+ export declare function handleAuthSuccess(accessToken: string, refreshToken: string, user: any, status: any): AuthResult;
8
+ export {};
9
+ //# sourceMappingURL=helper.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helper.d.ts","sourceRoot":"","sources":["../../../src/adapters/auth/helper.ts"],"names":[],"mappings":"AAIA,KAAK,UAAU,GAAG;IACd,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACtB,CAAC;AAEF,wBAAgB,iBAAiB,CAAC,WAAW,EAAC,MAAM,EAAG,YAAY,EAAE,MAAM,EAAG,IAAI,EAAE,GAAG,EAAE,MAAM,EAAC,GAAG,GAAG,UAAU,CAiC/G"}
@@ -0,0 +1,37 @@
1
+ var __assign = (this && this.__assign) || function () {
2
+ __assign = Object.assign || function(t) {
3
+ for (var s, i = 1, n = arguments.length; i < n; i++) {
4
+ s = arguments[i];
5
+ for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
+ t[p] = s[p];
7
+ }
8
+ return t;
9
+ };
10
+ return __assign.apply(this, arguments);
11
+ };
12
+ import { jwtDecode } from "jwt-decode";
13
+ import { saveSession } from "./storage";
14
+ import { eventBus, AppEvents } from "../../helpers/eventBus";
15
+ export function handleAuthSuccess(accessToken, refreshToken, user, status) {
16
+ // const accessToken = response?.data?.data?.accessToken;
17
+ // const refreshToken = response?.data?.data?.refreshToken;
18
+ // const user = response?.data?.data?.user || {};
19
+ if (!accessToken || !refreshToken) {
20
+ return { ok: false, error: "Missing tokens in response", status: status || 500, url: null };
21
+ }
22
+ var decoded = jwtDecode(accessToken);
23
+ var accessTokenExpires = decoded.exp ? decoded.exp * 1000 : undefined;
24
+ var session = {
25
+ user: __assign(__assign({}, user), { accessToken: accessToken, refreshToken: refreshToken, accessTokenExpires: accessTokenExpires }),
26
+ error: null,
27
+ };
28
+ saveSession(session);
29
+ eventBus.emit(AppEvents.SessionUpdated, session);
30
+ return {
31
+ ok: true,
32
+ error: null,
33
+ status: status,
34
+ url: null,
35
+ };
36
+ }
37
+ //# sourceMappingURL=helper.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"helper.js","sourceRoot":"","sources":["../../../src/adapters/auth/helper.ts"],"names":[],"mappings":";;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAS7D,MAAM,UAAU,iBAAiB,CAAC,WAAkB,EAAG,YAAoB,EAAG,IAAS,EAAE,MAAU;IAE/F,yDAAyD;IACzD,2DAA2D;IAC3D,iDAAiD;IAEjD,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,EAAE;QAC/B,OAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAE,MAAM,EAAC,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;KAC9F;IAED,IAAM,OAAO,GAAG,SAAS,CAAmB,WAAW,CAAC,CAAC;IACzD,IAAM,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IAExE,IAAM,OAAO,GAAG;QACZ,IAAI,wBACG,IAAI,KACP,WAAW,aAAA,EACX,YAAY,cAAA,EACZ,kBAAkB,oBAAA,GACrB;QACD,KAAK,EAAE,IAAI;KACd,CAAC;IAEF,WAAW,CAAC,OAAO,CAAC,CAAC;IACrB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;IAEjD,OAAO;QACH,EAAE,EAAE,IAAI;QACR,KAAK,EAAE,IAAI;QACX,MAAM,EAAE,MAAM;QACd,GAAG,EAAE,IAAI;KACZ,CAAC;AAEN,CAAC","sourcesContent":["import { jwtDecode } from \"jwt-decode\";\nimport { saveSession } from \"./storage\";\nimport { eventBus, AppEvents } from \"../../helpers/eventBus\";\n\ntype AuthResult = {\n ok: boolean;\n error: string | null;\n status: number;\n url: string | null;\n};\n\nexport function handleAuthSuccess(accessToken:string , refreshToken: string , user: any ,status:any): AuthResult{\n\n // const accessToken = response?.data?.data?.accessToken;\n // const refreshToken = response?.data?.data?.refreshToken;\n // const user = response?.data?.data?.user || {};\n\n if (!accessToken || !refreshToken) {\n return { ok: false, error: \"Missing tokens in response\", status:status || 500, url: null };\n }\n\n const decoded = jwtDecode<{ exp?: number }>(accessToken);\n const accessTokenExpires = decoded.exp ? decoded.exp * 1000 : undefined;\n\n const session = {\n user: {\n ...user,\n accessToken,\n refreshToken,\n accessTokenExpires,\n },\n error: null,\n };\n\n saveSession(session);\n eventBus.emit(AppEvents.SessionUpdated, session);\n\n return {\n ok: true,\n error: null,\n status: status,\n url: null,\n };\n\n}"]}
@@ -0,0 +1,45 @@
1
+ import { jwtDecode } from "jwt-decode";
2
+ import { saveSession } from "./storage";
3
+ import { eventBus, AppEvents } from "../../helpers/eventBus";
4
+
5
+ type AuthResult = {
6
+ ok: boolean;
7
+ error: string | null;
8
+ status: number;
9
+ url: string | null;
10
+ };
11
+
12
+ export function handleAuthSuccess(accessToken:string , refreshToken: string , user: any ,status:any): AuthResult{
13
+
14
+ // const accessToken = response?.data?.data?.accessToken;
15
+ // const refreshToken = response?.data?.data?.refreshToken;
16
+ // const user = response?.data?.data?.user || {};
17
+
18
+ if (!accessToken || !refreshToken) {
19
+ return { ok: false, error: "Missing tokens in response", status:status || 500, url: null };
20
+ }
21
+
22
+ const decoded = jwtDecode<{ exp?: number }>(accessToken);
23
+ const accessTokenExpires = decoded.exp ? decoded.exp * 1000 : undefined;
24
+
25
+ const session = {
26
+ user: {
27
+ ...user,
28
+ accessToken,
29
+ refreshToken,
30
+ accessTokenExpires,
31
+ },
32
+ error: null,
33
+ };
34
+
35
+ saveSession(session);
36
+ eventBus.emit(AppEvents.SessionUpdated, session);
37
+
38
+ return {
39
+ ok: true,
40
+ error: null,
41
+ status: status,
42
+ url: null,
43
+ };
44
+
45
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"signInWithOtp.d.ts","sourceRoot":"","sources":["../../../src/adapters/auth/signInWithOtp.ts"],"names":[],"mappings":"AAMA,KAAK,cAAc,GAAG;IACpB,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,cAAc,CAAC,CAyD1F"}
1
+ {"version":3,"file":"signInWithOtp.d.ts","sourceRoot":"","sources":["../../../src/adapters/auth/signInWithOtp.ts"],"names":[],"mappings":"AAIA,KAAK,cAAc,GAAG;IACpB,EAAE,EAAE,OAAO,CAAC;IACZ,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;CACpB,CAAC;AAEF,KAAK,oBAAoB,GAAG;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,GAAG,EAAE,MAAM,CAAC;CACb,CAAC;AAEF,wBAAsB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,cAAc,CAAC,CAuC1F"}
@@ -1,14 +1,3 @@
1
- var __assign = (this && this.__assign) || function () {
2
- __assign = Object.assign || function(t) {
3
- for (var s, i = 1, n = arguments.length; i < n; i++) {
4
- s = arguments[i];
5
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
6
- t[p] = s[p];
7
- }
8
- return t;
9
- };
10
- return __assign.apply(this, arguments);
11
- };
12
1
  var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
13
2
  function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
14
3
  return new (P || (P = Promise))(function (resolve, reject) {
@@ -45,15 +34,13 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
45
34
  if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
46
35
  }
47
36
  };
48
- import { jwtDecode } from "jwt-decode";
49
37
  import { env } from "../env";
50
- import { saveSession } from "./storage";
51
- import { eventBus, AppEvents } from "../../helpers/eventBus";
52
38
  import { solidPost } from "../..//http/solidHttp";
39
+ import { handleAuthSuccess } from "./helper";
53
40
  export function signInWithOtp(options) {
54
41
  var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
55
42
  return __awaiter(this, void 0, void 0, function () {
56
- var type, identifier, otp, apiUrl, response, message, accessToken, refreshToken, user, decoded, accessTokenExpires, session, error_1, message;
43
+ var type, identifier, otp, apiUrl, response, message, accessToken, refreshToken, user, error_1, message;
57
44
  return __generator(this, function (_t) {
58
45
  switch (_t.label) {
59
46
  case 0:
@@ -84,18 +71,7 @@ export function signInWithOtp(options) {
84
71
  accessToken = (_g = (_f = response === null || response === void 0 ? void 0 : response.data) === null || _f === void 0 ? void 0 : _f.data) === null || _g === void 0 ? void 0 : _g.accessToken;
85
72
  refreshToken = (_j = (_h = response === null || response === void 0 ? void 0 : response.data) === null || _h === void 0 ? void 0 : _h.data) === null || _j === void 0 ? void 0 : _j.refreshToken;
86
73
  user = ((_l = (_k = response === null || response === void 0 ? void 0 : response.data) === null || _k === void 0 ? void 0 : _k.data) === null || _l === void 0 ? void 0 : _l.user) || {};
87
- if (!accessToken || !refreshToken) {
88
- return [2 /*return*/, { ok: false, error: "Missing tokens in response", status: response.status || 500, url: null }];
89
- }
90
- decoded = jwtDecode(accessToken);
91
- accessTokenExpires = decoded.exp ? decoded.exp * 1000 : undefined;
92
- session = {
93
- user: __assign(__assign({}, user), { accessToken: accessToken, refreshToken: refreshToken, accessTokenExpires: accessTokenExpires }),
94
- error: null,
95
- };
96
- saveSession(session);
97
- eventBus.emit(AppEvents.SessionUpdated, session);
98
- return [2 /*return*/, { ok: true, error: null, status: response.status || 200, url: null }];
74
+ return [2 /*return*/, handleAuthSuccess(accessToken, refreshToken, user, response === null || response === void 0 ? void 0 : response.status)];
99
75
  case 3:
100
76
  error_1 = _t.sent();
101
77
  message = ((_o = (_m = error_1 === null || error_1 === void 0 ? void 0 : error_1.response) === null || _m === void 0 ? void 0 : _m.data) === null || _o === void 0 ? void 0 : _o.message) || ((_r = (_q = (_p = error_1 === null || error_1 === void 0 ? void 0 : error_1.response) === null || _p === void 0 ? void 0 : _p.data) === null || _q === void 0 ? void 0 : _q.data) === null || _r === void 0 ? void 0 : _r.message) || (error_1 === null || error_1 === void 0 ? void 0 : error_1.message) || "Login failed";
@@ -1 +1 @@
1
- {"version":3,"file":"signInWithOtp.js","sourceRoot":"","sources":["../../../src/adapters/auth/signInWithOtp.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AACvC,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAC7D,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAelD,MAAM,UAAgB,aAAa,CAAC,OAA6B;;;;;;;oBACvD,IAAI,GAAsB,OAAO,KAA7B,EAAE,UAAU,GAAU,OAAO,WAAjB,EAAE,GAAG,GAAK,OAAO,IAAZ,CAAa;oBACpC,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;oBAE9B,IAAI,CAAC,MAAM,EAAE;wBACX,sBAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,2BAA2B,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAC;qBAClF;;;;oBAGkB,qBAAM,SAAS,CAC9B,UAAG,MAAM,+BAA4B,EACrC;4BACE,IAAI,MAAA;4BACJ,UAAU,YAAA;4BACV,GAAG,KAAA;yBACJ,EACD;4BACE,OAAO,EAAE;gCACP,MAAM,EAAE,KAAK;gCACb,cAAc,EAAE,kBAAkB;6BACnC;yBACF,CACF,EAAA;;oBAbK,QAAQ,GAAG,SAahB;oBAED,IAAI,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,UAAU,KAAI,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,UAAU,MAAK,GAAG,EAAE;wBAC9D,OAAO,GAAG,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,KAAK,MAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,OAAO,CAAA,IAAI,aAAa,CAAC;wBAClF,sBAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,UAAU,KAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAC;qBAC/G;oBAEK,WAAW,GAAG,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,IAAI,0CAAE,WAAW,CAAC;oBAChD,YAAY,GAAG,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,IAAI,0CAAE,YAAY,CAAC;oBAClD,IAAI,GAAG,CAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,IAAI,0CAAE,IAAI,KAAI,EAAE,CAAC;oBAE9C,IAAI,CAAC,WAAW,IAAI,CAAC,YAAY,EAAE;wBACjC,sBAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,4BAA4B,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAC;qBACtG;oBAEK,OAAO,GAAG,SAAS,CAAmB,WAAW,CAAC,CAAC;oBACnD,kBAAkB,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,GAAG,IAAI,CAAC,CAAC,CAAC,SAAS,CAAC;oBAElE,OAAO,GAAG;wBACd,IAAI,wBACC,IAAI,KACP,WAAW,aAAA,EACX,YAAY,cAAA,EACZ,kBAAkB,oBAAA,GACnB;wBACD,KAAK,EAAE,IAAI;qBACZ,CAAC;oBACF,WAAW,CAAC,OAAO,CAAC,CAAC;oBACrB,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,cAAc,EAAE,OAAO,CAAC,CAAC;oBAEjD,sBAAO,EAAE,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAC;;;oBAEtE,OAAO,GAAG,CAAA,MAAA,MAAA,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,QAAQ,0CAAE,IAAI,0CAAE,OAAO,MAAI,MAAA,MAAA,MAAA,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,QAAQ,0CAAE,IAAI,0CAAE,IAAI,0CAAE,OAAO,CAAA,KAAI,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,OAAO,CAAA,IAAI,cAAc,CAAC;oBAC3H,sBAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA,MAAA,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,QAAQ,0CAAE,MAAM,KAAI,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAC;;;;;CAE3F","sourcesContent":["import { jwtDecode } from \"jwt-decode\";\nimport { env } from \"../env\";\nimport { saveSession } from \"./storage\";\nimport { eventBus, AppEvents } from \"../../helpers/eventBus\";\nimport { solidPost } from \"../..//http/solidHttp\";\n\ntype SignInResponse = {\n ok: boolean;\n error: string | null;\n status: number;\n url: string | null;\n};\n\ntype SignInWithOtpOptions = {\n type: string;\n identifier: string;\n otp: string;\n};\n\nexport async function signInWithOtp(options: SignInWithOtpOptions): Promise<SignInResponse> {\n const { type, identifier, otp } = options;\n const apiUrl = env(\"API_URL\");\n\n if (!apiUrl) {\n return { ok: false, error: \"API_URL is not configured\", status: 500, url: null };\n }\n\n try {\n const response = await solidPost(\n `${apiUrl}/api/iam/otp/login/confirm`,\n {\n type,\n identifier,\n otp,\n },\n {\n headers: {\n accept: \"*/*\",\n \"Content-Type\": \"application/json\",\n },\n }\n );\n\n if (response?.data?.statusCode && response?.data?.statusCode !== 200) {\n const message = response?.data?.error || response?.data?.message || \"Invalid OTP\";\n return { ok: false, error: message, status: response?.data?.statusCode || response.status || 400, url: null };\n }\n\n const accessToken = response?.data?.data?.accessToken;\n const refreshToken = response?.data?.data?.refreshToken;\n const user = response?.data?.data?.user || {};\n\n if (!accessToken || !refreshToken) {\n return { ok: false, error: \"Missing tokens in response\", status: response.status || 500, url: null };\n }\n\n const decoded = jwtDecode<{ exp?: number }>(accessToken);\n const accessTokenExpires = decoded.exp ? decoded.exp * 1000 : undefined;\n\n const session = {\n user: {\n ...user,\n accessToken,\n refreshToken,\n accessTokenExpires,\n },\n error: null,\n };\n saveSession(session);\n eventBus.emit(AppEvents.SessionUpdated, session);\n\n return { ok: true, error: null, status: response.status || 200, url: null };\n } catch (error: any) {\n const message = error?.response?.data?.message || error?.response?.data?.data?.message || error?.message || \"Login failed\";\n return { ok: false, error: message, status: error?.response?.status || 500, url: null };\n }\n}\n"]}
1
+ {"version":3,"file":"signInWithOtp.js","sourceRoot":"","sources":["../../../src/adapters/auth/signInWithOtp.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,QAAQ,CAAC;AAC7B,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAe7C,MAAM,UAAgB,aAAa,CAAC,OAA6B;;;;;;;oBACvD,IAAI,GAAsB,OAAO,KAA7B,EAAE,UAAU,GAAU,OAAO,WAAjB,EAAE,GAAG,GAAK,OAAO,IAAZ,CAAa;oBACpC,MAAM,GAAG,GAAG,CAAC,SAAS,CAAC,CAAC;oBAE9B,IAAI,CAAC,MAAM,EAAE;wBACX,sBAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,2BAA2B,EAAE,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAC;qBAClF;;;;oBAGkB,qBAAM,SAAS,CAC9B,UAAG,MAAM,+BAA4B,EACrC;4BACE,IAAI,MAAA;4BACJ,UAAU,YAAA;4BACV,GAAG,KAAA;yBACJ,EACD;4BACE,OAAO,EAAE;gCACP,MAAM,EAAE,KAAK;gCACb,cAAc,EAAE,kBAAkB;6BACnC;yBACF,CACF,EAAA;;oBAbK,QAAQ,GAAG,SAahB;oBAED,IAAI,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,UAAU,KAAI,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,UAAU,MAAK,GAAG,EAAE;wBAC9D,OAAO,GAAG,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,KAAK,MAAI,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,OAAO,CAAA,IAAI,aAAa,CAAC;wBAClF,sBAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,UAAU,KAAI,QAAQ,CAAC,MAAM,IAAI,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAC;qBAC/G;oBAEK,WAAW,GAAG,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,IAAI,0CAAE,WAAW,CAAC;oBAChD,YAAY,GAAG,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,IAAI,0CAAE,YAAY,CAAC;oBAClD,IAAI,GAAG,CAAA,MAAA,MAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,IAAI,0CAAE,IAAI,0CAAE,IAAI,KAAI,EAAE,CAAC;oBAE9C,sBAAO,iBAAiB,CAAC,WAAW,EAAC,YAAY,EAAC,IAAI,EAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,CAAC,EAAA;;;oBAGlE,OAAO,GAAG,CAAA,MAAA,MAAA,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,QAAQ,0CAAE,IAAI,0CAAE,OAAO,MAAI,MAAA,MAAA,MAAA,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,QAAQ,0CAAE,IAAI,0CAAE,IAAI,0CAAE,OAAO,CAAA,KAAI,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,OAAO,CAAA,IAAI,cAAc,CAAC;oBAC3H,sBAAO,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,MAAM,EAAE,CAAA,MAAA,OAAK,aAAL,OAAK,uBAAL,OAAK,CAAE,QAAQ,0CAAE,MAAM,KAAI,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,EAAC;;;;;CAE3F","sourcesContent":["import { env } from \"../env\";\nimport { solidPost } from \"../..//http/solidHttp\";\nimport { handleAuthSuccess } from \"./helper\"; \n\ntype SignInResponse = {\n ok: boolean;\n error: string | null;\n status: number;\n url: string | null;\n};\n\ntype SignInWithOtpOptions = {\n type: string;\n identifier: string;\n otp: string;\n};\n\nexport async function signInWithOtp(options: SignInWithOtpOptions): Promise<SignInResponse> {\n const { type, identifier, otp } = options;\n const apiUrl = env(\"API_URL\");\n\n if (!apiUrl) {\n return { ok: false, error: \"API_URL is not configured\", status: 500, url: null };\n }\n\n try {\n const response = await solidPost(\n `${apiUrl}/api/iam/otp/login/confirm`,\n {\n type,\n identifier,\n otp,\n },\n {\n headers: {\n accept: \"*/*\",\n \"Content-Type\": \"application/json\",\n },\n }\n );\n\n if (response?.data?.statusCode && response?.data?.statusCode !== 200) {\n const message = response?.data?.error || response?.data?.message || \"Invalid OTP\";\n return { ok: false, error: message, status: response?.data?.statusCode || response.status || 400, url: null };\n }\n\n const accessToken = response?.data?.data?.accessToken;\n const refreshToken = response?.data?.data?.refreshToken;\n const user = response?.data?.data?.user || {};\n \n return handleAuthSuccess(accessToken,refreshToken,user,response?.status)\n\n } catch (error: any) {\n const message = error?.response?.data?.message || error?.response?.data?.data?.message || error?.message || \"Login failed\";\n return { ok: false, error: message, status: error?.response?.status || 500, url: null };\n }\n}\n"]}
@@ -1,8 +1,6 @@
1
- import { jwtDecode } from "jwt-decode";
2
1
  import { env } from "../env";
3
- import { saveSession } from "./storage";
4
- import { eventBus, AppEvents } from "../../helpers/eventBus";
5
2
  import { solidPost } from "../..//http/solidHttp";
3
+ import { handleAuthSuccess } from "./helper";
6
4
 
7
5
  type SignInResponse = {
8
6
  ok: boolean;
@@ -49,27 +47,9 @@ export async function signInWithOtp(options: SignInWithOtpOptions): Promise<Sign
49
47
  const accessToken = response?.data?.data?.accessToken;
50
48
  const refreshToken = response?.data?.data?.refreshToken;
51
49
  const user = response?.data?.data?.user || {};
50
+
51
+ return handleAuthSuccess(accessToken,refreshToken,user,response?.status)
52
52
 
53
- if (!accessToken || !refreshToken) {
54
- return { ok: false, error: "Missing tokens in response", status: response.status || 500, url: null };
55
- }
56
-
57
- const decoded = jwtDecode<{ exp?: number }>(accessToken);
58
- const accessTokenExpires = decoded.exp ? decoded.exp * 1000 : undefined;
59
-
60
- const session = {
61
- user: {
62
- ...user,
63
- accessToken,
64
- refreshToken,
65
- accessTokenExpires,
66
- },
67
- error: null,
68
- };
69
- saveSession(session);
70
- eventBus.emit(AppEvents.SessionUpdated, session);
71
-
72
- return { ok: true, error: null, status: response.status || 200, url: null };
73
53
  } catch (error: any) {
74
54
  const message = error?.response?.data?.message || error?.response?.data?.data?.message || error?.message || "Login failed";
75
55
  return { ok: false, error: message, status: error?.response?.status || 500, url: null };
@@ -1 +1 @@
1
- {"version":3,"file":"GeneralSettings.d.ts","sourceRoot":"","sources":["../../../src/components/common/GeneralSettings.tsx"],"names":[],"mappings":"AAqBA,eAAO,MAAM,eAAe,+CA49B3B,CAAA"}
1
+ {"version":3,"file":"GeneralSettings.d.ts","sourceRoot":"","sources":["../../../src/components/common/GeneralSettings.tsx"],"names":[],"mappings":"AAuBA,eAAO,MAAM,eAAe,+CA2+B3B,CAAA"}
@@ -48,6 +48,8 @@ var __generator = (this && this.__generator) || function (thisArg, body) {
48
48
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
49
49
  import { useFormik } from 'formik';
50
50
  import { useCallback, useEffect, useState } from 'react';
51
+ import { ApiKeysTab } from '../core/users/ApiKeysTab';
52
+ import { useSession } from '../../hooks/useSession';
51
53
  import { SolidButton, SolidDivider, SolidInput, SolidSegmentedControl, SolidSwitch, SolidTabGroup, SolidTextarea } from '../shad-cn-ui';
52
54
  import { usePathname } from "../../hooks/usePathname";
53
55
  import SolidLogo from '../../resources/images/SolidXLogo.svg';
@@ -65,14 +67,15 @@ import { useBulkUpdateSolidSettingsMutation, useLazyGetSolidSettingsQuery } from
65
67
  import { env } from "../../adapters/env";
66
68
  import { showToast } from '../../redux/features/toastSlice';
67
69
  export var GeneralSettings = function () {
68
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45, _46;
69
- var _47 = useState(null), appLogoPreview = _47[0], setAppLogoPreview = _47[1];
70
- var _48 = useState(null), companyLogoPreview = _48[0], setCompanyLogoPreview = _48[1];
71
- var _49 = useState(null), authScreenRightBackgroundImagePreview = _49[0], setAuthScreenRightBackgroundImagePreview = _49[1];
72
- var _50 = useState(null), authScreenLeftBackgroundImagePreview = _50[0], setAuthScreenLeftBackgroundImagePreview = _50[1];
73
- var _51 = useState(null), authScreenCenterBackgroundImagePreview = _51[0], setAuthScreenCenterBackgroundImagePreview = _51[1];
70
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22, _23, _24, _25, _26, _27, _28, _29, _30, _31, _32, _33, _34, _35, _36, _37, _38, _39, _40, _41, _42, _43, _44, _45;
71
+ var session = useSession().data;
72
+ var _46 = useState(null), appLogoPreview = _46[0], setAppLogoPreview = _46[1];
73
+ var _47 = useState(null), companyLogoPreview = _47[0], setCompanyLogoPreview = _47[1];
74
+ var _48 = useState(null), authScreenRightBackgroundImagePreview = _48[0], setAuthScreenRightBackgroundImagePreview = _48[1];
75
+ var _49 = useState(null), authScreenLeftBackgroundImagePreview = _49[0], setAuthScreenLeftBackgroundImagePreview = _49[1];
76
+ var _50 = useState(null), authScreenCenterBackgroundImagePreview = _50[0], setAuthScreenCenterBackgroundImagePreview = _50[1];
74
77
  var dispatch = useDispatch();
75
- var _52 = useLazyGetSolidSettingsQuery(), trigger = _52[0], solidSettingsData = _52[1].data;
78
+ var _51 = useLazyGetSolidSettingsQuery(), trigger = _51[0], solidSettingsData = _51[1].data;
76
79
  useEffect(function () {
77
80
  trigger(""); // Fetch settings on mount
78
81
  }, [trigger]);
@@ -110,10 +113,26 @@ export var GeneralSettings = function () {
110
113
  authScreenRightBackgroundImage: (_29 = (_28 = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _28 === void 0 ? void 0 : _28.authScreenRightBackgroundImage) !== null && _29 !== void 0 ? _29 : null,
111
114
  authScreenLeftBackgroundImage: (_31 = (_30 = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _30 === void 0 ? void 0 : _30.authScreenLeftBackgroundImage) !== null && _31 !== void 0 ? _31 : null,
112
115
  authScreenCenterBackgroundImage: (_33 = (_32 = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _32 === void 0 ? void 0 : _32.authScreenCenterBackgroundImage) !== null && _33 !== void 0 ? _33 : null,
113
- solidXGenAiCodeBuilderConfig: (_35 = (_34 = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _34 === void 0 ? void 0 : _34.solidXGenAiCodeBuilderConfig) !== null && _35 !== void 0 ? _35 : {
114
- fastModel: { provider: "", availableProviders: [] },
115
- defaultProvider: { provider: "", availableProviders: [] },
116
- }
116
+ solidXGenAiCodeBuilderConfig: (function () {
117
+ var _a;
118
+ var defaultAiConfig = {
119
+ models: {
120
+ default: { providerKey: "", behavior: { streaming: false, custom: "" } },
121
+ fast: { providerKey: "", behavior: { streaming: false, custom: "" } },
122
+ },
123
+ providers: {},
124
+ };
125
+ var raw = (_a = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _a === void 0 ? void 0 : _a.solidXGenAiCodeBuilderConfig;
126
+ if (!raw)
127
+ return defaultAiConfig;
128
+ try {
129
+ var parsed = typeof raw === "string" ? JSON.parse(raw) : raw;
130
+ return (parsed && typeof parsed === "object" ? parsed : defaultAiConfig);
131
+ }
132
+ catch (_b) {
133
+ return defaultAiConfig;
134
+ }
135
+ })(),
117
136
  // llmProvider: solidSettingsData?.data?.llmProvider ?? null,
118
137
  // llModelName: solidSettingsData?.data?.llModelName ?? null,
119
138
  // llmProviderApiKey: solidSettingsData?.data?.llmProviderApiKey ?? null,
@@ -226,7 +245,7 @@ export var GeneralSettings = function () {
226
245
  setCompanyLogoPreview(URL.createObjectURL(file));
227
246
  }
228
247
  }, [formik]);
229
- var _53 = useDropzone({
248
+ var _52 = useDropzone({
230
249
  accept: {
231
250
  'image/png': ['.png'],
232
251
  'image/jpeg': ['.jpeg', '.jpg'],
@@ -235,8 +254,8 @@ export var GeneralSettings = function () {
235
254
  },
236
255
  multiple: false,
237
256
  onDrop: onAppLogoDrop
238
- }), getAppLogoRootProps = _53.getRootProps, getAppLogoInputProps = _53.getInputProps, isAppLogoDragActive = _53.isDragActive;
239
- var _54 = useDropzone({
257
+ }), getAppLogoRootProps = _52.getRootProps, getAppLogoInputProps = _52.getInputProps, isAppLogoDragActive = _52.isDragActive;
258
+ var _53 = useDropzone({
240
259
  accept: {
241
260
  'image/png': ['.png'],
242
261
  'image/jpeg': ['.jpeg', '.jpg'],
@@ -245,7 +264,7 @@ export var GeneralSettings = function () {
245
264
  },
246
265
  multiple: false,
247
266
  onDrop: onCompanyLogoDrop
248
- }), getCompanyLogoRootProps = _54.getRootProps, getCompanyLogoInputProps = _54.getInputProps, isCompanyLogoDragActive = _54.isDragActive;
267
+ }), getCompanyLogoRootProps = _53.getRootProps, getCompanyLogoInputProps = _53.getInputProps, isCompanyLogoDragActive = _53.isDragActive;
249
268
  var removeAppLogo = function () {
250
269
  formik.setFieldValue("appLogo", null);
251
270
  if (appLogoPreview) {
@@ -293,7 +312,7 @@ export var GeneralSettings = function () {
293
312
  setAuthScreenCenterBackgroundImagePreview(URL.createObjectURL(file));
294
313
  }
295
314
  }, [formik]);
296
- var _55 = useDropzone({
315
+ var _54 = useDropzone({
297
316
  accept: {
298
317
  'image/png': ['.png'],
299
318
  'image/jpeg': ['.jpeg', '.jpg'],
@@ -302,8 +321,8 @@ export var GeneralSettings = function () {
302
321
  },
303
322
  multiple: false,
304
323
  onDrop: onAuthScreenRightBackgroundImageDrop
305
- }), getAuthScreenRightBackgroundImageRootProps = _55.getRootProps, getAuthScreenRightBackgroundImageInputProps = _55.getInputProps, isAuthScreenRightBackgroundImageDragActive = _55.isDragActive;
306
- var _56 = useDropzone({
324
+ }), getAuthScreenRightBackgroundImageRootProps = _54.getRootProps, getAuthScreenRightBackgroundImageInputProps = _54.getInputProps, isAuthScreenRightBackgroundImageDragActive = _54.isDragActive;
325
+ var _55 = useDropzone({
307
326
  accept: {
308
327
  'image/png': ['.png'],
309
328
  'image/jpeg': ['.jpeg', '.jpg'],
@@ -312,8 +331,8 @@ export var GeneralSettings = function () {
312
331
  },
313
332
  multiple: false,
314
333
  onDrop: onAuthScreenLeftBackgroundImageDrop
315
- }), getAuthScreenLeftBackgroundImageRootProps = _56.getRootProps, getAuthScreenLeftBackgroundImageInputProps = _56.getInputProps, isAuthScreenLeftBackgroundImageDragActive = _56.isDragActive;
316
- var _57 = useDropzone({
334
+ }), getAuthScreenLeftBackgroundImageRootProps = _55.getRootProps, getAuthScreenLeftBackgroundImageInputProps = _55.getInputProps, isAuthScreenLeftBackgroundImageDragActive = _55.isDragActive;
335
+ var _56 = useDropzone({
317
336
  accept: {
318
337
  'image/png': ['.png'],
319
338
  'image/jpeg': ['.jpeg', '.jpg'],
@@ -322,7 +341,7 @@ export var GeneralSettings = function () {
322
341
  },
323
342
  multiple: false,
324
343
  onDrop: onAuthScreenCenterBackgroundImageDrop
325
- }), getAuthScreenCenterBackgroundImageRootProps = _57.getRootProps, getAuthScreenCenterBackgroundImageInputProps = _57.getInputProps, isAuthScreenCenterBackgroundImageDragActive = _57.isDragActive;
344
+ }), getAuthScreenCenterBackgroundImageRootProps = _56.getRootProps, getAuthScreenCenterBackgroundImageInputProps = _56.getInputProps, isAuthScreenCenterBackgroundImageDragActive = _56.isDragActive;
326
345
  var removeAuthScreenRightBackgroundImage = function () {
327
346
  formik.setFieldValue("authScreenRightBackgroundImage", null);
328
347
  if (authScreenRightBackgroundImagePreview) {
@@ -344,9 +363,8 @@ export var GeneralSettings = function () {
344
363
  setAuthScreenCenterBackgroundImagePreview(null);
345
364
  }
346
365
  };
347
- var handleModelConfigChange = function (modelType, config) {
348
- var _a;
349
- formik.setFieldValue("solidXGenAiCodeBuilderConfig", __assign(__assign({}, formik.values.solidXGenAiCodeBuilderConfig), (_a = {}, _a[modelType] = config, _a)));
366
+ var handleAiConfigChange = function (newConfig) {
367
+ formik.setFieldValue("solidXGenAiCodeBuilderConfig", newConfig);
350
368
  };
351
369
  return (_jsx("div", { className: "page-parent-wrapper", children: _jsx("div", { className: "solid-form-wrapper", children: _jsx("div", { className: "solid-form-section", children: _jsxs("form", { onSubmit: formik.handleSubmit, children: [_jsxs("div", { className: "page-header secondary-border-bottom", children: [_jsx("div", { className: "form-wrapper-title ", children: "Settings" }), _jsx("div", { className: "gap-3 flex", children: formik.dirty && (_jsx(SolidButton, { size: "sm", type: "submit", loading: formik.isSubmitting, onClick: function () { return showError(); }, children: "Save" })) })] }), _jsxs("div", { className: "px-4 py-3 md:p-4 solid-form-content", children: [pathname.includes("app-settings") &&
352
370
  _jsxs(_Fragment, { children: [_jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: 'col-12 lg:col-10 xl:col-8', children: _jsxs("div", { className: "formgrid grid", children: [_jsxs("div", { className: "col-12 md:col-6", children: [_jsx("p", { className: "solid-settings-subheading", children: "App Logo" }), _jsxs("div", { children: [_jsxs("div", __assign({}, getAppLogoRootProps(), { className: "solid-dropzone-wrapper", style: { borderRadius: 8 }, children: [_jsx("input", __assign({}, getAppLogoInputProps())), _jsx(SettingDropzoneActivePlaceholder, {})] })), _jsx("div", { className: "mt-2", children: (function () {
@@ -376,7 +394,7 @@ export var GeneralSettings = function () {
376
394
  })() }), formik.values.companylogo && (_jsx(SettingsImageRemoveButton, { onClick: removeCompanyLogo }))] })] })] }) }) }), _jsx("p", { className: "solid-settings-heading", children: "App Logo Position" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: 'col-12 lg:col-10 xl:col-8', children: _jsx("div", { className: "flex", children: _jsx(SolidSegmentedControl, { className: "solid-settings-segmented", value: formik.values.appLogoPosition, options: [
377
395
  { value: "in_form_view", label: "In Form View" },
378
396
  { value: "in_image_view", label: "In Image View" },
379
- ], onChange: function (value) { return formik.setFieldValue("appLogoPosition", value); } }) }) }) }), _jsx(SolidDivider, { className: "my-4" }), _jsx("p", { className: "solid-settings-heading", children: "Title & Description Details" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: 'col-12 lg:col-10 xl:col-8', children: _jsxs("div", { className: "formgrid grid", children: [_jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-9 lg:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Show Details on Authentication Screen" }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "showAuthContent", checked: formik.values.showAuthContent, onChange: function (checked) { return formik.setFieldValue("showAuthContent", checked); } }) })] }) }), _jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "App Title" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "appTitle", name: "appTitle", onChange: formik.handleChange, value: (_36 = formik.values.appTitle) !== null && _36 !== void 0 ? _36 : '', className: 'w-full' }) })] }) }), _jsx("div", { className: "col-12 md:col-6 mt-4", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "App Subtitle" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "appSubtitle", name: "appSubtitle", onChange: formik.handleChange, value: (_37 = formik.values.appSubtitle) !== null && _37 !== void 0 ? _37 : '', className: 'w-full' }) })] }) }), _jsx("div", { className: "col-12 md:col-6 mt-4", children: _jsxs("div", { className: "formgrid grid align-items-start", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Description" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidTextarea, { rows: 3, id: "appDescription", name: "appDescription", onChange: formik.handleChange, value: (_38 = formik.values.appDescription) !== null && _38 !== void 0 ? _38 : '', className: 'w-full' }) })] }) }), _jsx("div", { className: "col-12 md:col-6 mt-4", children: _jsxs("div", { className: "formgrid grid align-items-start", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Copyright" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidTextarea, { rows: 3, id: "copyright", name: "copyright", onChange: formik.handleChange, value: (_39 = formik.values.copyright) !== null && _39 !== void 0 ? _39 : '', className: 'w-full' }) })] }) })] }) }) }), _jsx(SolidDivider, { className: "my-4" }), _jsx("p", { className: "solid-settings-heading", children: "Legal Links" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: 'col-12 lg:col-10 xl:col-8', children: _jsxs("div", { className: "formgrid grid", children: [_jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-9 lg:col-5", children: _jsx("label", { className: "form-field-label", children: "Show Legal Links" }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "showLegalLinks", checked: formik.values.showLegalLinks, onChange: function (checked) { return formik.setFieldValue("showLegalLinks", checked); } }) })] }) }), _jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 py-2 md:py-0", children: _jsx("label", { className: "form-field-label", children: "Terms and Conditions Link" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "appTnc", name: "appTnc", onChange: formik.handleChange, value: (_40 = formik.values.appTnc) !== null && _40 !== void 0 ? _40 : '', className: 'w-full' }) })] }) }), _jsx("div", { className: "col-12 md:col-6 mt-3", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Privacy Policy Link" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "appPrivacyPolicy", name: "appPrivacyPolicy", onChange: formik.handleChange, value: (_41 = formik.values.appPrivacyPolicy) !== null && _41 !== void 0 ? _41 : '', className: 'w-full' }) })] }) })] }) }) }), _jsx(SolidDivider, { className: "my-4" }), _jsx("p", { className: "solid-settings-heading", children: "Theme" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: 'col-12 lg:col-10 xl:col-8', children: _jsx("div", { className: "formgrid grid", children: _jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-10 lg:col-5", children: _jsx("label", { className: "form-field-label", children: "Enable Dark Mode" }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "enableDarkMode", checked: formik.values.enableDarkMode, onChange: function (checked) { return formik.setFieldValue("enableDarkMode", checked); } }) })] }) }) }) }) })] }), pathname.includes("authentication-settings") &&
397
+ ], onChange: function (value) { return formik.setFieldValue("appLogoPosition", value); } }) }) }) }), _jsx(SolidDivider, { className: "my-4" }), _jsx("p", { className: "solid-settings-heading", children: "Title & Description Details" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: 'col-12 lg:col-10 xl:col-8', children: _jsxs("div", { className: "formgrid grid", children: [_jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-9 lg:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Show Details on Authentication Screen" }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "showAuthContent", checked: formik.values.showAuthContent, onChange: function (checked) { return formik.setFieldValue("showAuthContent", checked); } }) })] }) }), _jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "App Title" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "appTitle", name: "appTitle", onChange: formik.handleChange, value: (_34 = formik.values.appTitle) !== null && _34 !== void 0 ? _34 : '', className: 'w-full' }) })] }) }), _jsx("div", { className: "col-12 md:col-6 mt-4", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "App Subtitle" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "appSubtitle", name: "appSubtitle", onChange: formik.handleChange, value: (_35 = formik.values.appSubtitle) !== null && _35 !== void 0 ? _35 : '', className: 'w-full' }) })] }) }), _jsx("div", { className: "col-12 md:col-6 mt-4", children: _jsxs("div", { className: "formgrid grid align-items-start", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Description" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidTextarea, { rows: 3, id: "appDescription", name: "appDescription", onChange: formik.handleChange, value: (_36 = formik.values.appDescription) !== null && _36 !== void 0 ? _36 : '', className: 'w-full' }) })] }) }), _jsx("div", { className: "col-12 md:col-6 mt-4", children: _jsxs("div", { className: "formgrid grid align-items-start", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Copyright" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidTextarea, { rows: 3, id: "copyright", name: "copyright", onChange: formik.handleChange, value: (_37 = formik.values.copyright) !== null && _37 !== void 0 ? _37 : '', className: 'w-full' }) })] }) })] }) }) }), _jsx(SolidDivider, { className: "my-4" }), _jsx("p", { className: "solid-settings-heading", children: "Legal Links" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: 'col-12 lg:col-10 xl:col-8', children: _jsxs("div", { className: "formgrid grid", children: [_jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-9 lg:col-5", children: _jsx("label", { className: "form-field-label", children: "Show Legal Links" }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "showLegalLinks", checked: formik.values.showLegalLinks, onChange: function (checked) { return formik.setFieldValue("showLegalLinks", checked); } }) })] }) }), _jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 py-2 md:py-0", children: _jsx("label", { className: "form-field-label", children: "Terms and Conditions Link" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "appTnc", name: "appTnc", onChange: formik.handleChange, value: (_38 = formik.values.appTnc) !== null && _38 !== void 0 ? _38 : '', className: 'w-full' }) })] }) }), _jsx("div", { className: "col-12 md:col-6 mt-3", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Privacy Policy Link" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "appPrivacyPolicy", name: "appPrivacyPolicy", onChange: formik.handleChange, value: (_39 = formik.values.appPrivacyPolicy) !== null && _39 !== void 0 ? _39 : '', className: 'w-full' }) })] }) })] }) }) }), _jsx(SolidDivider, { className: "my-4" }), _jsx("p", { className: "solid-settings-heading", children: "Theme" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: 'col-12 lg:col-10 xl:col-8', children: _jsx("div", { className: "formgrid grid", children: _jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-10 lg:col-5", children: _jsx("label", { className: "form-field-label", children: "Enable Dark Mode" }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "enableDarkMode", checked: formik.values.enableDarkMode, onChange: function (checked) { return formik.setFieldValue("enableDarkMode", checked); } }) })] }) }) }) }) })] }), pathname.includes("authentication-settings") &&
380
398
  _jsxs(_Fragment, { children: [_jsx("p", { className: "solid-settings-heading", children: "User Authentication" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: 'col-12 lg:col-10 xl:col-8', children: _jsxs("div", { className: "formgrid grid", children: [_jsx("div", { className: "col-12", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-9 lg:col-5", children: _jsx("label", { className: "form-field-label", children: "Public Registration" }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "allowPublicRegistration", checked: formik.values.allowPublicRegistration, onChange: function (checked) { return formik.setFieldValue("allowPublicRegistration", checked); } }) })] }) }), _jsx("div", { className: "col-12 mt-3", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-9 lg:col-5", children: _jsx("label", { className: "form-field-label", children: "Password Based Authentication" }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "passwordBasedAuth", checked: formik.values.passwordBasedAuth, onChange: function (checked) { return formik.setFieldValue("passwordBasedAuth", checked); } }) })] }) }), _jsx("div", { className: "col-12 mt-3", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-9 lg:col-5", children: _jsx("label", { className: "form-field-label", children: "Password Less Authentication" }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "passwordLessAuth", checked: formik.values.passwordLessAuth, onChange: function (checked) { return formik.setFieldValue("passwordLessAuth", checked); } }) })] }) }), _jsx("div", { className: "col-12 mt-3", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-9 lg:col-5", children: _jsx("label", { className: "form-field-label", children: "Auto Activate User on Registration " }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "activateUserOnRegistration", checked: formik.values.activateUserOnRegistration, onChange: function (checked) { return formik.setFieldValue("activateUserOnRegistration", checked); } }) })] }) }), _jsx("div", { className: "col-12 mt-3", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-9 lg:col-5", children: _jsx("label", { className: "form-field-label", children: "Allow Login/ Signup with Google " }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "iamGoogleOAuthEnabled", checked: formik.values.iamGoogleOAuthEnabled, onChange: function (checked) { return formik.setFieldValue("iamGoogleOAuthEnabled", checked); } }) })] }) }), _jsx("div", { className: "col-12 mt-3", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-10 sm:col-9 lg:col-5", children: _jsx("label", { className: "form-field-label", children: "Force Password change on first Login " }) }), _jsx("div", { className: "col-2 sm:col-3 lg:col-7", children: _jsx(SolidSwitch, { name: "forceChangePasswordOnFirstLogin", checked: formik.values.forceChangePasswordOnFirstLogin, onChange: function (checked) { return formik.setFieldValue("forceChangePasswordOnFirstLogin", checked); } }) })] }) }), formik.values.passwordLessAuth === true &&
381
399
  _jsx("div", { className: "col-12 mt-3", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 sm:col-12 lg:col-5 xl:col-5", children: _jsx("label", { className: "form-field-label", children: "Password Less Registration Method" }) }), _jsx("div", { className: 'col-12 sm:col-12 lg:col-6 xl:col-6', children: _jsx(SolidSegmentedControl, { className: "solid-settings-segmented mt-3 lg:mt-0", value: formik.values.passwordlessRegistrationValidateWhat, options: [
382
400
  { value: "email", label: "Email" },
@@ -429,30 +447,44 @@ export var GeneralSettings = function () {
429
447
  src = "".concat(env("API_URL"), "/").concat(src);
430
448
  }
431
449
  return (_jsx(SolidUploadedImage, { src: src, height: 300, width: 600, maxHeight: 300 }));
432
- })() }), formik.values.authScreenCenterBackgroundImage && (_jsx(SettingsImageRemoveButton, { onClick: removeAuthScreenCenterBackgroundImage }))] })] }) }) }) }), _jsx(SolidDivider, { className: "my-4" }), ((_42 = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _42 === void 0 ? void 0 : _42.enableDarkMode) === true &&
450
+ })() }), formik.values.authScreenCenterBackgroundImage && (_jsx(SettingsImageRemoveButton, { onClick: removeAuthScreenCenterBackgroundImage }))] })] }) }) }) }), _jsx(SolidDivider, { className: "my-4" }), ((_40 = solidSettingsData === null || solidSettingsData === void 0 ? void 0 : solidSettingsData.data) === null || _40 === void 0 ? void 0 : _40.enableDarkMode) === true &&
433
451
  _jsxs(_Fragment, { children: [_jsx("p", { className: "solid-settings-heading", children: "Authentication Screen Theme" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: 'col-12 lg:col-10 xl:col-8', children: _jsx(SolidSegmentedControl, { className: "solid-settings-segmented", value: formik.values.authPagesTheme, options: [
434
452
  { value: "light", label: "Solid Light" },
435
453
  { value: "dark", label: "Solid Dark" },
436
454
  ], onChange: function (value) { return formik.setFieldValue("authPagesTheme", value); } }) }) })] })] }), pathname.includes("misc-settings") &&
437
- _jsxs(_Fragment, { children: [_jsx("p", { className: "solid-settings-heading", children: "Contact Support" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: "col-12 lg:col-10 xl:col-8", children: _jsxs("div", { className: 'formgrid grid', children: [_jsx("div", { className: "col-12 md:col-6 pb-3 md:pb-0", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Contact Support Email" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "contactSupportEmail", name: "contactSupportEmail", onChange: formik.handleChange, value: (_43 = formik.values.contactSupportEmail) !== null && _43 !== void 0 ? _43 : '', className: 'w-full' }) })] }) }), _jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Display Name" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "contactSupportDisplayName", name: "contactSupportDisplayName", onChange: formik.handleChange, value: (_44 = formik.values.contactSupportDisplayName) !== null && _44 !== void 0 ? _44 : '', className: 'w-full' }) })] }) })] }) }) })] }), pathname.includes("ai-settings") &&
438
- _jsx(AiSettingsSection, { fastModelConfig: (_45 = formik.values.solidXGenAiCodeBuilderConfig.fastModel) !== null && _45 !== void 0 ? _45 : { provider: "", availableProviders: [] }, intelligentModelConfig: (_46 = formik.values.solidXGenAiCodeBuilderConfig.defaultProvider) !== null && _46 !== void 0 ? _46 : { provider: "", availableProviders: [] }, onFastModelChange: function (config) { return handleModelConfigChange("fastModel", config); }, onIntelligentModelChange: function (config) { return handleModelConfigChange("defaultProvider", config); } })] })] }) }) }) }));
455
+ _jsxs(_Fragment, { children: [_jsx("p", { className: "solid-settings-heading", children: "Contact Support" }), _jsx("div", { className: 'formgrid grid', children: _jsx("div", { className: "col-12 lg:col-10 xl:col-8", children: _jsxs("div", { className: 'formgrid grid', children: [_jsx("div", { className: "col-12 md:col-6 pb-3 md:pb-0", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Contact Support Email" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "contactSupportEmail", name: "contactSupportEmail", onChange: formik.handleChange, value: (_41 = formik.values.contactSupportEmail) !== null && _41 !== void 0 ? _41 : '', className: 'w-full' }) })] }) }), _jsx("div", { className: "col-12 md:col-6", children: _jsxs("div", { className: "formgrid grid align-items-center", children: [_jsx("div", { className: "col-12 md:col-5 pb-2 md:pb-0", children: _jsx("label", { className: "form-field-label", children: "Display Name" }) }), _jsx("div", { className: "col-12 md:col-7", children: _jsx(SolidInput, { type: "text", id: "contactSupportDisplayName", name: "contactSupportDisplayName", onChange: formik.handleChange, value: (_42 = formik.values.contactSupportDisplayName) !== null && _42 !== void 0 ? _42 : '', className: 'w-full' }) })] }) })] }) }) })] }), pathname.includes("ai-settings") &&
456
+ _jsx(AiSettingsSection, { aiConfig: formik.values.solidXGenAiCodeBuilderConfig, onAiConfigChange: handleAiConfigChange }), pathname.includes("api-keys") && ((_43 = session === null || session === void 0 ? void 0 : session.user) === null || _43 === void 0 ? void 0 : _43.id) &&
457
+ _jsx(ApiKeysTab, { userId: session.user.id, canCreate: (_45 = (_44 = session === null || session === void 0 ? void 0 : session.user) === null || _44 === void 0 ? void 0 : _44.isAllowedToGenerateApiKeys) !== null && _45 !== void 0 ? _45 : false })] })] }) }) }) }));
439
458
  };
440
459
  var AI_TABS = [
441
- { key: "fastModel", label: "Fast Model", title: "Fast Model" },
442
- { key: "defaultProvider", label: "Intelligent Model", title: "Intelligent Model (Reasoning & tool use)" },
460
+ { key: "fast", label: "Fast Model", title: "Fast Model" },
461
+ { key: "default", label: "Intelligent Model", title: "Intelligent Model (Reasoning & tool use)" },
443
462
  ];
463
+ var DEFAULT_BEHAVIOR = { streaming: false, custom: "" };
444
464
  var AiSettingsSection = function (_a) {
445
- var fastModelConfig = _a.fastModelConfig, intelligentModelConfig = _a.intelligentModelConfig, onFastModelChange = _a.onFastModelChange, onIntelligentModelChange = _a.onIntelligentModelChange;
446
- var _b = useState("fastModel"), activeTab = _b[0], setActiveTab = _b[1];
465
+ var aiConfig = _a.aiConfig, onAiConfigChange = _a.onAiConfigChange;
466
+ var _b = useState("fast"), activeTab = _b[0], setActiveTab = _b[1];
447
467
  var tabItems = AI_TABS.map(function (tab) {
448
- var config = tab.key === "fastModel" ? fastModelConfig : intelligentModelConfig;
449
- var onChange = tab.key === "fastModel" ? onFastModelChange : onIntelligentModelChange;
468
+ var _a, _b, _c, _d, _e, _f, _g;
469
+ var modelEntry = (_b = (_a = aiConfig.models) === null || _a === void 0 ? void 0 : _a[tab.key]) !== null && _b !== void 0 ? _b : { providerKey: "", behavior: DEFAULT_BEHAVIOR };
470
+ var providerKey = (_c = modelEntry.providerKey) !== null && _c !== void 0 ? _c : "";
471
+ var providerConfig = (_e = (_d = aiConfig.providers) === null || _d === void 0 ? void 0 : _d[providerKey]) !== null && _e !== void 0 ? _e : { provider: providerKey, apiKey: "", model: "" };
472
+ var behavior = (_f = modelEntry.behavior) !== null && _f !== void 0 ? _f : DEFAULT_BEHAVIOR;
450
473
  return {
451
474
  value: tab.key,
452
475
  label: tab.label,
453
- content: (_jsxs("div", { className: "space-y-4", children: [_jsx("p", { className: "solid-settings-subheading", children: tab.title }), _jsx(AiModelConfigTab, { config: config, onChange: onChange })] })),
476
+ content: (_jsx(AiModelConfigTab, { providerKey: providerKey, providerConfig: providerConfig, behavior: behavior, allProviders: (_g = aiConfig.providers) !== null && _g !== void 0 ? _g : {}, onProviderKeyChange: function (newKey, newConfig) {
477
+ var _a, _b;
478
+ onAiConfigChange(__assign(__assign({}, aiConfig), { models: __assign(__assign({}, aiConfig.models), (_a = {}, _a[tab.key] = __assign(__assign({}, modelEntry), { providerKey: newKey }), _a)), providers: __assign(__assign({}, aiConfig.providers), (_b = {}, _b[newKey] = newConfig, _b)) }));
479
+ }, onProviderConfigChange: function (pk, config) {
480
+ var _a;
481
+ onAiConfigChange(__assign(__assign({}, aiConfig), { providers: __assign(__assign({}, aiConfig.providers), (_a = {}, _a[pk] = config, _a)) }));
482
+ }, onBehaviorChange: function (newBehavior) {
483
+ var _a;
484
+ onAiConfigChange(__assign(__assign({}, aiConfig), { models: __assign(__assign({}, aiConfig.models), (_a = {}, _a[tab.key] = __assign(__assign({}, modelEntry), { behavior: newBehavior }), _a)) }));
485
+ } })),
454
486
  };
455
487
  });
456
- return (_jsxs("div", { className: "space-y-4", children: [_jsx("p", { className: "solid-settings-heading", children: "AI Model Configuration" }), _jsx(SolidTabGroup, { tabs: tabItems, value: activeTab, onValueChange: function (value) { return setActiveTab(value); }, tabPosition: "left" })] }));
488
+ return (_jsxs("div", { children: [_jsx("p", { className: "solid-settings-heading", style: { marginBottom: "1rem" }, children: "AI Model Configuration" }), _jsx(SolidTabGroup, { tabs: tabItems, value: activeTab, onValueChange: function (value) { return setActiveTab(value); }, tabPosition: "left" })] }));
457
489
  };
458
490
  //# sourceMappingURL=GeneralSettings.js.map