@djust-b2b/djust-front-sdk 1.22.1 → 1.22.2

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 (111) hide show
  1. package/lib/instrument.d.ts +2 -0
  2. package/lib/instrument.js +33 -0
  3. package/lib/{index.d.ts → src/index.d.ts} +1 -0
  4. package/lib/{index.js → src/index.js} +1 -0
  5. package/lib/{settings → src/settings}/fetch-instance.js +23 -33
  6. package/package.json +1 -1
  7. /package/lib/{helpers → src/helpers}/parameters-validation.d.ts +0 -0
  8. /package/lib/{helpers → src/helpers}/parameters-validation.js +0 -0
  9. /package/lib/{helpers → src/helpers}/utils.d.ts +0 -0
  10. /package/lib/{helpers → src/helpers}/utils.js +0 -0
  11. /package/lib/{interfaces → src/interfaces}/index.d.ts +0 -0
  12. /package/lib/{interfaces → src/interfaces}/index.js +0 -0
  13. /package/lib/{interfaces → src/interfaces}/models/address.d.ts +0 -0
  14. /package/lib/{interfaces → src/interfaces}/models/address.js +0 -0
  15. /package/lib/{interfaces → src/interfaces}/models/attribute.d.ts +0 -0
  16. /package/lib/{interfaces → src/interfaces}/models/attribute.js +0 -0
  17. /package/lib/{interfaces → src/interfaces}/models/auth.d.ts +0 -0
  18. /package/lib/{interfaces → src/interfaces}/models/auth.js +0 -0
  19. /package/lib/{interfaces → src/interfaces}/models/buying-list.d.ts +0 -0
  20. /package/lib/{interfaces → src/interfaces}/models/buying-list.js +0 -0
  21. /package/lib/{interfaces → src/interfaces}/models/cart.d.ts +0 -0
  22. /package/lib/{interfaces → src/interfaces}/models/cart.js +0 -0
  23. /package/lib/{interfaces → src/interfaces}/models/common.d.ts +0 -0
  24. /package/lib/{interfaces → src/interfaces}/models/common.js +0 -0
  25. /package/lib/{interfaces → src/interfaces}/models/custom-field.d.ts +0 -0
  26. /package/lib/{interfaces → src/interfaces}/models/custom-field.js +0 -0
  27. /package/lib/{interfaces → src/interfaces}/models/customer-account.d.ts +0 -0
  28. /package/lib/{interfaces → src/interfaces}/models/customer-account.js +0 -0
  29. /package/lib/{interfaces → src/interfaces}/models/customer-organisation.d.ts +0 -0
  30. /package/lib/{interfaces → src/interfaces}/models/customer-organisation.js +0 -0
  31. /package/lib/{interfaces → src/interfaces}/models/customer-user.d.ts +0 -0
  32. /package/lib/{interfaces → src/interfaces}/models/customer-user.js +0 -0
  33. /package/lib/{interfaces → src/interfaces}/models/incident.d.ts +0 -0
  34. /package/lib/{interfaces → src/interfaces}/models/incident.js +0 -0
  35. /package/lib/{interfaces → src/interfaces}/models/navigation-category.d.ts +0 -0
  36. /package/lib/{interfaces → src/interfaces}/models/navigation-category.js +0 -0
  37. /package/lib/{interfaces → src/interfaces}/models/offer.d.ts +0 -0
  38. /package/lib/{interfaces → src/interfaces}/models/offer.js +0 -0
  39. /package/lib/{interfaces → src/interfaces}/models/order.d.ts +0 -0
  40. /package/lib/{interfaces → src/interfaces}/models/order.js +0 -0
  41. /package/lib/{interfaces → src/interfaces}/models/payment.d.ts +0 -0
  42. /package/lib/{interfaces → src/interfaces}/models/payment.js +0 -0
  43. /package/lib/{interfaces → src/interfaces}/models/price.d.ts +0 -0
  44. /package/lib/{interfaces → src/interfaces}/models/price.js +0 -0
  45. /package/lib/{interfaces → src/interfaces}/models/product.d.ts +0 -0
  46. /package/lib/{interfaces → src/interfaces}/models/product.js +0 -0
  47. /package/lib/{interfaces → src/interfaces}/models/quote.d.ts +0 -0
  48. /package/lib/{interfaces → src/interfaces}/models/quote.js +0 -0
  49. /package/lib/{interfaces → src/interfaces}/models/searchProduct.d.ts +0 -0
  50. /package/lib/{interfaces → src/interfaces}/models/searchProduct.js +0 -0
  51. /package/lib/{interfaces → src/interfaces}/models/supplier.d.ts +0 -0
  52. /package/lib/{interfaces → src/interfaces}/models/supplier.js +0 -0
  53. /package/lib/{services → src/services}/auth/definitions.d.ts +0 -0
  54. /package/lib/{services → src/services}/auth/definitions.js +0 -0
  55. /package/lib/{services → src/services}/auth/definitions.requests.d.ts +0 -0
  56. /package/lib/{services → src/services}/auth/definitions.requests.js +0 -0
  57. /package/lib/{services → src/services}/auth/index.d.ts +0 -0
  58. /package/lib/{services → src/services}/auth/index.js +0 -0
  59. /package/lib/{services → src/services}/buying-list/definitions.d.ts +0 -0
  60. /package/lib/{services → src/services}/buying-list/definitions.js +0 -0
  61. /package/lib/{services → src/services}/buying-list/index.d.ts +0 -0
  62. /package/lib/{services → src/services}/buying-list/index.js +0 -0
  63. /package/lib/{services → src/services}/cart/definitions.d.ts +0 -0
  64. /package/lib/{services → src/services}/cart/definitions.js +0 -0
  65. /package/lib/{services → src/services}/cart/index.d.ts +0 -0
  66. /package/lib/{services → src/services}/cart/index.js +0 -0
  67. /package/lib/{services → src/services}/commercial-order/definitions.d.ts +0 -0
  68. /package/lib/{services → src/services}/commercial-order/definitions.js +0 -0
  69. /package/lib/{services → src/services}/commercial-order/index.d.ts +0 -0
  70. /package/lib/{services → src/services}/commercial-order/index.js +0 -0
  71. /package/lib/{services → src/services}/custom-field/definitions.d.ts +0 -0
  72. /package/lib/{services → src/services}/custom-field/definitions.js +0 -0
  73. /package/lib/{services → src/services}/custom-field/index.d.ts +0 -0
  74. /package/lib/{services → src/services}/custom-field/index.js +0 -0
  75. /package/lib/{services → src/services}/customer-account/definitions.d.ts +0 -0
  76. /package/lib/{services → src/services}/customer-account/definitions.js +0 -0
  77. /package/lib/{services → src/services}/customer-account/index.d.ts +0 -0
  78. /package/lib/{services → src/services}/customer-account/index.js +0 -0
  79. /package/lib/{services → src/services}/customer-user/definitions.d.ts +0 -0
  80. /package/lib/{services → src/services}/customer-user/definitions.js +0 -0
  81. /package/lib/{services → src/services}/customer-user/index.d.ts +0 -0
  82. /package/lib/{services → src/services}/customer-user/index.js +0 -0
  83. /package/lib/{services → src/services}/incident/definitions.d.ts +0 -0
  84. /package/lib/{services → src/services}/incident/definitions.js +0 -0
  85. /package/lib/{services → src/services}/incident/index.d.ts +0 -0
  86. /package/lib/{services → src/services}/incident/index.js +0 -0
  87. /package/lib/{services → src/services}/logistic-order/definitions.d.ts +0 -0
  88. /package/lib/{services → src/services}/logistic-order/definitions.js +0 -0
  89. /package/lib/{services → src/services}/logistic-order/index.d.ts +0 -0
  90. /package/lib/{services → src/services}/logistic-order/index.js +0 -0
  91. /package/lib/{services → src/services}/navigation-category/definitions.d.ts +0 -0
  92. /package/lib/{services → src/services}/navigation-category/definitions.js +0 -0
  93. /package/lib/{services → src/services}/navigation-category/index.d.ts +0 -0
  94. /package/lib/{services → src/services}/navigation-category/index.js +0 -0
  95. /package/lib/{services → src/services}/product/definitions.d.ts +0 -0
  96. /package/lib/{services → src/services}/product/definitions.js +0 -0
  97. /package/lib/{services → src/services}/product/index.d.ts +0 -0
  98. /package/lib/{services → src/services}/product/index.js +0 -0
  99. /package/lib/{services → src/services}/product-variant/definitions.d.ts +0 -0
  100. /package/lib/{services → src/services}/product-variant/definitions.js +0 -0
  101. /package/lib/{services → src/services}/product-variant/index.d.ts +0 -0
  102. /package/lib/{services → src/services}/product-variant/index.js +0 -0
  103. /package/lib/{services → src/services}/quote/definitions.d.ts +0 -0
  104. /package/lib/{services → src/services}/quote/definitions.js +0 -0
  105. /package/lib/{services → src/services}/quote/index.d.ts +0 -0
  106. /package/lib/{services → src/services}/quote/index.js +0 -0
  107. /package/lib/{services → src/services}/supplier/definitions.d.ts +0 -0
  108. /package/lib/{services → src/services}/supplier/definitions.js +0 -0
  109. /package/lib/{services → src/services}/supplier/index.d.ts +0 -0
  110. /package/lib/{services → src/services}/supplier/index.js +0 -0
  111. /package/lib/{settings → src/settings}/fetch-instance.d.ts +0 -0
@@ -0,0 +1,2 @@
1
+ export function initSentry(clientConfig: any): void;
2
+ export function captureError(error: any, context?: {}): void;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ const Sentry = require("@sentry/node");
3
+ const { nodeProfilingIntegration } = require("@sentry/profiling-node");
4
+ let isSentryInitialized = false;
5
+ const SDK_VERSION = require("../package.json").version;
6
+ function initSentry(clientConfig) {
7
+ const { clientName, env, dsn } = clientConfig;
8
+ if (!clientName || !env || !dsn) {
9
+ console.warn("[Sentry] Missing clientName, env, or DSN. Sentry is not initialized.");
10
+ return;
11
+ }
12
+ if (!isSentryInitialized) {
13
+ Sentry.init({
14
+ dsn,
15
+ environment: `${clientName}-${env}`,
16
+ release: `${clientName}-${env}-${SDK_VERSION}`, // Replace with your SDK version
17
+ integrations: [nodeProfilingIntegration(), Sentry.nativeNodeFetchIntegration()],
18
+ tracesSampleRate: 1.0, // Adjust for production
19
+ profilesSampleRate: 1.0,
20
+ });
21
+ isSentryInitialized = true;
22
+ console.log(`[Sentry] Initialized for ${clientName}-${env}`);
23
+ }
24
+ }
25
+ function captureError(error, context = {}) {
26
+ Sentry.withScope((scope) => {
27
+ Object.entries(context).forEach(([key, value]) => {
28
+ scope.setExtra(key, value);
29
+ });
30
+ Sentry.captureException(error);
31
+ });
32
+ }
33
+ module.exports = { initSentry, captureError };
@@ -1,3 +1,4 @@
1
+ import "../instrument";
1
2
  export declare const DjustSDK: {
2
3
  initialize: (initConfig: {
3
4
  baseUrl: string;
@@ -37,6 +37,7 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
37
37
  };
38
38
  Object.defineProperty(exports, "__esModule", { value: true });
39
39
  exports.DjustSDK = void 0;
40
+ require("../instrument");
40
41
  const AuthServices = __importStar(require("./services/auth"));
41
42
  const BuyingListServices = __importStar(require("./services/buying-list"));
42
43
  const CartServices = __importStar(require("./services/cart"));
@@ -34,31 +34,24 @@ var __importStar = (this && this.__importStar) || (function () {
34
34
  })();
35
35
  Object.defineProperty(exports, "__esModule", { value: true });
36
36
  exports.enhancedFetch = exports.updateConfiguration = exports.initialize = void 0;
37
+ const instrument_1 = require("../../instrument");
37
38
  const qs = __importStar(require("query-string"));
38
- const Sentry = __importStar(require("@sentry/node"));
39
39
  require("isomorphic-fetch");
40
- const SDK_VERSION = require("../package.json").version;
41
40
  let clientConfig = {
42
41
  baseUrl: "",
43
42
  clientId: "",
44
43
  apiKey: "",
45
44
  dsn: "https://39ef5198e24fa0ec7b743c460bd1ca63@o1191347.ingest.us.sentry.io/4508879498575872",
46
45
  };
47
- let isSentryInitialized = false;
46
+ let isSDKInitialized = false;
48
47
  const initialize = (initConfig) => {
49
48
  clientConfig = {
50
49
  ...initConfig,
51
50
  };
52
- // Auto-initialisation de Sentry si `clientName` et `env` sont définis
53
- if (!isSentryInitialized && clientConfig.clientName && clientConfig.env) {
54
- Sentry.init({
55
- dsn: clientConfig.dsn,
56
- environment: `${clientConfig.clientName}-${clientConfig.env}`,
57
- release: `${clientConfig.clientName}-${clientConfig.env}-${SDK_VERSION}`,
58
- tracesSampleRate: 1.0,
59
- });
60
- isSentryInitialized = true;
61
- console.log(`[Djust SDK] Sentry activé pour ${clientConfig.clientName}-${clientConfig.env}-${SDK_VERSION}`);
51
+ if (!isSDKInitialized) {
52
+ (0, instrument_1.initSentry)(clientConfig);
53
+ isSDKInitialized = true;
54
+ console.log("[Djust SDK] Initialized with client config:", clientConfig);
62
55
  }
63
56
  };
64
57
  exports.initialize = initialize;
@@ -106,7 +99,7 @@ const enhancedFetch = async ({ path, method, params = {}, body, }) => {
106
99
  var _a, _b, _c, _d, _e, _f;
107
100
  if (!isClientInitialized(clientConfig)) {
108
101
  const error = new Error('[Djust SDK] SDK not initialized. Provide both client ID and API key via the "initialize" method.');
109
- Sentry.captureException(error);
102
+ (0, instrument_1.captureError)(error);
110
103
  throw error;
111
104
  }
112
105
  const { clientId, apiKey, accessToken, locale, headers } = clientConfig;
@@ -149,16 +142,14 @@ const enhancedFetch = async ({ path, method, params = {}, body, }) => {
149
142
  if (!response.ok) {
150
143
  const errorMessage = await response.text();
151
144
  const error = new Error(`[Djust SDK] Erreur HTTP ${status}: ${errorMessage}`);
152
- Sentry.withScope((scope) => {
153
- scope.setExtra("path", path);
154
- scope.setExtra("method", method);
155
- scope.setExtra("status", status);
156
- scope.setExtra("params", params);
157
- scope.setExtra("body", body);
158
- scope.setExtra("headers", headers);
159
- scope.setExtra("clientName", clientConfig.clientName);
160
- scope.setExtra("env", clientConfig.env);
161
- Sentry.captureException(error);
145
+ (0, instrument_1.captureError)(error, {
146
+ path,
147
+ method,
148
+ params,
149
+ body,
150
+ headers,
151
+ clientName: clientConfig.clientName,
152
+ env: clientConfig.env,
162
153
  });
163
154
  throw error;
164
155
  }
@@ -191,15 +182,14 @@ const enhancedFetch = async ({ path, method, params = {}, body, }) => {
191
182
  return { data, headers, status };
192
183
  }
193
184
  catch (error) {
194
- Sentry.withScope((scope) => {
195
- scope.setExtra("path", path);
196
- scope.setExtra("method", method);
197
- scope.setExtra("params", params);
198
- scope.setExtra("body", body);
199
- scope.setExtra("headers", headers);
200
- scope.setExtra("clientName", clientConfig.clientName);
201
- scope.setExtra("env", clientConfig.env);
202
- Sentry.captureException(error);
185
+ (0, instrument_1.captureError)(error, {
186
+ path,
187
+ method,
188
+ params: JSON.stringify(params, null, 2),
189
+ body: JSON.stringify(body, null, 2),
190
+ headers: headers ? headers : undefined,
191
+ clientName: clientConfig.clientName,
192
+ env: clientConfig.env,
203
193
  });
204
194
  console.error("[Djust SDK] Erreur Fetch: ", error);
205
195
  throw new Error(`[Djust SDK] ${error.message || "Une erreur inconnue est survenue."}`);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@djust-b2b/djust-front-sdk",
3
- "version": "1.22.1",
3
+ "version": "1.22.2",
4
4
  "description": "DJUST Front SDK is a versatile JavaScript Software Development Kit (SDK) ",
5
5
  "main": "lib/index.js",
6
6
  "types": "lib/index.d.ts",
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes
File without changes