@bigbinary/neeto-commons-frontend 4.13.95 → 4.13.97
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/configs/esbuild/index.js +4 -0
- package/configs/esbuild/plugins/packageTranslations.js +16 -0
- package/configs/esbuild/plugins/preval.js +16 -6
- package/configs/esbuild/plugins/reactGiphy.js +1 -0
- package/configs/scripts/buildTranslationImports.js +21 -0
- package/configs/scripts/getEnglishTranslation.js +11 -0
- package/configs/utils/packageTranslations.js +90 -0
- package/configs/vite/index.js +5 -0
- package/configs/vite/plugins/packageTranslations.js +14 -0
- package/configs/vite/plugins/preval.js +17 -11
- package/dist/cjs/initializers/i18n.js +120 -183
- package/dist/cjs/initializers/i18n.js.map +1 -1
- package/dist/cjs/initializers/index.js +43 -19
- package/dist/cjs/initializers/index.js.map +1 -1
- package/dist/cjs/{lodash-yQg9l0eZ.js → lodash-CAzW54WT.js} +44 -5
- package/dist/cjs/lodash-CAzW54WT.js.map +1 -0
- package/dist/cjs/react-utils/index.js +1 -1
- package/dist/cjs/react-utils/mount/mount.js +68 -69
- package/dist/cjs/react-utils/mount/mount.js.map +1 -1
- package/dist/cjs/react-utils/useLocalStorage/index.js +1 -1
- package/dist/cjs/react-utils/useLocalStorage/useLocalStorage.js +1 -1
- package/dist/cjs/utils/captureAnalyticsEvent.js +1 -1
- package/dist/cjs/utils/captureAnalyticsPageView.js +1 -1
- package/dist/cjs/utils/index.js +1 -1
- package/dist/cjs/utils/timezonePlugin.js +2 -0
- package/dist/cjs/utils/timezonePlugin.js.map +1 -1
- package/dist/initializers/i18n.js +120 -183
- package/dist/initializers/i18n.js.map +1 -1
- package/dist/initializers/index.js +43 -19
- package/dist/initializers/index.js.map +1 -1
- package/dist/{lodash-M8VRFvKw.js → lodash-BE1wh9Io.js} +44 -5
- package/dist/lodash-BE1wh9Io.js.map +1 -0
- package/dist/react-utils/index.js +1 -1
- package/dist/react-utils/mount/mount.js +68 -69
- package/dist/react-utils/mount/mount.js.map +1 -1
- package/dist/react-utils/useLocalStorage/index.js +1 -1
- package/dist/react-utils/useLocalStorage/useLocalStorage.js +1 -1
- package/dist/utils/captureAnalyticsEvent.js +1 -1
- package/dist/utils/captureAnalyticsPageView.js +1 -1
- package/dist/utils/index.js +1 -1
- package/dist/utils/timezonePlugin.js +2 -0
- package/dist/utils/timezonePlugin.js.map +1 -1
- package/initializers.d.ts +1 -1
- package/package.json +6 -4
- package/react-utils.d.ts +3 -3
- package/src/translations/ar.json +111 -0
- package/src/translations/bg.json +111 -0
- package/src/translations/ca.json +111 -0
- package/src/translations/cs.json +111 -0
- package/src/translations/da.json +111 -0
- package/src/translations/de.json +111 -0
- package/src/translations/en.json +111 -0
- package/src/translations/es-MX.json +111 -0
- package/src/translations/es.json +111 -0
- package/src/translations/et.json +111 -0
- package/src/translations/fi.json +111 -0
- package/src/translations/fil.json +111 -0
- package/src/translations/fr.json +111 -0
- package/src/translations/he.json +111 -0
- package/src/translations/hi.json +111 -0
- package/src/translations/hr.json +111 -0
- package/src/translations/id.json +111 -0
- package/src/translations/it.json +111 -0
- package/src/translations/ja.json +111 -0
- package/src/translations/ko.json +111 -0
- package/src/translations/nl.json +111 -0
- package/src/translations/pl.json +111 -0
- package/src/translations/pt-BR.json +111 -0
- package/src/translations/pt.json +111 -0
- package/src/translations/ro.json +111 -0
- package/src/translations/ru.json +111 -0
- package/src/translations/sk.json +111 -0
- package/src/translations/sl.json +111 -0
- package/src/translations/sv.json +111 -0
- package/src/translations/th.json +111 -0
- package/src/translations/tr.json +111 -0
- package/src/translations/uk.json +111 -0
- package/src/translations/vi.json +111 -0
- package/src/translations/zh-CN.json +111 -0
- package/src/translations/zh-TW.json +111 -0
- package/configs/scripts/getPkgTranslations.js +0 -45
- package/dist/cjs/lodash-yQg9l0eZ.js.map +0 -1
- package/dist/lodash-M8VRFvKw.js.map +0 -1
|
@@ -76,7 +76,7 @@ require('dayjs');
|
|
|
76
76
|
require('../utils/createSubscription.js');
|
|
77
77
|
require('@rails/actioncable');
|
|
78
78
|
require('yup');
|
|
79
|
-
require('../lodash-
|
|
79
|
+
require('../lodash-CAzW54WT.js');
|
|
80
80
|
require('@bigbinary/neeto-time-zones');
|
|
81
81
|
require('ua-parser-js');
|
|
82
82
|
require('@tanstack/react-query');
|
|
@@ -10,76 +10,75 @@ require('../../_commonjsHelpers-BJu3ubxk.js');
|
|
|
10
10
|
|
|
11
11
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
12
12
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), true).forEach(function (r) { defineProperty._defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
13
|
-
function
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
var _ref2, reactClass, reactProps, importFn, props, module, Component, root;
|
|
20
|
-
return index._regeneratorRuntime.wrap(function _callee$(_context) {
|
|
21
|
-
while (1) switch (_context.prev = _context.next) {
|
|
22
|
-
case 0:
|
|
23
|
-
if (!(((_element$dataset = element.dataset) === null || _element$dataset === void 0 ? void 0 : _element$dataset.mounted) === "true")) {
|
|
24
|
-
_context.next = 2;
|
|
25
|
-
break;
|
|
26
|
-
}
|
|
27
|
-
return _context.abrupt("return");
|
|
28
|
-
case 2:
|
|
29
|
-
_ref2 = element.dataset || {}, reactClass = _ref2.reactClass, reactProps = _ref2.reactProps;
|
|
30
|
-
if (reactClass) {
|
|
31
|
-
_context.next = 5;
|
|
32
|
-
break;
|
|
33
|
-
}
|
|
34
|
-
return _context.abrupt("return");
|
|
35
|
-
case 5:
|
|
36
|
-
importFn = components[reactClass];
|
|
37
|
-
if (importFn) {
|
|
38
|
-
_context.next = 9;
|
|
39
|
-
break;
|
|
40
|
-
}
|
|
41
|
-
console.warn("WARNING: No component found for:", reactClass, components);
|
|
42
|
-
return _context.abrupt("return");
|
|
43
|
-
case 9:
|
|
44
|
-
props = {};
|
|
45
|
-
if (reactProps) {
|
|
46
|
-
try {
|
|
47
|
-
props = JSON.parse(reactProps);
|
|
48
|
-
} catch (_unused) {
|
|
49
|
-
console.error("Invalid JSON in data-react-props:", reactProps);
|
|
50
|
-
}
|
|
51
|
-
}
|
|
52
|
-
_context.prev = 11;
|
|
53
|
-
_context.next = 14;
|
|
54
|
-
return utils_retryImport(importFn);
|
|
55
|
-
case 14:
|
|
56
|
-
module = _context.sent;
|
|
57
|
-
Component = module["default"] || module;
|
|
58
|
-
root = ReactDOM.createRoot(element);
|
|
59
|
-
root.render(/*#__PURE__*/jsxRuntime.jsx(Component, _objectSpread({}, props)));
|
|
60
|
-
if (element.dataset) element.dataset.mounted = "true";
|
|
61
|
-
_context.next = 24;
|
|
62
|
-
break;
|
|
63
|
-
case 21:
|
|
64
|
-
_context.prev = 21;
|
|
65
|
-
_context.t0 = _context["catch"](11);
|
|
66
|
-
console.error("Failed to load component \"".concat(reactClass, "\""), _context.t0);
|
|
67
|
-
case 24:
|
|
68
|
-
case "end":
|
|
69
|
-
return _context.stop();
|
|
70
|
-
}
|
|
71
|
-
}, _callee, null, [[11, 21]]);
|
|
72
|
-
}));
|
|
73
|
-
return function (_x) {
|
|
74
|
-
return _ref.apply(this, arguments);
|
|
75
|
-
};
|
|
76
|
-
}());
|
|
77
|
-
};
|
|
78
|
-
if (document.readyState === "loading") {
|
|
79
|
-
document.addEventListener("DOMContentLoaded", run);
|
|
80
|
-
} else {
|
|
81
|
-
run();
|
|
13
|
+
var jsonParse = function jsonParse(value) {
|
|
14
|
+
if (typeof value !== "string") return {};
|
|
15
|
+
try {
|
|
16
|
+
return JSON.parse(value);
|
|
17
|
+
} catch (_unused) {
|
|
18
|
+
return {};
|
|
82
19
|
}
|
|
20
|
+
};
|
|
21
|
+
function mount(_x) {
|
|
22
|
+
return _mount.apply(this, arguments);
|
|
23
|
+
}
|
|
24
|
+
function _mount() {
|
|
25
|
+
_mount = index._asyncToGenerator(/*#__PURE__*/index._regeneratorRuntime.mark(function _callee(componentMap) {
|
|
26
|
+
var _element$dataset;
|
|
27
|
+
var element, _ref, reactClass, reactProps, importFn, props, module, Component, root;
|
|
28
|
+
return index._regeneratorRuntime.wrap(function _callee$(_context) {
|
|
29
|
+
while (1) switch (_context.prev = _context.next) {
|
|
30
|
+
case 0:
|
|
31
|
+
element = document.querySelector("[data-react-class]");
|
|
32
|
+
if (element) {
|
|
33
|
+
_context.next = 3;
|
|
34
|
+
break;
|
|
35
|
+
}
|
|
36
|
+
return _context.abrupt("return");
|
|
37
|
+
case 3:
|
|
38
|
+
if (!(((_element$dataset = element.dataset) === null || _element$dataset === void 0 ? void 0 : _element$dataset.mounted) === "true")) {
|
|
39
|
+
_context.next = 5;
|
|
40
|
+
break;
|
|
41
|
+
}
|
|
42
|
+
return _context.abrupt("return");
|
|
43
|
+
case 5:
|
|
44
|
+
_ref = element.dataset || {}, reactClass = _ref.reactClass, reactProps = _ref.reactProps;
|
|
45
|
+
if (reactClass) {
|
|
46
|
+
_context.next = 8;
|
|
47
|
+
break;
|
|
48
|
+
}
|
|
49
|
+
return _context.abrupt("return");
|
|
50
|
+
case 8:
|
|
51
|
+
importFn = componentMap[reactClass];
|
|
52
|
+
if (importFn) {
|
|
53
|
+
_context.next = 12;
|
|
54
|
+
break;
|
|
55
|
+
}
|
|
56
|
+
console.warn("WARNING: No component found for:", reactClass, componentMap);
|
|
57
|
+
return _context.abrupt("return");
|
|
58
|
+
case 12:
|
|
59
|
+
props = jsonParse(reactProps);
|
|
60
|
+
_context.prev = 13;
|
|
61
|
+
_context.next = 16;
|
|
62
|
+
return utils_retryImport(importFn);
|
|
63
|
+
case 16:
|
|
64
|
+
module = _context.sent;
|
|
65
|
+
Component = module["default"] || module;
|
|
66
|
+
root = ReactDOM.createRoot(element);
|
|
67
|
+
root.render(/*#__PURE__*/jsxRuntime.jsx(Component, _objectSpread({}, props)));
|
|
68
|
+
if (element.dataset) element.dataset.mounted = "true";
|
|
69
|
+
_context.next = 26;
|
|
70
|
+
break;
|
|
71
|
+
case 23:
|
|
72
|
+
_context.prev = 23;
|
|
73
|
+
_context.t0 = _context["catch"](13);
|
|
74
|
+
console.error("Failed to load component \"".concat(reactClass, "\""), _context.t0);
|
|
75
|
+
case 26:
|
|
76
|
+
case "end":
|
|
77
|
+
return _context.stop();
|
|
78
|
+
}
|
|
79
|
+
}, _callee, null, [[13, 23]]);
|
|
80
|
+
}));
|
|
81
|
+
return _mount.apply(this, arguments);
|
|
83
82
|
}
|
|
84
83
|
|
|
85
84
|
module.exports = mount;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mount.js","sources":["../../../../src/react-utils/mount/mount.jsx"],"sourcesContent":["/* eslint-disable no-console */\nimport ReactDOM from \"react-dom/client\";\nimport retryImport from \"utils/retryImport\";\n\
|
|
1
|
+
{"version":3,"file":"mount.js","sources":["../../../../src/react-utils/mount/mount.jsx"],"sourcesContent":["/* eslint-disable no-console */\nimport ReactDOM from \"react-dom/client\";\nimport retryImport from \"utils/retryImport\";\n\nconst jsonParse = value => {\n if (typeof value !== \"string\") return {};\n\n try {\n return JSON.parse(value);\n } catch {\n return {};\n }\n};\n\nexport default async function mount(componentMap) {\n const element = document.querySelector(\"[data-react-class]\");\n if (!element) return;\n\n if (element.dataset?.mounted === \"true\") return;\n\n const { reactClass, reactProps } = element.dataset || {};\n if (!reactClass) return;\n\n const importFn = componentMap[reactClass];\n\n if (!importFn) {\n console.warn(\"WARNING: No component found for:\", reactClass, componentMap);\n\n return;\n }\n\n const props = jsonParse(reactProps);\n\n try {\n const module = await retryImport(importFn);\n const Component = module.default || module;\n\n const root = ReactDOM.createRoot(element);\n root.render(<Component {...props} />);\n\n if (element.dataset) element.dataset.mounted = \"true\";\n } catch (error) {\n console.error(`Failed to load component \"${reactClass}\"`, error);\n }\n}\n"],"names":["jsonParse","value","JSON","parse","_unused","mount","_x","_mount","apply","arguments","_asyncToGenerator","_regeneratorRuntime","mark","_callee","componentMap","_element$dataset","element","_ref","reactClass","reactProps","importFn","props","module","Component","root","wrap","_callee$","_context","prev","next","document","querySelector","abrupt","dataset","mounted","console","warn","retryImport","sent","ReactDOM","createRoot","render","_jsx","_objectSpread","t0","error","concat","stop"],"mappings":"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"}
|
|
@@ -23,7 +23,7 @@ require('dayjs');
|
|
|
23
23
|
require('../../utils/createSubscription.js');
|
|
24
24
|
require('@rails/actioncable');
|
|
25
25
|
require('yup');
|
|
26
|
-
require('../../lodash-
|
|
26
|
+
require('../../lodash-CAzW54WT.js');
|
|
27
27
|
require('@bigbinary/neeto-time-zones');
|
|
28
28
|
require('ua-parser-js');
|
|
29
29
|
|
|
@@ -11,7 +11,7 @@ require('../../utils/createSubscription.js');
|
|
|
11
11
|
require('dayjs');
|
|
12
12
|
require('i18next');
|
|
13
13
|
require('yup');
|
|
14
|
-
require('../../lodash-
|
|
14
|
+
require('../../lodash-CAzW54WT.js');
|
|
15
15
|
require('@bigbinary/neeto-cist');
|
|
16
16
|
require('../../index-bFmfHzbL.js');
|
|
17
17
|
require('@bigbinary/neeto-time-zones');
|
package/dist/cjs/utils/index.js
CHANGED
|
@@ -31,7 +31,7 @@ require('@rails/actioncable');
|
|
|
31
31
|
require('dayjs');
|
|
32
32
|
require('../constants/regex.js');
|
|
33
33
|
require('yup');
|
|
34
|
-
require('../lodash-
|
|
34
|
+
require('../lodash-CAzW54WT.js');
|
|
35
35
|
require('../toConsumableArray-tBKHqzE3.js');
|
|
36
36
|
require('@bigbinary/neeto-time-zones');
|
|
37
37
|
require('ua-parser-js');
|
|
@@ -143,6 +143,7 @@ var timezone = (function (o, c, d) {
|
|
|
143
143
|
var keepLocalTime = arguments.length > 1 ? arguments[1] : undefined;
|
|
144
144
|
var oldOffset = this.utcOffset();
|
|
145
145
|
var date = this.toDate();
|
|
146
|
+
if (!Number.isFinite(date.getTime())) return this.clone();
|
|
146
147
|
var target = getLocaleStringifier(timezone).format(date);
|
|
147
148
|
var diff = Math.round((date - new Date(target)) / 1000 / 60);
|
|
148
149
|
var ins = d(target).$set("millisecond", this.$ms).utcOffset(-Math.round(date.getTimezoneOffset() / 15) * 15 - diff, true);
|
|
@@ -181,6 +182,7 @@ var timezone = (function (o, c, d) {
|
|
|
181
182
|
return d(input).tz(timezone);
|
|
182
183
|
}
|
|
183
184
|
var localTs = d.utc(input, parseFormat).valueOf();
|
|
185
|
+
if (!Number.isFinite(localTs)) return d(localTs);
|
|
184
186
|
var _fixOffset = fixOffset(localTs, previousOffset, timezone),
|
|
185
187
|
_fixOffset2 = slicedToArray._slicedToArray(_fixOffset, 2),
|
|
186
188
|
targetTs = _fixOffset2[0],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timezonePlugin.js","sources":["../../../src/utils/timezonePlugin.js"],"sourcesContent":["/* eslint-disable */\n// Temporary patch file. We can remove this file after the issue is fixed in Day.js.\n// Ref: https://github.com/iamkun/dayjs/pull/2019\n\nconst typeToPos = {\n year: 0,\n month: 1,\n day: 2,\n hour: 3,\n minute: 4,\n second: 5,\n};\n\nconst dateTimeFormatDefaults = {\n year: \"numeric\",\n month: \"2-digit\",\n day: \"2-digit\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n second: \"2-digit\",\n};\n\n// Timezone alias map for fallback support\n// Maps newer timezone names to older/alternative names for browser compatibility\nconst timezoneAliases = { \"Europe/Kyiv\": \"Europe/Kiev\" };\n\nconst getTimezoneAlias = timezone => timezoneAliases[timezone] || null;\n\n// Cache time-zone lookups from Intl.DateTimeFormat,\n// as it is a *very* slow method.\nconst dtfCache = {};\nconst localeStringifierCache = {};\n\nconst getCachedIntlFormatter = (\n timezone,\n cache,\n getCacheKey,\n formatOptions\n) => {\n const cacheKey = getCacheKey(timezone);\n let dtf = cache[cacheKey];\n if (dtf) return dtf;\n\n try {\n dtf = new Intl.DateTimeFormat(\"en-US\", {\n ...dateTimeFormatDefaults,\n ...formatOptions,\n timeZone: timezone,\n });\n cache[cacheKey] = dtf;\n return dtf;\n } catch (error) {\n // Fallback for unsupported timezones using alias map\n const fallbackTimezone = getTimezoneAlias(timezone);\n if (!fallbackTimezone) throw error;\n\n const fallbackKey = getCacheKey(fallbackTimezone);\n dtf = cache[fallbackKey];\n if (dtf) return dtf;\n\n dtf = new Intl.DateTimeFormat(\"en-US\", {\n ...dateTimeFormatDefaults,\n ...formatOptions,\n timeZone: fallbackTimezone,\n });\n cache[fallbackKey] = dtf;\n\n return dtf;\n }\n};\n\nconst getDateTimeFormat = (timezone, options = {}) => {\n const timeZoneName = options.timeZoneName || \"short\";\n return getCachedIntlFormatter(\n timezone,\n dtfCache,\n tz => `${tz}|${timeZoneName}`,\n { hour12: false, timeZoneName }\n );\n};\n\nconst getLocaleStringifier = timezone => {\n return getCachedIntlFormatter(timezone, localeStringifierCache, tz => tz, {});\n};\n\nexport default (o, c, d) => {\n let defaultTimezone;\n\n const makeFormatParts = (timestamp, timezone, options = {}) => {\n const date = new Date(timestamp);\n const dtf = getDateTimeFormat(timezone, options);\n\n return dtf.formatToParts(date);\n };\n\n const tzOffset = (timestamp, timezone) => {\n const formatResult = makeFormatParts(timestamp, timezone);\n const filled = [];\n for (let i = 0; i < formatResult.length; i += 1) {\n const { type, value } = formatResult[i];\n const pos = typeToPos[type];\n\n if (pos >= 0) {\n filled[pos] = parseInt(value, 10);\n }\n }\n const hour = filled[3];\n // Workaround for the same behavior in different node version\n // https://github.com/nodejs/node/issues/33027\n /* istanbul ignore next */\n const fixedHour = hour === 24 ? 0 : hour;\n const utcString = `${filled[0]}-${filled[1]}-${filled[2]} ${fixedHour}:${filled[4]}:${filled[5]}:000`;\n const utcTs = d.utc(utcString).valueOf();\n let asTS = Number(timestamp);\n const over = asTS % 1000;\n asTS -= over;\n\n return (utcTs - asTS) / (60 * 1000);\n };\n\n // find the right offset a given local time. The o input is our guess, which determines which\n // offset we'll pick in ambiguous cases (e.g. there are two 3 AMs b/c Fallback DST)\n // https://github.com/moment/luxon/blob/master/src/datetime.js#L76\n const fixOffset = (localTS, o0, tz) => {\n // Our UTC time is just a guess because our offset is just a guess\n let utcGuess = localTS - o0 * 60 * 1000;\n // Test whether the zone matches the offset for this ts\n const o2 = tzOffset(utcGuess, tz);\n // If so, offset didn't change and we're done\n if (o0 === o2) {\n return [utcGuess, o0];\n }\n // If not, change the ts by the difference in the offset\n utcGuess -= (o2 - o0) * 60 * 1000;\n // If that gives us the local time we want, we're done\n const o3 = tzOffset(utcGuess, tz);\n if (o2 === o3) {\n return [utcGuess, o2];\n }\n\n // If it's different, we're in a hole time.\n // The offset has changed, but the we don't adjust the time\n return [localTS - Math.min(o2, o3) * 60 * 1000, Math.max(o2, o3)];\n };\n\n const proto = c.prototype;\n\n proto.tz = function (timezone = defaultTimezone, keepLocalTime) {\n const oldOffset = this.utcOffset();\n const date = this.toDate();\n const target = getLocaleStringifier(timezone).format(date);\n const diff = Math.round((date - new Date(target)) / 1000 / 60);\n let ins = d(target)\n .$set(\"millisecond\", this.$ms)\n .utcOffset(-Math.round(date.getTimezoneOffset() / 15) * 15 - diff, true);\n if (keepLocalTime) {\n const newOffset = ins.utcOffset();\n ins = ins.add(oldOffset - newOffset, \"minute\");\n }\n ins.$x.$timezone = timezone;\n\n return ins;\n };\n\n proto.offsetName = function (type) {\n // type: short(default) / long\n const zone = this.$x.$timezone || d.tz.guess();\n const result = makeFormatParts(this.valueOf(), zone, {\n timeZoneName: type,\n }).find(m => m.type.toLowerCase() === \"timezonename\");\n\n return result && result.value;\n };\n\n const oldStartOf = proto.startOf;\n proto.startOf = function (units, startOf) {\n if (!this.$x || !this.$x.$timezone) {\n return oldStartOf.call(this, units, startOf);\n }\n\n const withoutTz = d(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"));\n const startOfWithoutTz = oldStartOf.call(withoutTz, units, startOf);\n\n return startOfWithoutTz.tz(this.$x.$timezone, true);\n };\n\n d.tz = function (input, arg1, arg2) {\n const parseFormat = arg2 && arg1;\n const timezone = arg2 || arg1 || defaultTimezone;\n const previousOffset = tzOffset(Number(d()), timezone);\n if (typeof input !== \"string\") {\n // timestamp number || js Date || Day.js\n return d(input).tz(timezone);\n }\n const localTs = d.utc(input, parseFormat).valueOf();\n const [targetTs, targetOffset] = fixOffset(\n localTs,\n previousOffset,\n timezone\n );\n const ins = d(targetTs).utcOffset(targetOffset);\n ins.$x.$timezone = timezone;\n\n return ins;\n };\n\n d.tz.guess = function () {\n try {\n return Intl.DateTimeFormat().resolvedOptions().timeZone;\n } catch (e) {\n // To prevent crashes in environments with restricted or broken Intl API support.\n return \"UTC\";\n }\n };\n\n d.tz.setDefault = function (timezone) {\n defaultTimezone = timezone;\n };\n};\n"],"names":["typeToPos","year","month","day","hour","minute","second","dateTimeFormatDefaults","timezoneAliases","getTimezoneAlias","timezone","dtfCache","localeStringifierCache","getCachedIntlFormatter","cache","getCacheKey","formatOptions","cacheKey","dtf","Intl","DateTimeFormat","_objectSpread","timeZone","error","fallbackTimezone","fallbackKey","getDateTimeFormat","options","arguments","length","undefined","timeZoneName","tz","concat","hour12","getLocaleStringifier","o","c","d","defaultTimezone","makeFormatParts","timestamp","date","Date","formatToParts","tzOffset","formatResult","filled","i","_formatResult$i","type","value","pos","parseInt","fixedHour","utcString","utcTs","utc","valueOf","asTS","Number","over","fixOffset","localTS","o0","utcGuess","o2","o3","Math","min","max","proto","prototype","keepLocalTime","oldOffset","utcOffset","toDate","target","format","diff","round","ins","$set","$ms","getTimezoneOffset","newOffset","add","$x","$timezone","offsetName","zone","guess","result","find","m","toLowerCase","oldStartOf","startOf","units","call","withoutTz","startOfWithoutTz","input","arg1","arg2","parseFormat","previousOffset","localTs","_fixOffset","_fixOffset2","_slicedToArray","targetTs","targetOffset","resolvedOptions","e","setDefault"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"timezonePlugin.js","sources":["../../../src/utils/timezonePlugin.js"],"sourcesContent":["/* eslint-disable */\n// Temporary patch file. We can remove this file after the issue is fixed in Day.js.\n// Ref: https://github.com/iamkun/dayjs/pull/2019\n\nconst typeToPos = {\n year: 0,\n month: 1,\n day: 2,\n hour: 3,\n minute: 4,\n second: 5,\n};\n\nconst dateTimeFormatDefaults = {\n year: \"numeric\",\n month: \"2-digit\",\n day: \"2-digit\",\n hour: \"2-digit\",\n minute: \"2-digit\",\n second: \"2-digit\",\n};\n\n// Timezone alias map for fallback support\n// Maps newer timezone names to older/alternative names for browser compatibility\nconst timezoneAliases = { \"Europe/Kyiv\": \"Europe/Kiev\" };\n\nconst getTimezoneAlias = timezone => timezoneAliases[timezone] || null;\n\n// Cache time-zone lookups from Intl.DateTimeFormat,\n// as it is a *very* slow method.\nconst dtfCache = {};\nconst localeStringifierCache = {};\n\nconst getCachedIntlFormatter = (\n timezone,\n cache,\n getCacheKey,\n formatOptions\n) => {\n const cacheKey = getCacheKey(timezone);\n let dtf = cache[cacheKey];\n if (dtf) return dtf;\n\n try {\n dtf = new Intl.DateTimeFormat(\"en-US\", {\n ...dateTimeFormatDefaults,\n ...formatOptions,\n timeZone: timezone,\n });\n cache[cacheKey] = dtf;\n return dtf;\n } catch (error) {\n // Fallback for unsupported timezones using alias map\n const fallbackTimezone = getTimezoneAlias(timezone);\n if (!fallbackTimezone) throw error;\n\n const fallbackKey = getCacheKey(fallbackTimezone);\n dtf = cache[fallbackKey];\n if (dtf) return dtf;\n\n dtf = new Intl.DateTimeFormat(\"en-US\", {\n ...dateTimeFormatDefaults,\n ...formatOptions,\n timeZone: fallbackTimezone,\n });\n cache[fallbackKey] = dtf;\n\n return dtf;\n }\n};\n\nconst getDateTimeFormat = (timezone, options = {}) => {\n const timeZoneName = options.timeZoneName || \"short\";\n return getCachedIntlFormatter(\n timezone,\n dtfCache,\n tz => `${tz}|${timeZoneName}`,\n { hour12: false, timeZoneName }\n );\n};\n\nconst getLocaleStringifier = timezone => {\n return getCachedIntlFormatter(timezone, localeStringifierCache, tz => tz, {});\n};\n\nexport default (o, c, d) => {\n let defaultTimezone;\n\n const makeFormatParts = (timestamp, timezone, options = {}) => {\n const date = new Date(timestamp);\n const dtf = getDateTimeFormat(timezone, options);\n\n return dtf.formatToParts(date);\n };\n\n const tzOffset = (timestamp, timezone) => {\n const formatResult = makeFormatParts(timestamp, timezone);\n const filled = [];\n for (let i = 0; i < formatResult.length; i += 1) {\n const { type, value } = formatResult[i];\n const pos = typeToPos[type];\n\n if (pos >= 0) {\n filled[pos] = parseInt(value, 10);\n }\n }\n const hour = filled[3];\n // Workaround for the same behavior in different node version\n // https://github.com/nodejs/node/issues/33027\n /* istanbul ignore next */\n const fixedHour = hour === 24 ? 0 : hour;\n const utcString = `${filled[0]}-${filled[1]}-${filled[2]} ${fixedHour}:${filled[4]}:${filled[5]}:000`;\n const utcTs = d.utc(utcString).valueOf();\n let asTS = Number(timestamp);\n const over = asTS % 1000;\n asTS -= over;\n\n return (utcTs - asTS) / (60 * 1000);\n };\n\n // find the right offset a given local time. The o input is our guess, which determines which\n // offset we'll pick in ambiguous cases (e.g. there are two 3 AMs b/c Fallback DST)\n // https://github.com/moment/luxon/blob/master/src/datetime.js#L76\n const fixOffset = (localTS, o0, tz) => {\n // Our UTC time is just a guess because our offset is just a guess\n let utcGuess = localTS - o0 * 60 * 1000;\n // Test whether the zone matches the offset for this ts\n const o2 = tzOffset(utcGuess, tz);\n // If so, offset didn't change and we're done\n if (o0 === o2) {\n return [utcGuess, o0];\n }\n // If not, change the ts by the difference in the offset\n utcGuess -= (o2 - o0) * 60 * 1000;\n // If that gives us the local time we want, we're done\n const o3 = tzOffset(utcGuess, tz);\n if (o2 === o3) {\n return [utcGuess, o2];\n }\n\n // If it's different, we're in a hole time.\n // The offset has changed, but the we don't adjust the time\n return [localTS - Math.min(o2, o3) * 60 * 1000, Math.max(o2, o3)];\n };\n\n const proto = c.prototype;\n\n proto.tz = function (timezone = defaultTimezone, keepLocalTime) {\n const oldOffset = this.utcOffset();\n const date = this.toDate();\n\n if (!Number.isFinite(date.getTime())) return this.clone();\n\n const target = getLocaleStringifier(timezone).format(date);\n const diff = Math.round((date - new Date(target)) / 1000 / 60);\n let ins = d(target)\n .$set(\"millisecond\", this.$ms)\n .utcOffset(-Math.round(date.getTimezoneOffset() / 15) * 15 - diff, true);\n if (keepLocalTime) {\n const newOffset = ins.utcOffset();\n ins = ins.add(oldOffset - newOffset, \"minute\");\n }\n ins.$x.$timezone = timezone;\n\n return ins;\n };\n\n proto.offsetName = function (type) {\n // type: short(default) / long\n const zone = this.$x.$timezone || d.tz.guess();\n const result = makeFormatParts(this.valueOf(), zone, {\n timeZoneName: type,\n }).find(m => m.type.toLowerCase() === \"timezonename\");\n\n return result && result.value;\n };\n\n const oldStartOf = proto.startOf;\n proto.startOf = function (units, startOf) {\n if (!this.$x || !this.$x.$timezone) {\n return oldStartOf.call(this, units, startOf);\n }\n\n const withoutTz = d(this.format(\"YYYY-MM-DD HH:mm:ss:SSS\"));\n const startOfWithoutTz = oldStartOf.call(withoutTz, units, startOf);\n\n return startOfWithoutTz.tz(this.$x.$timezone, true);\n };\n\n d.tz = function (input, arg1, arg2) {\n const parseFormat = arg2 && arg1;\n const timezone = arg2 || arg1 || defaultTimezone;\n const previousOffset = tzOffset(Number(d()), timezone);\n if (typeof input !== \"string\") {\n // timestamp number || js Date || Day.js\n return d(input).tz(timezone);\n }\n const localTs = d.utc(input, parseFormat).valueOf();\n\n if (!Number.isFinite(localTs)) return d(localTs);\n\n const [targetTs, targetOffset] = fixOffset(\n localTs,\n previousOffset,\n timezone\n );\n const ins = d(targetTs).utcOffset(targetOffset);\n ins.$x.$timezone = timezone;\n\n return ins;\n };\n\n d.tz.guess = function () {\n try {\n return Intl.DateTimeFormat().resolvedOptions().timeZone;\n } catch (e) {\n // To prevent crashes in environments with restricted or broken Intl API support.\n return \"UTC\";\n }\n };\n\n d.tz.setDefault = function (timezone) {\n defaultTimezone = timezone;\n };\n};\n"],"names":["typeToPos","year","month","day","hour","minute","second","dateTimeFormatDefaults","timezoneAliases","getTimezoneAlias","timezone","dtfCache","localeStringifierCache","getCachedIntlFormatter","cache","getCacheKey","formatOptions","cacheKey","dtf","Intl","DateTimeFormat","_objectSpread","timeZone","error","fallbackTimezone","fallbackKey","getDateTimeFormat","options","arguments","length","undefined","timeZoneName","tz","concat","hour12","getLocaleStringifier","o","c","d","defaultTimezone","makeFormatParts","timestamp","date","Date","formatToParts","tzOffset","formatResult","filled","i","_formatResult$i","type","value","pos","parseInt","fixedHour","utcString","utcTs","utc","valueOf","asTS","Number","over","fixOffset","localTS","o0","utcGuess","o2","o3","Math","min","max","proto","prototype","keepLocalTime","oldOffset","utcOffset","toDate","isFinite","getTime","clone","target","format","diff","round","ins","$set","$ms","getTimezoneOffset","newOffset","add","$x","$timezone","offsetName","zone","guess","result","find","m","toLowerCase","oldStartOf","startOf","units","call","withoutTz","startOfWithoutTz","input","arg1","arg2","parseFormat","previousOffset","localTs","_fixOffset","_fixOffset2","_slicedToArray","targetTs","targetOffset","resolvedOptions","e","setDefault"],"mappings":"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"}
|