@bigbinary/neeto-commons-frontend 4.13.91 → 4.13.92-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (102) hide show
  1. package/README.md +1 -0
  2. package/configs/esbuild/index.js +4 -0
  3. package/configs/esbuild/plugins/packageTranslations.js +16 -0
  4. package/configs/esbuild/plugins/preval.js +16 -6
  5. package/configs/scripts/buildTranslationImports.js +22 -0
  6. package/configs/scripts/getEnglishTranslation.js +17 -0
  7. package/configs/utils/packageTranslations.js +90 -0
  8. package/configs/vite/index.js +5 -0
  9. package/configs/vite/plugins/packageTranslations.js +14 -0
  10. package/configs/vite/plugins/preval.js +32 -10
  11. package/dist/cjs/initializers/i18n.js +39 -130
  12. package/dist/cjs/initializers/i18n.js.map +1 -1
  13. package/dist/cjs/initializers/index.js +38 -19
  14. package/dist/cjs/initializers/index.js.map +1 -1
  15. package/dist/cjs/react-utils/AppContainer/AppContainer.js +2 -2
  16. package/dist/cjs/react-utils/HoneybadgerErrorBoundary/FallbackComponent.js +2 -2
  17. package/dist/cjs/react-utils/index.js +6 -0
  18. package/dist/cjs/react-utils/index.js.map +1 -1
  19. package/dist/cjs/react-utils/lazyWithRetry/index.js +10 -0
  20. package/dist/cjs/react-utils/lazyWithRetry/index.js.map +1 -0
  21. package/dist/cjs/react-utils/lazyWithRetry/lazyWithRetry.js +15 -0
  22. package/dist/cjs/react-utils/lazyWithRetry/lazyWithRetry.js.map +1 -0
  23. package/dist/cjs/react-utils/mount/index.js +15 -0
  24. package/dist/cjs/react-utils/mount/index.js.map +1 -0
  25. package/dist/cjs/react-utils/mount/mount.js +86 -0
  26. package/dist/cjs/react-utils/mount/mount.js.map +1 -0
  27. package/dist/cjs/react-utils/useBreakpoints/index.js +2 -2
  28. package/dist/cjs/react-utils/useColumnConfig/useColumnConfig.js +2 -2
  29. package/dist/cjs/react-utils/useDebounce/useDebounce.js +3 -3
  30. package/dist/cjs/react-utils/useFieldSubmit/useFieldSubmit.js +4 -4
  31. package/dist/cjs/react-utils/useFuncDebounce/useFuncDebounce.js +2 -2
  32. package/dist/cjs/react-utils/useIsElementVisibleInDom/useForceUpdate.js +2 -2
  33. package/dist/cjs/react-utils/useIsElementVisibleInDom/useIsElementVisibleInDom.js +3 -3
  34. package/dist/cjs/react-utils/useLocalStorage/useLocalStorage.js +2 -2
  35. package/dist/cjs/react-utils/useOnClickOutside/useOnClickOutside.js +2 -2
  36. package/dist/cjs/react-utils/usePersistedQuery/usePersistedQuery.js +2 -2
  37. package/dist/cjs/react-utils/usePrevious/usePrevious.js +3 -3
  38. package/dist/cjs/react-utils/useRegisterNavigationCheckpoint/useRegisterNavigationCheckpoint.js +2 -2
  39. package/dist/cjs/react-utils/useRestoreScrollPosition/useRestoreScrollPosition.js +2 -2
  40. package/dist/cjs/react-utils/useStateWithDependency/useStateWithDependency.js +3 -3
  41. package/dist/cjs/react-utils/useTimer/useTimer.js +3 -3
  42. package/dist/cjs/react-utils/useUpdateEffect/useUpdateEffect.js +3 -3
  43. package/dist/cjs/utils/datetime.js +22 -13
  44. package/dist/cjs/utils/datetime.js.map +1 -1
  45. package/dist/cjs/utils/retryImport.js +37 -0
  46. package/dist/cjs/utils/retryImport.js.map +1 -0
  47. package/dist/initializers/i18n.js +39 -130
  48. package/dist/initializers/i18n.js.map +1 -1
  49. package/dist/initializers/index.js +38 -19
  50. package/dist/initializers/index.js.map +1 -1
  51. package/dist/react-utils/index.js +4 -0
  52. package/dist/react-utils/index.js.map +1 -1
  53. package/dist/react-utils/lazyWithRetry/index.js +4 -0
  54. package/dist/react-utils/lazyWithRetry/index.js.map +1 -0
  55. package/dist/react-utils/lazyWithRetry/lazyWithRetry.js +13 -0
  56. package/dist/react-utils/lazyWithRetry/lazyWithRetry.js.map +1 -0
  57. package/dist/react-utils/mount/index.js +9 -0
  58. package/dist/react-utils/mount/index.js.map +1 -0
  59. package/dist/react-utils/mount/mount.js +84 -0
  60. package/dist/react-utils/mount/mount.js.map +1 -0
  61. package/dist/utils/datetime.js +22 -13
  62. package/dist/utils/datetime.js.map +1 -1
  63. package/dist/utils/retryImport.js +35 -0
  64. package/dist/utils/retryImport.js.map +1 -0
  65. package/package.json +10 -6
  66. package/react-utils.d.ts +73 -1
  67. package/src/translations/ar.json +111 -0
  68. package/src/translations/bg.json +111 -0
  69. package/src/translations/ca.json +111 -0
  70. package/src/translations/cs.json +111 -0
  71. package/src/translations/da.json +111 -0
  72. package/src/translations/de.json +111 -0
  73. package/src/translations/en.json +111 -0
  74. package/src/translations/es-MX.json +111 -0
  75. package/src/translations/es.json +111 -0
  76. package/src/translations/et.json +111 -0
  77. package/src/translations/fi.json +111 -0
  78. package/src/translations/fil.json +111 -0
  79. package/src/translations/fr.json +111 -0
  80. package/src/translations/he.json +111 -0
  81. package/src/translations/hi.json +111 -0
  82. package/src/translations/hr.json +111 -0
  83. package/src/translations/id.json +111 -0
  84. package/src/translations/it.json +111 -0
  85. package/src/translations/ja.json +111 -0
  86. package/src/translations/ko.json +111 -0
  87. package/src/translations/nl.json +111 -0
  88. package/src/translations/pl.json +111 -0
  89. package/src/translations/pt-BR.json +111 -0
  90. package/src/translations/pt.json +111 -0
  91. package/src/translations/ro.json +111 -0
  92. package/src/translations/ru.json +111 -0
  93. package/src/translations/sk.json +111 -0
  94. package/src/translations/sl.json +111 -0
  95. package/src/translations/sv.json +111 -0
  96. package/src/translations/th.json +111 -0
  97. package/src/translations/tr.json +111 -0
  98. package/src/translations/uk.json +111 -0
  99. package/src/translations/vi.json +111 -0
  100. package/src/translations/zh-CN.json +111 -0
  101. package/src/translations/zh-TW.json +111 -0
  102. package/configs/scripts/getPkgTranslations.js +0 -45
@@ -0,0 +1,9 @@
1
+ export { default } from './mount.js';
2
+ import '../../defineProperty-CrCYjjU3.js';
3
+ import '../../typeof-D-UKOauR.js';
4
+ import '../../index-DbuxAQMD.js';
5
+ import '../../_commonjsHelpers-BFTU3MAI.js';
6
+ import 'react-dom/client';
7
+ import '../../utils/retryImport.js';
8
+ import 'react/jsx-runtime';
9
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;"}
@@ -0,0 +1,84 @@
1
+ import { _ as _defineProperty } from '../../defineProperty-CrCYjjU3.js';
2
+ import { _ as _asyncToGenerator, a as _regeneratorRuntime } from '../../index-DbuxAQMD.js';
3
+ import ReactDOM from 'react-dom/client';
4
+ import _retryImport from '../../utils/retryImport.js';
5
+ import { jsx } from 'react/jsx-runtime';
6
+ import '../../typeof-D-UKOauR.js';
7
+ import '../../_commonjsHelpers-BFTU3MAI.js';
8
+
9
+ 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; }
10
+ 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(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; }
11
+ function mount(components) {
12
+ var run = function run() {
13
+ var mountPoints = document.querySelectorAll("[data-react-class]");
14
+ Array.from(mountPoints).forEach(/*#__PURE__*/function () {
15
+ var _ref = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee(element) {
16
+ var _element$dataset;
17
+ var _ref2, reactClass, reactProps, importFn, props, module, Component, root;
18
+ return _regeneratorRuntime.wrap(function _callee$(_context) {
19
+ while (1) switch (_context.prev = _context.next) {
20
+ case 0:
21
+ if (!(((_element$dataset = element.dataset) === null || _element$dataset === void 0 ? void 0 : _element$dataset.mounted) === "true")) {
22
+ _context.next = 2;
23
+ break;
24
+ }
25
+ return _context.abrupt("return");
26
+ case 2:
27
+ _ref2 = element.dataset || {}, reactClass = _ref2.reactClass, reactProps = _ref2.reactProps;
28
+ if (reactClass) {
29
+ _context.next = 5;
30
+ break;
31
+ }
32
+ return _context.abrupt("return");
33
+ case 5:
34
+ importFn = components[reactClass];
35
+ if (importFn) {
36
+ _context.next = 9;
37
+ break;
38
+ }
39
+ console.warn("WARNING: No component found for:", reactClass, components);
40
+ return _context.abrupt("return");
41
+ case 9:
42
+ props = {};
43
+ if (reactProps) {
44
+ try {
45
+ props = JSON.parse(reactProps);
46
+ } catch (_unused) {
47
+ console.error("Invalid JSON in data-react-props:", reactProps);
48
+ }
49
+ }
50
+ _context.prev = 11;
51
+ _context.next = 14;
52
+ return _retryImport(importFn);
53
+ case 14:
54
+ module = _context.sent;
55
+ Component = module["default"] || module;
56
+ root = ReactDOM.createRoot(element);
57
+ root.render(/*#__PURE__*/jsx(Component, _objectSpread({}, props)));
58
+ if (element.dataset) element.dataset.mounted = "true";
59
+ _context.next = 24;
60
+ break;
61
+ case 21:
62
+ _context.prev = 21;
63
+ _context.t0 = _context["catch"](11);
64
+ console.error("Failed to load component \"".concat(reactClass, "\""), _context.t0);
65
+ case 24:
66
+ case "end":
67
+ return _context.stop();
68
+ }
69
+ }, _callee, null, [[11, 21]]);
70
+ }));
71
+ return function (_x) {
72
+ return _ref.apply(this, arguments);
73
+ };
74
+ }());
75
+ };
76
+ if (document.readyState === "loading") {
77
+ document.addEventListener("DOMContentLoaded", run);
78
+ } else {
79
+ run();
80
+ }
81
+ }
82
+
83
+ export { mount as default };
84
+ //# sourceMappingURL=mount.js.map
@@ -0,0 +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\nexport default function mount(components) {\n const run = () => {\n const mountPoints = document.querySelectorAll(\"[data-react-class]\");\n\n Array.from(mountPoints).forEach(async element => {\n if (element.dataset?.mounted === \"true\") return;\n\n const { reactClass, reactProps } = element.dataset || {};\n\n if (!reactClass) return;\n\n const importFn = components[reactClass];\n\n if (!importFn) {\n console.warn(\n \"WARNING: No component found for:\",\n reactClass,\n components\n );\n\n return;\n }\n\n let props = {};\n if (reactProps) {\n try {\n props = JSON.parse(reactProps);\n } catch {\n console.error(\"Invalid JSON in data-react-props:\", reactProps);\n }\n }\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 };\n\n if (document.readyState === \"loading\") {\n document.addEventListener(\"DOMContentLoaded\", run);\n } else {\n run();\n }\n}\n"],"names":["mount","components","run","mountPoints","document","querySelectorAll","Array","from","forEach","_ref","_asyncToGenerator","_regeneratorRuntime","mark","_callee","element","_element$dataset","_ref2","reactClass","reactProps","importFn","props","module","Component","root","wrap","_callee$","_context","prev","next","dataset","mounted","abrupt","console","warn","JSON","parse","_unused","error","retryImport","sent","ReactDOM","createRoot","render","_jsx","_objectSpread","t0","concat","stop","_x","apply","arguments","readyState","addEventListener"],"mappings":"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"}
@@ -6,19 +6,27 @@ import '../unsupportedIterableToArray-Dqz8Y8_I.js';
6
6
  import 'dayjs';
7
7
 
8
8
  /* eslint-disable @bigbinary/neeto/use-standard-date-time-formats */
9
- var getDefaultFormat = function getDefaultFormat() {
10
- var _globalProps$user$dat, _globalProps;
11
- return (_globalProps$user$dat = (_globalProps = globalProps) === null || _globalProps === void 0 || (_globalProps = _globalProps.user) === null || _globalProps === void 0 ? void 0 : _globalProps.dateFormat) !== null && _globalProps$user$dat !== void 0 ? _globalProps$user$dat : "DD/MM/YYYY";
9
+ var getDefaultDateFormat = function getDefaultDateFormat() {
10
+ var _window$globalProps$u, _window$globalProps;
11
+ return (_window$globalProps$u = (_window$globalProps = window.globalProps) === null || _window$globalProps === void 0 || (_window$globalProps = _window$globalProps.user) === null || _window$globalProps === void 0 ? void 0 : _window$globalProps.dateFormat) !== null && _window$globalProps$u !== void 0 ? _window$globalProps$u : "DD/MM/YYYY";
12
+ };
13
+ var getDefaultTimeFormat = function getDefaultTimeFormat() {
14
+ var _window$globalProps$u2, _window$globalProps2;
15
+ return (_window$globalProps$u2 = (_window$globalProps2 = window.globalProps) === null || _window$globalProps2 === void 0 || (_window$globalProps2 = _window$globalProps2.user) === null || _window$globalProps2 === void 0 ? void 0 : _window$globalProps2.timeFormat) !== null && _window$globalProps$u2 !== void 0 ? _window$globalProps$u2 : "12h";
16
+ }; // "12h" | "24h"
17
+
18
+ var is12hourTimeFormat = function is12hourTimeFormat() {
19
+ return getDefaultTimeFormat() === "12h";
12
20
  };
13
21
  var timeFormat = {
14
22
  fromNow: function fromNow(time) {
15
23
  return dayjs(time).fromNow();
16
24
  },
17
25
  time: function time(_time) {
18
- return dayjs(_time).format("LT");
26
+ return dayjs(_time).format(is12hourTimeFormat() ? "h:mm A" : "HH:mm");
19
27
  },
20
28
  timeWithSeconds: function timeWithSeconds(time) {
21
- return dayjs(time).format("LTS");
29
+ return dayjs(time).format(is12hourTimeFormat() ? "h:mm:ss A" : "HH:mm:ss");
22
30
  },
23
31
  date: function date(time) {
24
32
  return dayjs(time).format("ll");
@@ -36,27 +44,28 @@ var timeFormat = {
36
44
  return dayjs(time).format("MMM D, dddd");
37
45
  },
38
46
  dateTime: function dateTime(time) {
39
- return dayjs(time).format("ll LT");
47
+ return dayjs(time).format(is12hourTimeFormat() ? "ll h:mm A" : "ll HH:mm");
40
48
  },
41
49
  dateTimeWithSeconds: function dateTimeWithSeconds(time) {
42
- return dayjs(time).format("ll LTS");
50
+ return dayjs(time).format(is12hourTimeFormat() ? "ll h:mm:ss A" : "ll HH:mm:ss");
43
51
  },
44
52
  dateWeekTime: function dateWeekTime(time) {
45
- return dayjs(time).format("ll ddd LT");
53
+ return dayjs(time).format(is12hourTimeFormat() ? "ll ddd h:mm A" : "ll ddd HH:mm");
46
54
  },
47
55
  dateWeekTimeDayExtended: function dateWeekTimeDayExtended(time) {
48
- return dayjs(time).format("ll dddd LT");
56
+ return dayjs(time).format(is12hourTimeFormat() ? "ll dddd h:mm A" : "ll dddd HH:mm");
49
57
  },
50
58
  extended: function extended(time) {
51
- var dateTime = dayjs(time).format("dddd LL LT");
52
- var fromNow = dayjs(time).fromNow();
59
+ var date = dayjs(time);
60
+ var dateTime = date.format(is12hourTimeFormat() ? "dddd LL h:mm A" : "dddd LL HH:mm");
61
+ var fromNow = date.fromNow();
53
62
  return "".concat(dateTime, " (").concat(fromNow, ")");
54
63
  },
55
64
  "default": function _default(time) {
56
- return dayjs(time).format(getDefaultFormat());
65
+ return dayjs(time).format(getDefaultDateFormat());
57
66
  },
58
67
  defaultWithTime: function defaultWithTime(time) {
59
- return dayjs(time).format("".concat(getDefaultFormat(), " LT"));
68
+ return dayjs(time).format(is12hourTimeFormat() ? "".concat(getDefaultDateFormat(), " h:mm A") : "".concat(getDefaultDateFormat(), " HH:mm"));
60
69
  }
61
70
  };
62
71
  var dateFormat = timeFormat;
@@ -1 +1 @@
1
- {"version":3,"file":"datetime.js","sources":["../../src/utils/datetime.js"],"sourcesContent":["/* eslint-disable @bigbinary/neeto/use-standard-date-time-formats */\nimport dayjs from \"./dayjs\";\n\nconst getDefaultFormat = () => globalProps?.user?.dateFormat ?? \"DD/MM/YYYY\";\n\nexport const timeFormat = {\n fromNow: time => dayjs(time).fromNow(),\n time: time => dayjs(time).format(\"LT\"),\n timeWithSeconds: time => dayjs(time).format(\"LTS\"),\n date: time => dayjs(time).format(\"ll\"),\n dateWeek: time => dayjs(time).format(\"ll ddd\"),\n dateWeekDayExtended: time => dayjs(time).format(\"ll dddd\"),\n dateWeekWithoutYear: time => dayjs(time).format(\"MMM D, ddd\"),\n dateWeekWithoutYearDayExtended: time => dayjs(time).format(\"MMM D, dddd\"),\n dateTime: time => dayjs(time).format(\"ll LT\"),\n dateTimeWithSeconds: time => dayjs(time).format(\"ll LTS\"),\n dateWeekTime: time => dayjs(time).format(\"ll ddd LT\"),\n dateWeekTimeDayExtended: time => dayjs(time).format(\"ll dddd LT\"),\n extended: time => {\n const dateTime = dayjs(time).format(\"dddd LL LT\");\n const fromNow = dayjs(time).fromNow();\n\n return `${dateTime} (${fromNow})`;\n },\n default: time => dayjs(time).format(getDefaultFormat()),\n defaultWithTime: time => dayjs(time).format(`${getDefaultFormat()} LT`),\n};\n\nexport const dateFormat = timeFormat;\n"],"names":["getDefaultFormat","_globalProps$user$dat","_globalProps","globalProps","user","dateFormat","timeFormat","fromNow","time","dayjs","format","timeWithSeconds","date","dateWeek","dateWeekDayExtended","dateWeekWithoutYear","dateWeekWithoutYearDayExtended","dateTime","dateTimeWithSeconds","dateWeekTime","dateWeekTimeDayExtended","extended","concat","default","defaultWithTime"],"mappings":"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"}
1
+ {"version":3,"file":"datetime.js","sources":["../../src/utils/datetime.js"],"sourcesContent":["/* eslint-disable @bigbinary/neeto/use-standard-date-time-formats */\nimport dayjs from \"./dayjs\";\n\nconst getDefaultDateFormat = () =>\n window.globalProps?.user?.dateFormat ?? \"DD/MM/YYYY\";\n\nconst getDefaultTimeFormat = () =>\n window.globalProps?.user?.timeFormat ?? \"12h\"; // \"12h\" | \"24h\"\n\nconst is12hourTimeFormat = () => getDefaultTimeFormat() === \"12h\";\n\nexport const timeFormat = {\n fromNow: time => dayjs(time).fromNow(),\n\n time: time => dayjs(time).format(is12hourTimeFormat() ? \"h:mm A\" : \"HH:mm\"),\n\n timeWithSeconds: time =>\n dayjs(time).format(is12hourTimeFormat() ? \"h:mm:ss A\" : \"HH:mm:ss\"),\n\n date: time => dayjs(time).format(\"ll\"),\n dateWeek: time => dayjs(time).format(\"ll ddd\"),\n dateWeekDayExtended: time => dayjs(time).format(\"ll dddd\"),\n dateWeekWithoutYear: time => dayjs(time).format(\"MMM D, ddd\"),\n dateWeekWithoutYearDayExtended: time => dayjs(time).format(\"MMM D, dddd\"),\n\n dateTime: time =>\n dayjs(time).format(is12hourTimeFormat() ? \"ll h:mm A\" : \"ll HH:mm\"),\n\n dateTimeWithSeconds: time =>\n dayjs(time).format(is12hourTimeFormat() ? \"ll h:mm:ss A\" : \"ll HH:mm:ss\"),\n\n dateWeekTime: time =>\n dayjs(time).format(is12hourTimeFormat() ? \"ll ddd h:mm A\" : \"ll ddd HH:mm\"),\n\n dateWeekTimeDayExtended: time =>\n dayjs(time).format(\n is12hourTimeFormat() ? \"ll dddd h:mm A\" : \"ll dddd HH:mm\"\n ),\n\n extended: time => {\n const date = dayjs(time);\n const dateTime = date.format(\n is12hourTimeFormat() ? \"dddd LL h:mm A\" : \"dddd LL HH:mm\"\n );\n const fromNow = date.fromNow();\n\n return `${dateTime} (${fromNow})`;\n },\n\n default: time => dayjs(time).format(getDefaultDateFormat()),\n defaultWithTime: time =>\n dayjs(time).format(\n is12hourTimeFormat()\n ? `${getDefaultDateFormat()} h:mm A`\n : `${getDefaultDateFormat()} HH:mm`\n ),\n};\n\nexport const dateFormat = timeFormat;\n"],"names":["getDefaultDateFormat","_window$globalProps$u","_window$globalProps","window","globalProps","user","dateFormat","getDefaultTimeFormat","_window$globalProps$u2","_window$globalProps2","timeFormat","is12hourTimeFormat","fromNow","time","dayjs","format","timeWithSeconds","date","dateWeek","dateWeekDayExtended","dateWeekWithoutYear","dateWeekWithoutYearDayExtended","dateTime","dateTimeWithSeconds","dateWeekTime","dateWeekTimeDayExtended","extended","concat","default","defaultWithTime"],"mappings":";;;;;;;AAAA;AAGA,IAAMA,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAAA;EAAA,IAAAC,qBAAA,EAAAC,mBAAA;EAAA,OAAAD,CAAAA,qBAAA,GAAAC,CAAAA,mBAAA,GACxBC,MAAM,CAACC,WAAW,MAAAF,IAAAA,IAAAA,mBAAA,KAAAA,MAAAA,IAAAA,CAAAA,mBAAA,GAAlBA,mBAAA,CAAoBG,IAAI,MAAA,IAAA,IAAAH,mBAAA,KAAA,MAAA,GAAA,MAAA,GAAxBA,mBAAA,CAA0BI,UAAU,MAAA,IAAA,IAAAL,qBAAA,KAAA,MAAA,GAAAA,qBAAA,GAAI,YAAY;AAAA,CAAA;AAEtD,IAAMM,oBAAoB,GAAG,SAAvBA,oBAAoBA,GAAA;EAAA,IAAAC,sBAAA,EAAAC,oBAAA;EAAA,OAAAD,CAAAA,sBAAA,GAAAC,CAAAA,oBAAA,GACxBN,MAAM,CAACC,WAAW,MAAAK,IAAAA,IAAAA,oBAAA,KAAAA,MAAAA,IAAAA,CAAAA,oBAAA,GAAlBA,oBAAA,CAAoBJ,IAAI,MAAA,IAAA,IAAAI,oBAAA,KAAA,MAAA,GAAA,MAAA,GAAxBA,oBAAA,CAA0BC,UAAU,MAAA,IAAA,IAAAF,sBAAA,KAAA,MAAA,GAAAA,sBAAA,GAAI,KAAK;AAAA,CAAA,CAAC;;AAEhD,IAAMG,kBAAkB,GAAG,SAArBA,kBAAkBA,GAAA;AAAA,EAAA,OAASJ,oBAAoB,EAAE,KAAK,KAAK;AAAA,CAAA;AAE1D,IAAMG,UAAU,GAAG;AACxBE,EAAAA,OAAO,EAAE,SAATA,OAAOA,CAAEC,IAAI,EAAA;AAAA,IAAA,OAAIC,KAAK,CAACD,IAAI,CAAC,CAACD,OAAO,EAAE;AAAA,GAAA;AAEtCC,EAAAA,IAAI,EAAE,SAANA,IAAIA,CAAEA,KAAI,EAAA;AAAA,IAAA,OAAIC,KAAK,CAACD,KAAI,CAAC,CAACE,MAAM,CAACJ,kBAAkB,EAAE,GAAG,QAAQ,GAAG,OAAO,CAAC;AAAA,GAAA;AAE3EK,EAAAA,eAAe,EAAE,SAAjBA,eAAeA,CAAEH,IAAI,EAAA;AAAA,IAAA,OACnBC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAACJ,kBAAkB,EAAE,GAAG,WAAW,GAAG,UAAU,CAAC;AAAA,GAAA;AAErEM,EAAAA,IAAI,EAAE,SAANA,IAAIA,CAAEJ,IAAI,EAAA;IAAA,OAAIC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAAC,IAAI,CAAC;AAAA,GAAA;AACtCG,EAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAEL,IAAI,EAAA;IAAA,OAAIC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAAC,QAAQ,CAAC;AAAA,GAAA;AAC9CI,EAAAA,mBAAmB,EAAE,SAArBA,mBAAmBA,CAAEN,IAAI,EAAA;IAAA,OAAIC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAAC,SAAS,CAAC;AAAA,GAAA;AAC1DK,EAAAA,mBAAmB,EAAE,SAArBA,mBAAmBA,CAAEP,IAAI,EAAA;IAAA,OAAIC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAAC,YAAY,CAAC;AAAA,GAAA;AAC7DM,EAAAA,8BAA8B,EAAE,SAAhCA,8BAA8BA,CAAER,IAAI,EAAA;IAAA,OAAIC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAAC,aAAa,CAAC;AAAA,GAAA;AAEzEO,EAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAET,IAAI,EAAA;AAAA,IAAA,OACZC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAACJ,kBAAkB,EAAE,GAAG,WAAW,GAAG,UAAU,CAAC;AAAA,GAAA;AAErEY,EAAAA,mBAAmB,EAAE,SAArBA,mBAAmBA,CAAEV,IAAI,EAAA;AAAA,IAAA,OACvBC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAACJ,kBAAkB,EAAE,GAAG,cAAc,GAAG,aAAa,CAAC;AAAA,GAAA;AAE3Ea,EAAAA,YAAY,EAAE,SAAdA,YAAYA,CAAEX,IAAI,EAAA;AAAA,IAAA,OAChBC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAACJ,kBAAkB,EAAE,GAAG,eAAe,GAAG,cAAc,CAAC;AAAA,GAAA;AAE7Ec,EAAAA,uBAAuB,EAAE,SAAzBA,uBAAuBA,CAAEZ,IAAI,EAAA;AAAA,IAAA,OAC3BC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAChBJ,kBAAkB,EAAE,GAAG,gBAAgB,GAAG,eAC5C,CAAC;AAAA,GAAA;AAEHe,EAAAA,QAAQ,EAAE,SAAVA,QAAQA,CAAEb,IAAI,EAAI;AAChB,IAAA,IAAMI,IAAI,GAAGH,KAAK,CAACD,IAAI,CAAC;AACxB,IAAA,IAAMS,QAAQ,GAAGL,IAAI,CAACF,MAAM,CAC1BJ,kBAAkB,EAAE,GAAG,gBAAgB,GAAG,eAC5C,CAAC;AACD,IAAA,IAAMC,OAAO,GAAGK,IAAI,CAACL,OAAO,EAAE;AAE9B,IAAA,OAAA,EAAA,CAAAe,MAAA,CAAUL,QAAQ,EAAAK,IAAAA,CAAAA,CAAAA,MAAA,CAAKf,OAAO,EAAA,GAAA,CAAA;GAC/B;EAED,SAAS,EAAA,SAATgB,QAAOA,CAAEf,IAAI,EAAA;IAAA,OAAIC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAACf,oBAAoB,EAAE,CAAC;AAAA,GAAA;AAC3D6B,EAAAA,eAAe,EAAE,SAAjBA,eAAeA,CAAEhB,IAAI,EAAA;IAAA,OACnBC,KAAK,CAACD,IAAI,CAAC,CAACE,MAAM,CAChBJ,kBAAkB,EAAE,GAAA,EAAA,CAAAgB,MAAA,CACb3B,oBAAoB,EAAE,EAAA2B,SAAAA,CAAAA,GAAAA,EAAAA,CAAAA,MAAA,CACtB3B,oBAAoB,EAAE,EAAA,QAAA,CAC/B,CAAC;AAAA;AACL;AAEO,IAAMM,UAAU,GAAGI;;;;"}
@@ -0,0 +1,35 @@
1
+ /* eslint-disable promise/catch-or-return */
2
+ /* eslint-disable promise/prefer-await-to-then */
3
+ var extractModuleName = function extractModuleName(importFn) {
4
+ var code = importFn.toString();
5
+ var match = code.match(/import\((['"])(.*?)\1/);
6
+ var rawPath = match ? match[2] : "unknown_chunk";
7
+ return rawPath.replace(/^\.\//, "").replace(/\.\.\//g, "").replace(/[/.]+/g, "_");
8
+ };
9
+ var _retryImport = function retryImport(importFn, moduleName) {
10
+ var retriesLeft = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : 3;
11
+ var delay = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : 1000;
12
+ var resolvedModuleName = moduleName || extractModuleName(importFn);
13
+ return new Promise(function (resolve, reject) {
14
+ return importFn().then(resolve)["catch"](function (error) {
15
+ setTimeout(function () {
16
+ if (retriesLeft === 1) {
17
+ var reloadKey = "reload_".concat(resolvedModuleName);
18
+ var hasReloaded = sessionStorage.getItem(reloadKey);
19
+ if (!hasReloaded) {
20
+ sessionStorage.setItem(reloadKey, "true");
21
+ window.location.reload();
22
+ } else {
23
+ sessionStorage.removeItem(reloadKey);
24
+ reject(error);
25
+ }
26
+ return;
27
+ }
28
+ _retryImport(importFn, resolvedModuleName, retriesLeft - 1, delay).then(resolve, reject);
29
+ }, delay);
30
+ });
31
+ });
32
+ };
33
+
34
+ export { _retryImport as default };
35
+ //# sourceMappingURL=retryImport.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"retryImport.js","sources":["../../src/utils/retryImport.js"],"sourcesContent":["/* eslint-disable promise/catch-or-return */\n/* eslint-disable promise/prefer-await-to-then */\nconst extractModuleName = importFn => {\n const code = importFn.toString();\n const match = code.match(/import\\((['\"])(.*?)\\1/);\n\n const rawPath = match ? match[2] : \"unknown_chunk\";\n\n return rawPath\n .replace(/^\\.\\//, \"\")\n .replace(/\\.\\.\\//g, \"\")\n .replace(/[/.]+/g, \"_\");\n};\n\nconst retryImport = (importFn, moduleName, retriesLeft = 3, delay = 1000) => {\n const resolvedModuleName = moduleName || extractModuleName(importFn);\n\n return new Promise((resolve, reject) =>\n importFn()\n .then(resolve)\n .catch(error => {\n setTimeout(() => {\n if (retriesLeft === 1) {\n const reloadKey = `reload_${resolvedModuleName}`;\n const hasReloaded = sessionStorage.getItem(reloadKey);\n\n if (!hasReloaded) {\n sessionStorage.setItem(reloadKey, \"true\");\n window.location.reload();\n } else {\n sessionStorage.removeItem(reloadKey);\n reject(error);\n }\n\n return;\n }\n\n retryImport(\n importFn,\n resolvedModuleName,\n retriesLeft - 1,\n delay\n ).then(resolve, reject);\n }, delay);\n })\n );\n};\n\nexport default retryImport;\n"],"names":["extractModuleName","importFn","code","toString","match","rawPath","replace","retryImport","moduleName","retriesLeft","arguments","length","undefined","delay","resolvedModuleName","Promise","resolve","reject","then","error","setTimeout","reloadKey","concat","hasReloaded","sessionStorage","getItem","setItem","window","location","reload","removeItem"],"mappings":"AAAA;AACA;AACA,IAAMA,iBAAiB,GAAG,SAApBA,iBAAiBA,CAAGC,QAAQ,EAAI;AACpC,EAAA,IAAMC,IAAI,GAAGD,QAAQ,CAACE,QAAQ,EAAE;AAChC,EAAA,IAAMC,KAAK,GAAGF,IAAI,CAACE,KAAK,CAAC,uBAAuB,CAAC;EAEjD,IAAMC,OAAO,GAAGD,KAAK,GAAGA,KAAK,CAAC,CAAC,CAAC,GAAG,eAAe;EAElD,OAAOC,OAAO,CACXC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CACpBA,OAAO,CAAC,SAAS,EAAE,EAAE,CAAC,CACtBA,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;AAC3B,CAAC;AAEKC,IAAAA,YAAW,GAAG,SAAdA,WAAWA,CAAIN,QAAQ,EAAEO,UAAU,EAAoC;AAAA,EAAA,IAAlCC,WAAW,GAAAC,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAG,CAAC;AAAA,EAAA,IAAEG,KAAK,GAAAH,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAG,IAAI;AACtE,EAAA,IAAMI,kBAAkB,GAAGN,UAAU,IAAIR,iBAAiB,CAACC,QAAQ,CAAC;AAEpE,EAAA,OAAO,IAAIc,OAAO,CAAC,UAACC,OAAO,EAAEC,MAAM,EAAA;AAAA,IAAA,OACjChB,QAAQ,EAAE,CACPiB,IAAI,CAACF,OAAO,CAAC,CACR,OAAA,CAAA,CAAC,UAAAG,KAAK,EAAI;AACdC,MAAAA,UAAU,CAAC,YAAM;QACf,IAAIX,WAAW,KAAK,CAAC,EAAE;AACrB,UAAA,IAAMY,SAAS,GAAA,SAAA,CAAAC,MAAA,CAAaR,kBAAkB,CAAE;AAChD,UAAA,IAAMS,WAAW,GAAGC,cAAc,CAACC,OAAO,CAACJ,SAAS,CAAC;UAErD,IAAI,CAACE,WAAW,EAAE;AAChBC,YAAAA,cAAc,CAACE,OAAO,CAACL,SAAS,EAAE,MAAM,CAAC;AACzCM,YAAAA,MAAM,CAACC,QAAQ,CAACC,MAAM,EAAE;AAC1B,WAAC,MAAM;AACLL,YAAAA,cAAc,CAACM,UAAU,CAACT,SAAS,CAAC;YACpCJ,MAAM,CAACE,KAAK,CAAC;AACf;AAEA,UAAA;AACF;AAEAZ,QAAAA,YAAW,CACTN,QAAQ,EACRa,kBAAkB,EAClBL,WAAW,GAAG,CAAC,EACfI,KACF,CAAC,CAACK,IAAI,CAACF,OAAO,EAAEC,MAAM,CAAC;OACxB,EAAEJ,KAAK,CAAC;AACX,KAAC,CAAC;AAAA,GACN,CAAC;AACH;;;;"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bigbinary/neeto-commons-frontend",
3
- "version": "4.13.91",
3
+ "version": "4.13.92-beta.2",
4
4
  "description": "A package encapsulating common code across neeto projects including initializers, utility functions, common components and hooks and so on.",
5
5
  "repository": "git@github.com:bigbinary/neeto-commons-frontend.git",
6
6
  "author": "Amaljith K <amaljith.k@bigbinary.com>",
@@ -67,7 +67,8 @@
67
67
  "files": [
68
68
  "dist",
69
69
  "configs",
70
- "*.d.ts"
70
+ "*.d.ts",
71
+ "src/translations"
71
72
  ],
72
73
  "devDependencies": {
73
74
  "@babel/cli": "^7.23.0",
@@ -83,9 +84,10 @@
83
84
  "@babel/runtime": "7.26.10",
84
85
  "@babel/types": "^7.20.7",
85
86
  "@bigbinary/babel-preset-neeto": "1.0.8",
86
- "@bigbinary/eslint-plugin-neeto": "^1.6.2",
87
+ "@bigbinary/eslint-plugin-neeto": "1.8.0",
87
88
  "@bigbinary/neeto-audit-frontend": "^2.3.1",
88
89
  "@bigbinary/neeto-cist": "1.0.11",
90
+ "@bigbinary/neeto-commons-frontend": "4.4.6",
89
91
  "@bigbinary/neeto-editor": "1.38.1",
90
92
  "@bigbinary/neeto-hotkeys": "^1.0.7",
91
93
  "@bigbinary/neeto-icons": "1.20.5",
@@ -165,6 +167,7 @@
165
167
  "husky": "7.0.4",
166
168
  "i18next": "22.5.1",
167
169
  "i18next-browser-languagedetector": "^7.1.0",
170
+ "i18next-resources-to-backend": "^1.2.1",
168
171
  "immer": "^10.0.2",
169
172
  "jest": "29.7.0",
170
173
  "jest-environment-jsdom": "29.7.0",
@@ -199,7 +202,7 @@
199
202
  "rollup-plugin-styles": "4.0.0",
200
203
  "sass": "1.62.0",
201
204
  "sass-loader": "^13.0.2",
202
- "tailwindcss": "^3.4.1",
205
+ "tailwindcss": "^3.4.19",
203
206
  "ua-parser-js": "^2.0.3",
204
207
  "unified": "11.0.0",
205
208
  "util": "^0.12.5",
@@ -210,8 +213,9 @@
210
213
  },
211
214
  "peerDependencies": {
212
215
  "@bigbinary/babel-preset-neeto": "1.0.8",
213
- "@bigbinary/eslint-plugin-neeto": "^1.6.2",
216
+ "@bigbinary/eslint-plugin-neeto": "1.8.0",
214
217
  "@bigbinary/neeto-cist": "1.0.11",
218
+ "@bigbinary/neeto-commons-frontend": "4.4.6",
215
219
  "@bigbinary/neeto-editor": "1.38.1",
216
220
  "@bigbinary/neeto-hotkeys": "^1.0.7",
217
221
  "@bigbinary/neeto-icons": "1.20.5",
@@ -261,7 +265,7 @@
261
265
  "react-toastify": "8.0.2",
262
266
  "sass": "1.62.0",
263
267
  "shakapacker": "^6.5.5",
264
- "tailwindcss": "^3.4.1",
268
+ "tailwindcss": "^3.4.19",
265
269
  "ua-parser-js": "^2.0.3",
266
270
  "util": "^0.12.5",
267
271
  "uuid": "10.0.0",
package/react-utils.d.ts CHANGED
@@ -1904,4 +1904,76 @@ export function useColumnConfig<ColumnData>({
1904
1904
  }): {
1905
1905
  columnData: ColumnData[];
1906
1906
  onUpdateColumns: (columnsOrCallback: ColumnData[] | ((columnData: ColumnData[]) => ColumnData[])) => void;
1907
- };
1907
+ };
1908
+ /**
1909
+ *
1910
+ * The lazyWithRetry function is a utility that helps you lazy load a component
1911
+ *
1912
+ * with retry functionality. It is useful when you want to load a component that
1913
+ *
1914
+ * may fail to load due to various reasons and you want to retry loading the
1915
+ *
1916
+ * component multiple times before giving up.
1917
+ *
1918
+ * @example
1919
+ *
1920
+ * import { lazyWithRetry } from "@bigbinary/neeto-commons-frontend/react-utils";
1921
+ * @endexample
1922
+ * @example
1923
+ *
1924
+ * // With moduleName
1925
+ * const LazyComponent = lazyWithRetry(
1926
+ * () => import("./LazyComponent"),
1927
+ * "LazyComponent"
1928
+ * );
1929
+ *
1930
+ * // Without moduleName (automatically extracted)
1931
+ * const LazyComponent = lazyWithRetry(() => import("./LazyComponent"));
1932
+ * @endexample
1933
+ */
1934
+ export function lazyWithRetry(importFn: () => Promise<{
1935
+ default: React.ComponentType<any>;
1936
+ }>, moduleName?: string, retriesLeft?: number, delay?: number): React.LazyExoticComponent<React.ComponentType<any>>;
1937
+ /**
1938
+ *
1939
+ * The mount function is a utility that dynamically mounts React components to
1940
+ *
1941
+ * DOM elements based on data attributes. It searches for elements with the
1942
+ *
1943
+ * data-react-class attribute and automatically imports and renders the
1944
+ *
1945
+ * corresponding React component with optional props.
1946
+ *
1947
+ * @example
1948
+ *
1949
+ * import mount from "@bigbinary/neeto-commons-frontend/react-utils/mount";
1950
+ *
1951
+ * // Define your component mappings
1952
+ * const components = {
1953
+ * MyComponent: () => import("./components/MyComponent"),
1954
+ * AnotherComponent: () => import("./components/AnotherComponent"),
1955
+ * };
1956
+ *
1957
+ * // Call mount with the component mappings
1958
+ * mount(components);
1959
+ * @endexample
1960
+ * In your HTML, you would have elements like:
1961
+ *
1962
+ * @example
1963
+ *
1964
+ * <div
1965
+ * data-react-class="MyComponent"
1966
+ * data-react-props='{"name": "John", "age": 30}'
1967
+ * />
1968
+ * <div data-react-class="AnotherComponent" />
1969
+ * @endexample
1970
+ * The mount function will:
1971
+ *
1972
+ * If a component fails to load, it will be retried using the retryImport utility
1973
+ *
1974
+ * with automatic retry logic.
1975
+ *
1976
+ */
1977
+ export function mount(components: Record<string, () => Promise<{
1978
+ default: React.ComponentType<any>;
1979
+ } | React.ComponentType<any>>>): void;
@@ -0,0 +1,111 @@
1
+ {
2
+ "generic": {
3
+ "error": "حدث خطأ ما. يرجى المحاولة مرة أخرى لاحقًا."
4
+ },
5
+ "authentication": {
6
+ "notLoggedIn": "لم يتمكن من المصادقة، يرجى تسجيل الدخول للمتابعة!",
7
+ "couldNotAuth": "لم يتمكن من المصادقة مع {{parameter}} المقدم.",
8
+ "incorrectPassword": "كلمة المرور الحالية غير صحيحة. يرجى المحاولة مرة أخرى.",
9
+ "incorrectEmailPassword": "البريد الإلكتروني أو كلمة المرور غير صحيحة. يرجى المحاولة مرة أخرى."
10
+ },
11
+ "authorization": {
12
+ "unauthorized": "أنت غير مخول لأداء هذا الإجراء."
13
+ },
14
+ "resource": {
15
+ "add_one": "{{entity}} تمت إضافته بنجاح.",
16
+ "add_other": "{{entity}} تمت إضافتها بنجاح.",
17
+ "save": "{{entity}} تم حفظه بنجاح.",
18
+ "save_one": "{{entity}} تم حفظه بنجاح.",
19
+ "save_other": "{{entity}} تمت حفظها بنجاح.",
20
+ "update": "{{entity}} تم تحديثه بنجاح.",
21
+ "update_one": "{{entity}} تم تحديثه بنجاح.",
22
+ "update_other": "{{entity}} تمت تحديثها بنجاح.",
23
+ "delete_one": "{{entity}} تم حذفه بنجاح.",
24
+ "delete_other": "{{entity}} تمت إزالته بنجاح.",
25
+ "clone": "{{entity}} تم نسخه بنجاح.",
26
+ "notFound": "{{entity}} غير موجود.",
27
+ "remove_one": "{{entity}} تم إزالته بنجاح.",
28
+ "remove_other": "{{entity}} تمت إزالتها بنجاح.",
29
+ "sent": "{{entity}} تم إرساله بنجاح.",
30
+ "merged": "{{entity}} تم دمجه بنجاح.",
31
+ "disconnected": "{{entity}} تم فصله بنجاح."
32
+ },
33
+ "otp": {
34
+ "sent": "تم إرسال OTP بنجاح.",
35
+ "invalid": "OTP غير صالح",
36
+ "verified": "تم التحقق من OTP بنجاح."
37
+ },
38
+ "upload": {
39
+ "error": "حدث خطأ أثناء تحميل الملف"
40
+ },
41
+ "image": {
42
+ "profile": {
43
+ "removalFailed": "فشل في إزالة صورة الملف الشخصي",
44
+ "removalSuccess": "تمت إزالة صورة الملف الشخصي بنجاح"
45
+ },
46
+ "contentTypeInvalid": "أنواع الملفات المدعومة هي jpg، png، svg فقط",
47
+ "sizeOutOfRange": "يجب ألا يتجاوز {{maxSize, number}} ميجابايت"
48
+ },
49
+ "userRole": {
50
+ "deactivateActiveAdmin": "لا يمكنك إلغاء تنشيط المسؤول النشط من مساحة العمل!"
51
+ },
52
+ "activeRecord": {
53
+ "error": {
54
+ "blankName": "لا يمكن أن يكون الاسم فارغًا",
55
+ "blankDescription": "لا يمكن أن تكون الوصف فارغًا",
56
+ "blankValue": "لا يمكن أن تكون القيمة فارغة",
57
+ "prefixType": "نوع البادئة {{value}} غير صالح",
58
+ "minimumEntryLimit": "يجب أن تكون الحد الأدنى لعدد الإدخالات أقل من أو يساوي {{maximumEntryLimit, number}}",
59
+ "maximumEntryLimit": "يجب أن تكون الحد الأقصى لعدد الإدخالات أكبر من أو يساوي {{minimumEntryLimit, number}}"
60
+ }
61
+ },
62
+ "sessions": {
63
+ "expiry": "انتهت صلاحية جلستك. يرجى تسجيل الدخول مرة أخرى."
64
+ },
65
+ "payment": {
66
+ "error": {
67
+ "incomplete": "لم يتمكن من إكمال الدفع"
68
+ }
69
+ },
70
+ "invitations": {
71
+ "deleted_one": "تم حذف الدعوة بنجاح",
72
+ "deleted_other": "{{count, number}} دعوات تم حذفها بنجاح",
73
+ "sent_one": "تم إرسال الدعوة بنجاح",
74
+ "sent_other": "{{count, number}} دعوات تم إرسالها بنجاح",
75
+ "notFound": "{{email}} لم يتم دعوتها لاختبار هذا الموقع."
76
+ },
77
+ "github": {
78
+ "error": {
79
+ "webhookPermissionDenied": "تم رفض الإذن. تأكد من أنك تمتلك الإذن لإنشاء webhooks للمستودع.",
80
+ "primaryNonDeletable": "لا يمكن حذف حساب GitHub الأساسي."
81
+ }
82
+ },
83
+ "neetoCommons": {
84
+ "fallbackComponent": {
85
+ "somethingWentWrong": "عذرًا، حدث خطأ ما.",
86
+ "description": "يرجى محاولة <reloading>reloading</reloading> الصفحة.<br> إذا استمرت المشكلة، <contactus>تواصل معنا</contactus>."
87
+ },
88
+ "toastr": {
89
+ "success": {
90
+ "copiedToClipboard": "تم النسخ إلى الحافظة!"
91
+ },
92
+ "error": {
93
+ "networkError": "خطأ في الشبكة. يرجى التحقق من اتصالك والمحاولة مرة أخرى.",
94
+ "noInternetConnection": "لا يوجد اتصال بالإنترنت."
95
+ }
96
+ },
97
+ "notice": {
98
+ "errorOccurred": "حدث خطأ ما."
99
+ },
100
+ "validators": {
101
+ "isRequired": "{{what}} مطلوب.",
102
+ "mustNotContainCapitalLetters": "{{what}} يجب ألا يحتوي على أحرف كبيرة.",
103
+ "mustNotContainSpaces": "{{what}} يجب ألا يحتوي على مسافات.",
104
+ "mustNotContainSpecialCharactersExceptHyphen": "{{what}} يجب ألا يحتوي على أي أحرف خاصة، باستثناء '-'",
105
+ "mustNotStartOrEndWithSpecialCharacters": "{{what}} يجب ألا يبدأ أو ينتهي بأحرف خاصة."
106
+ },
107
+ "copyToClipboard": {
108
+ "failed": "فشل في النسخ إلى الحافظة"
109
+ }
110
+ }
111
+ }
@@ -0,0 +1,111 @@
1
+ {
2
+ "generic": {
3
+ "error": "Нещо се обърка. Моля, опитайте отново по-късно."
4
+ },
5
+ "authentication": {
6
+ "notLoggedIn": "Не може да се удостоверите, моля влезте, за да продължите!",
7
+ "couldNotAuth": "Не можа да се удостовери с предоставения {{parameter}}.",
8
+ "incorrectPassword": "Текущата парола е неправилна. Моля, опитайте отново.",
9
+ "incorrectEmailPassword": "Неправилен имейл или парола. Моля, опитайте отново."
10
+ },
11
+ "authorization": {
12
+ "unauthorized": "Нямате право да извършвате това действие."
13
+ },
14
+ "resource": {
15
+ "add_one": "{{entity}} беше добавен успешно.",
16
+ "add_other": "{{entity}} бяха добавени успешно.",
17
+ "save": "{{entity}} беше запазен успешно.",
18
+ "save_one": "{{entity}} беше запазен успешно.",
19
+ "save_other": "{{entity}} бяха запазени успешно.",
20
+ "update": "{{entity}} беше актуализиран успешно.",
21
+ "update_one": "{{entity}} беше актуализиран успешно.",
22
+ "update_other": "{{entity}} бяха актуализирани успешно.",
23
+ "delete_one": "{{entity}} беше изтрит успешно.",
24
+ "delete_other": "{{entity}} бяха изтрити успешно.",
25
+ "clone": "{{entity}} беше клониран успешно.",
26
+ "notFound": "{{entity}} не съществува.",
27
+ "remove_one": "{{entity}} беше премахнат успешно.",
28
+ "remove_other": "{{entity}} бяха премахнати успешно.",
29
+ "sent": "{{entity}} изпратен успешно.",
30
+ "merged": "{{entity}} бяха успешно свързани.",
31
+ "disconnected": "{{entity}} беше успешно разединен."
32
+ },
33
+ "otp": {
34
+ "sent": "OTP беше изпратен успешно.",
35
+ "invalid": "Невалиден OTP",
36
+ "verified": "OTP беше успешно проверен."
37
+ },
38
+ "upload": {
39
+ "error": "Възникна грешка при качването на файла"
40
+ },
41
+ "image": {
42
+ "profile": {
43
+ "removalFailed": "Неуспешно премахване на снимката на профила",
44
+ "removalSuccess": "Снимката на профила е успешно премахната"
45
+ },
46
+ "contentTypeInvalid": "Други от jpg, png, svg не са поддържани",
47
+ "sizeOutOfRange": "Не трябва да е повече от {{maxSize, number}} MB"
48
+ },
49
+ "userRole": {
50
+ "deactivateActiveAdmin": "Не можете да деактивирате активен администратор от работното пространство!"
51
+ },
52
+ "activeRecord": {
53
+ "error": {
54
+ "blankName": "Името не може да бъде празно",
55
+ "blankDescription": "Описание не може да бъде празно",
56
+ "blankValue": "Стойността не може да бъде празна",
57
+ "prefixType": "Типът на префикса {{value}} не е валиден",
58
+ "minimumEntryLimit": "Минималният лимит за запис трябва да бъде по-малък или равен на {{maximumEntryLimit, number}}",
59
+ "maximumEntryLimit": "Максималният лимит за запис трябва да бъде по-голям или равен на {{minimumEntryLimit, number}}"
60
+ }
61
+ },
62
+ "sessions": {
63
+ "expiry": "Вашата сесия е изтекла. Моля, влезте отново."
64
+ },
65
+ "payment": {
66
+ "error": {
67
+ "incomplete": "Вашето плащане не можа да бъде завършено"
68
+ }
69
+ },
70
+ "invitations": {
71
+ "deleted_one": "Поканата беше изтрита успешно",
72
+ "deleted_other": "{{count, number}} покани бяха изтрити успешно",
73
+ "sent_one": "Поканата беше изпратена успешно",
74
+ "sent_other": "{{count, number}} покани бяха изпратени успешно",
75
+ "notFound": "{{email}} не е бил поканен да тества този уебсайт."
76
+ },
77
+ "github": {
78
+ "error": {
79
+ "webhookPermissionDenied": "Достъпът е отказан. Уверете се, че имате право да създавате уебхукове за хранилището.",
80
+ "primaryNonDeletable": "Основната Github сметка не може да бъде изтрита."
81
+ }
82
+ },
83
+ "neetoCommons": {
84
+ "fallbackComponent": {
85
+ "somethingWentWrong": "Съжалявам, нещо се обърка.",
86
+ "description": "Моля опитайте <reloading>rелодиране</reloading> на страницата.<br> Ако проблемът продължава, <contactus>контактувайте с нас</contactus>."
87
+ },
88
+ "toastr": {
89
+ "success": {
90
+ "copiedToClipboard": "Копирано в клипборда!"
91
+ },
92
+ "error": {
93
+ "networkError": "Грешка в мрежата. Моля, проверете връзката си и опитайте отново.",
94
+ "noInternetConnection": "Няма интернет връзка."
95
+ }
96
+ },
97
+ "notice": {
98
+ "errorOccurred": "Възникна грешка."
99
+ },
100
+ "validators": {
101
+ "isRequired": "{{what}} е задължително.",
102
+ "mustNotContainCapitalLetters": "{{what}} не трябва да съдържа главни букви.",
103
+ "mustNotContainSpaces": "{{what}} не трябва да съдържа интервали.",
104
+ "mustNotContainSpecialCharactersExceptHyphen": "{{what}} не трябва да съдържа специални символи, с изключение на '-'",
105
+ "mustNotStartOrEndWithSpecialCharacters": "{{what}} не трябва да започва или завършва със специални символи."
106
+ },
107
+ "copyToClipboard": {
108
+ "failed": "Неуспешно копиране в клипборда"
109
+ }
110
+ }
111
+ }