@capibox/bridge-nextjs-client 0.0.7 → 0.0.8

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.
package/dist/index.d.mts CHANGED
@@ -2,12 +2,70 @@ import * as next_server from 'next/server';
2
2
 
3
3
  declare const browser: {
4
4
  mail: {
5
- sendToRecipient: (data: dto.SendMailToRecipientDto) => Promise<dto.SendMailResponseDto>;
6
- sendToSupport: (data: dto.SendMailToSupportDto) => Promise<dto.SendMailResponseDto>;
5
+ sendToRecipient: (data: {
6
+ subject: string;
7
+ to: string;
8
+ htmlPart?: string | undefined;
9
+ textPart?: string | undefined;
10
+ }) => Promise<{
11
+ success: boolean;
12
+ }>;
13
+ sendToSupport: (data: {
14
+ subject: string;
15
+ htmlPart?: string | undefined;
16
+ textPart?: string | undefined;
17
+ }) => Promise<{
18
+ success: boolean;
19
+ }>;
20
+ };
21
+ session: {
22
+ append: (data: {
23
+ email?: string | undefined;
24
+ currency?: string | undefined;
25
+ language?: string | undefined;
26
+ }) => Promise<{
27
+ success: boolean;
28
+ data: {
29
+ uuid: string;
30
+ };
31
+ }>;
32
+ create: (data: {
33
+ slug: string;
34
+ email?: string | undefined;
35
+ currency?: string | undefined;
36
+ language?: string | undefined;
37
+ quizData?: Record<string, any> | undefined;
38
+ }) => Promise<{
39
+ success: boolean;
40
+ data: {
41
+ uuid: string;
42
+ };
43
+ }>;
44
+ };
45
+ crmAuth: {
46
+ signIn: (data: {
47
+ data: {
48
+ username: string;
49
+ password: string;
50
+ remindMe?: boolean | undefined;
51
+ };
52
+ }) => Promise<{
53
+ token: string;
54
+ action: string;
55
+ }>;
56
+ signOut: () => Promise<{
57
+ success: 1;
58
+ }>;
59
+ verify: () => Promise<{
60
+ email: string;
61
+ id: number;
62
+ firstName: string;
63
+ lastName: string;
64
+ }>;
7
65
  };
8
66
  };
9
67
  declare const server: {
10
- middleware: (req: next_server.NextRequest) => Promise<next_server.NextResponse<any> | undefined>;
68
+ middleware: (req: next_server.NextRequest) => Promise<any>;
11
69
  };
12
70
 
13
71
  export { browser, server };
package/dist/index.d.ts CHANGED
@@ -2,12 +2,70 @@ import * as next_server from 'next/server';
2
2
 
3
3
  declare const browser: {
4
4
  mail: {
5
- sendToRecipient: (data: dto.SendMailToRecipientDto) => Promise<dto.SendMailResponseDto>;
6
- sendToSupport: (data: dto.SendMailToSupportDto) => Promise<dto.SendMailResponseDto>;
5
+ sendToRecipient: (data: {
6
+ subject: string;
7
+ to: string;
8
+ htmlPart?: string | undefined;
9
+ textPart?: string | undefined;
10
+ }) => Promise<{
11
+ success: boolean;
12
+ }>;
13
+ sendToSupport: (data: {
14
+ subject: string;
15
+ htmlPart?: string | undefined;
16
+ textPart?: string | undefined;
17
+ }) => Promise<{
18
+ success: boolean;
19
+ }>;
20
+ };
21
+ session: {
22
+ append: (data: {
23
+ email?: string | undefined;
24
+ currency?: string | undefined;
25
+ language?: string | undefined;
26
+ }) => Promise<{
27
+ success: boolean;
28
+ data: {
29
+ uuid: string;
30
+ };
31
+ }>;
32
+ create: (data: {
33
+ slug: string;
34
+ email?: string | undefined;
35
+ currency?: string | undefined;
36
+ language?: string | undefined;
37
+ quizData?: Record<string, any> | undefined;
38
+ }) => Promise<{
39
+ success: boolean;
40
+ data: {
41
+ uuid: string;
42
+ };
43
+ }>;
44
+ };
45
+ crmAuth: {
46
+ signIn: (data: {
47
+ data: {
48
+ username: string;
49
+ password: string;
50
+ remindMe?: boolean | undefined;
51
+ };
52
+ }) => Promise<{
53
+ token: string;
54
+ action: string;
55
+ }>;
56
+ signOut: () => Promise<{
57
+ success: 1;
58
+ }>;
59
+ verify: () => Promise<{
60
+ email: string;
61
+ id: number;
62
+ firstName: string;
63
+ lastName: string;
64
+ }>;
7
65
  };
8
66
  };
9
67
  declare const server: {
10
- middleware: (req: next_server.NextRequest) => Promise<next_server.NextResponse<any> | undefined>;
68
+ middleware: (req: next_server.NextRequest) => Promise<any>;
11
69
  };
12
70
 
13
71
  export { browser, server };
package/dist/index.js CHANGED
@@ -78,38 +78,166 @@ var sendToSupport = (data) => __async(null, null, function* () {
78
78
  return yield res.json();
79
79
  });
80
80
 
81
+ // src/browser/session/append.ts
82
+ var import_bridge_interface3 = require("@capibox/bridge-interface");
83
+ var append = (data) => __async(null, null, function* () {
84
+ const res = yield fetch(
85
+ import_bridge_interface3.endpoint.ENDPOINT_SESSION_APPEND,
86
+ fetchJsonPostOptions(data)
87
+ );
88
+ return yield res.json();
89
+ });
90
+
81
91
  // src/server/middleware.ts
82
92
  var import_server = require("next/server");
83
- var import_bridge_interface4 = require("@capibox/bridge-interface");
93
+ var import_bridge_interface5 = require("@capibox/bridge-interface");
84
94
 
85
95
  // src/server/_utils/server-fetch-utils.ts
86
- var import_bridge_interface3 = require("@capibox/bridge-interface");
96
+ var import_bridge_interface4 = require("@capibox/bridge-interface");
87
97
  var serverProxyPostRequest = (req) => __async(null, null, function* () {
88
98
  const res = yield fetch(
89
99
  req.nextUrl.pathname.replace(
90
- import_bridge_interface3.endpoint.MAIN_ENDPOINT,
100
+ import_bridge_interface4.endpoint.MAIN_ENDPOINT,
91
101
  "https://api.capibox.com"
92
102
  ),
93
103
  {
94
104
  method: "POST",
95
105
  body: JSON.stringify(yield req.json()),
96
- headers: {
97
- "Content-Type": "application/json",
98
- "Authorization": `${process.env.CAPIBOX_ENV}`.toLowerCase() === "prod" ? `${process.env.CAPIBOX_API_KEY}` : "dev"
99
- }
106
+ headers: serverProxyHeaders()
100
107
  }
101
108
  );
102
109
  return yield res.json();
103
110
  });
111
+ var serverProxyHeaders = () => {
112
+ return {
113
+ "Content-Type": "application/json",
114
+ "Authorization": `${process.env.CAPIBOX_ENV}`.toLowerCase() === "prod" ? `${process.env.CAPIBOX_API_KEY}` : "dev"
115
+ };
116
+ };
104
117
 
105
118
  // src/server/middleware.ts
106
119
  var middleware = (req) => __async(null, null, function* () {
107
- if (req.nextUrl.pathname === import_bridge_interface4.endpoint.ENDPOINT_MAIL_SEND_TO_RECIPIENT) {
120
+ if (req.nextUrl.pathname === import_bridge_interface5.endpoint.ENDPOINT_MAIL_SEND_TO_RECIPIENT) {
121
+ return import_server.NextResponse.json(yield serverProxyPostRequest(req));
122
+ }
123
+ if (req.nextUrl.pathname === import_bridge_interface5.endpoint.ENDPOINT_MAIL_SEND_TO_SUPPORT) {
108
124
  return import_server.NextResponse.json(yield serverProxyPostRequest(req));
109
125
  }
110
- if (req.nextUrl.pathname === import_bridge_interface4.endpoint.ENDPOINT_MAIL_SEND_TO_SUPPORT) {
126
+ if (req.nextUrl.pathname === import_bridge_interface5.endpoint.ENDPOINT_SESSION_CREATE) {
111
127
  return import_server.NextResponse.json(yield serverProxyPostRequest(req));
112
128
  }
129
+ if (req.nextUrl.pathname === import_bridge_interface5.endpoint.ENDPOINT_SESSION_APPEND) {
130
+ const jsonData = yield req.json();
131
+ const proxyBody = {
132
+ email: jsonData.email,
133
+ language: jsonData.language,
134
+ currency: jsonData.currency
135
+ };
136
+ const res = yield fetch(
137
+ req.nextUrl.pathname.replace(
138
+ import_bridge_interface5.endpoint.MAIN_ENDPOINT,
139
+ "https://api.capibox.com"
140
+ ).replace("/append", `/${jsonData.uuid}`),
141
+ {
142
+ method: "PUT",
143
+ body: JSON.stringify(proxyBody),
144
+ headers: serverProxyHeaders()
145
+ }
146
+ );
147
+ return yield res.json();
148
+ }
149
+ if (req.nextUrl.pathname === import_bridge_interface5.endpoint.ENDPOINT_CRM_AUTH_SIGN_IN) {
150
+ const res = yield fetch(
151
+ req.nextUrl.pathname.replace(
152
+ import_bridge_interface5.endpoint.MAIN_ENDPOINT,
153
+ "https://auth.crm.apidata.app/api/sign-in"
154
+ ),
155
+ {
156
+ method: "POST",
157
+ body: JSON.stringify(yield req.json()),
158
+ headers: serverProxyHeaders()
159
+ }
160
+ );
161
+ const resJson = yield res.json();
162
+ const result = import_server.NextResponse.json(resJson);
163
+ if (!!resJson.action && !!resJson.token && resJson.action === "logged-in") {
164
+ result.cookies.set({
165
+ name: "token",
166
+ value: resJson.token,
167
+ maxAge: 60 * 60 * 24 * 30,
168
+ httpOnly: true
169
+ });
170
+ }
171
+ return result;
172
+ }
173
+ if (req.nextUrl.pathname === import_bridge_interface5.endpoint.ENDPOINT_CRM_AUTH_VERIFY) {
174
+ const tokenCookie = req.cookies.get("token");
175
+ if (!tokenCookie || !tokenCookie.value) {
176
+ return import_server.NextResponse.json({ success: 0 });
177
+ }
178
+ const res = yield fetch(
179
+ req.nextUrl.pathname.replace(
180
+ import_bridge_interface5.endpoint.MAIN_ENDPOINT,
181
+ "https://auth.crm.apidata.app/api/sign-in"
182
+ ),
183
+ {
184
+ method: "POST",
185
+ body: JSON.stringify({ tokenCookie: tokenCookie.value }),
186
+ headers: serverProxyHeaders()
187
+ }
188
+ );
189
+ const resJson = yield res.json();
190
+ const result = import_server.NextResponse.json(resJson);
191
+ if (!("id" in resJson && resJson.id > 0)) {
192
+ result.cookies.delete("token");
193
+ }
194
+ return result;
195
+ }
196
+ if (req.nextUrl.pathname === import_bridge_interface5.endpoint.ENDPOINT_CRM_AUTH_SIGN_OUT) {
197
+ const res = import_server.NextResponse.json({ success: 1 });
198
+ res.cookies.delete("token");
199
+ return res;
200
+ }
201
+ });
202
+
203
+ // src/browser/session/create.ts
204
+ var import_bridge_interface6 = require("@capibox/bridge-interface");
205
+ var create = (data) => __async(null, null, function* () {
206
+ const res = yield fetch(
207
+ import_bridge_interface6.endpoint.ENDPOINT_SESSION_CREATE,
208
+ fetchJsonPostOptions(data)
209
+ );
210
+ return yield res.json();
211
+ });
212
+
213
+ // src/browser/crm-auth/sign-in.ts
214
+ var import_bridge_interface7 = require("@capibox/bridge-interface");
215
+ var signIn = (data) => __async(null, null, function* () {
216
+ const res = yield fetch(
217
+ import_bridge_interface7.endpoint.ENDPOINT_CRM_AUTH_SIGN_IN,
218
+ fetchJsonPostOptions(data)
219
+ );
220
+ return yield res.json();
221
+ });
222
+
223
+ // src/browser/crm-auth/sign-out.ts
224
+ var import_bridge_interface8 = require("@capibox/bridge-interface");
225
+ var signOut = () => __async(null, null, function* () {
226
+ const res = yield fetch(
227
+ import_bridge_interface8.endpoint.ENDPOINT_CRM_AUTH_SIGN_OUT,
228
+ fetchJsonPostOptions({})
229
+ );
230
+ return yield res.json();
231
+ });
232
+
233
+ // src/browser/crm-auth/veirfy.ts
234
+ var import_bridge_interface9 = require("@capibox/bridge-interface");
235
+ var verify = () => __async(null, null, function* () {
236
+ const res = yield fetch(
237
+ import_bridge_interface9.endpoint.ENDPOINT_CRM_AUTH_VERIFY,
238
+ fetchJsonPostOptions({})
239
+ );
240
+ return yield res.json();
113
241
  });
114
242
 
115
243
  // src/index.ts
@@ -117,6 +245,15 @@ var browser = {
117
245
  mail: {
118
246
  sendToRecipient,
119
247
  sendToSupport
248
+ },
249
+ session: {
250
+ append,
251
+ create
252
+ },
253
+ crmAuth: {
254
+ signIn,
255
+ signOut,
256
+ verify
120
257
  }
121
258
  };
122
259
  var server = {
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/index.ts","../src/browser/mail/send-to-recipient.ts","../src/browser/_utils/browser-fetch-utils.ts","../src/browser/mail/send-to-support.ts","../src/server/middleware.ts","../src/server/_utils/server-fetch-utils.ts"],"sourcesContent":["import {sendToRecipient} from \"./browser/mail/send-to-recipient\";\nimport {sendToSupport} from \"./browser/mail/send-to-support\";\nimport {middleware} from \"./server/middleware\";\n\nconst browser = {\n mail: {\n sendToRecipient,\n sendToSupport,\n }\n}\n\nconst server = {\n middleware\n}\n\nexport {\n browser,\n server\n}\n// v.0.0.7","import {dto, endpoint} from '@capibox/bridge-interface'\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const sendToRecipient = async (data: dto.SendMailToRecipientDto): Promise<dto.SendMailResponseDto> => {\n const res = await fetch(\n endpoint.ENDPOINT_MAIL_SEND_TO_RECIPIENT,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","export const fetchJsonPostOptions = (data: any) => {\n return {\n method: 'POST',\n body: JSON.stringify(data),\n headers: {\n 'Content-Type': 'application/json'\n }\n }\n}","import {dto, endpoint} from '@capibox/bridge-interface'\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const sendToSupport = async (data: dto.SendMailToSupportDto): Promise<dto.SendMailResponseDto> => {\n const res = await fetch(\n endpoint.ENDPOINT_MAIL_SEND_TO_SUPPORT,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","import {NextRequest, NextResponse} from \"next/server\";\nimport {endpoint} from \"@capibox/bridge-interface\";\nimport {serverProxyPostRequest} from \"./_utils/server-fetch-utils\";\n\nexport const middleware = async (req: NextRequest) => {\n // mail\n if (req.nextUrl.pathname === endpoint.ENDPOINT_MAIL_SEND_TO_RECIPIENT) {\n return NextResponse.json(await serverProxyPostRequest(req));\n }\n if (req.nextUrl.pathname === endpoint.ENDPOINT_MAIL_SEND_TO_SUPPORT) {\n return NextResponse.json(await serverProxyPostRequest(req));\n }\n}","import {NextRequest} from \"next/server\";\nimport {endpoint} from \"@capibox/bridge-interface\";\n\nexport const serverProxyPostRequest = async (req: NextRequest) => {\n const res = await fetch(\n req.nextUrl.pathname.replace(\n endpoint.MAIN_ENDPOINT,\n 'https://api.capibox.com'\n ),\n {\n method: 'POST',\n body: JSON.stringify(await req.json()),\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': `${process.env.CAPIBOX_ENV}`.toLowerCase() === 'prod' ? `${process.env.CAPIBOX_API_KEY}` : 'dev'\n },\n }\n )\n return await res.json();\n}"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;;;ACAA,8BAA4B;;;ACArB,IAAM,uBAAuB,CAAC,SAAc;AAC/C,SAAO;AAAA,IACH,QAAQ;AAAA,IACR,MAAM,KAAK,UAAU,IAAI;AAAA,IACzB,SAAS;AAAA,MACL,gBAAgB;AAAA,IACpB;AAAA,EACJ;AACJ;;;ADLO,IAAM,kBAAkB,CAAO,SAAuE;AACzG,QAAM,MAAM,MAAM;AAAA,IACd,iCAAS;AAAA,IACT,qBAAqB,IAAI;AAAA,EAC7B;AACA,SAAO,MAAM,IAAI,KAAK;AAC1B;;;AETA,IAAAA,2BAA4B;AAGrB,IAAM,gBAAgB,CAAO,SAAqE;AACrG,QAAM,MAAM,MAAM;AAAA,IACd,kCAAS;AAAA,IACT,qBAAqB,IAAI;AAAA,EAC7B;AACA,SAAO,MAAM,IAAI,KAAK;AAC1B;;;ACTA,oBAAwC;AACxC,IAAAC,2BAAuB;;;ACAvB,IAAAC,2BAAuB;AAEhB,IAAM,yBAAyB,CAAO,QAAqB;AAC9D,QAAM,MAAM,MAAM;AAAA,IACd,IAAI,QAAQ,SAAS;AAAA,MACjB,kCAAS;AAAA,MACT;AAAA,IACJ;AAAA,IACA;AAAA,MACI,QAAQ;AAAA,MACR,MAAM,KAAK,UAAU,MAAM,IAAI,KAAK,CAAC;AAAA,MACrC,SAAS;AAAA,QACL,gBAAgB;AAAA,QAChB,iBAAiB,GAAG,QAAQ,IAAI,WAAW,GAAG,YAAY,MAAM,SAAS,GAAG,QAAQ,IAAI,eAAe,KAAK;AAAA,MAChH;AAAA,IACJ;AAAA,EACJ;AACA,SAAO,MAAM,IAAI,KAAK;AAC1B;;;ADfO,IAAM,aAAa,CAAO,QAAqB;AAElD,MAAI,IAAI,QAAQ,aAAa,kCAAS,iCAAiC;AACnE,WAAO,2BAAa,KAAK,MAAM,uBAAuB,GAAG,CAAC;AAAA,EAC9D;AACA,MAAI,IAAI,QAAQ,aAAa,kCAAS,+BAA+B;AACjE,WAAO,2BAAa,KAAK,MAAM,uBAAuB,GAAG,CAAC;AAAA,EAC9D;AACJ;;;AJRA,IAAM,UAAU;AAAA,EACZ,MAAM;AAAA,IACF;AAAA,IACA;AAAA,EACJ;AACJ;AAEA,IAAM,SAAS;AAAA,EACX;AACJ;","names":["import_bridge_interface","import_bridge_interface","import_bridge_interface"]}
1
+ {"version":3,"sources":["../src/index.ts","../src/browser/mail/send-to-recipient.ts","../src/browser/_utils/browser-fetch-utils.ts","../src/browser/mail/send-to-support.ts","../src/browser/session/append.ts","../src/server/middleware.ts","../src/server/_utils/server-fetch-utils.ts","../src/browser/session/create.ts","../src/browser/crm-auth/sign-in.ts","../src/browser/crm-auth/sign-out.ts","../src/browser/crm-auth/veirfy.ts"],"sourcesContent":["import {sendToRecipient} from \"./browser/mail/send-to-recipient\";\nimport {sendToSupport} from \"./browser/mail/send-to-support\";\nimport { append } from \"./browser/session/append\";\nimport {middleware} from \"./server/middleware\";\nimport {create} from \"./browser/session/create\";\nimport {signIn} from \"./browser/crm-auth/sign-in\";\nimport {signOut} from \"./browser/crm-auth/sign-out\";\nimport {verify} from \"./browser/crm-auth/veirfy\";\n\nconst browser = {\n mail: {\n sendToRecipient,\n sendToSupport,\n },\n session: {\n append,\n create,\n },\n crmAuth: {\n signIn,\n signOut,\n verify,\n }\n}\n\nconst server = {\n middleware\n}\n\nexport {\n browser,\n server\n}\n// v.0.0.8","import {dto, endpoint} from '@capibox/bridge-interface'\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const sendToRecipient = async (data: dto.SendMailRecipientDtoType): Promise<dto.SendMailResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_MAIL_SEND_TO_RECIPIENT,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","export const fetchJsonPostOptions = (data: any) => {\n return {\n method: 'POST',\n body: JSON.stringify(data),\n headers: {\n 'Content-Type': 'application/json'\n }\n }\n}","import {dto, endpoint} from '@capibox/bridge-interface'\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const sendToSupport = async (data: dto.SendMailSupportDtoType): Promise<dto.SendMailResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_MAIL_SEND_TO_SUPPORT,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","import {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const append = async (data: dto.AppendSessionDtoType): Promise<dto.SessionResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_SESSION_APPEND,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","import {NextRequest, NextResponse} from \"next/server\";\nimport {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {serverProxyHeaders, serverProxyPostRequest} from \"./_utils/server-fetch-utils\";\n\nexport const middleware = async (req: NextRequest) => {\n // mail\n if (req.nextUrl.pathname === endpoint.ENDPOINT_MAIL_SEND_TO_RECIPIENT) {\n return NextResponse.json(await serverProxyPostRequest(req));\n }\n if (req.nextUrl.pathname === endpoint.ENDPOINT_MAIL_SEND_TO_SUPPORT) {\n return NextResponse.json(await serverProxyPostRequest(req));\n }\n\n // session\n if (req.nextUrl.pathname === endpoint.ENDPOINT_SESSION_CREATE) {\n return NextResponse.json(await serverProxyPostRequest(req));\n }\n if (req.nextUrl.pathname === endpoint.ENDPOINT_SESSION_APPEND) {\n const jsonData: dto.AppendSessionBrowserPublicDtoType = await req.json();\n const proxyBody: dto.AppendSessionDtoType = {\n email: jsonData.email,\n language: jsonData.language,\n currency: jsonData.currency,\n };\n\n const res = await fetch(\n req.nextUrl.pathname.replace(\n endpoint.MAIN_ENDPOINT,\n 'https://api.capibox.com'\n ).replace('/append', `/${jsonData.uuid}`),\n {\n method: 'PUT',\n body: JSON.stringify(proxyBody),\n headers: serverProxyHeaders(),\n }\n )\n return await res.json();\n }\n\n // crm auth\n if (req.nextUrl.pathname === endpoint.ENDPOINT_CRM_AUTH_SIGN_IN) {\n const res = await fetch(\n req.nextUrl.pathname.replace(\n endpoint.MAIN_ENDPOINT,\n 'https://auth.crm.apidata.app/api/sign-in'\n ),\n {\n method: 'POST',\n body: JSON.stringify(await req.json()),\n headers: serverProxyHeaders(),\n }\n )\n const resJson: dto.SignInCrmResponseDtoType = await res.json();\n\n const result = NextResponse.json(resJson);\n if (!!resJson.action && !!resJson.token && resJson.action === 'logged-in') {\n result.cookies.set({\n name: \"token\",\n value: resJson.token,\n maxAge: 60 * 60 * 24 * 30,\n httpOnly: true,\n });\n }\n return result;\n }\n if (req.nextUrl.pathname === endpoint.ENDPOINT_CRM_AUTH_VERIFY) {\n const tokenCookie = req.cookies.get('token')\n if (!tokenCookie || !tokenCookie.value) {\n return NextResponse.json({success: 0})\n }\n\n const res = await fetch(\n req.nextUrl.pathname.replace(\n endpoint.MAIN_ENDPOINT,\n 'https://auth.crm.apidata.app/api/sign-in'\n ),\n {\n method: 'POST',\n body: JSON.stringify({tokenCookie: tokenCookie.value}),\n headers: serverProxyHeaders(),\n }\n )\n const resJson: dto.VerifyCrmResponseDtoType = await res.json();\n\n const result = NextResponse.json(resJson);\n if (!('id' in resJson && resJson.id > 0)) {\n result.cookies.delete(\"token\");\n }\n return result;\n }\n if (req.nextUrl.pathname === endpoint.ENDPOINT_CRM_AUTH_SIGN_OUT) {\n const res = NextResponse.json({success: 1});\n res.cookies.delete(\"token\");\n return res;\n }\n}","import {NextRequest} from \"next/server\";\nimport {endpoint} from \"@capibox/bridge-interface\";\n\nexport const serverProxyPostRequest = async (req: NextRequest) => {\n const res = await fetch(\n req.nextUrl.pathname.replace(\n endpoint.MAIN_ENDPOINT,\n 'https://api.capibox.com'\n ),\n {\n method: 'POST',\n body: JSON.stringify(await req.json()),\n headers: serverProxyHeaders(),\n }\n )\n return await res.json();\n}\n\nexport const serverProxyHeaders = () => {\n return {\n 'Content-Type': 'application/json',\n 'Authorization': `${process.env.CAPIBOX_ENV}`.toLowerCase() === 'prod' ? `${process.env.CAPIBOX_API_KEY}` : 'dev'\n }\n}","import {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const create = async (data: dto.CreateSessionBrowserPublicDtoType): Promise<dto.SessionResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_SESSION_CREATE,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","import {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const signIn = async (data: dto.SignInCrmUserDtoType): Promise<dto.SignInCrmResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_CRM_AUTH_SIGN_IN,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","import {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const signOut = async (): Promise<{ success: 1 }> => {\n const res = await fetch(\n endpoint.ENDPOINT_CRM_AUTH_SIGN_OUT,\n fetchJsonPostOptions({})\n )\n return await res.json();\n}","import {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const verify = async (): Promise<dto.VerifyCrmResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_CRM_AUTH_VERIFY,\n fetchJsonPostOptions({})\n )\n return await res.json();\n}"],"mappings":"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","names":["import_bridge_interface","import_bridge_interface","import_bridge_interface","import_bridge_interface","import_bridge_interface","import_bridge_interface","import_bridge_interface","import_bridge_interface"]}
package/dist/index.mjs CHANGED
@@ -52,38 +52,166 @@ var sendToSupport = (data) => __async(null, null, function* () {
52
52
  return yield res.json();
53
53
  });
54
54
 
55
+ // src/browser/session/append.ts
56
+ import { endpoint as endpoint3 } from "@capibox/bridge-interface";
57
+ var append = (data) => __async(null, null, function* () {
58
+ const res = yield fetch(
59
+ endpoint3.ENDPOINT_SESSION_APPEND,
60
+ fetchJsonPostOptions(data)
61
+ );
62
+ return yield res.json();
63
+ });
64
+
55
65
  // src/server/middleware.ts
56
66
  import { NextResponse } from "next/server";
57
- import { endpoint as endpoint4 } from "@capibox/bridge-interface";
67
+ import { endpoint as endpoint5 } from "@capibox/bridge-interface";
58
68
 
59
69
  // src/server/_utils/server-fetch-utils.ts
60
- import { endpoint as endpoint3 } from "@capibox/bridge-interface";
70
+ import { endpoint as endpoint4 } from "@capibox/bridge-interface";
61
71
  var serverProxyPostRequest = (req) => __async(null, null, function* () {
62
72
  const res = yield fetch(
63
73
  req.nextUrl.pathname.replace(
64
- endpoint3.MAIN_ENDPOINT,
74
+ endpoint4.MAIN_ENDPOINT,
65
75
  "https://api.capibox.com"
66
76
  ),
67
77
  {
68
78
  method: "POST",
69
79
  body: JSON.stringify(yield req.json()),
70
- headers: {
71
- "Content-Type": "application/json",
72
- "Authorization": `${process.env.CAPIBOX_ENV}`.toLowerCase() === "prod" ? `${process.env.CAPIBOX_API_KEY}` : "dev"
73
- }
80
+ headers: serverProxyHeaders()
74
81
  }
75
82
  );
76
83
  return yield res.json();
77
84
  });
85
+ var serverProxyHeaders = () => {
86
+ return {
87
+ "Content-Type": "application/json",
88
+ "Authorization": `${process.env.CAPIBOX_ENV}`.toLowerCase() === "prod" ? `${process.env.CAPIBOX_API_KEY}` : "dev"
89
+ };
90
+ };
78
91
 
79
92
  // src/server/middleware.ts
80
93
  var middleware = (req) => __async(null, null, function* () {
81
- if (req.nextUrl.pathname === endpoint4.ENDPOINT_MAIL_SEND_TO_RECIPIENT) {
94
+ if (req.nextUrl.pathname === endpoint5.ENDPOINT_MAIL_SEND_TO_RECIPIENT) {
95
+ return NextResponse.json(yield serverProxyPostRequest(req));
96
+ }
97
+ if (req.nextUrl.pathname === endpoint5.ENDPOINT_MAIL_SEND_TO_SUPPORT) {
82
98
  return NextResponse.json(yield serverProxyPostRequest(req));
83
99
  }
84
- if (req.nextUrl.pathname === endpoint4.ENDPOINT_MAIL_SEND_TO_SUPPORT) {
100
+ if (req.nextUrl.pathname === endpoint5.ENDPOINT_SESSION_CREATE) {
85
101
  return NextResponse.json(yield serverProxyPostRequest(req));
86
102
  }
103
+ if (req.nextUrl.pathname === endpoint5.ENDPOINT_SESSION_APPEND) {
104
+ const jsonData = yield req.json();
105
+ const proxyBody = {
106
+ email: jsonData.email,
107
+ language: jsonData.language,
108
+ currency: jsonData.currency
109
+ };
110
+ const res = yield fetch(
111
+ req.nextUrl.pathname.replace(
112
+ endpoint5.MAIN_ENDPOINT,
113
+ "https://api.capibox.com"
114
+ ).replace("/append", `/${jsonData.uuid}`),
115
+ {
116
+ method: "PUT",
117
+ body: JSON.stringify(proxyBody),
118
+ headers: serverProxyHeaders()
119
+ }
120
+ );
121
+ return yield res.json();
122
+ }
123
+ if (req.nextUrl.pathname === endpoint5.ENDPOINT_CRM_AUTH_SIGN_IN) {
124
+ const res = yield fetch(
125
+ req.nextUrl.pathname.replace(
126
+ endpoint5.MAIN_ENDPOINT,
127
+ "https://auth.crm.apidata.app/api/sign-in"
128
+ ),
129
+ {
130
+ method: "POST",
131
+ body: JSON.stringify(yield req.json()),
132
+ headers: serverProxyHeaders()
133
+ }
134
+ );
135
+ const resJson = yield res.json();
136
+ const result = NextResponse.json(resJson);
137
+ if (!!resJson.action && !!resJson.token && resJson.action === "logged-in") {
138
+ result.cookies.set({
139
+ name: "token",
140
+ value: resJson.token,
141
+ maxAge: 60 * 60 * 24 * 30,
142
+ httpOnly: true
143
+ });
144
+ }
145
+ return result;
146
+ }
147
+ if (req.nextUrl.pathname === endpoint5.ENDPOINT_CRM_AUTH_VERIFY) {
148
+ const tokenCookie = req.cookies.get("token");
149
+ if (!tokenCookie || !tokenCookie.value) {
150
+ return NextResponse.json({ success: 0 });
151
+ }
152
+ const res = yield fetch(
153
+ req.nextUrl.pathname.replace(
154
+ endpoint5.MAIN_ENDPOINT,
155
+ "https://auth.crm.apidata.app/api/sign-in"
156
+ ),
157
+ {
158
+ method: "POST",
159
+ body: JSON.stringify({ tokenCookie: tokenCookie.value }),
160
+ headers: serverProxyHeaders()
161
+ }
162
+ );
163
+ const resJson = yield res.json();
164
+ const result = NextResponse.json(resJson);
165
+ if (!("id" in resJson && resJson.id > 0)) {
166
+ result.cookies.delete("token");
167
+ }
168
+ return result;
169
+ }
170
+ if (req.nextUrl.pathname === endpoint5.ENDPOINT_CRM_AUTH_SIGN_OUT) {
171
+ const res = NextResponse.json({ success: 1 });
172
+ res.cookies.delete("token");
173
+ return res;
174
+ }
175
+ });
176
+
177
+ // src/browser/session/create.ts
178
+ import { endpoint as endpoint6 } from "@capibox/bridge-interface";
179
+ var create = (data) => __async(null, null, function* () {
180
+ const res = yield fetch(
181
+ endpoint6.ENDPOINT_SESSION_CREATE,
182
+ fetchJsonPostOptions(data)
183
+ );
184
+ return yield res.json();
185
+ });
186
+
187
+ // src/browser/crm-auth/sign-in.ts
188
+ import { endpoint as endpoint7 } from "@capibox/bridge-interface";
189
+ var signIn = (data) => __async(null, null, function* () {
190
+ const res = yield fetch(
191
+ endpoint7.ENDPOINT_CRM_AUTH_SIGN_IN,
192
+ fetchJsonPostOptions(data)
193
+ );
194
+ return yield res.json();
195
+ });
196
+
197
+ // src/browser/crm-auth/sign-out.ts
198
+ import { endpoint as endpoint8 } from "@capibox/bridge-interface";
199
+ var signOut = () => __async(null, null, function* () {
200
+ const res = yield fetch(
201
+ endpoint8.ENDPOINT_CRM_AUTH_SIGN_OUT,
202
+ fetchJsonPostOptions({})
203
+ );
204
+ return yield res.json();
205
+ });
206
+
207
+ // src/browser/crm-auth/veirfy.ts
208
+ import { endpoint as endpoint9 } from "@capibox/bridge-interface";
209
+ var verify = () => __async(null, null, function* () {
210
+ const res = yield fetch(
211
+ endpoint9.ENDPOINT_CRM_AUTH_VERIFY,
212
+ fetchJsonPostOptions({})
213
+ );
214
+ return yield res.json();
87
215
  });
88
216
 
89
217
  // src/index.ts
@@ -91,6 +219,15 @@ var browser = {
91
219
  mail: {
92
220
  sendToRecipient,
93
221
  sendToSupport
222
+ },
223
+ session: {
224
+ append,
225
+ create
226
+ },
227
+ crmAuth: {
228
+ signIn,
229
+ signOut,
230
+ verify
94
231
  }
95
232
  };
96
233
  var server = {
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/browser/mail/send-to-recipient.ts","../src/browser/_utils/browser-fetch-utils.ts","../src/browser/mail/send-to-support.ts","../src/server/middleware.ts","../src/server/_utils/server-fetch-utils.ts","../src/index.ts"],"sourcesContent":["import {dto, endpoint} from '@capibox/bridge-interface'\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const sendToRecipient = async (data: dto.SendMailToRecipientDto): Promise<dto.SendMailResponseDto> => {\n const res = await fetch(\n endpoint.ENDPOINT_MAIL_SEND_TO_RECIPIENT,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","export const fetchJsonPostOptions = (data: any) => {\n return {\n method: 'POST',\n body: JSON.stringify(data),\n headers: {\n 'Content-Type': 'application/json'\n }\n }\n}","import {dto, endpoint} from '@capibox/bridge-interface'\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const sendToSupport = async (data: dto.SendMailToSupportDto): Promise<dto.SendMailResponseDto> => {\n const res = await fetch(\n endpoint.ENDPOINT_MAIL_SEND_TO_SUPPORT,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","import {NextRequest, NextResponse} from \"next/server\";\nimport {endpoint} from \"@capibox/bridge-interface\";\nimport {serverProxyPostRequest} from \"./_utils/server-fetch-utils\";\n\nexport const middleware = async (req: NextRequest) => {\n // mail\n if (req.nextUrl.pathname === endpoint.ENDPOINT_MAIL_SEND_TO_RECIPIENT) {\n return NextResponse.json(await serverProxyPostRequest(req));\n }\n if (req.nextUrl.pathname === endpoint.ENDPOINT_MAIL_SEND_TO_SUPPORT) {\n return NextResponse.json(await serverProxyPostRequest(req));\n }\n}","import {NextRequest} from \"next/server\";\nimport {endpoint} from \"@capibox/bridge-interface\";\n\nexport const serverProxyPostRequest = async (req: NextRequest) => {\n const res = await fetch(\n req.nextUrl.pathname.replace(\n endpoint.MAIN_ENDPOINT,\n 'https://api.capibox.com'\n ),\n {\n method: 'POST',\n body: JSON.stringify(await req.json()),\n headers: {\n 'Content-Type': 'application/json',\n 'Authorization': `${process.env.CAPIBOX_ENV}`.toLowerCase() === 'prod' ? `${process.env.CAPIBOX_API_KEY}` : 'dev'\n },\n }\n )\n return await res.json();\n}","import {sendToRecipient} from \"./browser/mail/send-to-recipient\";\nimport {sendToSupport} from \"./browser/mail/send-to-support\";\nimport {middleware} from \"./server/middleware\";\n\nconst browser = {\n mail: {\n sendToRecipient,\n sendToSupport,\n }\n}\n\nconst server = {\n middleware\n}\n\nexport {\n browser,\n server\n}\n// v.0.0.7"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAAA,SAAa,gBAAe;;;ACArB,IAAM,uBAAuB,CAAC,SAAc;AAC/C,SAAO;AAAA,IACH,QAAQ;AAAA,IACR,MAAM,KAAK,UAAU,IAAI;AAAA,IACzB,SAAS;AAAA,MACL,gBAAgB;AAAA,IACpB;AAAA,EACJ;AACJ;;;ADLO,IAAM,kBAAkB,CAAO,SAAuE;AACzG,QAAM,MAAM,MAAM;AAAA,IACd,SAAS;AAAA,IACT,qBAAqB,IAAI;AAAA,EAC7B;AACA,SAAO,MAAM,IAAI,KAAK;AAC1B;;;AETA,SAAa,YAAAA,iBAAe;AAGrB,IAAM,gBAAgB,CAAO,SAAqE;AACrG,QAAM,MAAM,MAAM;AAAA,IACdC,UAAS;AAAA,IACT,qBAAqB,IAAI;AAAA,EAC7B;AACA,SAAO,MAAM,IAAI,KAAK;AAC1B;;;ACTA,SAAqB,oBAAmB;AACxC,SAAQ,YAAAC,iBAAe;;;ACAvB,SAAQ,YAAAC,iBAAe;AAEhB,IAAM,yBAAyB,CAAO,QAAqB;AAC9D,QAAM,MAAM,MAAM;AAAA,IACd,IAAI,QAAQ,SAAS;AAAA,MACjBC,UAAS;AAAA,MACT;AAAA,IACJ;AAAA,IACA;AAAA,MACI,QAAQ;AAAA,MACR,MAAM,KAAK,UAAU,MAAM,IAAI,KAAK,CAAC;AAAA,MACrC,SAAS;AAAA,QACL,gBAAgB;AAAA,QAChB,iBAAiB,GAAG,QAAQ,IAAI,WAAW,GAAG,YAAY,MAAM,SAAS,GAAG,QAAQ,IAAI,eAAe,KAAK;AAAA,MAChH;AAAA,IACJ;AAAA,EACJ;AACA,SAAO,MAAM,IAAI,KAAK;AAC1B;;;ADfO,IAAM,aAAa,CAAO,QAAqB;AAElD,MAAI,IAAI,QAAQ,aAAaC,UAAS,iCAAiC;AACnE,WAAO,aAAa,KAAK,MAAM,uBAAuB,GAAG,CAAC;AAAA,EAC9D;AACA,MAAI,IAAI,QAAQ,aAAaA,UAAS,+BAA+B;AACjE,WAAO,aAAa,KAAK,MAAM,uBAAuB,GAAG,CAAC;AAAA,EAC9D;AACJ;;;AERA,IAAM,UAAU;AAAA,EACZ,MAAM;AAAA,IACF;AAAA,IACA;AAAA,EACJ;AACJ;AAEA,IAAM,SAAS;AAAA,EACX;AACJ;","names":["endpoint","endpoint","endpoint","endpoint","endpoint","endpoint"]}
1
+ {"version":3,"sources":["../src/browser/mail/send-to-recipient.ts","../src/browser/_utils/browser-fetch-utils.ts","../src/browser/mail/send-to-support.ts","../src/browser/session/append.ts","../src/server/middleware.ts","../src/server/_utils/server-fetch-utils.ts","../src/browser/session/create.ts","../src/browser/crm-auth/sign-in.ts","../src/browser/crm-auth/sign-out.ts","../src/browser/crm-auth/veirfy.ts","../src/index.ts"],"sourcesContent":["import {dto, endpoint} from '@capibox/bridge-interface'\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const sendToRecipient = async (data: dto.SendMailRecipientDtoType): Promise<dto.SendMailResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_MAIL_SEND_TO_RECIPIENT,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","export const fetchJsonPostOptions = (data: any) => {\n return {\n method: 'POST',\n body: JSON.stringify(data),\n headers: {\n 'Content-Type': 'application/json'\n }\n }\n}","import {dto, endpoint} from '@capibox/bridge-interface'\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const sendToSupport = async (data: dto.SendMailSupportDtoType): Promise<dto.SendMailResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_MAIL_SEND_TO_SUPPORT,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","import {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const append = async (data: dto.AppendSessionDtoType): Promise<dto.SessionResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_SESSION_APPEND,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","import {NextRequest, NextResponse} from \"next/server\";\nimport {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {serverProxyHeaders, serverProxyPostRequest} from \"./_utils/server-fetch-utils\";\n\nexport const middleware = async (req: NextRequest) => {\n // mail\n if (req.nextUrl.pathname === endpoint.ENDPOINT_MAIL_SEND_TO_RECIPIENT) {\n return NextResponse.json(await serverProxyPostRequest(req));\n }\n if (req.nextUrl.pathname === endpoint.ENDPOINT_MAIL_SEND_TO_SUPPORT) {\n return NextResponse.json(await serverProxyPostRequest(req));\n }\n\n // session\n if (req.nextUrl.pathname === endpoint.ENDPOINT_SESSION_CREATE) {\n return NextResponse.json(await serverProxyPostRequest(req));\n }\n if (req.nextUrl.pathname === endpoint.ENDPOINT_SESSION_APPEND) {\n const jsonData: dto.AppendSessionBrowserPublicDtoType = await req.json();\n const proxyBody: dto.AppendSessionDtoType = {\n email: jsonData.email,\n language: jsonData.language,\n currency: jsonData.currency,\n };\n\n const res = await fetch(\n req.nextUrl.pathname.replace(\n endpoint.MAIN_ENDPOINT,\n 'https://api.capibox.com'\n ).replace('/append', `/${jsonData.uuid}`),\n {\n method: 'PUT',\n body: JSON.stringify(proxyBody),\n headers: serverProxyHeaders(),\n }\n )\n return await res.json();\n }\n\n // crm auth\n if (req.nextUrl.pathname === endpoint.ENDPOINT_CRM_AUTH_SIGN_IN) {\n const res = await fetch(\n req.nextUrl.pathname.replace(\n endpoint.MAIN_ENDPOINT,\n 'https://auth.crm.apidata.app/api/sign-in'\n ),\n {\n method: 'POST',\n body: JSON.stringify(await req.json()),\n headers: serverProxyHeaders(),\n }\n )\n const resJson: dto.SignInCrmResponseDtoType = await res.json();\n\n const result = NextResponse.json(resJson);\n if (!!resJson.action && !!resJson.token && resJson.action === 'logged-in') {\n result.cookies.set({\n name: \"token\",\n value: resJson.token,\n maxAge: 60 * 60 * 24 * 30,\n httpOnly: true,\n });\n }\n return result;\n }\n if (req.nextUrl.pathname === endpoint.ENDPOINT_CRM_AUTH_VERIFY) {\n const tokenCookie = req.cookies.get('token')\n if (!tokenCookie || !tokenCookie.value) {\n return NextResponse.json({success: 0})\n }\n\n const res = await fetch(\n req.nextUrl.pathname.replace(\n endpoint.MAIN_ENDPOINT,\n 'https://auth.crm.apidata.app/api/sign-in'\n ),\n {\n method: 'POST',\n body: JSON.stringify({tokenCookie: tokenCookie.value}),\n headers: serverProxyHeaders(),\n }\n )\n const resJson: dto.VerifyCrmResponseDtoType = await res.json();\n\n const result = NextResponse.json(resJson);\n if (!('id' in resJson && resJson.id > 0)) {\n result.cookies.delete(\"token\");\n }\n return result;\n }\n if (req.nextUrl.pathname === endpoint.ENDPOINT_CRM_AUTH_SIGN_OUT) {\n const res = NextResponse.json({success: 1});\n res.cookies.delete(\"token\");\n return res;\n }\n}","import {NextRequest} from \"next/server\";\nimport {endpoint} from \"@capibox/bridge-interface\";\n\nexport const serverProxyPostRequest = async (req: NextRequest) => {\n const res = await fetch(\n req.nextUrl.pathname.replace(\n endpoint.MAIN_ENDPOINT,\n 'https://api.capibox.com'\n ),\n {\n method: 'POST',\n body: JSON.stringify(await req.json()),\n headers: serverProxyHeaders(),\n }\n )\n return await res.json();\n}\n\nexport const serverProxyHeaders = () => {\n return {\n 'Content-Type': 'application/json',\n 'Authorization': `${process.env.CAPIBOX_ENV}`.toLowerCase() === 'prod' ? `${process.env.CAPIBOX_API_KEY}` : 'dev'\n }\n}","import {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const create = async (data: dto.CreateSessionBrowserPublicDtoType): Promise<dto.SessionResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_SESSION_CREATE,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","import {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const signIn = async (data: dto.SignInCrmUserDtoType): Promise<dto.SignInCrmResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_CRM_AUTH_SIGN_IN,\n fetchJsonPostOptions(data)\n )\n return await res.json();\n}","import {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const signOut = async (): Promise<{ success: 1 }> => {\n const res = await fetch(\n endpoint.ENDPOINT_CRM_AUTH_SIGN_OUT,\n fetchJsonPostOptions({})\n )\n return await res.json();\n}","import {dto, endpoint} from \"@capibox/bridge-interface\";\nimport {fetchJsonPostOptions} from \"../_utils/browser-fetch-utils\";\n\nexport const verify = async (): Promise<dto.VerifyCrmResponseDtoType> => {\n const res = await fetch(\n endpoint.ENDPOINT_CRM_AUTH_VERIFY,\n fetchJsonPostOptions({})\n )\n return await res.json();\n}","import {sendToRecipient} from \"./browser/mail/send-to-recipient\";\nimport {sendToSupport} from \"./browser/mail/send-to-support\";\nimport { append } from \"./browser/session/append\";\nimport {middleware} from \"./server/middleware\";\nimport {create} from \"./browser/session/create\";\nimport {signIn} from \"./browser/crm-auth/sign-in\";\nimport {signOut} from \"./browser/crm-auth/sign-out\";\nimport {verify} from \"./browser/crm-auth/veirfy\";\n\nconst browser = {\n mail: {\n sendToRecipient,\n sendToSupport,\n },\n session: {\n append,\n create,\n },\n crmAuth: {\n signIn,\n signOut,\n verify,\n }\n}\n\nconst server = {\n middleware\n}\n\nexport {\n browser,\n server\n}\n// v.0.0.8"],"mappings":"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","names":["endpoint","endpoint","endpoint","endpoint","endpoint","endpoint","endpoint","endpoint","endpoint","endpoint","endpoint","endpoint","endpoint","endpoint","endpoint","endpoint"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@capibox/bridge-nextjs-client",
3
- "version": "0.0.7",
3
+ "version": "0.0.8",
4
4
  "description": "",
5
5
  "main": "./dist/index.js",
6
6
  "module": "./dist/index.mjs",
@@ -21,7 +21,7 @@
21
21
  "typescript": "^5.4.2"
22
22
  },
23
23
  "dependencies": {
24
- "@capibox/bridge-interface": "^0.0.17",
24
+ "@capibox/bridge-interface": "^0.0.38",
25
25
  "@nestjs/swagger": "^11.2.0",
26
26
  "class-validator": "^0.14.2",
27
27
  "zod": "^3.24.1"