@envive-ai/react-hooks 0.3.56 → 0.3.57
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/application/commerce-api.cjs +11 -12
- package/dist/application/commerce-api.js +11 -12
- package/dist/application/logging/index.cjs +13 -0
- package/dist/application/logging/index.d.cts +3 -0
- package/dist/application/logging/index.d.ts +3 -0
- package/dist/application/logging/index.js +4 -0
- package/dist/application/logging/logLevel.cjs +123 -0
- package/dist/application/logging/logLevel.d.cts +47 -0
- package/dist/application/logging/logLevel.d.ts +47 -0
- package/dist/application/logging/logLevel.js +115 -0
- package/dist/application/logging/logger.cjs +6 -1
- package/dist/application/logging/logger.d.cts +13 -0
- package/dist/application/logging/logger.d.ts +13 -0
- package/dist/application/logging/logger.js +7 -1
- package/dist/atoms/app/index.d.cts +7 -7
- package/dist/atoms/app/index.d.ts +7 -7
- package/dist/atoms/app/variant.d.cts +6 -6
- package/dist/atoms/app/variant.d.ts +6 -6
- package/dist/atoms/chat/chatState.d.cts +19 -19
- package/dist/atoms/chat/chatState.d.ts +1 -1
- package/dist/atoms/chat/form.d.cts +2 -2
- package/dist/atoms/chat/form.d.ts +2 -2
- package/dist/atoms/chat/index.d.cts +2 -2
- package/dist/atoms/chat/lastMessage.d.cts +2 -2
- package/dist/atoms/chat/lastMessage.d.ts +2 -2
- package/dist/atoms/chat/messageQueue.d.cts +6 -6
- package/dist/atoms/chat/messageQueue.d.ts +6 -6
- package/dist/atoms/chat/performanceMetrics.d.cts +6 -6
- package/dist/atoms/chat/performanceMetrics.d.ts +6 -6
- package/dist/atoms/chat/renderedWidgetRefs.d.cts +2 -2
- package/dist/atoms/chat/renderedWidgetRefs.d.ts +2 -2
- package/dist/atoms/chat/replies.d.cts +3 -3
- package/dist/atoms/chat/suggestions.d.cts +2 -2
- package/dist/atoms/chat/suggestions.d.ts +2 -2
- package/dist/atoms/envive/enviveConfig.d.cts +14 -14
- package/dist/atoms/envive/enviveConfig.d.ts +14 -14
- package/dist/atoms/globalSearch/globalSearch.d.cts +5 -5
- package/dist/atoms/globalSearch/globalSearch.d.ts +5 -5
- package/dist/atoms/org/customerService.d.cts +6 -6
- package/dist/atoms/org/customerService.d.ts +6 -6
- package/dist/atoms/org/graphqlConfig.d.cts +4 -4
- package/dist/atoms/org/graphqlConfig.d.ts +5 -5
- package/dist/atoms/org/newOrgConfigAtom.d.cts +2 -2
- package/dist/atoms/org/newOrgConfigAtom.d.ts +3 -3
- package/dist/atoms/org/orgAnalyticsConfig.d.ts +5 -5
- package/dist/atoms/search/chatSearch.d.cts +17 -17
- package/dist/atoms/search/chatSearch.d.ts +17 -17
- package/dist/atoms/search/searchAPI.d.cts +13 -13
- package/dist/atoms/search/types.d.ts +1 -1
- package/dist/atoms/widget/chatPreviewLoading.d.cts +2 -2
- package/dist/atoms/widget/chatPreviewLoading.d.ts +2 -2
- package/dist/contexts/salesAgentContext/salesAgentService.cjs +2 -2
- package/dist/contexts/salesAgentContext/salesAgentService.js +2 -2
- package/dist/contexts/systemSettingsContext/systemSettingsContext.d.ts +2 -2
- package/dist/contexts/types.d.cts +1 -1
- package/dist/contexts/types.d.ts +1 -1
- package/dist/contexts/typesV3.d.cts +1 -1
- package/dist/contexts/typesV3.d.ts +1 -1
- package/dist/hooks/ChatToggle/useChatToggle.cjs +10 -8
- package/dist/hooks/ChatToggle/useChatToggle.d.cts +4 -3
- package/dist/hooks/ChatToggle/useChatToggle.d.ts +4 -3
- package/dist/hooks/ChatToggle/useChatToggle.js +11 -9
- package/dist/hooks/GrabAndScroll/useGrabAndScroll.d.ts +2 -2
- package/dist/hooks/Intersection/useIntersection.cjs +7 -5
- package/dist/hooks/Intersection/useIntersection.js +7 -5
- package/dist/hooks/Search/useSearchInput.cjs +1 -1
- package/dist/hooks/Search/useSearchInput.js +1 -1
- package/dist/hooks/ShopifyUrlOperations/useShopifyUrlOperations.d.cts +2 -2
- package/dist/hooks/ShopifyUrlOperations/useShopifyUrlOperations.d.ts +2 -2
- package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.cjs +8 -6
- package/dist/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.js +8 -6
- package/dist/hooks/WidgetInteraction/types.cjs +40 -1
- package/dist/hooks/WidgetInteraction/types.d.cts +16 -2
- package/dist/hooks/WidgetInteraction/types.d.ts +16 -2
- package/dist/hooks/WidgetInteraction/types.js +41 -2
- package/dist/hooks/utils.d.cts +1 -1
- package/dist/hooks/utils.d.ts +1 -1
- package/dist/services/amplitudeService/amplitudeService.cjs +14 -5
- package/dist/services/amplitudeService/amplitudeService.js +14 -5
- package/package.json +5 -1
- package/src/application/__tests__/commerceApiStreaming.test.ts +171 -0
- package/src/application/commerce-api.ts +21 -21
- package/src/application/logging/__tests__/logger.test.ts +159 -0
- package/src/application/logging/index.ts +12 -0
- package/src/application/logging/logLevel.ts +162 -0
- package/src/application/logging/logger.ts +13 -0
- package/src/contexts/salesAgentContext/salesAgentService.ts +1 -1
- package/src/contexts/userIdentityContext/__tests__/userIdentityContext.test.tsx +4 -5
- package/src/hooks/ChatToggle/__tests__/useChatToggle.test.ts +273 -0
- package/src/hooks/ChatToggle/useChatToggle.ts +39 -12
- package/src/hooks/Intersection/useIntersection.ts +7 -4
- package/src/hooks/TrackComponentVisibleEvent/useTrackComponentVisibleEvent.ts +8 -5
- package/src/hooks/WidgetInteraction/__tests__/chatTriggerWidget.test.ts +51 -0
- package/src/hooks/WidgetInteraction/types.ts +53 -0
- package/src/services/amplitudeService/__tests__/amplitudeService.test.ts +76 -0
- package/src/services/amplitudeService/amplitudeService.ts +37 -5
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
|
|
2
|
+
//#region src/application/logging/logLevel.ts
|
|
3
|
+
/**
|
|
4
|
+
* Console log-level gate shared by every package's Logger.
|
|
5
|
+
*
|
|
6
|
+
* Debug and info are muted by default: a single merchant page load produces
|
|
7
|
+
* ~950 debug lines (the bulk of them from featureFlagService checking gates on
|
|
8
|
+
* every render), which is unusable noise on a customer's site.
|
|
9
|
+
*
|
|
10
|
+
* To turn logging back on, in priority order:
|
|
11
|
+
*
|
|
12
|
+
* 1. Query param — `?envive_log_level=debug`
|
|
13
|
+
* The support lever. Wins over everything else so logging can always be
|
|
14
|
+
* re-enabled on a live merchant page, even if the embedding page pinned a
|
|
15
|
+
* level at bootstrap. The chosen level is persisted to localStorage so it
|
|
16
|
+
* survives navigation (a support session spans more than one page view);
|
|
17
|
+
* clear it with `?envive_log_level=warn` or by removing the stored key.
|
|
18
|
+
*
|
|
19
|
+
* 2. `setLogLevel('debug')` — programmatic, e.g. bootstrap code or tests.
|
|
20
|
+
*
|
|
21
|
+
* 3. `window._envive.logLevel = 'debug'` (or `window._spiffy.logLevel`)
|
|
22
|
+
* Read on every call, so it can be flipped from the browser console
|
|
23
|
+
* mid-session without a reload.
|
|
24
|
+
*
|
|
25
|
+
* 4. `localStorage['envive-log-level']` — sticky per browser.
|
|
26
|
+
*
|
|
27
|
+
* 5. Default: 'warn'.
|
|
28
|
+
*
|
|
29
|
+
* Levels, least to most verbose: silent < error < warn < info < debug.
|
|
30
|
+
* A message emits when its own level is at or below the resolved level, so
|
|
31
|
+
* 'silent' mutes everything including errors.
|
|
32
|
+
*
|
|
33
|
+
* Kept free of React imports (like featureFlagService): the injection bundle
|
|
34
|
+
* logs from its pre-config code path, before it decides whether to load the
|
|
35
|
+
* React app, and pulling React in here would put it on the eager chunk.
|
|
36
|
+
*/
|
|
37
|
+
const LOG_LEVELS = [
|
|
38
|
+
"silent",
|
|
39
|
+
"error",
|
|
40
|
+
"warn",
|
|
41
|
+
"info",
|
|
42
|
+
"debug"
|
|
43
|
+
];
|
|
44
|
+
const LEVEL_SEVERITY = {
|
|
45
|
+
silent: 0,
|
|
46
|
+
error: 1,
|
|
47
|
+
warn: 2,
|
|
48
|
+
info: 3,
|
|
49
|
+
debug: 4
|
|
50
|
+
};
|
|
51
|
+
const DEFAULT_LOG_LEVEL = "warn";
|
|
52
|
+
const LOG_LEVEL_QUERY_PARAM = "envive_log_level";
|
|
53
|
+
const LOG_LEVEL_STORAGE_KEY = "envive-log-level";
|
|
54
|
+
const asLogLevel = (value) => {
|
|
55
|
+
if (typeof value !== "string") return;
|
|
56
|
+
const normalized = value.toLowerCase();
|
|
57
|
+
return LOG_LEVELS.includes(normalized) ? normalized : void 0;
|
|
58
|
+
};
|
|
59
|
+
let programmaticLevel;
|
|
60
|
+
let cachedQueryLevel;
|
|
61
|
+
let cachedStoredLevel;
|
|
62
|
+
const storeLevel = (level) => {
|
|
63
|
+
if (typeof window === "undefined" || typeof window.localStorage === "undefined") return;
|
|
64
|
+
try {
|
|
65
|
+
window.localStorage.setItem(LOG_LEVEL_STORAGE_KEY, level);
|
|
66
|
+
} catch {}
|
|
67
|
+
};
|
|
68
|
+
const readQueryLevel = () => {
|
|
69
|
+
if (typeof window === "undefined") return;
|
|
70
|
+
const url = window.location?.href ?? "";
|
|
71
|
+
if (!url.includes("?")) return;
|
|
72
|
+
try {
|
|
73
|
+
return asLogLevel(new URLSearchParams(new URL(url).search).get(LOG_LEVEL_QUERY_PARAM));
|
|
74
|
+
} catch {
|
|
75
|
+
return;
|
|
76
|
+
}
|
|
77
|
+
};
|
|
78
|
+
const queryLevel = () => {
|
|
79
|
+
if (cachedQueryLevel === void 0) {
|
|
80
|
+
const level = readQueryLevel();
|
|
81
|
+
if (level) storeLevel(level);
|
|
82
|
+
cachedQueryLevel = level ?? null;
|
|
83
|
+
}
|
|
84
|
+
return cachedQueryLevel ?? void 0;
|
|
85
|
+
};
|
|
86
|
+
const storedLevel = () => {
|
|
87
|
+
if (cachedStoredLevel === void 0) {
|
|
88
|
+
let level;
|
|
89
|
+
if (typeof window !== "undefined" && typeof window.localStorage !== "undefined") try {
|
|
90
|
+
level = asLogLevel(window.localStorage.getItem(LOG_LEVEL_STORAGE_KEY));
|
|
91
|
+
} catch {
|
|
92
|
+
level = void 0;
|
|
93
|
+
}
|
|
94
|
+
cachedStoredLevel = level ?? null;
|
|
95
|
+
}
|
|
96
|
+
return cachedStoredLevel ?? void 0;
|
|
97
|
+
};
|
|
98
|
+
const windowLevel = () => {
|
|
99
|
+
if (typeof window === "undefined") return;
|
|
100
|
+
const windowOverride = window;
|
|
101
|
+
return asLogLevel(windowOverride._envive?.logLevel ?? windowOverride._spiffy?.logLevel);
|
|
102
|
+
};
|
|
103
|
+
const getLogLevel = () => queryLevel() ?? programmaticLevel ?? windowLevel() ?? storedLevel() ?? DEFAULT_LOG_LEVEL;
|
|
104
|
+
const setLogLevel = (level) => {
|
|
105
|
+
programmaticLevel = level;
|
|
106
|
+
};
|
|
107
|
+
const isLevelEnabled = (level) => LEVEL_SEVERITY[getLogLevel()] >= LEVEL_SEVERITY[level];
|
|
108
|
+
const resetLogLevelForTesting = () => {
|
|
109
|
+
programmaticLevel = void 0;
|
|
110
|
+
cachedQueryLevel = void 0;
|
|
111
|
+
cachedStoredLevel = void 0;
|
|
112
|
+
};
|
|
113
|
+
|
|
114
|
+
//#endregion
|
|
115
|
+
exports.DEFAULT_LOG_LEVEL = DEFAULT_LOG_LEVEL;
|
|
116
|
+
exports.LOG_LEVELS = LOG_LEVELS;
|
|
117
|
+
exports.LOG_LEVEL_QUERY_PARAM = LOG_LEVEL_QUERY_PARAM;
|
|
118
|
+
exports.LOG_LEVEL_STORAGE_KEY = LOG_LEVEL_STORAGE_KEY;
|
|
119
|
+
exports.getLogLevel = getLogLevel;
|
|
120
|
+
exports.isLevelEnabled = isLevelEnabled;
|
|
121
|
+
exports.resetLogLevelForTesting = resetLogLevelForTesting;
|
|
122
|
+
exports.setLogLevel = setLogLevel;
|
|
123
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nTGV2ZWwuY2pzIiwibmFtZXMiOlsiTEVWRUxfU0VWRVJJVFk6IFJlY29yZDxMb2dMZXZlbCwgbnVtYmVyPiIsIkRFRkFVTFRfTE9HX0xFVkVMOiBMb2dMZXZlbCIsInByb2dyYW1tYXRpY0xldmVsOiBMb2dMZXZlbCB8IHVuZGVmaW5lZCIsImNhY2hlZFF1ZXJ5TGV2ZWw6IExvZ0xldmVsIHwgbnVsbCB8IHVuZGVmaW5lZCIsImNhY2hlZFN0b3JlZExldmVsOiBMb2dMZXZlbCB8IG51bGwgfCB1bmRlZmluZWQiLCJsZXZlbDogTG9nTGV2ZWwgfCB1bmRlZmluZWQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwbGljYXRpb24vbG9nZ2luZy9sb2dMZXZlbC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnNvbGUgbG9nLWxldmVsIGdhdGUgc2hhcmVkIGJ5IGV2ZXJ5IHBhY2thZ2UncyBMb2dnZXIuXG4gKlxuICogRGVidWcgYW5kIGluZm8gYXJlIG11dGVkIGJ5IGRlZmF1bHQ6IGEgc2luZ2xlIG1lcmNoYW50IHBhZ2UgbG9hZCBwcm9kdWNlc1xuICogfjk1MCBkZWJ1ZyBsaW5lcyAodGhlIGJ1bGsgb2YgdGhlbSBmcm9tIGZlYXR1cmVGbGFnU2VydmljZSBjaGVja2luZyBnYXRlcyBvblxuICogZXZlcnkgcmVuZGVyKSwgd2hpY2ggaXMgdW51c2FibGUgbm9pc2Ugb24gYSBjdXN0b21lcidzIHNpdGUuXG4gKlxuICogVG8gdHVybiBsb2dnaW5nIGJhY2sgb24sIGluIHByaW9yaXR5IG9yZGVyOlxuICpcbiAqICAgMS4gUXVlcnkgcGFyYW0g4oCUIGA/ZW52aXZlX2xvZ19sZXZlbD1kZWJ1Z2BcbiAqICAgICAgVGhlIHN1cHBvcnQgbGV2ZXIuIFdpbnMgb3ZlciBldmVyeXRoaW5nIGVsc2Ugc28gbG9nZ2luZyBjYW4gYWx3YXlzIGJlXG4gKiAgICAgIHJlLWVuYWJsZWQgb24gYSBsaXZlIG1lcmNoYW50IHBhZ2UsIGV2ZW4gaWYgdGhlIGVtYmVkZGluZyBwYWdlIHBpbm5lZCBhXG4gKiAgICAgIGxldmVsIGF0IGJvb3RzdHJhcC4gVGhlIGNob3NlbiBsZXZlbCBpcyBwZXJzaXN0ZWQgdG8gbG9jYWxTdG9yYWdlIHNvIGl0XG4gKiAgICAgIHN1cnZpdmVzIG5hdmlnYXRpb24gKGEgc3VwcG9ydCBzZXNzaW9uIHNwYW5zIG1vcmUgdGhhbiBvbmUgcGFnZSB2aWV3KTtcbiAqICAgICAgY2xlYXIgaXQgd2l0aCBgP2Vudml2ZV9sb2dfbGV2ZWw9d2FybmAgb3IgYnkgcmVtb3ZpbmcgdGhlIHN0b3JlZCBrZXkuXG4gKlxuICogICAyLiBgc2V0TG9nTGV2ZWwoJ2RlYnVnJylgIOKAlCBwcm9ncmFtbWF0aWMsIGUuZy4gYm9vdHN0cmFwIGNvZGUgb3IgdGVzdHMuXG4gKlxuICogICAzLiBgd2luZG93Ll9lbnZpdmUubG9nTGV2ZWwgPSAnZGVidWcnYCAob3IgYHdpbmRvdy5fc3BpZmZ5LmxvZ0xldmVsYClcbiAqICAgICAgUmVhZCBvbiBldmVyeSBjYWxsLCBzbyBpdCBjYW4gYmUgZmxpcHBlZCBmcm9tIHRoZSBicm93c2VyIGNvbnNvbGVcbiAqICAgICAgbWlkLXNlc3Npb24gd2l0aG91dCBhIHJlbG9hZC5cbiAqXG4gKiAgIDQuIGBsb2NhbFN0b3JhZ2VbJ2Vudml2ZS1sb2ctbGV2ZWwnXWAg4oCUIHN0aWNreSBwZXIgYnJvd3Nlci5cbiAqXG4gKiAgIDUuIERlZmF1bHQ6ICd3YXJuJy5cbiAqXG4gKiBMZXZlbHMsIGxlYXN0IHRvIG1vc3QgdmVyYm9zZTogc2lsZW50IDwgZXJyb3IgPCB3YXJuIDwgaW5mbyA8IGRlYnVnLlxuICogQSBtZXNzYWdlIGVtaXRzIHdoZW4gaXRzIG93biBsZXZlbCBpcyBhdCBvciBiZWxvdyB0aGUgcmVzb2x2ZWQgbGV2ZWwsIHNvXG4gKiAnc2lsZW50JyBtdXRlcyBldmVyeXRoaW5nIGluY2x1ZGluZyBlcnJvcnMuXG4gKlxuICogS2VwdCBmcmVlIG9mIFJlYWN0IGltcG9ydHMgKGxpa2UgZmVhdHVyZUZsYWdTZXJ2aWNlKTogdGhlIGluamVjdGlvbiBidW5kbGVcbiAqIGxvZ3MgZnJvbSBpdHMgcHJlLWNvbmZpZyBjb2RlIHBhdGgsIGJlZm9yZSBpdCBkZWNpZGVzIHdoZXRoZXIgdG8gbG9hZCB0aGVcbiAqIFJlYWN0IGFwcCwgYW5kIHB1bGxpbmcgUmVhY3QgaW4gaGVyZSB3b3VsZCBwdXQgaXQgb24gdGhlIGVhZ2VyIGNodW5rLlxuICovXG5cbmV4cG9ydCBjb25zdCBMT0dfTEVWRUxTID0gWydzaWxlbnQnLCAnZXJyb3InLCAnd2FybicsICdpbmZvJywgJ2RlYnVnJ10gYXMgY29uc3Q7XG5cbmV4cG9ydCB0eXBlIExvZ0xldmVsID0gKHR5cGVvZiBMT0dfTEVWRUxTKVtudW1iZXJdO1xuXG5jb25zdCBMRVZFTF9TRVZFUklUWTogUmVjb3JkPExvZ0xldmVsLCBudW1iZXI+ID0ge1xuICBzaWxlbnQ6IDAsXG4gIGVycm9yOiAxLFxuICB3YXJuOiAyLFxuICBpbmZvOiAzLFxuICBkZWJ1ZzogNCxcbn07XG5cbi8qIEVycm9ycyBhbmQgd2FybmluZ3Mgb25seS4gbG9nRGVidWcvbG9nSW5mbyBtYWtlIHVwIHRoZSBidWxrIG9mIHRoZSBjYWxsIHNpdGVzXG4gKiBpbiB0aGlzIHJlcG8gYW5kIHVzZWQgdG8gcHJpbnQgb24gZXZlcnkgbWVyY2hhbnQgcGFnZSBsb2FkLiAqL1xuZXhwb3J0IGNvbnN0IERFRkFVTFRfTE9HX0xFVkVMOiBMb2dMZXZlbCA9ICd3YXJuJztcblxuZXhwb3J0IGNvbnN0IExPR19MRVZFTF9RVUVSWV9QQVJBTSA9ICdlbnZpdmVfbG9nX2xldmVsJztcbmV4cG9ydCBjb25zdCBMT0dfTEVWRUxfU1RPUkFHRV9LRVkgPSAnZW52aXZlLWxvZy1sZXZlbCc7XG5cbmNvbnN0IGFzTG9nTGV2ZWwgPSAodmFsdWU6IHVua25vd24pOiBMb2dMZXZlbCB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmICh0eXBlb2YgdmFsdWUgIT09ICdzdHJpbmcnKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCBub3JtYWxpemVkID0gdmFsdWUudG9Mb3dlckNhc2UoKTtcbiAgcmV0dXJuIChMT0dfTEVWRUxTIGFzIHJlYWRvbmx5IHN0cmluZ1tdKS5pbmNsdWRlcyhub3JtYWxpemVkKVxuICAgID8gKG5vcm1hbGl6ZWQgYXMgTG9nTGV2ZWwpXG4gICAgOiB1bmRlZmluZWQ7XG59O1xuXG4vKiBTZXQgYnkgc2V0TG9nTGV2ZWwoKS4gT3ZlcnJpZGVzIHdpbmRvdy9zdG9yZWQvZGVmYXVsdCwgYnV0IGRlbGliZXJhdGVseSBub3RcbiAqIHRoZSBxdWVyeSBwYXJhbSwgc28gc3VwcG9ydCBjYW4gYWx3YXlzIHR1cm4gbG9nZ2luZyBiYWNrIG9uIGluIGEgbGl2ZSBzZXNzaW9uXG4gKiBldmVuIGlmIHRoZSBlbWJlZGRpbmcgcGFnZSBwaW5uZWQgYSBsZXZlbCBhdCBib290c3RyYXAuICovXG5sZXQgcHJvZ3JhbW1hdGljTGV2ZWw6IExvZ0xldmVsIHwgdW5kZWZpbmVkO1xuXG4vKiBUaGUgcXVlcnkgcGFyYW0gYW5kIGxvY2FsU3RvcmFnZSBjYW5ub3QgY2hhbmdlIHdpdGhvdXQgYSBuYXZpZ2F0aW9uLCBzbyBib3RoXG4gKiBhcmUgcmVhZCBvbmNlLiBgdW5kZWZpbmVkYCBtZWFucyBcIm5vdCByZXNvbHZlZCB5ZXRcIiBhbmQgYG51bGxgIGNhY2hlcyBhIG1pc3MsXG4gKiBrZWVwaW5nIHJlcGVhdCBsb29rdXBzIG9mZiB0aGUgbG9nZ2luZyBob3QgcGF0aC4gKi9cbmxldCBjYWNoZWRRdWVyeUxldmVsOiBMb2dMZXZlbCB8IG51bGwgfCB1bmRlZmluZWQ7XG5sZXQgY2FjaGVkU3RvcmVkTGV2ZWw6IExvZ0xldmVsIHwgbnVsbCB8IHVuZGVmaW5lZDtcblxuLyogUGVyc2lzdHMgdGhlIGxldmVsIHNvIGl0IHN1cnZpdmVzIG5hdmlnYXRpb24g4oCUIGEgc3VwcG9ydCBzZXNzaW9uIHNwYW5zIG1vcmVcbiAqIHRoYW4gb25lIHBhZ2Ugdmlldy4gKi9cbmNvbnN0IHN0b3JlTGV2ZWwgPSAobGV2ZWw6IExvZ0xldmVsKTogdm9pZCA9PiB7XG4gIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJyB8fCB0eXBlb2Ygd2luZG93LmxvY2FsU3RvcmFnZSA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICByZXR1cm47XG4gIH1cbiAgdHJ5IHtcbiAgICB3aW5kb3cubG9jYWxTdG9yYWdlLnNldEl0ZW0oTE9HX0xFVkVMX1NUT1JBR0VfS0VZLCBsZXZlbCk7XG4gIH0gY2F0Y2gge1xuICAgIC8vIFN0b3JhZ2UgY2FuIGJlIGZ1bGwgb3IgYmxvY2tlZDsgdGhlIGxldmVsIHN0aWxsIGFwcGxpZXMgdG8gdGhpcyBwYWdlLlxuICB9XG59O1xuXG5jb25zdCByZWFkUXVlcnlMZXZlbCA9ICgpOiBMb2dMZXZlbCB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmICh0eXBlb2Ygd2luZG93ID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybiB1bmRlZmluZWQ7XG4gIH1cbiAgY29uc3QgdXJsID0gd2luZG93LmxvY2F0aW9uPy5ocmVmID8/ICcnO1xuICBpZiAoIXVybC5pbmNsdWRlcygnPycpKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICB0cnkge1xuICAgIGNvbnN0IHBhcmFtcyA9IG5ldyBVUkxTZWFyY2hQYXJhbXMobmV3IFVSTCh1cmwpLnNlYXJjaCk7XG4gICAgcmV0dXJuIGFzTG9nTGV2ZWwocGFyYW1zLmdldChMT0dfTEVWRUxfUVVFUllfUEFSQU0pKTtcbiAgfSBjYXRjaCB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxufTtcblxuY29uc3QgcXVlcnlMZXZlbCA9ICgpOiBMb2dMZXZlbCB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmIChjYWNoZWRRdWVyeUxldmVsID09PSB1bmRlZmluZWQpIHtcbiAgICBjb25zdCBsZXZlbCA9IHJlYWRRdWVyeUxldmVsKCk7XG4gICAgaWYgKGxldmVsKSB7XG4gICAgICBzdG9yZUxldmVsKGxldmVsKTtcbiAgICB9XG4gICAgY2FjaGVkUXVlcnlMZXZlbCA9IGxldmVsID8/IG51bGw7XG4gIH1cbiAgcmV0dXJuIGNhY2hlZFF1ZXJ5TGV2ZWwgPz8gdW5kZWZpbmVkO1xufTtcblxuY29uc3Qgc3RvcmVkTGV2ZWwgPSAoKTogTG9nTGV2ZWwgfCB1bmRlZmluZWQgPT4ge1xuICBpZiAoY2FjaGVkU3RvcmVkTGV2ZWwgPT09IHVuZGVmaW5lZCkge1xuICAgIGxldCBsZXZlbDogTG9nTGV2ZWwgfCB1bmRlZmluZWQ7XG4gICAgaWYgKHR5cGVvZiB3aW5kb3cgIT09ICd1bmRlZmluZWQnICYmIHR5cGVvZiB3aW5kb3cubG9jYWxTdG9yYWdlICE9PSAndW5kZWZpbmVkJykge1xuICAgICAgdHJ5IHtcbiAgICAgICAgbGV2ZWwgPSBhc0xvZ0xldmVsKHdpbmRvdy5sb2NhbFN0b3JhZ2UuZ2V0SXRlbShMT0dfTEVWRUxfU1RPUkFHRV9LRVkpKTtcbiAgICAgIH0gY2F0Y2gge1xuICAgICAgICBsZXZlbCA9IHVuZGVmaW5lZDtcbiAgICAgIH1cbiAgICB9XG4gICAgY2FjaGVkU3RvcmVkTGV2ZWwgPSBsZXZlbCA/PyBudWxsO1xuICB9XG4gIHJldHVybiBjYWNoZWRTdG9yZWRMZXZlbCA/PyB1bmRlZmluZWQ7XG59O1xuXG4vKiBSZWFkIG9uIGV2ZXJ5IGNhbGwsIHNvIGl0IGNhbiBiZSBmbGlwcGVkIGZyb20gdGhlIGJyb3dzZXIgY29uc29sZSBtaWQtc2Vzc2lvblxuICogd2l0aG91dCBhIHJlbG9hZC4gKi9cbmNvbnN0IHdpbmRvd0xldmVsID0gKCk6IExvZ0xldmVsIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCB3aW5kb3dPdmVycmlkZSA9IHdpbmRvdyBhcyBXaW5kb3cgJiB7XG4gICAgX2Vudml2ZT86IHsgbG9nTGV2ZWw/OiBzdHJpbmcgfTtcbiAgICBfc3BpZmZ5PzogeyBsb2dMZXZlbD86IHN0cmluZyB9O1xuICB9O1xuICByZXR1cm4gYXNMb2dMZXZlbCh3aW5kb3dPdmVycmlkZS5fZW52aXZlPy5sb2dMZXZlbCA/PyB3aW5kb3dPdmVycmlkZS5fc3BpZmZ5Py5sb2dMZXZlbCk7XG59O1xuXG4vKiBSZXNvbHV0aW9uIG9yZGVyIG1pcnJvcnMgZmVhdHVyZUZsYWdTZXJ2aWNlJ3Mgb3ZlcnJpZGUgY2hhaW46IHF1ZXJ5IHBhcmFtID5cbiAqIHNldExvZ0xldmVsKCkgPiB3aW5kb3cuX2Vudml2ZS5sb2dMZXZlbCA+IGxvY2FsU3RvcmFnZSA+IGRlZmF1bHQuICovXG5leHBvcnQgY29uc3QgZ2V0TG9nTGV2ZWwgPSAoKTogTG9nTGV2ZWwgPT5cbiAgcXVlcnlMZXZlbCgpID8/IHByb2dyYW1tYXRpY0xldmVsID8/IHdpbmRvd0xldmVsKCkgPz8gc3RvcmVkTGV2ZWwoKSA/PyBERUZBVUxUX0xPR19MRVZFTDtcblxuLyogUGFzcyB1bmRlZmluZWQgdG8gY2xlYXIgdGhlIG92ZXJyaWRlIGFuZCBmYWxsIGJhY2sgdG8gdGhlIGxldmVycyBhYm92ZS4gKi9cbmV4cG9ydCBjb25zdCBzZXRMb2dMZXZlbCA9IChsZXZlbDogTG9nTGV2ZWwgfCB1bmRlZmluZWQpOiB2b2lkID0+IHtcbiAgcHJvZ3JhbW1hdGljTGV2ZWwgPSBsZXZlbDtcbn07XG5cbmV4cG9ydCBjb25zdCBpc0xldmVsRW5hYmxlZCA9IChsZXZlbDogRXhjbHVkZTxMb2dMZXZlbCwgJ3NpbGVudCc+KTogYm9vbGVhbiA9PlxuICBMRVZFTF9TRVZFUklUWVtnZXRMb2dMZXZlbCgpXSA+PSBMRVZFTF9TRVZFUklUWVtsZXZlbF07XG5cbi8qIFRlc3Qgc2VhbTogZHJvcHMgdGhlIG1lbW9pemVkIHF1ZXJ5LXBhcmFtIGFuZCBsb2NhbFN0b3JhZ2UgcmVzb2x1dGlvbi4gKi9cbmV4cG9ydCBjb25zdCByZXNldExvZ0xldmVsRm9yVGVzdGluZyA9ICgpOiB2b2lkID0+IHtcbiAgcHJvZ3JhbW1hdGljTGV2ZWwgPSB1bmRlZmluZWQ7XG4gIGNhY2hlZFF1ZXJ5TGV2ZWwgPSB1bmRlZmluZWQ7XG4gIGNhY2hlZFN0b3JlZExldmVsID0gdW5kZWZpbmVkO1xufTtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0FBbUNBLE1BQWEsYUFBYTtDQUFDO0NBQVU7Q0FBUztDQUFRO0NBQVE7Q0FBUTtBQUl0RSxNQUFNQSxpQkFBMkM7Q0FDL0MsUUFBUTtDQUNSLE9BQU87Q0FDUCxNQUFNO0NBQ04sTUFBTTtDQUNOLE9BQU87Q0FDUjtBQUlELE1BQWFDLG9CQUE4QjtBQUUzQyxNQUFhLHdCQUF3QjtBQUNyQyxNQUFhLHdCQUF3QjtBQUVyQyxNQUFNLGNBQWMsVUFBeUM7QUFDM0QsS0FBSSxPQUFPLFVBQVUsU0FDbkI7Q0FFRixNQUFNLGFBQWEsTUFBTSxhQUFhO0FBQ3RDLFFBQVEsV0FBaUMsU0FBUyxXQUFXLEdBQ3hELGFBQ0Q7O0FBTU4sSUFBSUM7QUFLSixJQUFJQztBQUNKLElBQUlDO0FBSUosTUFBTSxjQUFjLFVBQTBCO0FBQzVDLEtBQUksT0FBTyxXQUFXLGVBQWUsT0FBTyxPQUFPLGlCQUFpQixZQUNsRTtBQUVGLEtBQUk7QUFDRixTQUFPLGFBQWEsUUFBUSx1QkFBdUIsTUFBTTtTQUNuRDs7QUFLVixNQUFNLHVCQUE2QztBQUNqRCxLQUFJLE9BQU8sV0FBVyxZQUNwQjtDQUVGLE1BQU0sTUFBTSxPQUFPLFVBQVUsUUFBUTtBQUNyQyxLQUFJLENBQUMsSUFBSSxTQUFTLElBQUksQ0FDcEI7QUFFRixLQUFJO0FBRUYsU0FBTyxXQURRLElBQUksZ0JBQWdCLElBQUksSUFBSSxJQUFJLENBQUMsT0FBTyxDQUM5QixJQUFJLHNCQUFzQixDQUFDO1NBQzlDO0FBQ047OztBQUlKLE1BQU0sbUJBQXlDO0FBQzdDLEtBQUkscUJBQXFCLFFBQVc7RUFDbEMsTUFBTSxRQUFRLGdCQUFnQjtBQUM5QixNQUFJLE1BQ0YsWUFBVyxNQUFNO0FBRW5CLHFCQUFtQixTQUFTOztBQUU5QixRQUFPLG9CQUFvQjs7QUFHN0IsTUFBTSxvQkFBMEM7QUFDOUMsS0FBSSxzQkFBc0IsUUFBVztFQUNuQyxJQUFJQztBQUNKLE1BQUksT0FBTyxXQUFXLGVBQWUsT0FBTyxPQUFPLGlCQUFpQixZQUNsRSxLQUFJO0FBQ0YsV0FBUSxXQUFXLE9BQU8sYUFBYSxRQUFRLHNCQUFzQixDQUFDO1VBQ2hFO0FBQ04sV0FBUTs7QUFHWixzQkFBb0IsU0FBUzs7QUFFL0IsUUFBTyxxQkFBcUI7O0FBSzlCLE1BQU0sb0JBQTBDO0FBQzlDLEtBQUksT0FBTyxXQUFXLFlBQ3BCO0NBRUYsTUFBTSxpQkFBaUI7QUFJdkIsUUFBTyxXQUFXLGVBQWUsU0FBUyxZQUFZLGVBQWUsU0FBUyxTQUFTOztBQUt6RixNQUFhLG9CQUNYLFlBQVksSUFBSSxxQkFBcUIsYUFBYSxJQUFJLGFBQWEsSUFBSTtBQUd6RSxNQUFhLGVBQWUsVUFBc0M7QUFDaEUscUJBQW9COztBQUd0QixNQUFhLGtCQUFrQixVQUM3QixlQUFlLGFBQWEsS0FBSyxlQUFlO0FBR2xELE1BQWEsZ0NBQXNDO0FBQ2pELHFCQUFvQjtBQUNwQixvQkFBbUI7QUFDbkIscUJBQW9CIn0=
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
//#region src/application/logging/logLevel.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Console log-level gate shared by every package's Logger.
|
|
4
|
+
*
|
|
5
|
+
* Debug and info are muted by default: a single merchant page load produces
|
|
6
|
+
* ~950 debug lines (the bulk of them from featureFlagService checking gates on
|
|
7
|
+
* every render), which is unusable noise on a customer's site.
|
|
8
|
+
*
|
|
9
|
+
* To turn logging back on, in priority order:
|
|
10
|
+
*
|
|
11
|
+
* 1. Query param — `?envive_log_level=debug`
|
|
12
|
+
* The support lever. Wins over everything else so logging can always be
|
|
13
|
+
* re-enabled on a live merchant page, even if the embedding page pinned a
|
|
14
|
+
* level at bootstrap. The chosen level is persisted to localStorage so it
|
|
15
|
+
* survives navigation (a support session spans more than one page view);
|
|
16
|
+
* clear it with `?envive_log_level=warn` or by removing the stored key.
|
|
17
|
+
*
|
|
18
|
+
* 2. `setLogLevel('debug')` — programmatic, e.g. bootstrap code or tests.
|
|
19
|
+
*
|
|
20
|
+
* 3. `window._envive.logLevel = 'debug'` (or `window._spiffy.logLevel`)
|
|
21
|
+
* Read on every call, so it can be flipped from the browser console
|
|
22
|
+
* mid-session without a reload.
|
|
23
|
+
*
|
|
24
|
+
* 4. `localStorage['envive-log-level']` — sticky per browser.
|
|
25
|
+
*
|
|
26
|
+
* 5. Default: 'warn'.
|
|
27
|
+
*
|
|
28
|
+
* Levels, least to most verbose: silent < error < warn < info < debug.
|
|
29
|
+
* A message emits when its own level is at or below the resolved level, so
|
|
30
|
+
* 'silent' mutes everything including errors.
|
|
31
|
+
*
|
|
32
|
+
* Kept free of React imports (like featureFlagService): the injection bundle
|
|
33
|
+
* logs from its pre-config code path, before it decides whether to load the
|
|
34
|
+
* React app, and pulling React in here would put it on the eager chunk.
|
|
35
|
+
*/
|
|
36
|
+
declare const LOG_LEVELS: readonly ["silent", "error", "warn", "info", "debug"];
|
|
37
|
+
type LogLevel = (typeof LOG_LEVELS)[number];
|
|
38
|
+
declare const DEFAULT_LOG_LEVEL: LogLevel;
|
|
39
|
+
declare const LOG_LEVEL_QUERY_PARAM = "envive_log_level";
|
|
40
|
+
declare const LOG_LEVEL_STORAGE_KEY = "envive-log-level";
|
|
41
|
+
declare const getLogLevel: () => LogLevel;
|
|
42
|
+
declare const setLogLevel: (level: LogLevel | undefined) => void;
|
|
43
|
+
declare const isLevelEnabled: (level: Exclude<LogLevel, "silent">) => boolean;
|
|
44
|
+
declare const resetLogLevelForTesting: () => void;
|
|
45
|
+
//#endregion
|
|
46
|
+
export { DEFAULT_LOG_LEVEL, LOG_LEVELS, LOG_LEVEL_QUERY_PARAM, LOG_LEVEL_STORAGE_KEY, LogLevel, getLogLevel, isLevelEnabled, resetLogLevelForTesting, setLogLevel };
|
|
47
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nTGV2ZWwuZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcGxpY2F0aW9uL2xvZ2dpbmcvbG9nTGV2ZWwuZC50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIENvbnNvbGUgbG9nLWxldmVsIGdhdGUgc2hhcmVkIGJ5IGV2ZXJ5IHBhY2thZ2UncyBMb2dnZXIuXG4gKlxuICogRGVidWcgYW5kIGluZm8gYXJlIG11dGVkIGJ5IGRlZmF1bHQ6IGEgc2luZ2xlIG1lcmNoYW50IHBhZ2UgbG9hZCBwcm9kdWNlc1xuICogfjk1MCBkZWJ1ZyBsaW5lcyAodGhlIGJ1bGsgb2YgdGhlbSBmcm9tIGZlYXR1cmVGbGFnU2VydmljZSBjaGVja2luZyBnYXRlcyBvblxuICogZXZlcnkgcmVuZGVyKSwgd2hpY2ggaXMgdW51c2FibGUgbm9pc2Ugb24gYSBjdXN0b21lcidzIHNpdGUuXG4gKlxuICogVG8gdHVybiBsb2dnaW5nIGJhY2sgb24sIGluIHByaW9yaXR5IG9yZGVyOlxuICpcbiAqICAgMS4gUXVlcnkgcGFyYW0g4oCUIGA/ZW52aXZlX2xvZ19sZXZlbD1kZWJ1Z2BcbiAqICAgICAgVGhlIHN1cHBvcnQgbGV2ZXIuIFdpbnMgb3ZlciBldmVyeXRoaW5nIGVsc2Ugc28gbG9nZ2luZyBjYW4gYWx3YXlzIGJlXG4gKiAgICAgIHJlLWVuYWJsZWQgb24gYSBsaXZlIG1lcmNoYW50IHBhZ2UsIGV2ZW4gaWYgdGhlIGVtYmVkZGluZyBwYWdlIHBpbm5lZCBhXG4gKiAgICAgIGxldmVsIGF0IGJvb3RzdHJhcC4gVGhlIGNob3NlbiBsZXZlbCBpcyBwZXJzaXN0ZWQgdG8gbG9jYWxTdG9yYWdlIHNvIGl0XG4gKiAgICAgIHN1cnZpdmVzIG5hdmlnYXRpb24gKGEgc3VwcG9ydCBzZXNzaW9uIHNwYW5zIG1vcmUgdGhhbiBvbmUgcGFnZSB2aWV3KTtcbiAqICAgICAgY2xlYXIgaXQgd2l0aCBgP2Vudml2ZV9sb2dfbGV2ZWw9d2FybmAgb3IgYnkgcmVtb3ZpbmcgdGhlIHN0b3JlZCBrZXkuXG4gKlxuICogICAyLiBgc2V0TG9nTGV2ZWwoJ2RlYnVnJylgIOKAlCBwcm9ncmFtbWF0aWMsIGUuZy4gYm9vdHN0cmFwIGNvZGUgb3IgdGVzdHMuXG4gKlxuICogICAzLiBgd2luZG93Ll9lbnZpdmUubG9nTGV2ZWwgPSAnZGVidWcnYCAob3IgYHdpbmRvdy5fc3BpZmZ5LmxvZ0xldmVsYClcbiAqICAgICAgUmVhZCBvbiBldmVyeSBjYWxsLCBzbyBpdCBjYW4gYmUgZmxpcHBlZCBmcm9tIHRoZSBicm93c2VyIGNvbnNvbGVcbiAqICAgICAgbWlkLXNlc3Npb24gd2l0aG91dCBhIHJlbG9hZC5cbiAqXG4gKiAgIDQuIGBsb2NhbFN0b3JhZ2VbJ2Vudml2ZS1sb2ctbGV2ZWwnXWAg4oCUIHN0aWNreSBwZXIgYnJvd3Nlci5cbiAqXG4gKiAgIDUuIERlZmF1bHQ6ICd3YXJuJy5cbiAqXG4gKiBMZXZlbHMsIGxlYXN0IHRvIG1vc3QgdmVyYm9zZTogc2lsZW50IDwgZXJyb3IgPCB3YXJuIDwgaW5mbyA8IGRlYnVnLlxuICogQSBtZXNzYWdlIGVtaXRzIHdoZW4gaXRzIG93biBsZXZlbCBpcyBhdCBvciBiZWxvdyB0aGUgcmVzb2x2ZWQgbGV2ZWwsIHNvXG4gKiAnc2lsZW50JyBtdXRlcyBldmVyeXRoaW5nIGluY2x1ZGluZyBlcnJvcnMuXG4gKlxuICogS2VwdCBmcmVlIG9mIFJlYWN0IGltcG9ydHMgKGxpa2UgZmVhdHVyZUZsYWdTZXJ2aWNlKTogdGhlIGluamVjdGlvbiBidW5kbGVcbiAqIGxvZ3MgZnJvbSBpdHMgcHJlLWNvbmZpZyBjb2RlIHBhdGgsIGJlZm9yZSBpdCBkZWNpZGVzIHdoZXRoZXIgdG8gbG9hZCB0aGVcbiAqIFJlYWN0IGFwcCwgYW5kIHB1bGxpbmcgUmVhY3QgaW4gaGVyZSB3b3VsZCBwdXQgaXQgb24gdGhlIGVhZ2VyIGNodW5rLlxuICovXG5leHBvcnQgZGVjbGFyZSBjb25zdCBMT0dfTEVWRUxTOiByZWFkb25seSBbXCJzaWxlbnRcIiwgXCJlcnJvclwiLCBcIndhcm5cIiwgXCJpbmZvXCIsIFwiZGVidWdcIl07XG5leHBvcnQgdHlwZSBMb2dMZXZlbCA9ICh0eXBlb2YgTE9HX0xFVkVMUylbbnVtYmVyXTtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IERFRkFVTFRfTE9HX0xFVkVMOiBMb2dMZXZlbDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IExPR19MRVZFTF9RVUVSWV9QQVJBTSA9IFwiZW52aXZlX2xvZ19sZXZlbFwiO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgTE9HX0xFVkVMX1NUT1JBR0VfS0VZID0gXCJlbnZpdmUtbG9nLWxldmVsXCI7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBnZXRMb2dMZXZlbDogKCkgPT4gTG9nTGV2ZWw7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBzZXRMb2dMZXZlbDogKGxldmVsOiBMb2dMZXZlbCB8IHVuZGVmaW5lZCkgPT4gdm9pZDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGlzTGV2ZWxFbmFibGVkOiAobGV2ZWw6IEV4Y2x1ZGU8TG9nTGV2ZWwsIFwic2lsZW50XCI+KSA9PiBib29sZWFuO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgcmVzZXRMb2dMZXZlbEZvclRlc3Rpbmc6ICgpID0+IHZvaWQ7XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxJQUFFLGFBQUEsQ0FBQSxJQUFBO0FBQ0YsSUFBVyxXQUFXLENBQUMsV0FBVyxXQUFXO0FBQzdDLElBQUMsb0JBQUEsQ0FBQSxXQUFBLFNBQUE7QUFDRCxJQUFXLHdCQUF3QixDQUFDLElBQUk7QUFDeEMsSUFBVyx3QkFBd0IsQ0FBQyxJQUFJO0FBQ3hDLElBQVcsY0FBYyxDQUFDLFdBQVcsU0FBUztBQUM5QyxJQUFDLGNBQUEsQ0FBQSxXQUFBLFNBQUE7QUFDRCxJQUFXLGlCQUFpQjtDQUFDO09BQVc7T0FBSztDQUFBO0FBQzdDLElBQUMsMEJBQUEsQ0FBQSxJQUFBIn0=
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
//#region src/application/logging/logLevel.d.ts
|
|
2
|
+
/**
|
|
3
|
+
* Console log-level gate shared by every package's Logger.
|
|
4
|
+
*
|
|
5
|
+
* Debug and info are muted by default: a single merchant page load produces
|
|
6
|
+
* ~950 debug lines (the bulk of them from featureFlagService checking gates on
|
|
7
|
+
* every render), which is unusable noise on a customer's site.
|
|
8
|
+
*
|
|
9
|
+
* To turn logging back on, in priority order:
|
|
10
|
+
*
|
|
11
|
+
* 1. Query param — `?envive_log_level=debug`
|
|
12
|
+
* The support lever. Wins over everything else so logging can always be
|
|
13
|
+
* re-enabled on a live merchant page, even if the embedding page pinned a
|
|
14
|
+
* level at bootstrap. The chosen level is persisted to localStorage so it
|
|
15
|
+
* survives navigation (a support session spans more than one page view);
|
|
16
|
+
* clear it with `?envive_log_level=warn` or by removing the stored key.
|
|
17
|
+
*
|
|
18
|
+
* 2. `setLogLevel('debug')` — programmatic, e.g. bootstrap code or tests.
|
|
19
|
+
*
|
|
20
|
+
* 3. `window._envive.logLevel = 'debug'` (or `window._spiffy.logLevel`)
|
|
21
|
+
* Read on every call, so it can be flipped from the browser console
|
|
22
|
+
* mid-session without a reload.
|
|
23
|
+
*
|
|
24
|
+
* 4. `localStorage['envive-log-level']` — sticky per browser.
|
|
25
|
+
*
|
|
26
|
+
* 5. Default: 'warn'.
|
|
27
|
+
*
|
|
28
|
+
* Levels, least to most verbose: silent < error < warn < info < debug.
|
|
29
|
+
* A message emits when its own level is at or below the resolved level, so
|
|
30
|
+
* 'silent' mutes everything including errors.
|
|
31
|
+
*
|
|
32
|
+
* Kept free of React imports (like featureFlagService): the injection bundle
|
|
33
|
+
* logs from its pre-config code path, before it decides whether to load the
|
|
34
|
+
* React app, and pulling React in here would put it on the eager chunk.
|
|
35
|
+
*/
|
|
36
|
+
declare const LOG_LEVELS: readonly ["silent", "error", "warn", "info", "debug"];
|
|
37
|
+
type LogLevel = (typeof LOG_LEVELS)[number];
|
|
38
|
+
declare const DEFAULT_LOG_LEVEL: LogLevel;
|
|
39
|
+
declare const LOG_LEVEL_QUERY_PARAM = "envive_log_level";
|
|
40
|
+
declare const LOG_LEVEL_STORAGE_KEY = "envive-log-level";
|
|
41
|
+
declare const getLogLevel: () => LogLevel;
|
|
42
|
+
declare const setLogLevel: (level: LogLevel | undefined) => void;
|
|
43
|
+
declare const isLevelEnabled: (level: Exclude<LogLevel, "silent">) => boolean;
|
|
44
|
+
declare const resetLogLevelForTesting: () => void;
|
|
45
|
+
//#endregion
|
|
46
|
+
export { DEFAULT_LOG_LEVEL, LOG_LEVELS, LOG_LEVEL_QUERY_PARAM, LOG_LEVEL_STORAGE_KEY, LogLevel, getLogLevel, isLevelEnabled, resetLogLevelForTesting, setLogLevel };
|
|
47
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nTGV2ZWwuZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXBwbGljYXRpb24vbG9nZ2luZy9sb2dMZXZlbC5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29uc29sZSBsb2ctbGV2ZWwgZ2F0ZSBzaGFyZWQgYnkgZXZlcnkgcGFja2FnZSdzIExvZ2dlci5cbiAqXG4gKiBEZWJ1ZyBhbmQgaW5mbyBhcmUgbXV0ZWQgYnkgZGVmYXVsdDogYSBzaW5nbGUgbWVyY2hhbnQgcGFnZSBsb2FkIHByb2R1Y2VzXG4gKiB+OTUwIGRlYnVnIGxpbmVzICh0aGUgYnVsayBvZiB0aGVtIGZyb20gZmVhdHVyZUZsYWdTZXJ2aWNlIGNoZWNraW5nIGdhdGVzIG9uXG4gKiBldmVyeSByZW5kZXIpLCB3aGljaCBpcyB1bnVzYWJsZSBub2lzZSBvbiBhIGN1c3RvbWVyJ3Mgc2l0ZS5cbiAqXG4gKiBUbyB0dXJuIGxvZ2dpbmcgYmFjayBvbiwgaW4gcHJpb3JpdHkgb3JkZXI6XG4gKlxuICogICAxLiBRdWVyeSBwYXJhbSDigJQgYD9lbnZpdmVfbG9nX2xldmVsPWRlYnVnYFxuICogICAgICBUaGUgc3VwcG9ydCBsZXZlci4gV2lucyBvdmVyIGV2ZXJ5dGhpbmcgZWxzZSBzbyBsb2dnaW5nIGNhbiBhbHdheXMgYmVcbiAqICAgICAgcmUtZW5hYmxlZCBvbiBhIGxpdmUgbWVyY2hhbnQgcGFnZSwgZXZlbiBpZiB0aGUgZW1iZWRkaW5nIHBhZ2UgcGlubmVkIGFcbiAqICAgICAgbGV2ZWwgYXQgYm9vdHN0cmFwLiBUaGUgY2hvc2VuIGxldmVsIGlzIHBlcnNpc3RlZCB0byBsb2NhbFN0b3JhZ2Ugc28gaXRcbiAqICAgICAgc3Vydml2ZXMgbmF2aWdhdGlvbiAoYSBzdXBwb3J0IHNlc3Npb24gc3BhbnMgbW9yZSB0aGFuIG9uZSBwYWdlIHZpZXcpO1xuICogICAgICBjbGVhciBpdCB3aXRoIGA/ZW52aXZlX2xvZ19sZXZlbD13YXJuYCBvciBieSByZW1vdmluZyB0aGUgc3RvcmVkIGtleS5cbiAqXG4gKiAgIDIuIGBzZXRMb2dMZXZlbCgnZGVidWcnKWAg4oCUIHByb2dyYW1tYXRpYywgZS5nLiBib290c3RyYXAgY29kZSBvciB0ZXN0cy5cbiAqXG4gKiAgIDMuIGB3aW5kb3cuX2Vudml2ZS5sb2dMZXZlbCA9ICdkZWJ1ZydgIChvciBgd2luZG93Ll9zcGlmZnkubG9nTGV2ZWxgKVxuICogICAgICBSZWFkIG9uIGV2ZXJ5IGNhbGwsIHNvIGl0IGNhbiBiZSBmbGlwcGVkIGZyb20gdGhlIGJyb3dzZXIgY29uc29sZVxuICogICAgICBtaWQtc2Vzc2lvbiB3aXRob3V0IGEgcmVsb2FkLlxuICpcbiAqICAgNC4gYGxvY2FsU3RvcmFnZVsnZW52aXZlLWxvZy1sZXZlbCddYCDigJQgc3RpY2t5IHBlciBicm93c2VyLlxuICpcbiAqICAgNS4gRGVmYXVsdDogJ3dhcm4nLlxuICpcbiAqIExldmVscywgbGVhc3QgdG8gbW9zdCB2ZXJib3NlOiBzaWxlbnQgPCBlcnJvciA8IHdhcm4gPCBpbmZvIDwgZGVidWcuXG4gKiBBIG1lc3NhZ2UgZW1pdHMgd2hlbiBpdHMgb3duIGxldmVsIGlzIGF0IG9yIGJlbG93IHRoZSByZXNvbHZlZCBsZXZlbCwgc29cbiAqICdzaWxlbnQnIG11dGVzIGV2ZXJ5dGhpbmcgaW5jbHVkaW5nIGVycm9ycy5cbiAqXG4gKiBLZXB0IGZyZWUgb2YgUmVhY3QgaW1wb3J0cyAobGlrZSBmZWF0dXJlRmxhZ1NlcnZpY2UpOiB0aGUgaW5qZWN0aW9uIGJ1bmRsZVxuICogbG9ncyBmcm9tIGl0cyBwcmUtY29uZmlnIGNvZGUgcGF0aCwgYmVmb3JlIGl0IGRlY2lkZXMgd2hldGhlciB0byBsb2FkIHRoZVxuICogUmVhY3QgYXBwLCBhbmQgcHVsbGluZyBSZWFjdCBpbiBoZXJlIHdvdWxkIHB1dCBpdCBvbiB0aGUgZWFnZXIgY2h1bmsuXG4gKi9cbmV4cG9ydCBkZWNsYXJlIGNvbnN0IExPR19MRVZFTFM6IHJlYWRvbmx5IFtcInNpbGVudFwiLCBcImVycm9yXCIsIFwid2FyblwiLCBcImluZm9cIiwgXCJkZWJ1Z1wiXTtcbmV4cG9ydCB0eXBlIExvZ0xldmVsID0gKHR5cGVvZiBMT0dfTEVWRUxTKVtudW1iZXJdO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgREVGQVVMVF9MT0dfTEVWRUw6IExvZ0xldmVsO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgTE9HX0xFVkVMX1FVRVJZX1BBUkFNID0gXCJlbnZpdmVfbG9nX2xldmVsXCI7XG5leHBvcnQgZGVjbGFyZSBjb25zdCBMT0dfTEVWRUxfU1RPUkFHRV9LRVkgPSBcImVudml2ZS1sb2ctbGV2ZWxcIjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGdldExvZ0xldmVsOiAoKSA9PiBMb2dMZXZlbDtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHNldExvZ0xldmVsOiAobGV2ZWw6IExvZ0xldmVsIHwgdW5kZWZpbmVkKSA9PiB2b2lkO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgaXNMZXZlbEVuYWJsZWQ6IChsZXZlbDogRXhjbHVkZTxMb2dMZXZlbCwgXCJzaWxlbnRcIj4pID0+IGJvb2xlYW47XG5leHBvcnQgZGVjbGFyZSBjb25zdCByZXNldExvZ0xldmVsRm9yVGVzdGluZzogKCkgPT4gdm9pZDtcbiJdLCJtYXBwaW5ncyI6IjtBQUFBLElBQUUsYUFBQSxDQUFBLElBQUE7QUFDRixJQUFXLFdBQVcsQ0FBQyxXQUFXLFdBQVc7QUFDN0MsSUFBQyxvQkFBQSxDQUFBLFdBQUEsU0FBQTtBQUNELElBQVcsd0JBQXdCLENBQUMsSUFBSTtBQUN4QyxJQUFXLHdCQUF3QixDQUFDLElBQUk7QUFDeEMsSUFBVyxjQUFjLENBQUMsV0FBVyxTQUFTO0FBQzlDLElBQUMsY0FBQSxDQUFBLFdBQUEsU0FBQTtBQUNELElBQVcsaUJBQWlCO0NBQUM7T0FBVztPQUFLO0NBQUE7QUFDN0MsSUFBQywwQkFBQSxDQUFBLElBQUEifQ==
|
|
@@ -0,0 +1,115 @@
|
|
|
1
|
+
//#region src/application/logging/logLevel.ts
|
|
2
|
+
/**
|
|
3
|
+
* Console log-level gate shared by every package's Logger.
|
|
4
|
+
*
|
|
5
|
+
* Debug and info are muted by default: a single merchant page load produces
|
|
6
|
+
* ~950 debug lines (the bulk of them from featureFlagService checking gates on
|
|
7
|
+
* every render), which is unusable noise on a customer's site.
|
|
8
|
+
*
|
|
9
|
+
* To turn logging back on, in priority order:
|
|
10
|
+
*
|
|
11
|
+
* 1. Query param — `?envive_log_level=debug`
|
|
12
|
+
* The support lever. Wins over everything else so logging can always be
|
|
13
|
+
* re-enabled on a live merchant page, even if the embedding page pinned a
|
|
14
|
+
* level at bootstrap. The chosen level is persisted to localStorage so it
|
|
15
|
+
* survives navigation (a support session spans more than one page view);
|
|
16
|
+
* clear it with `?envive_log_level=warn` or by removing the stored key.
|
|
17
|
+
*
|
|
18
|
+
* 2. `setLogLevel('debug')` — programmatic, e.g. bootstrap code or tests.
|
|
19
|
+
*
|
|
20
|
+
* 3. `window._envive.logLevel = 'debug'` (or `window._spiffy.logLevel`)
|
|
21
|
+
* Read on every call, so it can be flipped from the browser console
|
|
22
|
+
* mid-session without a reload.
|
|
23
|
+
*
|
|
24
|
+
* 4. `localStorage['envive-log-level']` — sticky per browser.
|
|
25
|
+
*
|
|
26
|
+
* 5. Default: 'warn'.
|
|
27
|
+
*
|
|
28
|
+
* Levels, least to most verbose: silent < error < warn < info < debug.
|
|
29
|
+
* A message emits when its own level is at or below the resolved level, so
|
|
30
|
+
* 'silent' mutes everything including errors.
|
|
31
|
+
*
|
|
32
|
+
* Kept free of React imports (like featureFlagService): the injection bundle
|
|
33
|
+
* logs from its pre-config code path, before it decides whether to load the
|
|
34
|
+
* React app, and pulling React in here would put it on the eager chunk.
|
|
35
|
+
*/
|
|
36
|
+
const LOG_LEVELS = [
|
|
37
|
+
"silent",
|
|
38
|
+
"error",
|
|
39
|
+
"warn",
|
|
40
|
+
"info",
|
|
41
|
+
"debug"
|
|
42
|
+
];
|
|
43
|
+
const LEVEL_SEVERITY = {
|
|
44
|
+
silent: 0,
|
|
45
|
+
error: 1,
|
|
46
|
+
warn: 2,
|
|
47
|
+
info: 3,
|
|
48
|
+
debug: 4
|
|
49
|
+
};
|
|
50
|
+
const DEFAULT_LOG_LEVEL = "warn";
|
|
51
|
+
const LOG_LEVEL_QUERY_PARAM = "envive_log_level";
|
|
52
|
+
const LOG_LEVEL_STORAGE_KEY = "envive-log-level";
|
|
53
|
+
const asLogLevel = (value) => {
|
|
54
|
+
if (typeof value !== "string") return;
|
|
55
|
+
const normalized = value.toLowerCase();
|
|
56
|
+
return LOG_LEVELS.includes(normalized) ? normalized : void 0;
|
|
57
|
+
};
|
|
58
|
+
let programmaticLevel;
|
|
59
|
+
let cachedQueryLevel;
|
|
60
|
+
let cachedStoredLevel;
|
|
61
|
+
const storeLevel = (level) => {
|
|
62
|
+
if (typeof window === "undefined" || typeof window.localStorage === "undefined") return;
|
|
63
|
+
try {
|
|
64
|
+
window.localStorage.setItem(LOG_LEVEL_STORAGE_KEY, level);
|
|
65
|
+
} catch {}
|
|
66
|
+
};
|
|
67
|
+
const readQueryLevel = () => {
|
|
68
|
+
if (typeof window === "undefined") return;
|
|
69
|
+
const url = window.location?.href ?? "";
|
|
70
|
+
if (!url.includes("?")) return;
|
|
71
|
+
try {
|
|
72
|
+
return asLogLevel(new URLSearchParams(new URL(url).search).get(LOG_LEVEL_QUERY_PARAM));
|
|
73
|
+
} catch {
|
|
74
|
+
return;
|
|
75
|
+
}
|
|
76
|
+
};
|
|
77
|
+
const queryLevel = () => {
|
|
78
|
+
if (cachedQueryLevel === void 0) {
|
|
79
|
+
const level = readQueryLevel();
|
|
80
|
+
if (level) storeLevel(level);
|
|
81
|
+
cachedQueryLevel = level ?? null;
|
|
82
|
+
}
|
|
83
|
+
return cachedQueryLevel ?? void 0;
|
|
84
|
+
};
|
|
85
|
+
const storedLevel = () => {
|
|
86
|
+
if (cachedStoredLevel === void 0) {
|
|
87
|
+
let level;
|
|
88
|
+
if (typeof window !== "undefined" && typeof window.localStorage !== "undefined") try {
|
|
89
|
+
level = asLogLevel(window.localStorage.getItem(LOG_LEVEL_STORAGE_KEY));
|
|
90
|
+
} catch {
|
|
91
|
+
level = void 0;
|
|
92
|
+
}
|
|
93
|
+
cachedStoredLevel = level ?? null;
|
|
94
|
+
}
|
|
95
|
+
return cachedStoredLevel ?? void 0;
|
|
96
|
+
};
|
|
97
|
+
const windowLevel = () => {
|
|
98
|
+
if (typeof window === "undefined") return;
|
|
99
|
+
const windowOverride = window;
|
|
100
|
+
return asLogLevel(windowOverride._envive?.logLevel ?? windowOverride._spiffy?.logLevel);
|
|
101
|
+
};
|
|
102
|
+
const getLogLevel = () => queryLevel() ?? programmaticLevel ?? windowLevel() ?? storedLevel() ?? DEFAULT_LOG_LEVEL;
|
|
103
|
+
const setLogLevel = (level) => {
|
|
104
|
+
programmaticLevel = level;
|
|
105
|
+
};
|
|
106
|
+
const isLevelEnabled = (level) => LEVEL_SEVERITY[getLogLevel()] >= LEVEL_SEVERITY[level];
|
|
107
|
+
const resetLogLevelForTesting = () => {
|
|
108
|
+
programmaticLevel = void 0;
|
|
109
|
+
cachedQueryLevel = void 0;
|
|
110
|
+
cachedStoredLevel = void 0;
|
|
111
|
+
};
|
|
112
|
+
|
|
113
|
+
//#endregion
|
|
114
|
+
export { DEFAULT_LOG_LEVEL, LOG_LEVELS, LOG_LEVEL_QUERY_PARAM, LOG_LEVEL_STORAGE_KEY, getLogLevel, isLevelEnabled, resetLogLevelForTesting, setLogLevel };
|
|
115
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nTGV2ZWwuanMiLCJuYW1lcyI6WyJMRVZFTF9TRVZFUklUWTogUmVjb3JkPExvZ0xldmVsLCBudW1iZXI+IiwiREVGQVVMVF9MT0dfTEVWRUw6IExvZ0xldmVsIiwicHJvZ3JhbW1hdGljTGV2ZWw6IExvZ0xldmVsIHwgdW5kZWZpbmVkIiwiY2FjaGVkUXVlcnlMZXZlbDogTG9nTGV2ZWwgfCBudWxsIHwgdW5kZWZpbmVkIiwiY2FjaGVkU3RvcmVkTGV2ZWw6IExvZ0xldmVsIHwgbnVsbCB8IHVuZGVmaW5lZCIsImxldmVsOiBMb2dMZXZlbCB8IHVuZGVmaW5lZCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcHBsaWNhdGlvbi9sb2dnaW5nL2xvZ0xldmVsLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29uc29sZSBsb2ctbGV2ZWwgZ2F0ZSBzaGFyZWQgYnkgZXZlcnkgcGFja2FnZSdzIExvZ2dlci5cbiAqXG4gKiBEZWJ1ZyBhbmQgaW5mbyBhcmUgbXV0ZWQgYnkgZGVmYXVsdDogYSBzaW5nbGUgbWVyY2hhbnQgcGFnZSBsb2FkIHByb2R1Y2VzXG4gKiB+OTUwIGRlYnVnIGxpbmVzICh0aGUgYnVsayBvZiB0aGVtIGZyb20gZmVhdHVyZUZsYWdTZXJ2aWNlIGNoZWNraW5nIGdhdGVzIG9uXG4gKiBldmVyeSByZW5kZXIpLCB3aGljaCBpcyB1bnVzYWJsZSBub2lzZSBvbiBhIGN1c3RvbWVyJ3Mgc2l0ZS5cbiAqXG4gKiBUbyB0dXJuIGxvZ2dpbmcgYmFjayBvbiwgaW4gcHJpb3JpdHkgb3JkZXI6XG4gKlxuICogICAxLiBRdWVyeSBwYXJhbSDigJQgYD9lbnZpdmVfbG9nX2xldmVsPWRlYnVnYFxuICogICAgICBUaGUgc3VwcG9ydCBsZXZlci4gV2lucyBvdmVyIGV2ZXJ5dGhpbmcgZWxzZSBzbyBsb2dnaW5nIGNhbiBhbHdheXMgYmVcbiAqICAgICAgcmUtZW5hYmxlZCBvbiBhIGxpdmUgbWVyY2hhbnQgcGFnZSwgZXZlbiBpZiB0aGUgZW1iZWRkaW5nIHBhZ2UgcGlubmVkIGFcbiAqICAgICAgbGV2ZWwgYXQgYm9vdHN0cmFwLiBUaGUgY2hvc2VuIGxldmVsIGlzIHBlcnNpc3RlZCB0byBsb2NhbFN0b3JhZ2Ugc28gaXRcbiAqICAgICAgc3Vydml2ZXMgbmF2aWdhdGlvbiAoYSBzdXBwb3J0IHNlc3Npb24gc3BhbnMgbW9yZSB0aGFuIG9uZSBwYWdlIHZpZXcpO1xuICogICAgICBjbGVhciBpdCB3aXRoIGA/ZW52aXZlX2xvZ19sZXZlbD13YXJuYCBvciBieSByZW1vdmluZyB0aGUgc3RvcmVkIGtleS5cbiAqXG4gKiAgIDIuIGBzZXRMb2dMZXZlbCgnZGVidWcnKWAg4oCUIHByb2dyYW1tYXRpYywgZS5nLiBib290c3RyYXAgY29kZSBvciB0ZXN0cy5cbiAqXG4gKiAgIDMuIGB3aW5kb3cuX2Vudml2ZS5sb2dMZXZlbCA9ICdkZWJ1ZydgIChvciBgd2luZG93Ll9zcGlmZnkubG9nTGV2ZWxgKVxuICogICAgICBSZWFkIG9uIGV2ZXJ5IGNhbGwsIHNvIGl0IGNhbiBiZSBmbGlwcGVkIGZyb20gdGhlIGJyb3dzZXIgY29uc29sZVxuICogICAgICBtaWQtc2Vzc2lvbiB3aXRob3V0IGEgcmVsb2FkLlxuICpcbiAqICAgNC4gYGxvY2FsU3RvcmFnZVsnZW52aXZlLWxvZy1sZXZlbCddYCDigJQgc3RpY2t5IHBlciBicm93c2VyLlxuICpcbiAqICAgNS4gRGVmYXVsdDogJ3dhcm4nLlxuICpcbiAqIExldmVscywgbGVhc3QgdG8gbW9zdCB2ZXJib3NlOiBzaWxlbnQgPCBlcnJvciA8IHdhcm4gPCBpbmZvIDwgZGVidWcuXG4gKiBBIG1lc3NhZ2UgZW1pdHMgd2hlbiBpdHMgb3duIGxldmVsIGlzIGF0IG9yIGJlbG93IHRoZSByZXNvbHZlZCBsZXZlbCwgc29cbiAqICdzaWxlbnQnIG11dGVzIGV2ZXJ5dGhpbmcgaW5jbHVkaW5nIGVycm9ycy5cbiAqXG4gKiBLZXB0IGZyZWUgb2YgUmVhY3QgaW1wb3J0cyAobGlrZSBmZWF0dXJlRmxhZ1NlcnZpY2UpOiB0aGUgaW5qZWN0aW9uIGJ1bmRsZVxuICogbG9ncyBmcm9tIGl0cyBwcmUtY29uZmlnIGNvZGUgcGF0aCwgYmVmb3JlIGl0IGRlY2lkZXMgd2hldGhlciB0byBsb2FkIHRoZVxuICogUmVhY3QgYXBwLCBhbmQgcHVsbGluZyBSZWFjdCBpbiBoZXJlIHdvdWxkIHB1dCBpdCBvbiB0aGUgZWFnZXIgY2h1bmsuXG4gKi9cblxuZXhwb3J0IGNvbnN0IExPR19MRVZFTFMgPSBbJ3NpbGVudCcsICdlcnJvcicsICd3YXJuJywgJ2luZm8nLCAnZGVidWcnXSBhcyBjb25zdDtcblxuZXhwb3J0IHR5cGUgTG9nTGV2ZWwgPSAodHlwZW9mIExPR19MRVZFTFMpW251bWJlcl07XG5cbmNvbnN0IExFVkVMX1NFVkVSSVRZOiBSZWNvcmQ8TG9nTGV2ZWwsIG51bWJlcj4gPSB7XG4gIHNpbGVudDogMCxcbiAgZXJyb3I6IDEsXG4gIHdhcm46IDIsXG4gIGluZm86IDMsXG4gIGRlYnVnOiA0LFxufTtcblxuLyogRXJyb3JzIGFuZCB3YXJuaW5ncyBvbmx5LiBsb2dEZWJ1Zy9sb2dJbmZvIG1ha2UgdXAgdGhlIGJ1bGsgb2YgdGhlIGNhbGwgc2l0ZXNcbiAqIGluIHRoaXMgcmVwbyBhbmQgdXNlZCB0byBwcmludCBvbiBldmVyeSBtZXJjaGFudCBwYWdlIGxvYWQuICovXG5leHBvcnQgY29uc3QgREVGQVVMVF9MT0dfTEVWRUw6IExvZ0xldmVsID0gJ3dhcm4nO1xuXG5leHBvcnQgY29uc3QgTE9HX0xFVkVMX1FVRVJZX1BBUkFNID0gJ2Vudml2ZV9sb2dfbGV2ZWwnO1xuZXhwb3J0IGNvbnN0IExPR19MRVZFTF9TVE9SQUdFX0tFWSA9ICdlbnZpdmUtbG9nLWxldmVsJztcblxuY29uc3QgYXNMb2dMZXZlbCA9ICh2YWx1ZTogdW5rbm93bik6IExvZ0xldmVsIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYgKHR5cGVvZiB2YWx1ZSAhPT0gJ3N0cmluZycpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IG5vcm1hbGl6ZWQgPSB2YWx1ZS50b0xvd2VyQ2FzZSgpO1xuICByZXR1cm4gKExPR19MRVZFTFMgYXMgcmVhZG9ubHkgc3RyaW5nW10pLmluY2x1ZGVzKG5vcm1hbGl6ZWQpXG4gICAgPyAobm9ybWFsaXplZCBhcyBMb2dMZXZlbClcbiAgICA6IHVuZGVmaW5lZDtcbn07XG5cbi8qIFNldCBieSBzZXRMb2dMZXZlbCgpLiBPdmVycmlkZXMgd2luZG93L3N0b3JlZC9kZWZhdWx0LCBidXQgZGVsaWJlcmF0ZWx5IG5vdFxuICogdGhlIHF1ZXJ5IHBhcmFtLCBzbyBzdXBwb3J0IGNhbiBhbHdheXMgdHVybiBsb2dnaW5nIGJhY2sgb24gaW4gYSBsaXZlIHNlc3Npb25cbiAqIGV2ZW4gaWYgdGhlIGVtYmVkZGluZyBwYWdlIHBpbm5lZCBhIGxldmVsIGF0IGJvb3RzdHJhcC4gKi9cbmxldCBwcm9ncmFtbWF0aWNMZXZlbDogTG9nTGV2ZWwgfCB1bmRlZmluZWQ7XG5cbi8qIFRoZSBxdWVyeSBwYXJhbSBhbmQgbG9jYWxTdG9yYWdlIGNhbm5vdCBjaGFuZ2Ugd2l0aG91dCBhIG5hdmlnYXRpb24sIHNvIGJvdGhcbiAqIGFyZSByZWFkIG9uY2UuIGB1bmRlZmluZWRgIG1lYW5zIFwibm90IHJlc29sdmVkIHlldFwiIGFuZCBgbnVsbGAgY2FjaGVzIGEgbWlzcyxcbiAqIGtlZXBpbmcgcmVwZWF0IGxvb2t1cHMgb2ZmIHRoZSBsb2dnaW5nIGhvdCBwYXRoLiAqL1xubGV0IGNhY2hlZFF1ZXJ5TGV2ZWw6IExvZ0xldmVsIHwgbnVsbCB8IHVuZGVmaW5lZDtcbmxldCBjYWNoZWRTdG9yZWRMZXZlbDogTG9nTGV2ZWwgfCBudWxsIHwgdW5kZWZpbmVkO1xuXG4vKiBQZXJzaXN0cyB0aGUgbGV2ZWwgc28gaXQgc3Vydml2ZXMgbmF2aWdhdGlvbiDigJQgYSBzdXBwb3J0IHNlc3Npb24gc3BhbnMgbW9yZVxuICogdGhhbiBvbmUgcGFnZSB2aWV3LiAqL1xuY29uc3Qgc3RvcmVMZXZlbCA9IChsZXZlbDogTG9nTGV2ZWwpOiB2b2lkID0+IHtcbiAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnIHx8IHR5cGVvZiB3aW5kb3cubG9jYWxTdG9yYWdlID09PSAndW5kZWZpbmVkJykge1xuICAgIHJldHVybjtcbiAgfVxuICB0cnkge1xuICAgIHdpbmRvdy5sb2NhbFN0b3JhZ2Uuc2V0SXRlbShMT0dfTEVWRUxfU1RPUkFHRV9LRVksIGxldmVsKTtcbiAgfSBjYXRjaCB7XG4gICAgLy8gU3RvcmFnZSBjYW4gYmUgZnVsbCBvciBibG9ja2VkOyB0aGUgbGV2ZWwgc3RpbGwgYXBwbGllcyB0byB0aGlzIHBhZ2UuXG4gIH1cbn07XG5cbmNvbnN0IHJlYWRRdWVyeUxldmVsID0gKCk6IExvZ0xldmVsIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYgKHR5cGVvZiB3aW5kb3cgPT09ICd1bmRlZmluZWQnKSB7XG4gICAgcmV0dXJuIHVuZGVmaW5lZDtcbiAgfVxuICBjb25zdCB1cmwgPSB3aW5kb3cubG9jYXRpb24/LmhyZWYgPz8gJyc7XG4gIGlmICghdXJsLmluY2x1ZGVzKCc/JykpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIHRyeSB7XG4gICAgY29uc3QgcGFyYW1zID0gbmV3IFVSTFNlYXJjaFBhcmFtcyhuZXcgVVJMKHVybCkuc2VhcmNoKTtcbiAgICByZXR1cm4gYXNMb2dMZXZlbChwYXJhbXMuZ2V0KExPR19MRVZFTF9RVUVSWV9QQVJBTSkpO1xuICB9IGNhdGNoIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG59O1xuXG5jb25zdCBxdWVyeUxldmVsID0gKCk6IExvZ0xldmVsIHwgdW5kZWZpbmVkID0+IHtcbiAgaWYgKGNhY2hlZFF1ZXJ5TGV2ZWwgPT09IHVuZGVmaW5lZCkge1xuICAgIGNvbnN0IGxldmVsID0gcmVhZFF1ZXJ5TGV2ZWwoKTtcbiAgICBpZiAobGV2ZWwpIHtcbiAgICAgIHN0b3JlTGV2ZWwobGV2ZWwpO1xuICAgIH1cbiAgICBjYWNoZWRRdWVyeUxldmVsID0gbGV2ZWwgPz8gbnVsbDtcbiAgfVxuICByZXR1cm4gY2FjaGVkUXVlcnlMZXZlbCA/PyB1bmRlZmluZWQ7XG59O1xuXG5jb25zdCBzdG9yZWRMZXZlbCA9ICgpOiBMb2dMZXZlbCB8IHVuZGVmaW5lZCA9PiB7XG4gIGlmIChjYWNoZWRTdG9yZWRMZXZlbCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgbGV0IGxldmVsOiBMb2dMZXZlbCB8IHVuZGVmaW5lZDtcbiAgICBpZiAodHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcgJiYgdHlwZW9mIHdpbmRvdy5sb2NhbFN0b3JhZ2UgIT09ICd1bmRlZmluZWQnKSB7XG4gICAgICB0cnkge1xuICAgICAgICBsZXZlbCA9IGFzTG9nTGV2ZWwod2luZG93LmxvY2FsU3RvcmFnZS5nZXRJdGVtKExPR19MRVZFTF9TVE9SQUdFX0tFWSkpO1xuICAgICAgfSBjYXRjaCB7XG4gICAgICAgIGxldmVsID0gdW5kZWZpbmVkO1xuICAgICAgfVxuICAgIH1cbiAgICBjYWNoZWRTdG9yZWRMZXZlbCA9IGxldmVsID8/IG51bGw7XG4gIH1cbiAgcmV0dXJuIGNhY2hlZFN0b3JlZExldmVsID8/IHVuZGVmaW5lZDtcbn07XG5cbi8qIFJlYWQgb24gZXZlcnkgY2FsbCwgc28gaXQgY2FuIGJlIGZsaXBwZWQgZnJvbSB0aGUgYnJvd3NlciBjb25zb2xlIG1pZC1zZXNzaW9uXG4gKiB3aXRob3V0IGEgcmVsb2FkLiAqL1xuY29uc3Qgd2luZG93TGV2ZWwgPSAoKTogTG9nTGV2ZWwgfCB1bmRlZmluZWQgPT4ge1xuICBpZiAodHlwZW9mIHdpbmRvdyA9PT0gJ3VuZGVmaW5lZCcpIHtcbiAgICByZXR1cm4gdW5kZWZpbmVkO1xuICB9XG4gIGNvbnN0IHdpbmRvd092ZXJyaWRlID0gd2luZG93IGFzIFdpbmRvdyAmIHtcbiAgICBfZW52aXZlPzogeyBsb2dMZXZlbD86IHN0cmluZyB9O1xuICAgIF9zcGlmZnk/OiB7IGxvZ0xldmVsPzogc3RyaW5nIH07XG4gIH07XG4gIHJldHVybiBhc0xvZ0xldmVsKHdpbmRvd092ZXJyaWRlLl9lbnZpdmU/LmxvZ0xldmVsID8/IHdpbmRvd092ZXJyaWRlLl9zcGlmZnk/LmxvZ0xldmVsKTtcbn07XG5cbi8qIFJlc29sdXRpb24gb3JkZXIgbWlycm9ycyBmZWF0dXJlRmxhZ1NlcnZpY2UncyBvdmVycmlkZSBjaGFpbjogcXVlcnkgcGFyYW0gPlxuICogc2V0TG9nTGV2ZWwoKSA+IHdpbmRvdy5fZW52aXZlLmxvZ0xldmVsID4gbG9jYWxTdG9yYWdlID4gZGVmYXVsdC4gKi9cbmV4cG9ydCBjb25zdCBnZXRMb2dMZXZlbCA9ICgpOiBMb2dMZXZlbCA9PlxuICBxdWVyeUxldmVsKCkgPz8gcHJvZ3JhbW1hdGljTGV2ZWwgPz8gd2luZG93TGV2ZWwoKSA/PyBzdG9yZWRMZXZlbCgpID8/IERFRkFVTFRfTE9HX0xFVkVMO1xuXG4vKiBQYXNzIHVuZGVmaW5lZCB0byBjbGVhciB0aGUgb3ZlcnJpZGUgYW5kIGZhbGwgYmFjayB0byB0aGUgbGV2ZXJzIGFib3ZlLiAqL1xuZXhwb3J0IGNvbnN0IHNldExvZ0xldmVsID0gKGxldmVsOiBMb2dMZXZlbCB8IHVuZGVmaW5lZCk6IHZvaWQgPT4ge1xuICBwcm9ncmFtbWF0aWNMZXZlbCA9IGxldmVsO1xufTtcblxuZXhwb3J0IGNvbnN0IGlzTGV2ZWxFbmFibGVkID0gKGxldmVsOiBFeGNsdWRlPExvZ0xldmVsLCAnc2lsZW50Jz4pOiBib29sZWFuID0+XG4gIExFVkVMX1NFVkVSSVRZW2dldExvZ0xldmVsKCldID49IExFVkVMX1NFVkVSSVRZW2xldmVsXTtcblxuLyogVGVzdCBzZWFtOiBkcm9wcyB0aGUgbWVtb2l6ZWQgcXVlcnktcGFyYW0gYW5kIGxvY2FsU3RvcmFnZSByZXNvbHV0aW9uLiAqL1xuZXhwb3J0IGNvbnN0IHJlc2V0TG9nTGV2ZWxGb3JUZXN0aW5nID0gKCk6IHZvaWQgPT4ge1xuICBwcm9ncmFtbWF0aWNMZXZlbCA9IHVuZGVmaW5lZDtcbiAgY2FjaGVkUXVlcnlMZXZlbCA9IHVuZGVmaW5lZDtcbiAgY2FjaGVkU3RvcmVkTGV2ZWwgPSB1bmRlZmluZWQ7XG59O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7OztBQW1DQSxNQUFhLGFBQWE7Q0FBQztDQUFVO0NBQVM7Q0FBUTtDQUFRO0NBQVE7QUFJdEUsTUFBTUEsaUJBQTJDO0NBQy9DLFFBQVE7Q0FDUixPQUFPO0NBQ1AsTUFBTTtDQUNOLE1BQU07Q0FDTixPQUFPO0NBQ1I7QUFJRCxNQUFhQyxvQkFBOEI7QUFFM0MsTUFBYSx3QkFBd0I7QUFDckMsTUFBYSx3QkFBd0I7QUFFckMsTUFBTSxjQUFjLFVBQXlDO0FBQzNELEtBQUksT0FBTyxVQUFVLFNBQ25CO0NBRUYsTUFBTSxhQUFhLE1BQU0sYUFBYTtBQUN0QyxRQUFRLFdBQWlDLFNBQVMsV0FBVyxHQUN4RCxhQUNEOztBQU1OLElBQUlDO0FBS0osSUFBSUM7QUFDSixJQUFJQztBQUlKLE1BQU0sY0FBYyxVQUEwQjtBQUM1QyxLQUFJLE9BQU8sV0FBVyxlQUFlLE9BQU8sT0FBTyxpQkFBaUIsWUFDbEU7QUFFRixLQUFJO0FBQ0YsU0FBTyxhQUFhLFFBQVEsdUJBQXVCLE1BQU07U0FDbkQ7O0FBS1YsTUFBTSx1QkFBNkM7QUFDakQsS0FBSSxPQUFPLFdBQVcsWUFDcEI7Q0FFRixNQUFNLE1BQU0sT0FBTyxVQUFVLFFBQVE7QUFDckMsS0FBSSxDQUFDLElBQUksU0FBUyxJQUFJLENBQ3BCO0FBRUYsS0FBSTtBQUVGLFNBQU8sV0FEUSxJQUFJLGdCQUFnQixJQUFJLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FDOUIsSUFBSSxzQkFBc0IsQ0FBQztTQUM5QztBQUNOOzs7QUFJSixNQUFNLG1CQUF5QztBQUM3QyxLQUFJLHFCQUFxQixRQUFXO0VBQ2xDLE1BQU0sUUFBUSxnQkFBZ0I7QUFDOUIsTUFBSSxNQUNGLFlBQVcsTUFBTTtBQUVuQixxQkFBbUIsU0FBUzs7QUFFOUIsUUFBTyxvQkFBb0I7O0FBRzdCLE1BQU0sb0JBQTBDO0FBQzlDLEtBQUksc0JBQXNCLFFBQVc7RUFDbkMsSUFBSUM7QUFDSixNQUFJLE9BQU8sV0FBVyxlQUFlLE9BQU8sT0FBTyxpQkFBaUIsWUFDbEUsS0FBSTtBQUNGLFdBQVEsV0FBVyxPQUFPLGFBQWEsUUFBUSxzQkFBc0IsQ0FBQztVQUNoRTtBQUNOLFdBQVE7O0FBR1osc0JBQW9CLFNBQVM7O0FBRS9CLFFBQU8scUJBQXFCOztBQUs5QixNQUFNLG9CQUEwQztBQUM5QyxLQUFJLE9BQU8sV0FBVyxZQUNwQjtDQUVGLE1BQU0saUJBQWlCO0FBSXZCLFFBQU8sV0FBVyxlQUFlLFNBQVMsWUFBWSxlQUFlLFNBQVMsU0FBUzs7QUFLekYsTUFBYSxvQkFDWCxZQUFZLElBQUkscUJBQXFCLGFBQWEsSUFBSSxhQUFhLElBQUk7QUFHekUsTUFBYSxlQUFlLFVBQXNDO0FBQ2hFLHFCQUFvQjs7QUFHdEIsTUFBYSxrQkFBa0IsVUFDN0IsZUFBZSxhQUFhLEtBQUssZUFBZTtBQUdsRCxNQUFhLGdDQUFzQztBQUNqRCxxQkFBb0I7QUFDcEIsb0JBQW1CO0FBQ25CLHFCQUFvQiJ9
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
const require_logLevel = require('./logLevel.cjs');
|
|
1
2
|
|
|
2
3
|
//#region src/application/logging/logger.ts
|
|
3
4
|
var Logger = class Logger {
|
|
@@ -8,15 +9,19 @@ var Logger = class Logger {
|
|
|
8
9
|
return (/* @__PURE__ */ new Date()).toISOString();
|
|
9
10
|
}
|
|
10
11
|
logInfo(message, ...args) {
|
|
12
|
+
if (!require_logLevel.isLevelEnabled("info")) return;
|
|
11
13
|
console.info(`INFO: [envive-ai] ${Logger.getTimestamp()} - ${this.caller} - ${message}`, ...args);
|
|
12
14
|
}
|
|
13
15
|
logDebug(message, ...args) {
|
|
16
|
+
if (!require_logLevel.isLevelEnabled("debug")) return;
|
|
14
17
|
console.debug(`DEBUG: [envive-ai] ${Logger.getTimestamp()} - ${this.caller} - ${message}`, ...args);
|
|
15
18
|
}
|
|
16
19
|
logError(message, error, ...args) {
|
|
20
|
+
if (!require_logLevel.isLevelEnabled("error")) return;
|
|
17
21
|
console.error(`ERROR: [envive-ai] ${Logger.getTimestamp()} - ${this.caller} - ${message} error=${error}`, args);
|
|
18
22
|
}
|
|
19
23
|
logWarn(message, error, ...args) {
|
|
24
|
+
if (!require_logLevel.isLevelEnabled("warn")) return;
|
|
20
25
|
console.warn(`WARN: [envive-ai] ${Logger.getTimestamp()} - ${this.caller} - ${message} error=${error}`, args);
|
|
21
26
|
}
|
|
22
27
|
};
|
|
@@ -24,4 +29,4 @@ var logger_default = Logger;
|
|
|
24
29
|
|
|
25
30
|
//#endregion
|
|
26
31
|
exports.default = logger_default;
|
|
27
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmNqcyIsIm5hbWVzIjpbImlzTGV2ZWxFbmFibGVkIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcGxpY2F0aW9uL2xvZ2dpbmcvbG9nZ2VyLnRzIl0sInNvdXJjZXNDb250ZW50IjpbIi8qIGVzbGludC1kaXNhYmxlIG5vLWNvbnNvbGUgKi9cbmltcG9ydCB7IGlzTGV2ZWxFbmFibGVkIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL2xvZ2dpbmcvbG9nTGV2ZWwnO1xuXG5jbGFzcyBMb2dnZXIge1xuICBwcml2YXRlIHJlYWRvbmx5IGNhbGxlcjogc3RyaW5nO1xuXG4gIC8qIENyZWF0ZXMgYSBuZXcgTG9nZ2VyIGluc3RhbmNlLlxuICAgKiBAcGFyYW0gY2FsbGVyIC0gVGhlIGNhbGxlciBvZiB0aGUgbG9nZ2VyLlxuICAgKi9cbiAgY29uc3RydWN0b3IoY2FsbGVyOiBzdHJpbmcpIHtcbiAgICB0aGlzLmNhbGxlciA9IGNhbGxlcjtcbiAgfVxuXG4gIHN0YXRpYyBnZXRUaW1lc3RhbXAoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gbmV3IERhdGUoKS50b0lTT1N0cmluZygpO1xuICB9XG5cbiAgbG9nSW5mbyhtZXNzYWdlOiBzdHJpbmcsIC4uLmFyZ3M6IHVua25vd25bXSk6IHZvaWQge1xuICAgIGlmICghaXNMZXZlbEVuYWJsZWQoJ2luZm8nKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zb2xlLmluZm8oXG4gICAgICBgSU5GTzogW2Vudml2ZS1haV0gJHtMb2dnZXIuZ2V0VGltZXN0YW1wKCl9IC0gJHt0aGlzLmNhbGxlcn0gLSAke21lc3NhZ2V9YCxcbiAgICAgIC4uLmFyZ3MsXG4gICAgKTtcbiAgfVxuXG4gIGxvZ0RlYnVnKG1lc3NhZ2U6IHN0cmluZywgLi4uYXJnczogdW5rbm93bltdKTogdm9pZCB7XG4gICAgaWYgKCFpc0xldmVsRW5hYmxlZCgnZGVidWcnKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zb2xlLmRlYnVnKFxuICAgICAgYERFQlVHOiBbZW52aXZlLWFpXSAke0xvZ2dlci5nZXRUaW1lc3RhbXAoKX0gLSAke3RoaXMuY2FsbGVyfSAtICR7bWVzc2FnZX1gLFxuICAgICAgLi4uYXJncyxcbiAgICApO1xuICB9XG5cbiAgbG9nRXJyb3IobWVzc2FnZTogc3RyaW5nLCBlcnJvcjogdW5rbm93biB8IHVuZGVmaW5lZCwgLi4uYXJnczogdW5rbm93bltdKTogdm9pZCB7XG4gICAgaWYgKCFpc0xldmVsRW5hYmxlZCgnZXJyb3InKSkge1xuICAgICAgcmV0dXJuO1xuICAgIH1cbiAgICBjb25zb2xlLmVycm9yKFxuICAgICAgYEVSUk9SOiBbZW52aXZlLWFpXSAke0xvZ2dlci5nZXRUaW1lc3RhbXAoKX0gLSAke3RoaXMuY2FsbGVyfSAtICR7bWVzc2FnZX0gZXJyb3I9JHtlcnJvcn1gLFxuICAgICAgYXJncyxcbiAgICApO1xuICB9XG5cbiAgbG9nV2FybihtZXNzYWdlOiBzdHJpbmcsIGVycm9yOiB1bmtub3duIHwgdW5kZWZpbmVkLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkIHtcbiAgICBpZiAoIWlzTGV2ZWxFbmFibGVkKCd3YXJuJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc29sZS53YXJuKFxuICAgICAgYFdBUk46IFtlbnZpdmUtYWldICR7TG9nZ2VyLmdldFRpbWVzdGFtcCgpfSAtICR7dGhpcy5jYWxsZXJ9IC0gJHttZXNzYWdlfSBlcnJvcj0ke2Vycm9yfWAsXG4gICAgICBhcmdzLFxuICAgICk7XG4gIH1cbn1cblxuZXhwb3J0IGRlZmF1bHQgTG9nZ2VyO1xuIl0sIm1hcHBpbmdzIjoiOzs7QUFHQSxJQUFNLFNBQU4sTUFBTSxPQUFPO0NBTVgsWUFBWSxRQUFnQjtBQUMxQixPQUFLLFNBQVM7O0NBR2hCLE9BQU8sZUFBdUI7QUFDNUIsMEJBQU8sSUFBSSxNQUFNLEVBQUMsYUFBYTs7Q0FHakMsUUFBUSxTQUFpQixHQUFHLE1BQXVCO0FBQ2pELE1BQUksQ0FBQ0EsZ0NBQWUsT0FBTyxDQUN6QjtBQUVGLFVBQVEsS0FDTixxQkFBcUIsT0FBTyxjQUFjLENBQUMsS0FBSyxLQUFLLE9BQU8sS0FBSyxXQUNqRSxHQUFHLEtBQ0o7O0NBR0gsU0FBUyxTQUFpQixHQUFHLE1BQXVCO0FBQ2xELE1BQUksQ0FBQ0EsZ0NBQWUsUUFBUSxDQUMxQjtBQUVGLFVBQVEsTUFDTixzQkFBc0IsT0FBTyxjQUFjLENBQUMsS0FBSyxLQUFLLE9BQU8sS0FBSyxXQUNsRSxHQUFHLEtBQ0o7O0NBR0gsU0FBUyxTQUFpQixPQUE0QixHQUFHLE1BQXVCO0FBQzlFLE1BQUksQ0FBQ0EsZ0NBQWUsUUFBUSxDQUMxQjtBQUVGLFVBQVEsTUFDTixzQkFBc0IsT0FBTyxjQUFjLENBQUMsS0FBSyxLQUFLLE9BQU8sS0FBSyxRQUFRLFNBQVMsU0FDbkYsS0FDRDs7Q0FHSCxRQUFRLFNBQWlCLE9BQTRCLEdBQUcsTUFBdUI7QUFDN0UsTUFBSSxDQUFDQSxnQ0FBZSxPQUFPLENBQ3pCO0FBRUYsVUFBUSxLQUNOLHFCQUFxQixPQUFPLGNBQWMsQ0FBQyxLQUFLLEtBQUssT0FBTyxLQUFLLFFBQVEsU0FBUyxTQUNsRixLQUNEOzs7QUFJTCxxQkFBZSJ9
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//#region src/application/logging/logger.d.ts
|
|
2
|
+
declare class Logger {
|
|
3
|
+
private readonly caller;
|
|
4
|
+
constructor(caller: string);
|
|
5
|
+
static getTimestamp(): string;
|
|
6
|
+
logInfo(message: string, ...args: unknown[]): void;
|
|
7
|
+
logDebug(message: string, ...args: unknown[]): void;
|
|
8
|
+
logError(message: string, error: unknown | undefined, ...args: unknown[]): void;
|
|
9
|
+
logWarn(message: string, error: unknown | undefined, ...args: unknown[]): void;
|
|
10
|
+
}
|
|
11
|
+
//#endregion
|
|
12
|
+
export { Logger };
|
|
13
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmQuY3RzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcHBsaWNhdGlvbi9sb2dnaW5nL2xvZ2dlci5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImRlY2xhcmUgY2xhc3MgTG9nZ2VyIHtcbiAgICBwcml2YXRlIHJlYWRvbmx5IGNhbGxlcjtcbiAgICBjb25zdHJ1Y3RvcihjYWxsZXI6IHN0cmluZyk7XG4gICAgc3RhdGljIGdldFRpbWVzdGFtcCgpOiBzdHJpbmc7XG4gICAgbG9nSW5mbyhtZXNzYWdlOiBzdHJpbmcsIC4uLmFyZ3M6IHVua25vd25bXSk6IHZvaWQ7XG4gICAgbG9nRGVidWcobWVzc2FnZTogc3RyaW5nLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkO1xuICAgIGxvZ0Vycm9yKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I6IHVua25vd24gfCB1bmRlZmluZWQsIC4uLmFyZ3M6IHVua25vd25bXSk6IHZvaWQ7XG4gICAgbG9nV2FybihtZXNzYWdlOiBzdHJpbmcsIGVycm9yOiB1bmtub3duIHwgdW5kZWZpbmVkLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkO1xufVxuZXhwb3J0IGRlZmF1bHQgTG9nZ2VyO1xuIl0sIm1hcHBpbmdzIjoiO0FBQUEsSUFBSSxTQUFTLENBQUMsSUFBSSJ9
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
//#region src/application/logging/logger.d.ts
|
|
2
|
+
declare class Logger {
|
|
3
|
+
private readonly caller;
|
|
4
|
+
constructor(caller: string);
|
|
5
|
+
static getTimestamp(): string;
|
|
6
|
+
logInfo(message: string, ...args: unknown[]): void;
|
|
7
|
+
logDebug(message: string, ...args: unknown[]): void;
|
|
8
|
+
logError(message: string, error: unknown | undefined, ...args: unknown[]): void;
|
|
9
|
+
logWarn(message: string, error: unknown | undefined, ...args: unknown[]): void;
|
|
10
|
+
}
|
|
11
|
+
//#endregion
|
|
12
|
+
export { Logger };
|
|
13
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmQudHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2FwcGxpY2F0aW9uL2xvZ2dpbmcvbG9nZ2VyLmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiZGVjbGFyZSBjbGFzcyBMb2dnZXIge1xuICAgIHByaXZhdGUgcmVhZG9ubHkgY2FsbGVyO1xuICAgIGNvbnN0cnVjdG9yKGNhbGxlcjogc3RyaW5nKTtcbiAgICBzdGF0aWMgZ2V0VGltZXN0YW1wKCk6IHN0cmluZztcbiAgICBsb2dJbmZvKG1lc3NhZ2U6IHN0cmluZywgLi4uYXJnczogdW5rbm93bltdKTogdm9pZDtcbiAgICBsb2dEZWJ1ZyhtZXNzYWdlOiBzdHJpbmcsIC4uLmFyZ3M6IHVua25vd25bXSk6IHZvaWQ7XG4gICAgbG9nRXJyb3IobWVzc2FnZTogc3RyaW5nLCBlcnJvcjogdW5rbm93biB8IHVuZGVmaW5lZCwgLi4uYXJnczogdW5rbm93bltdKTogdm9pZDtcbiAgICBsb2dXYXJuKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I6IHVua25vd24gfCB1bmRlZmluZWQsIC4uLmFyZ3M6IHVua25vd25bXSk6IHZvaWQ7XG59XG5leHBvcnQgZGVmYXVsdCBMb2dnZXI7XG4iXSwibWFwcGluZ3MiOiI7QUFBQSxJQUFJLFNBQVMsQ0FBQyxJQUFJIn0=
|
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { isLevelEnabled } from "./logLevel.js";
|
|
2
|
+
|
|
1
3
|
//#region src/application/logging/logger.ts
|
|
2
4
|
var Logger = class Logger {
|
|
3
5
|
constructor(caller) {
|
|
@@ -7,15 +9,19 @@ var Logger = class Logger {
|
|
|
7
9
|
return (/* @__PURE__ */ new Date()).toISOString();
|
|
8
10
|
}
|
|
9
11
|
logInfo(message, ...args) {
|
|
12
|
+
if (!isLevelEnabled("info")) return;
|
|
10
13
|
console.info(`INFO: [envive-ai] ${Logger.getTimestamp()} - ${this.caller} - ${message}`, ...args);
|
|
11
14
|
}
|
|
12
15
|
logDebug(message, ...args) {
|
|
16
|
+
if (!isLevelEnabled("debug")) return;
|
|
13
17
|
console.debug(`DEBUG: [envive-ai] ${Logger.getTimestamp()} - ${this.caller} - ${message}`, ...args);
|
|
14
18
|
}
|
|
15
19
|
logError(message, error, ...args) {
|
|
20
|
+
if (!isLevelEnabled("error")) return;
|
|
16
21
|
console.error(`ERROR: [envive-ai] ${Logger.getTimestamp()} - ${this.caller} - ${message} error=${error}`, args);
|
|
17
22
|
}
|
|
18
23
|
logWarn(message, error, ...args) {
|
|
24
|
+
if (!isLevelEnabled("warn")) return;
|
|
19
25
|
console.warn(`WARN: [envive-ai] ${Logger.getTimestamp()} - ${this.caller} - ${message} error=${error}`, args);
|
|
20
26
|
}
|
|
21
27
|
};
|
|
@@ -23,4 +29,4 @@ var logger_default = Logger;
|
|
|
23
29
|
|
|
24
30
|
//#endregion
|
|
25
31
|
export { logger_default as default };
|
|
26
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,
|
|
32
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibG9nZ2VyLmpzIiwibmFtZXMiOltdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9hcHBsaWNhdGlvbi9sb2dnaW5nL2xvZ2dlci50cyJdLCJzb3VyY2VzQ29udGVudCI6WyIvKiBlc2xpbnQtZGlzYWJsZSBuby1jb25zb2xlICovXG5pbXBvcnQgeyBpc0xldmVsRW5hYmxlZCB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9sb2dnaW5nL2xvZ0xldmVsJztcblxuY2xhc3MgTG9nZ2VyIHtcbiAgcHJpdmF0ZSByZWFkb25seSBjYWxsZXI6IHN0cmluZztcblxuICAvKiBDcmVhdGVzIGEgbmV3IExvZ2dlciBpbnN0YW5jZS5cbiAgICogQHBhcmFtIGNhbGxlciAtIFRoZSBjYWxsZXIgb2YgdGhlIGxvZ2dlci5cbiAgICovXG4gIGNvbnN0cnVjdG9yKGNhbGxlcjogc3RyaW5nKSB7XG4gICAgdGhpcy5jYWxsZXIgPSBjYWxsZXI7XG4gIH1cblxuICBzdGF0aWMgZ2V0VGltZXN0YW1wKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIG5ldyBEYXRlKCkudG9JU09TdHJpbmcoKTtcbiAgfVxuXG4gIGxvZ0luZm8obWVzc2FnZTogc3RyaW5nLCAuLi5hcmdzOiB1bmtub3duW10pOiB2b2lkIHtcbiAgICBpZiAoIWlzTGV2ZWxFbmFibGVkKCdpbmZvJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc29sZS5pbmZvKFxuICAgICAgYElORk86IFtlbnZpdmUtYWldICR7TG9nZ2VyLmdldFRpbWVzdGFtcCgpfSAtICR7dGhpcy5jYWxsZXJ9IC0gJHttZXNzYWdlfWAsXG4gICAgICAuLi5hcmdzLFxuICAgICk7XG4gIH1cblxuICBsb2dEZWJ1ZyhtZXNzYWdlOiBzdHJpbmcsIC4uLmFyZ3M6IHVua25vd25bXSk6IHZvaWQge1xuICAgIGlmICghaXNMZXZlbEVuYWJsZWQoJ2RlYnVnJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc29sZS5kZWJ1ZyhcbiAgICAgIGBERUJVRzogW2Vudml2ZS1haV0gJHtMb2dnZXIuZ2V0VGltZXN0YW1wKCl9IC0gJHt0aGlzLmNhbGxlcn0gLSAke21lc3NhZ2V9YCxcbiAgICAgIC4uLmFyZ3MsXG4gICAgKTtcbiAgfVxuXG4gIGxvZ0Vycm9yKG1lc3NhZ2U6IHN0cmluZywgZXJyb3I6IHVua25vd24gfCB1bmRlZmluZWQsIC4uLmFyZ3M6IHVua25vd25bXSk6IHZvaWQge1xuICAgIGlmICghaXNMZXZlbEVuYWJsZWQoJ2Vycm9yJykpIHtcbiAgICAgIHJldHVybjtcbiAgICB9XG4gICAgY29uc29sZS5lcnJvcihcbiAgICAgIGBFUlJPUjogW2Vudml2ZS1haV0gJHtMb2dnZXIuZ2V0VGltZXN0YW1wKCl9IC0gJHt0aGlzLmNhbGxlcn0gLSAke21lc3NhZ2V9IGVycm9yPSR7ZXJyb3J9YCxcbiAgICAgIGFyZ3MsXG4gICAgKTtcbiAgfVxuXG4gIGxvZ1dhcm4obWVzc2FnZTogc3RyaW5nLCBlcnJvcjogdW5rbm93biB8IHVuZGVmaW5lZCwgLi4uYXJnczogdW5rbm93bltdKTogdm9pZCB7XG4gICAgaWYgKCFpc0xldmVsRW5hYmxlZCgnd2FybicpKSB7XG4gICAgICByZXR1cm47XG4gICAgfVxuICAgIGNvbnNvbGUud2FybihcbiAgICAgIGBXQVJOOiBbZW52aXZlLWFpXSAke0xvZ2dlci5nZXRUaW1lc3RhbXAoKX0gLSAke3RoaXMuY2FsbGVyfSAtICR7bWVzc2FnZX0gZXJyb3I9JHtlcnJvcn1gLFxuICAgICAgYXJncyxcbiAgICApO1xuICB9XG59XG5cbmV4cG9ydCBkZWZhdWx0IExvZ2dlcjtcbiJdLCJtYXBwaW5ncyI6Ijs7O0FBR0EsSUFBTSxTQUFOLE1BQU0sT0FBTztDQU1YLFlBQVksUUFBZ0I7QUFDMUIsT0FBSyxTQUFTOztDQUdoQixPQUFPLGVBQXVCO0FBQzVCLDBCQUFPLElBQUksTUFBTSxFQUFDLGFBQWE7O0NBR2pDLFFBQVEsU0FBaUIsR0FBRyxNQUF1QjtBQUNqRCxNQUFJLENBQUMsZUFBZSxPQUFPLENBQ3pCO0FBRUYsVUFBUSxLQUNOLHFCQUFxQixPQUFPLGNBQWMsQ0FBQyxLQUFLLEtBQUssT0FBTyxLQUFLLFdBQ2pFLEdBQUcsS0FDSjs7Q0FHSCxTQUFTLFNBQWlCLEdBQUcsTUFBdUI7QUFDbEQsTUFBSSxDQUFDLGVBQWUsUUFBUSxDQUMxQjtBQUVGLFVBQVEsTUFDTixzQkFBc0IsT0FBTyxjQUFjLENBQUMsS0FBSyxLQUFLLE9BQU8sS0FBSyxXQUNsRSxHQUFHLEtBQ0o7O0NBR0gsU0FBUyxTQUFpQixPQUE0QixHQUFHLE1BQXVCO0FBQzlFLE1BQUksQ0FBQyxlQUFlLFFBQVEsQ0FDMUI7QUFFRixVQUFRLE1BQ04sc0JBQXNCLE9BQU8sY0FBYyxDQUFDLEtBQUssS0FBSyxPQUFPLEtBQUssUUFBUSxTQUFTLFNBQ25GLEtBQ0Q7O0NBR0gsUUFBUSxTQUFpQixPQUE0QixHQUFHLE1BQXVCO0FBQzdFLE1BQUksQ0FBQyxlQUFlLE9BQU8sQ0FDekI7QUFFRixVQUFRLEtBQ04scUJBQXFCLE9BQU8sY0FBYyxDQUFDLEtBQUssS0FBSyxPQUFPLEtBQUssUUFBUSxTQUFTLFNBQ2xGLEtBQ0Q7OztBQUlMLHFCQUFlIn0=
|
|
@@ -2,7 +2,7 @@ import { UserIdentityContextType } from "../../contexts/userIdentityContext/user
|
|
|
2
2
|
import { hasParsedVariantInfoAtom, pageUserEventAtom, pageVariantInfoAtom, supportedEventAtom, variantInfoAtom } from "./variant.cjs";
|
|
3
3
|
import { VariantInfo } from "../../application/models/variantInfo/variantInfo.cjs";
|
|
4
4
|
import { ContextEnvEnum, ContextSourceEnum } from "@spiffy-ai/commerce-api-client";
|
|
5
|
-
import * as
|
|
5
|
+
import * as jotai30 from "jotai";
|
|
6
6
|
import * as jotai_utils0 from "jotai/utils";
|
|
7
7
|
|
|
8
8
|
//#region src/atoms/app/index.d.ts
|
|
@@ -15,13 +15,13 @@ interface AppDetails {
|
|
|
15
15
|
env: ContextEnvEnum;
|
|
16
16
|
variantInfo: VariantInfo;
|
|
17
17
|
}
|
|
18
|
-
declare const userIdAtom:
|
|
19
|
-
declare const userIdentityAtom:
|
|
18
|
+
declare const userIdAtom: jotai30.WritableAtom<string, [value: string], void>;
|
|
19
|
+
declare const userIdentityAtom: jotai30.PrimitiveAtom<UserIdentityContextType | undefined> & {
|
|
20
20
|
init: UserIdentityContextType | undefined;
|
|
21
21
|
};
|
|
22
|
-
declare const appSourceAtom:
|
|
23
|
-
declare const chatIdAtom:
|
|
24
|
-
declare const appDetailsAtom:
|
|
22
|
+
declare const appSourceAtom: jotai30.Atom<ContextSourceEnum>;
|
|
23
|
+
declare const chatIdAtom: jotai30.WritableAtom<string, [string | typeof jotai_utils0.RESET | ((prev: string) => string | typeof jotai_utils0.RESET)], void>;
|
|
24
|
+
declare const appDetailsAtom: jotai30.Atom<AppDetails>;
|
|
25
25
|
//#endregion
|
|
26
26
|
export { AppDetails, appDetailsAtom, appSourceAtom, chatIdAtom, hasParsedVariantInfoAtom, pageUserEventAtom, pageVariantInfoAtom, supportedEventAtom, userIdAtom, userIdentityAtom, variantInfoAtom };
|
|
27
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F0b21zL2FwcC9pbmRleC5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRleHRFbnZFbnVtLCBDb250ZXh0U291cmNlRW51bSB9IGZyb20gJ0BzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudCc7XG5pbXBvcnQgeyBWYXJpYW50SW5mbyB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHR5cGUgeyBVc2VySWRlbnRpdHlDb250ZXh0VHlwZSB9IGZyb20gJ3NyYy9jb250ZXh0cy91c2VySWRlbnRpdHlDb250ZXh0L3VzZXJJZGVudGl0eUNvbnRleHQnO1xuZXhwb3J0IGludGVyZmFjZSBBcHBEZXRhaWxzIHtcbiAgICBvcmdJZDogc3RyaW5nO1xuICAgIG9yZ1Nob3J0TmFtZTogc3RyaW5nO1xuICAgIGNoYXRJZDogc3RyaW5nO1xuICAgIHVzZXJJZDogc3RyaW5nO1xuICAgIHNvdXJjZTogQ29udGV4dFNvdXJjZUVudW07XG4gICAgZW52OiBDb250ZXh0RW52RW51bTtcbiAgICB2YXJpYW50SW5mbzogVmFyaWFudEluZm87XG59XG5leHBvcnQgeyBwYWdlVXNlckV2ZW50QXRvbSwgcGFnZVZhcmlhbnRJbmZvQXRvbSwgdmFyaWFudEluZm9BdG9tLCBoYXNQYXJzZWRWYXJpYW50SW5mb0F0b20sIHN1cHBvcnRlZEV2ZW50QXRvbSwgfSBmcm9tICcuL3ZhcmlhbnQnO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlcklkQXRvbTogaW1wb3J0KFwiam90YWlcIikuV3JpdGFibGVBdG9tPHN0cmluZywgW3ZhbHVlOiBzdHJpbmddLCB2b2lkPjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZXJJZGVudGl0eUF0b206IGltcG9ydChcImpvdGFpXCIpLlByaW1pdGl2ZUF0b208VXNlcklkZW50aXR5Q29udGV4dFR5cGUgfCB1bmRlZmluZWQ+ICYge1xuICAgIGluaXQ6IFVzZXJJZGVudGl0eUNvbnRleHRUeXBlIHwgdW5kZWZpbmVkO1xufTtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGFwcFNvdXJjZUF0b206IGltcG9ydChcImpvdGFpXCIpLkF0b208Q29udGV4dFNvdXJjZUVudW0+
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC5jdHMiLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2F0b21zL2FwcC9pbmRleC5kLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbnRleHRFbnZFbnVtLCBDb250ZXh0U291cmNlRW51bSB9IGZyb20gJ0BzcGlmZnktYWkvY29tbWVyY2UtYXBpLWNsaWVudCc7XG5pbXBvcnQgeyBWYXJpYW50SW5mbyB9IGZyb20gJ3NyYy9hcHBsaWNhdGlvbi9tb2RlbHMnO1xuaW1wb3J0IHR5cGUgeyBVc2VySWRlbnRpdHlDb250ZXh0VHlwZSB9IGZyb20gJ3NyYy9jb250ZXh0cy91c2VySWRlbnRpdHlDb250ZXh0L3VzZXJJZGVudGl0eUNvbnRleHQnO1xuZXhwb3J0IGludGVyZmFjZSBBcHBEZXRhaWxzIHtcbiAgICBvcmdJZDogc3RyaW5nO1xuICAgIG9yZ1Nob3J0TmFtZTogc3RyaW5nO1xuICAgIGNoYXRJZDogc3RyaW5nO1xuICAgIHVzZXJJZDogc3RyaW5nO1xuICAgIHNvdXJjZTogQ29udGV4dFNvdXJjZUVudW07XG4gICAgZW52OiBDb250ZXh0RW52RW51bTtcbiAgICB2YXJpYW50SW5mbzogVmFyaWFudEluZm87XG59XG5leHBvcnQgeyBwYWdlVXNlckV2ZW50QXRvbSwgcGFnZVZhcmlhbnRJbmZvQXRvbSwgdmFyaWFudEluZm9BdG9tLCBoYXNQYXJzZWRWYXJpYW50SW5mb0F0b20sIHN1cHBvcnRlZEV2ZW50QXRvbSwgfSBmcm9tICcuL3ZhcmlhbnQnO1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlcklkQXRvbTogaW1wb3J0KFwiam90YWlcIikuV3JpdGFibGVBdG9tPHN0cmluZywgW3ZhbHVlOiBzdHJpbmddLCB2b2lkPjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IHVzZXJJZGVudGl0eUF0b206IGltcG9ydChcImpvdGFpXCIpLlByaW1pdGl2ZUF0b208VXNlcklkZW50aXR5Q29udGV4dFR5cGUgfCB1bmRlZmluZWQ+ICYge1xuICAgIGluaXQ6IFVzZXJJZGVudGl0eUNvbnRleHRUeXBlIHwgdW5kZWZpbmVkO1xufTtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGFwcFNvdXJjZUF0b206IGltcG9ydChcImpvdGFpXCIpLkF0b208Q29udGV4dFNvdXJjZUVudW0+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgY2hhdElkQXRvbTogaW1wb3J0KFwiam90YWlcIikuV3JpdGFibGVBdG9tPHN0cmluZywgW3N0cmluZyB8IHR5cGVvZiBpbXBvcnQoXCJqb3RhaS91dGlsc1wiKS5SRVNFVCB8ICgocHJldjogc3RyaW5nKSA9PiBzdHJpbmcgfCB0eXBlb2YgaW1wb3J0KFwiam90YWkvdXRpbHNcIikuUkVTRVQpXSwgdm9pZD47XG5leHBvcnQgZGVjbGFyZSBjb25zdCBhcHBEZXRhaWxzQXRvbTogaW1wb3J0KFwiam90YWlcIikuQXRvbTxBcHBEZXRhaWxzPjtcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7QUFLQSxJQUFXLGFBQWE7Q0FBQTtPQUFBO09BQUE7T0FBQTtDQUFBO0FBRXhCLElBQVcsYUFBTyxDQUFBLFdBQUEsUUFBQSxhQUFBO0FBQ2xCLElBQVcsbUJBQWtCO0NBQUE7T0FBQTtPQUFBLFFBQUE7T0FBQTtDQUFBO0FBQzdCLElBQVcsZ0JBQVk7Q0FBQTtPQUFBO09BQUEsUUFBQTtDQUFBO0FBQ3ZCLElBQVcsYUFBYTtDQUFDO09BQUcsYUFBQTtPQUFBLGFBQUE7T0FBQSxRQUFBO0NBQUE7QUFDNUIsSUFBQSxpQkFBQTtDQUFBO09BQUE7T0FBQSxRQUFBO0NBQUEifQ==
|
|
@@ -2,7 +2,7 @@ import { UserIdentityContextType } from "../../contexts/userIdentityContext/user
|
|
|
2
2
|
import { hasParsedVariantInfoAtom, pageUserEventAtom, pageVariantInfoAtom, supportedEventAtom, variantInfoAtom } from "./variant.js";
|
|
3
3
|
import { VariantInfo } from "../../application/models/variantInfo/variantInfo.js";
|
|
4
4
|
import { ContextEnvEnum, ContextSourceEnum } from "@spiffy-ai/commerce-api-client";
|
|
5
|
-
import * as
|
|
5
|
+
import * as jotai18 from "jotai";
|
|
6
6
|
import * as jotai_utils0 from "jotai/utils";
|
|
7
7
|
|
|
8
8
|
//#region src/atoms/app/index.d.ts
|
|
@@ -15,13 +15,13 @@ interface AppDetails {
|
|
|
15
15
|
env: ContextEnvEnum;
|
|
16
16
|
variantInfo: VariantInfo;
|
|
17
17
|
}
|
|
18
|
-
declare const userIdAtom:
|
|
19
|
-
declare const userIdentityAtom:
|
|
18
|
+
declare const userIdAtom: jotai18.WritableAtom<string, [value: string], void>;
|
|
19
|
+
declare const userIdentityAtom: jotai18.PrimitiveAtom<UserIdentityContextType | undefined> & {
|
|
20
20
|
init: UserIdentityContextType | undefined;
|
|
21
21
|
};
|
|
22
|
-
declare const appSourceAtom:
|
|
23
|
-
declare const chatIdAtom:
|
|
24
|
-
declare const appDetailsAtom:
|
|
22
|
+
declare const appSourceAtom: jotai18.Atom<ContextSourceEnum>;
|
|
23
|
+
declare const chatIdAtom: jotai18.WritableAtom<string, [string | typeof jotai_utils0.RESET | ((prev: string) => string | typeof jotai_utils0.RESET)], void>;
|
|
24
|
+
declare const appDetailsAtom: jotai18.Atom<AppDetails>;
|
|
25
25
|
//#endregion
|
|
26
26
|
export { AppDetails, appDetailsAtom, appSourceAtom, chatIdAtom, hasParsedVariantInfoAtom, pageUserEventAtom, pageVariantInfoAtom, supportedEventAtom, userIdAtom, userIdentityAtom, variantInfoAtom };
|
|
27
|
-
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXRvbXMvYXBwL2luZGV4LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGV4dEVudkVudW0sIENvbnRleHRTb3VyY2VFbnVtIH0gZnJvbSAnQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50JztcbmltcG9ydCB7IFZhcmlhbnRJbmZvIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5pbXBvcnQgdHlwZSB7IFVzZXJJZGVudGl0eUNvbnRleHRUeXBlIH0gZnJvbSAnc3JjL2NvbnRleHRzL3VzZXJJZGVudGl0eUNvbnRleHQvdXNlcklkZW50aXR5Q29udGV4dCc7XG5leHBvcnQgaW50ZXJmYWNlIEFwcERldGFpbHMge1xuICAgIG9yZ0lkOiBzdHJpbmc7XG4gICAgb3JnU2hvcnROYW1lOiBzdHJpbmc7XG4gICAgY2hhdElkOiBzdHJpbmc7XG4gICAgdXNlcklkOiBzdHJpbmc7XG4gICAgc291cmNlOiBDb250ZXh0U291cmNlRW51bTtcbiAgICBlbnY6IENvbnRleHRFbnZFbnVtO1xuICAgIHZhcmlhbnRJbmZvOiBWYXJpYW50SW5mbztcbn1cbmV4cG9ydCB7IHBhZ2VVc2VyRXZlbnRBdG9tLCBwYWdlVmFyaWFudEluZm9BdG9tLCB2YXJpYW50SW5mb0F0b20sIGhhc1BhcnNlZFZhcmlhbnRJbmZvQXRvbSwgc3VwcG9ydGVkRXZlbnRBdG9tLCB9IGZyb20gJy4vdmFyaWFudCc7XG5leHBvcnQgZGVjbGFyZSBjb25zdCB1c2VySWRBdG9tOiBpbXBvcnQoXCJqb3RhaVwiKS5Xcml0YWJsZUF0b208c3RyaW5nLCBbdmFsdWU6IHN0cmluZ10sIHZvaWQ+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlcklkZW50aXR5QXRvbTogaW1wb3J0KFwiam90YWlcIikuUHJpbWl0aXZlQXRvbTxVc2VySWRlbnRpdHlDb250ZXh0VHlwZSB8IHVuZGVmaW5lZD4gJiB7XG4gICAgaW5pdDogVXNlcklkZW50aXR5Q29udGV4dFR5cGUgfCB1bmRlZmluZWQ7XG59O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgYXBwU291cmNlQXRvbTogaW1wb3J0KFwiam90YWlcIikuQXRvbTxDb250ZXh0U291cmNlRW51bT47XG5leHBvcnQgZGVjbGFyZSBjb25zdCBjaGF0SWRBdG9tOiBpbXBvcnQoXCJqb3RhaVwiKS5Xcml0YWJsZUF0b208c3RyaW5nLCBbc3RyaW5nIHwgdHlwZW9mIGltcG9ydChcImpvdGFpL3V0aWxzXCIpLlJFU0VUIHwgKChwcmV2OiBzdHJpbmcpID0+IHN0cmluZyB8IHR5cGVvZiBpbXBvcnQoXCJqb3RhaS91dGlsc1wiKS5SRVNFVCldLCB2b2lkPjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGFwcERldGFpbHNBdG9tOiBpbXBvcnQoXCJqb3RhaVwiKS5BdG9tPEFwcERldGFpbHM+
|
|
27
|
+
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguZC50cyIsIm5hbWVzIjpbXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvYXRvbXMvYXBwL2luZGV4LmQudHMiXSwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29udGV4dEVudkVudW0sIENvbnRleHRTb3VyY2VFbnVtIH0gZnJvbSAnQHNwaWZmeS1haS9jb21tZXJjZS1hcGktY2xpZW50JztcbmltcG9ydCB7IFZhcmlhbnRJbmZvIH0gZnJvbSAnc3JjL2FwcGxpY2F0aW9uL21vZGVscyc7XG5pbXBvcnQgdHlwZSB7IFVzZXJJZGVudGl0eUNvbnRleHRUeXBlIH0gZnJvbSAnc3JjL2NvbnRleHRzL3VzZXJJZGVudGl0eUNvbnRleHQvdXNlcklkZW50aXR5Q29udGV4dCc7XG5leHBvcnQgaW50ZXJmYWNlIEFwcERldGFpbHMge1xuICAgIG9yZ0lkOiBzdHJpbmc7XG4gICAgb3JnU2hvcnROYW1lOiBzdHJpbmc7XG4gICAgY2hhdElkOiBzdHJpbmc7XG4gICAgdXNlcklkOiBzdHJpbmc7XG4gICAgc291cmNlOiBDb250ZXh0U291cmNlRW51bTtcbiAgICBlbnY6IENvbnRleHRFbnZFbnVtO1xuICAgIHZhcmlhbnRJbmZvOiBWYXJpYW50SW5mbztcbn1cbmV4cG9ydCB7IHBhZ2VVc2VyRXZlbnRBdG9tLCBwYWdlVmFyaWFudEluZm9BdG9tLCB2YXJpYW50SW5mb0F0b20sIGhhc1BhcnNlZFZhcmlhbnRJbmZvQXRvbSwgc3VwcG9ydGVkRXZlbnRBdG9tLCB9IGZyb20gJy4vdmFyaWFudCc7XG5leHBvcnQgZGVjbGFyZSBjb25zdCB1c2VySWRBdG9tOiBpbXBvcnQoXCJqb3RhaVwiKS5Xcml0YWJsZUF0b208c3RyaW5nLCBbdmFsdWU6IHN0cmluZ10sIHZvaWQ+O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgdXNlcklkZW50aXR5QXRvbTogaW1wb3J0KFwiam90YWlcIikuUHJpbWl0aXZlQXRvbTxVc2VySWRlbnRpdHlDb250ZXh0VHlwZSB8IHVuZGVmaW5lZD4gJiB7XG4gICAgaW5pdDogVXNlcklkZW50aXR5Q29udGV4dFR5cGUgfCB1bmRlZmluZWQ7XG59O1xuZXhwb3J0IGRlY2xhcmUgY29uc3QgYXBwU291cmNlQXRvbTogaW1wb3J0KFwiam90YWlcIikuQXRvbTxDb250ZXh0U291cmNlRW51bT47XG5leHBvcnQgZGVjbGFyZSBjb25zdCBjaGF0SWRBdG9tOiBpbXBvcnQoXCJqb3RhaVwiKS5Xcml0YWJsZUF0b208c3RyaW5nLCBbc3RyaW5nIHwgdHlwZW9mIGltcG9ydChcImpvdGFpL3V0aWxzXCIpLlJFU0VUIHwgKChwcmV2OiBzdHJpbmcpID0+IHN0cmluZyB8IHR5cGVvZiBpbXBvcnQoXCJqb3RhaS91dGlsc1wiKS5SRVNFVCldLCB2b2lkPjtcbmV4cG9ydCBkZWNsYXJlIGNvbnN0IGFwcERldGFpbHNBdG9tOiBpbXBvcnQoXCJqb3RhaVwiKS5BdG9tPEFwcERldGFpbHM+O1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7OztBQUtBLElBQVcsYUFBYTtDQUFBO09BQUE7T0FBQTtPQUFBO0NBQUE7QUFFeEIsSUFBVyxhQUFPLENBQUEsVUFBQSxRQUFBLGFBQUE7QUFDbEIsSUFBVyxtQkFBa0I7Q0FBQTtPQUFBO09BQUEsUUFBQTtPQUFBO0NBQUE7QUFDN0IsSUFBVyxnQkFBWTtDQUFBO09BQUE7T0FBQSxRQUFBO0NBQUE7QUFDdkIsSUFBVyxhQUFhO0NBQUM7T0FBRyxhQUFBO09BQUEsYUFBQTtPQUFBLFFBQUE7Q0FBQTtBQUM1QixJQUFBLGlCQUFBO0NBQUE7T0FBQTtPQUFBLFFBQUE7Q0FBQSJ9
|
|
@@ -2,7 +2,7 @@ import { PageVariantInfo } from "../../contexts/pageContext/types.cjs";
|
|
|
2
2
|
import { UserEvent as UserEvent$1 } from "../../application/models/api/userEvent.cjs";
|
|
3
3
|
import { VariantInfo } from "../../application/models/variantInfo/variantInfo.cjs";
|
|
4
4
|
import { PageVisitCategory, SupportedEventResponse, UserEvent } from "@spiffy-ai/commerce-api-client";
|
|
5
|
-
import * as
|
|
5
|
+
import * as jotai54 from "jotai";
|
|
6
6
|
|
|
7
7
|
//#region src/atoms/app/variant.d.ts
|
|
8
8
|
interface SupportedEvent extends Pick<SupportedEventResponse, 'supported' | 'ready' | 'category' | 'collections' | 'top_category'> {
|
|
@@ -73,15 +73,15 @@ interface UrlResolverResponse {
|
|
|
73
73
|
user_event?: UserEvent;
|
|
74
74
|
page_variant?: BackendPageVariantConfig;
|
|
75
75
|
}
|
|
76
|
-
declare const supportedEventAtom:
|
|
77
|
-
declare const hasParsedVariantInfoAtom:
|
|
76
|
+
declare const supportedEventAtom: jotai54.WritableAtom<SupportedEvent | undefined, [value: SupportedEvent | undefined], void>;
|
|
77
|
+
declare const hasParsedVariantInfoAtom: jotai54.PrimitiveAtom<boolean> & {
|
|
78
78
|
init: boolean;
|
|
79
79
|
};
|
|
80
|
-
declare const variantInfoAtom:
|
|
81
|
-
declare const pageUserEventAtom:
|
|
80
|
+
declare const variantInfoAtom: jotai54.WritableAtom<VariantInfo, [newVariant: VariantInfo], void>;
|
|
81
|
+
declare const pageUserEventAtom: jotai54.PrimitiveAtom<UserEvent$1 | undefined> & {
|
|
82
82
|
init: UserEvent$1 | undefined;
|
|
83
83
|
};
|
|
84
|
-
declare const pageVariantInfoAtom:
|
|
84
|
+
declare const pageVariantInfoAtom: jotai54.PrimitiveAtom<PageVariantInfo | undefined> & {
|
|
85
85
|
init: PageVariantInfo | undefined;
|
|
86
86
|
};
|
|
87
87
|
//#endregion
|