@capibox/bridge-nextjs-client 0.0.7 → 0.0.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.
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,160 @@ 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
+ "https://auth.crm.apidata.app/api/sign-in",
152
+ {
153
+ method: "POST",
154
+ body: JSON.stringify(yield req.json()),
155
+ headers: serverProxyHeaders()
156
+ }
157
+ );
158
+ const resJson = yield res.json();
159
+ const result = import_server.NextResponse.json(resJson);
160
+ if (!!resJson.action && !!resJson.token && resJson.action === "logged-in") {
161
+ result.cookies.set({
162
+ name: "token",
163
+ value: resJson.token,
164
+ maxAge: 60 * 60 * 24 * 30,
165
+ httpOnly: true
166
+ });
167
+ }
168
+ return result;
169
+ }
170
+ if (req.nextUrl.pathname === import_bridge_interface5.endpoint.ENDPOINT_CRM_AUTH_VERIFY) {
171
+ const tokenCookie = req.cookies.get("token");
172
+ if (!tokenCookie || !tokenCookie.value) {
173
+ return import_server.NextResponse.json({ success: 0 });
174
+ }
175
+ const res = yield fetch(
176
+ "https://auth.crm.apidata.app/api/check-token",
177
+ {
178
+ method: "POST",
179
+ body: JSON.stringify({ tokenCookie: tokenCookie.value }),
180
+ headers: serverProxyHeaders()
181
+ }
182
+ );
183
+ const resJson = yield res.json();
184
+ const result = import_server.NextResponse.json(resJson);
185
+ if (!("id" in resJson && resJson.id > 0)) {
186
+ result.cookies.delete("token");
187
+ }
188
+ return result;
189
+ }
190
+ if (req.nextUrl.pathname === import_bridge_interface5.endpoint.ENDPOINT_CRM_AUTH_SIGN_OUT) {
191
+ const res = import_server.NextResponse.json({ success: 1 });
192
+ res.cookies.delete("token");
193
+ return res;
194
+ }
195
+ });
196
+
197
+ // src/browser/session/create.ts
198
+ var import_bridge_interface6 = require("@capibox/bridge-interface");
199
+ var create = (data) => __async(null, null, function* () {
200
+ const res = yield fetch(
201
+ import_bridge_interface6.endpoint.ENDPOINT_SESSION_CREATE,
202
+ fetchJsonPostOptions(data)
203
+ );
204
+ return yield res.json();
205
+ });
206
+
207
+ // src/browser/crm-auth/sign-in.ts
208
+ var import_bridge_interface7 = require("@capibox/bridge-interface");
209
+ var signIn = (data) => __async(null, null, function* () {
210
+ const res = yield fetch(
211
+ import_bridge_interface7.endpoint.ENDPOINT_CRM_AUTH_SIGN_IN,
212
+ fetchJsonPostOptions(data)
213
+ );
214
+ return yield res.json();
215
+ });
216
+
217
+ // src/browser/crm-auth/sign-out.ts
218
+ var import_bridge_interface8 = require("@capibox/bridge-interface");
219
+ var signOut = () => __async(null, null, function* () {
220
+ const res = yield fetch(
221
+ import_bridge_interface8.endpoint.ENDPOINT_CRM_AUTH_SIGN_OUT,
222
+ fetchJsonPostOptions({})
223
+ );
224
+ return yield res.json();
225
+ });
226
+
227
+ // src/browser/crm-auth/veirfy.ts
228
+ var import_bridge_interface9 = require("@capibox/bridge-interface");
229
+ var verify = () => __async(null, null, function* () {
230
+ const res = yield fetch(
231
+ import_bridge_interface9.endpoint.ENDPOINT_CRM_AUTH_VERIFY,
232
+ fetchJsonPostOptions({})
233
+ );
234
+ return yield res.json();
113
235
  });
114
236
 
115
237
  // src/index.ts
@@ -117,6 +239,15 @@ var browser = {
117
239
  mail: {
118
240
  sendToRecipient,
119
241
  sendToSupport
242
+ },
243
+ session: {
244
+ append,
245
+ create
246
+ },
247
+ crmAuth: {
248
+ signIn,
249
+ signOut,
250
+ verify
120
251
  }
121
252
  };
122
253
  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.9","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 'https://auth.crm.apidata.app/api/sign-in',\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 'https://auth.crm.apidata.app/api/check-token',\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,160 @@ 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
+ "https://auth.crm.apidata.app/api/sign-in",
126
+ {
127
+ method: "POST",
128
+ body: JSON.stringify(yield req.json()),
129
+ headers: serverProxyHeaders()
130
+ }
131
+ );
132
+ const resJson = yield res.json();
133
+ const result = NextResponse.json(resJson);
134
+ if (!!resJson.action && !!resJson.token && resJson.action === "logged-in") {
135
+ result.cookies.set({
136
+ name: "token",
137
+ value: resJson.token,
138
+ maxAge: 60 * 60 * 24 * 30,
139
+ httpOnly: true
140
+ });
141
+ }
142
+ return result;
143
+ }
144
+ if (req.nextUrl.pathname === endpoint5.ENDPOINT_CRM_AUTH_VERIFY) {
145
+ const tokenCookie = req.cookies.get("token");
146
+ if (!tokenCookie || !tokenCookie.value) {
147
+ return NextResponse.json({ success: 0 });
148
+ }
149
+ const res = yield fetch(
150
+ "https://auth.crm.apidata.app/api/check-token",
151
+ {
152
+ method: "POST",
153
+ body: JSON.stringify({ tokenCookie: tokenCookie.value }),
154
+ headers: serverProxyHeaders()
155
+ }
156
+ );
157
+ const resJson = yield res.json();
158
+ const result = NextResponse.json(resJson);
159
+ if (!("id" in resJson && resJson.id > 0)) {
160
+ result.cookies.delete("token");
161
+ }
162
+ return result;
163
+ }
164
+ if (req.nextUrl.pathname === endpoint5.ENDPOINT_CRM_AUTH_SIGN_OUT) {
165
+ const res = NextResponse.json({ success: 1 });
166
+ res.cookies.delete("token");
167
+ return res;
168
+ }
169
+ });
170
+
171
+ // src/browser/session/create.ts
172
+ import { endpoint as endpoint6 } from "@capibox/bridge-interface";
173
+ var create = (data) => __async(null, null, function* () {
174
+ const res = yield fetch(
175
+ endpoint6.ENDPOINT_SESSION_CREATE,
176
+ fetchJsonPostOptions(data)
177
+ );
178
+ return yield res.json();
179
+ });
180
+
181
+ // src/browser/crm-auth/sign-in.ts
182
+ import { endpoint as endpoint7 } from "@capibox/bridge-interface";
183
+ var signIn = (data) => __async(null, null, function* () {
184
+ const res = yield fetch(
185
+ endpoint7.ENDPOINT_CRM_AUTH_SIGN_IN,
186
+ fetchJsonPostOptions(data)
187
+ );
188
+ return yield res.json();
189
+ });
190
+
191
+ // src/browser/crm-auth/sign-out.ts
192
+ import { endpoint as endpoint8 } from "@capibox/bridge-interface";
193
+ var signOut = () => __async(null, null, function* () {
194
+ const res = yield fetch(
195
+ endpoint8.ENDPOINT_CRM_AUTH_SIGN_OUT,
196
+ fetchJsonPostOptions({})
197
+ );
198
+ return yield res.json();
199
+ });
200
+
201
+ // src/browser/crm-auth/veirfy.ts
202
+ import { endpoint as endpoint9 } from "@capibox/bridge-interface";
203
+ var verify = () => __async(null, null, function* () {
204
+ const res = yield fetch(
205
+ endpoint9.ENDPOINT_CRM_AUTH_VERIFY,
206
+ fetchJsonPostOptions({})
207
+ );
208
+ return yield res.json();
87
209
  });
88
210
 
89
211
  // src/index.ts
@@ -91,6 +213,15 @@ var browser = {
91
213
  mail: {
92
214
  sendToRecipient,
93
215
  sendToSupport
216
+ },
217
+ session: {
218
+ append,
219
+ create
220
+ },
221
+ crmAuth: {
222
+ signIn,
223
+ signOut,
224
+ verify
94
225
  }
95
226
  };
96
227
  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 'https://auth.crm.apidata.app/api/sign-in',\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 'https://auth.crm.apidata.app/api/check-token',\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.9"],"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.9",
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"