@tachybase/module-web 1.3.24 → 1.4.0

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 (46) hide show
  1. package/dist/client/index.js +15 -15
  2. package/dist/client/locale/index.d.ts +1 -1
  3. package/dist/externalVersion.js +5 -5
  4. package/dist/locale/en_US.js +9 -0
  5. package/dist/locale/es_ES.js +4 -0
  6. package/dist/locale/fr_FR.js +4 -0
  7. package/dist/locale/ja_JP.js +4 -0
  8. package/dist/locale/ko_KR.js +4 -0
  9. package/dist/locale/pt_BR.js +4 -0
  10. package/dist/locale/ru_RU.js +4 -0
  11. package/dist/locale/tr_TR.js +4 -0
  12. package/dist/locale/uk_UA.js +4 -0
  13. package/dist/locale/zh-CN.js +10 -1
  14. package/dist/locale/zh-TW.js +4 -0
  15. package/dist/node_modules/cronstrue/bin/cli.js +25 -8
  16. package/dist/node_modules/cronstrue/dist/cronParser.d.ts +2 -2
  17. package/dist/node_modules/cronstrue/dist/cronstrue-i18n.js +278 -66
  18. package/dist/node_modules/cronstrue/dist/cronstrue-i18n.min.js +1 -1
  19. package/dist/node_modules/cronstrue/dist/cronstrue.js +1 -1
  20. package/dist/node_modules/cronstrue/dist/cronstrue.min.js +1 -1
  21. package/dist/node_modules/cronstrue/dist/expressionDescriptor.d.ts +1 -1
  22. package/dist/node_modules/cronstrue/dist/i18n/allLocales.d.ts +1 -0
  23. package/dist/node_modules/cronstrue/dist/i18n/locale.d.ts +2 -0
  24. package/dist/node_modules/cronstrue/dist/i18n/locales/da.d.ts +1 -1
  25. package/dist/node_modules/cronstrue/dist/i18n/locales/en.d.ts +1 -0
  26. package/dist/node_modules/cronstrue/dist/i18n/locales/fr.d.ts +5 -1
  27. package/dist/node_modules/cronstrue/dist/i18n/locales/hr.d.ts +55 -0
  28. package/dist/node_modules/cronstrue/locales/da.js +2 -2
  29. package/dist/node_modules/cronstrue/locales/da.min.js +1 -1
  30. package/dist/node_modules/cronstrue/locales/en.js +4 -1
  31. package/dist/node_modules/cronstrue/locales/en.min.js +1 -1
  32. package/dist/node_modules/cronstrue/locales/fr.js +12 -4
  33. package/dist/node_modules/cronstrue/locales/fr.min.js +1 -1
  34. package/dist/node_modules/cronstrue/locales/hr.js +288 -0
  35. package/dist/node_modules/cronstrue/locales/hr.min.js +1 -0
  36. package/dist/node_modules/cronstrue/locales/nb.js +1 -1
  37. package/dist/node_modules/cronstrue/locales/nb.min.js +1 -1
  38. package/dist/node_modules/cronstrue/locales/ru.js +1 -1
  39. package/dist/node_modules/cronstrue/locales/ru.min.js +1 -1
  40. package/dist/node_modules/cronstrue/locales/zh_CN.js +4 -4
  41. package/dist/node_modules/cronstrue/locales/zh_CN.min.js +1 -1
  42. package/dist/node_modules/cronstrue/locales/zh_TW.js +4 -4
  43. package/dist/node_modules/cronstrue/locales/zh_TW.min.js +1 -1
  44. package/dist/node_modules/cronstrue/package.json +1 -1
  45. package/dist/server/server.js +27 -1
  46. package/package.json +8 -8
@@ -31,7 +31,11 @@ var CronParser = (function () {
31
31
  var _a;
32
32
  var parsed;
33
33
  var expression = (_a = this.expression) !== null && _a !== void 0 ? _a : '';
34
- if (expression.startsWith('@')) {
34
+ if (expression === "@reboot") {
35
+ parsed = ["@reboot", "", "", "", "", "", ""];
36
+ return parsed;
37
+ }
38
+ else if (expression.startsWith('@')) {
35
39
  var special = this.parseSpecial(this.expression);
36
40
  parsed = this.extractParts(special);
37
41
  }
@@ -50,7 +54,8 @@ var CronParser = (function () {
50
54
  '@weekly': '0 0 * * 0',
51
55
  '@daily': '0 0 * * *',
52
56
  '@midnight': '0 0 * * *',
53
- '@hourly': '0 * * * *'
57
+ '@hourly': '0 * * * *',
58
+ '@reboot': '@reboot'
54
59
  };
55
60
  var special = specialExpressions[expression];
56
61
  if (!special) {
@@ -224,11 +229,17 @@ var CronParser = (function () {
224
229
  }
225
230
  };
226
231
  CronParser.prototype.validate = function (parsed) {
227
- this.assertNoInvalidCharacters("DOW", parsed[5]);
228
- this.assertNoInvalidCharacters("DOM", parsed[3]);
229
- this.validateRange(parsed);
230
- };
231
- CronParser.prototype.validateRange = function (parsed) {
232
+ var standardCronPartCharacters = "0-9,\\-*\/";
233
+ this.validateOnlyExpectedCharactersFound(parsed[0], standardCronPartCharacters);
234
+ this.validateOnlyExpectedCharactersFound(parsed[1], standardCronPartCharacters);
235
+ this.validateOnlyExpectedCharactersFound(parsed[2], standardCronPartCharacters);
236
+ this.validateOnlyExpectedCharactersFound(parsed[3], "0-9,\\-*\/LW");
237
+ this.validateOnlyExpectedCharactersFound(parsed[4], standardCronPartCharacters);
238
+ this.validateOnlyExpectedCharactersFound(parsed[5], "0-9,\\-*\/L#");
239
+ this.validateOnlyExpectedCharactersFound(parsed[6], standardCronPartCharacters);
240
+ this.validateAnyRanges(parsed);
241
+ };
242
+ CronParser.prototype.validateAnyRanges = function (parsed) {
232
243
  rangeValidator_1.default.secondRange(parsed[0]);
233
244
  rangeValidator_1.default.minuteRange(parsed[1]);
234
245
  rangeValidator_1.default.hourRange(parsed[2]);
@@ -236,10 +247,10 @@ var CronParser = (function () {
236
247
  rangeValidator_1.default.monthRange(parsed[4], this.monthStartIndexZero);
237
248
  rangeValidator_1.default.dayOfWeekRange(parsed[5], this.dayOfWeekStartIndexZero);
238
249
  };
239
- CronParser.prototype.assertNoInvalidCharacters = function (partDescription, expression) {
240
- var invalidChars = expression.match(/[A-KM-VX-Z]+/gi);
250
+ CronParser.prototype.validateOnlyExpectedCharactersFound = function (cronPart, allowedCharsExpression) {
251
+ var invalidChars = cronPart.match(new RegExp("[^".concat(allowedCharsExpression, "]+"), "gi"));
241
252
  if (invalidChars && invalidChars.length) {
242
- throw new Error("".concat(partDescription, " part contains invalid values: '").concat(invalidChars.toString(), "'"));
253
+ throw new Error("Expression contains invalid values: '".concat(invalidChars.toString(), "'"));
243
254
  }
244
255
  };
245
256
  return CronParser;
@@ -276,7 +287,7 @@ var ExpressionDescriptor = (function () {
276
287
  }
277
288
  }
278
289
  ExpressionDescriptor.toString = function (expression, _a) {
279
- var _b = _a === void 0 ? {} : _a, _c = _b.throwExceptionOnParseError, throwExceptionOnParseError = _c === void 0 ? true : _c, _d = _b.verbose, verbose = _d === void 0 ? false : _d, _e = _b.dayOfWeekStartIndexZero, dayOfWeekStartIndexZero = _e === void 0 ? true : _e, _f = _b.monthStartIndexZero, monthStartIndexZero = _f === void 0 ? false : _f, use24HourTimeFormat = _b.use24HourTimeFormat, _g = _b.locale, locale = _g === void 0 ? null : _g, _h = _b.tzOffset, tzOffset = _h === void 0 ? 0 : _h;
290
+ var _b = _a === void 0 ? {} : _a, _c = _b.throwExceptionOnParseError, throwExceptionOnParseError = _c === void 0 ? true : _c, _d = _b.verbose, verbose = _d === void 0 ? false : _d, _e = _b.dayOfWeekStartIndexZero, dayOfWeekStartIndexZero = _e === void 0 ? true : _e, _f = _b.monthStartIndexZero, monthStartIndexZero = _f === void 0 ? false : _f, use24HourTimeFormat = _b.use24HourTimeFormat, _g = _b.locale, locale = _g === void 0 ? null : _g;
280
291
  var options = {
281
292
  throwExceptionOnParseError: throwExceptionOnParseError,
282
293
  verbose: verbose,
@@ -284,8 +295,10 @@ var ExpressionDescriptor = (function () {
284
295
  monthStartIndexZero: monthStartIndexZero,
285
296
  use24HourTimeFormat: use24HourTimeFormat,
286
297
  locale: locale,
287
- tzOffset: tzOffset
288
298
  };
299
+ if (options.tzOffset) {
300
+ console.warn("'tzOffset' option has been deprecated and is no longer supported.");
301
+ }
289
302
  var descripter = new ExpressionDescriptor(expression, options);
290
303
  return descripter.getFullDescription();
291
304
  };
@@ -296,10 +309,14 @@ var ExpressionDescriptor = (function () {
296
309
  localesLoader.load(ExpressionDescriptor.locales);
297
310
  };
298
311
  ExpressionDescriptor.prototype.getFullDescription = function () {
312
+ var _a, _b;
299
313
  var description = "";
300
314
  try {
301
315
  var parser = new cronParser_1.CronParser(this.expression, this.options.dayOfWeekStartIndexZero, this.options.monthStartIndexZero);
302
316
  this.expressionParts = parser.parse();
317
+ if (this.expressionParts[0] === "@reboot") {
318
+ return ((_b = (_a = this.i18n).atReboot) === null || _b === void 0 ? void 0 : _b.call(_a)) || "Run once, at startup";
319
+ }
303
320
  var timeSegment = this.getTimeOfDayDescription();
304
321
  var dayOfMonthDesc = this.getDayOfMonthDescription();
305
322
  var monthDesc = this.getMonthDescription();
@@ -418,8 +435,24 @@ var ExpressionDescriptor = (function () {
418
435
  ExpressionDescriptor.prototype.getHoursDescription = function () {
419
436
  var _this = this;
420
437
  var expression = this.expressionParts[2];
438
+ var hourIndex = 0;
439
+ var rangeEndValues = [];
440
+ expression
441
+ .split("/")[0]
442
+ .split(",")
443
+ .forEach(function (range) {
444
+ var rangeParts = range.split("-");
445
+ if (rangeParts.length === 2) {
446
+ rangeEndValues.push({ value: rangeParts[1], index: hourIndex + 1 });
447
+ }
448
+ hourIndex += rangeParts.length;
449
+ });
450
+ var evaluationIndex = 0;
421
451
  var description = this.getSegmentDescription(expression, this.i18n.everyHour(), function (s) {
422
- return _this.formatTime(s, "0", "");
452
+ var match = rangeEndValues.find(function (r) { return r.value === s && r.index === evaluationIndex; });
453
+ var isRangeEndWithNonZeroMinute = match && _this.expressionParts[1] !== "0";
454
+ evaluationIndex++;
455
+ return isRangeEndWithNonZeroMinute ? _this.formatTime(s, "59", "") : _this.formatTime(s, "0", "");
423
456
  }, function (s) {
424
457
  return stringUtilities_1.StringUtilities.format(_this.i18n.everyX0Hours(s), s);
425
458
  }, function (s) {
@@ -427,16 +460,6 @@ var ExpressionDescriptor = (function () {
427
460
  }, function (s) {
428
461
  return _this.i18n.atX0();
429
462
  });
430
- if (description && expression.includes("-") && this.expressionParts[1] != "0") {
431
- var atTheHourMatches = Array.from(description.matchAll(/:00/g));
432
- if (atTheHourMatches.length > 1) {
433
- var lastAtTheHourMatchIndex = atTheHourMatches[atTheHourMatches.length - 1].index;
434
- description =
435
- description.substring(0, lastAtTheHourMatchIndex) +
436
- ":59" +
437
- description.substring(lastAtTheHourMatchIndex + 3);
438
- }
439
- }
440
463
  return description;
441
464
  };
442
465
  ExpressionDescriptor.prototype.getDayOfWeekDescription = function () {
@@ -456,22 +479,6 @@ var ExpressionDescriptor = (function () {
456
479
  exp = exp.replace("L", "");
457
480
  }
458
481
  var parsedExp = parseInt(exp);
459
- if (_this.options.tzOffset) {
460
- var hourExpression = _this.expressionParts[2];
461
- var hour = parseInt(hourExpression) + (_this.options.tzOffset ? _this.options.tzOffset : 0);
462
- if (hour >= 24) {
463
- parsedExp++;
464
- }
465
- else if (hour < 0) {
466
- parsedExp--;
467
- }
468
- if (parsedExp > 6) {
469
- parsedExp = 0;
470
- }
471
- else if (parsedExp < 0) {
472
- parsedExp = 6;
473
- }
474
- }
475
482
  var description = _this.i18n.daysOfTheWeekInCase
476
483
  ? _this.i18n.daysOfTheWeekInCase(form)[parsedExp]
477
484
  : daysOfWeekNames[parsedExp];
@@ -697,15 +704,8 @@ var ExpressionDescriptor = (function () {
697
704
  ExpressionDescriptor.prototype.formatTime = function (hourExpression, minuteExpression, secondExpression) {
698
705
  var hourOffset = 0;
699
706
  var minuteOffset = 0;
700
- if (this.options.tzOffset) {
701
- hourOffset = this.options.tzOffset > 0 ? Math.floor(this.options.tzOffset) : Math.ceil(this.options.tzOffset);
702
- minuteOffset = (parseFloat((this.options.tzOffset % 1).toFixed(2)));
703
- if (minuteOffset != 0) {
704
- minuteOffset *= 60;
705
- }
706
- }
707
- var hour = parseInt(hourExpression) + (hourOffset);
708
- var minute = parseInt(minuteExpression) + (minuteOffset);
707
+ var hour = parseInt(hourExpression) + hourOffset;
708
+ var minute = parseInt(minuteExpression) + minuteOffset;
709
709
  if (minute >= 60) {
710
710
  minute -= 60;
711
711
  hour += 1;
@@ -744,6 +744,12 @@ var ExpressionDescriptor = (function () {
744
744
  description = description.replace(new RegExp(", ".concat(this.i18n.everyHour()), "g"), "");
745
745
  description = description.replace(new RegExp(this.i18n.commaEveryDay(), "g"), "");
746
746
  description = description.replace(/\, ?$/, "");
747
+ if (this.i18n.conciseVerbosityReplacements) {
748
+ for (var _i = 0, _a = Object.entries(this.i18n.conciseVerbosityReplacements()); _i < _a.length; _i++) {
749
+ var _b = _a[_i], key = _b[0], value = _b[1];
750
+ description = description.replace(new RegExp(key, "g"), value);
751
+ }
752
+ }
747
753
  }
748
754
  return description;
749
755
  };
@@ -763,7 +769,7 @@ exports.ExpressionDescriptor = ExpressionDescriptor;
763
769
 
764
770
 
765
771
  Object.defineProperty(exports, "__esModule", ({ value: true }));
766
- exports.bg = exports.my = exports.vi = exports.ar = exports.th = exports.af = exports.hu = exports.be = exports.ca = exports.fa = exports.sw = exports.sl = exports.fi = exports.sk = exports.cs = exports.he = exports.ja = exports.zh_TW = exports.zh_CN = exports.uk = exports.tr = exports.ru = exports.ro = exports.pt_PT = exports.pt_BR = exports.pl = exports.sv = exports.nb = exports.nl = exports.ko = exports.id = exports.it = exports.fr = exports.es = exports.de = exports.da = exports.en = void 0;
772
+ exports.hr = exports.bg = exports.my = exports.vi = exports.ar = exports.th = exports.af = exports.hu = exports.be = exports.ca = exports.fa = exports.sw = exports.sl = exports.fi = exports.sk = exports.cs = exports.he = exports.ja = exports.zh_TW = exports.zh_CN = exports.uk = exports.tr = exports.ru = exports.ro = exports.pt_PT = exports.pt_BR = exports.pl = exports.sv = exports.nb = exports.nl = exports.ko = exports.id = exports.it = exports.fr = exports.es = exports.de = exports.da = exports.en = void 0;
767
773
  var en_1 = __webpack_require__(486);
768
774
  Object.defineProperty(exports, "en", ({ enumerable: true, get: function () { return en_1.en; } }));
769
775
  var da_1 = __webpack_require__(506);
@@ -838,6 +844,8 @@ var my_1 = __webpack_require__(919);
838
844
  Object.defineProperty(exports, "my", ({ enumerable: true, get: function () { return my_1.my; } }));
839
845
  var bg_1 = __webpack_require__(622);
840
846
  Object.defineProperty(exports, "bg", ({ enumerable: true, get: function () { return bg_1.bg; } }));
847
+ var hr_1 = __webpack_require__(131);
848
+ Object.defineProperty(exports, "hr", ({ enumerable: true, get: function () { return hr_1.hr; } }));
841
849
 
842
850
 
843
851
  /***/ }),
@@ -2045,8 +2053,8 @@ var da = (function () {
2045
2053
  da.prototype.commaOnlyInX0 = function () {
2046
2054
  return ", kun i %s";
2047
2055
  };
2048
- da.prototype.commaOnlyOnX0 = function () {
2049
- return ", på %se";
2056
+ da.prototype.commaOnlyOnX0 = function (s) {
2057
+ return ", på enhver %s";
2050
2058
  };
2051
2059
  da.prototype.commaAndOnX0 = function () {
2052
2060
  return ", og på %s";
@@ -2383,7 +2391,7 @@ var en = (function () {
2383
2391
  return false;
2384
2392
  };
2385
2393
  en.prototype.anErrorOccuredWhenGeneratingTheExpressionD = function () {
2386
- return "An error occured when generating the expression description. Check the cron expression syntax.";
2394
+ return "An error occurred when generating the expression description. Check the cron expression syntax.";
2387
2395
  };
2388
2396
  en.prototype.everyMinute = function () {
2389
2397
  return "every minute";
@@ -2539,6 +2547,9 @@ var en = (function () {
2539
2547
  "December",
2540
2548
  ];
2541
2549
  };
2550
+ en.prototype.atReboot = function () {
2551
+ return "Run once, at startup";
2552
+ };
2542
2553
  return en;
2543
2554
  }());
2544
2555
  exports.en = en;
@@ -3112,6 +3123,11 @@ exports.fr = void 0;
3112
3123
  var fr = (function () {
3113
3124
  function fr() {
3114
3125
  }
3126
+ fr.prototype.conciseVerbosityReplacements = function () {
3127
+ return {
3128
+ "de le": "du",
3129
+ };
3130
+ };
3115
3131
  fr.prototype.atX0SecondsPastTheMinuteGt20 = function () {
3116
3132
  return null;
3117
3133
  };
@@ -3127,15 +3143,15 @@ var fr = (function () {
3127
3143
  fr.prototype.use24HourTimeFormatByDefault = function () {
3128
3144
  return true;
3129
3145
  };
3146
+ fr.prototype.anErrorOccuredWhenGeneratingTheExpressionD = function () {
3147
+ return "Une erreur est survenue en générant la description de l'expression cron. Vérifiez sa syntaxe.";
3148
+ };
3130
3149
  fr.prototype.everyMinute = function () {
3131
3150
  return "toutes les minutes";
3132
3151
  };
3133
3152
  fr.prototype.everyHour = function () {
3134
3153
  return "toutes les heures";
3135
3154
  };
3136
- fr.prototype.anErrorOccuredWhenGeneratingTheExpressionD = function () {
3137
- return "Une erreur est survenue en générant la description de l'expression cron. Vérifiez sa syntaxe.";
3138
- };
3139
3155
  fr.prototype.atSpace = function () {
3140
3156
  return "À ";
3141
3157
  };
@@ -3176,7 +3192,7 @@ var fr = (function () {
3176
3192
  return "de %s à %s";
3177
3193
  };
3178
3194
  fr.prototype.atX0 = function () {
3179
- return "à %s";
3195
+ return "%s";
3180
3196
  };
3181
3197
  fr.prototype.commaEveryDay = function () {
3182
3198
  return ", tous les jours";
@@ -3256,6 +3272,9 @@ var fr = (function () {
3256
3272
  fr.prototype.commaOnDayX0OfTheMonth = function () {
3257
3273
  return ", le %s du mois";
3258
3274
  };
3275
+ fr.prototype.commaEveryHour = function () {
3276
+ return ", chaque heure";
3277
+ };
3259
3278
  fr.prototype.commaEveryX0Years = function () {
3260
3279
  return ", tous les %s ans";
3261
3280
  };
@@ -3461,6 +3480,199 @@ var he = (function () {
3461
3480
  exports.he = he;
3462
3481
 
3463
3482
 
3483
+ /***/ }),
3484
+
3485
+ /***/ 131:
3486
+ /***/ ((__unused_webpack_module, exports) => {
3487
+
3488
+
3489
+ Object.defineProperty(exports, "__esModule", ({ value: true }));
3490
+ exports.hr = void 0;
3491
+ var hr = (function () {
3492
+ function hr() {
3493
+ }
3494
+ hr.prototype.use24HourTimeFormatByDefault = function () {
3495
+ return true;
3496
+ };
3497
+ hr.prototype.anErrorOccuredWhenGeneratingTheExpressionD = function () {
3498
+ return "Došlo je do pogreške pri generiranju izraza. Provjerite sintaksu cron izraza.";
3499
+ };
3500
+ hr.prototype.at = function () {
3501
+ return "U";
3502
+ };
3503
+ hr.prototype.atSpace = function () {
3504
+ return "U ";
3505
+ };
3506
+ hr.prototype.atX0 = function () {
3507
+ return "u %s";
3508
+ };
3509
+ hr.prototype.atX0MinutesPastTheHour = function () {
3510
+ return "u %s minuta nakon punog sata";
3511
+ };
3512
+ hr.prototype.atX0SecondsPastTheMinute = function () {
3513
+ return "u %s sekundi nakon pune minute";
3514
+ };
3515
+ hr.prototype.betweenX0AndX1 = function () {
3516
+ return "između %s i %s";
3517
+ };
3518
+ hr.prototype.commaBetweenDayX0AndX1OfTheMonth = function () {
3519
+ return ", između %s. i %s. dana u mjesecu";
3520
+ };
3521
+ hr.prototype.commaEveryDay = function () {
3522
+ return ", svaki dan";
3523
+ };
3524
+ hr.prototype.commaEveryX0Days = function () {
3525
+ return ", svakih %s dana";
3526
+ };
3527
+ hr.prototype.commaEveryX0DaysOfTheWeek = function () {
3528
+ return ", svakih %s dana u tjednu";
3529
+ };
3530
+ hr.prototype.commaEveryX0Months = function () {
3531
+ return ", svakih %s mjeseci";
3532
+ };
3533
+ hr.prototype.commaEveryX0Years = function () {
3534
+ return ", svakih %s godina";
3535
+ };
3536
+ hr.prototype.commaOnDayX0OfTheMonth = function () {
3537
+ return ", %s. dan u mjesecu";
3538
+ };
3539
+ hr.prototype.commaOnlyInX0 = function () {
3540
+ return ", samo u %s";
3541
+ };
3542
+ hr.prototype.commaOnlyOnX0 = function () {
3543
+ return ", samo %s";
3544
+ };
3545
+ hr.prototype.commaAndOnX0 = function () {
3546
+ return ", i %s";
3547
+ };
3548
+ hr.prototype.commaOnThe = function () {
3549
+ return ", ";
3550
+ };
3551
+ hr.prototype.commaOnTheLastDayOfTheMonth = function () {
3552
+ return ", zadnji dan u mjesecu";
3553
+ };
3554
+ hr.prototype.commaOnTheLastWeekdayOfTheMonth = function () {
3555
+ return ", zadnji radni dan u mjesecu";
3556
+ };
3557
+ hr.prototype.commaDaysBeforeTheLastDayOfTheMonth = function () {
3558
+ return ", %s dana prije kraja mjeseca";
3559
+ };
3560
+ hr.prototype.commaOnTheLastX0OfTheMonth = function () {
3561
+ return ", zadnji %s u mjesecu";
3562
+ };
3563
+ hr.prototype.commaOnTheX0OfTheMonth = function () {
3564
+ return ", %s u mjesecu";
3565
+ };
3566
+ hr.prototype.commaX0ThroughX1 = function () {
3567
+ return ", od %s do %s";
3568
+ };
3569
+ hr.prototype.commaAndX0ThroughX1 = function () {
3570
+ return ", i od %s do %s";
3571
+ };
3572
+ hr.prototype.everyHour = function () {
3573
+ return "svaki sat";
3574
+ };
3575
+ hr.prototype.everyMinute = function () {
3576
+ return "svaku minutu";
3577
+ };
3578
+ hr.prototype.everyMinuteBetweenX0AndX1 = function () {
3579
+ return "Svaku minutu između %s i %s";
3580
+ };
3581
+ hr.prototype.everySecond = function () {
3582
+ return "svaku sekundu";
3583
+ };
3584
+ hr.prototype.everyX0Hours = function () {
3585
+ return "svakih %s sati";
3586
+ };
3587
+ hr.prototype.everyX0Minutes = function () {
3588
+ return "svakih %s minuta";
3589
+ };
3590
+ hr.prototype.everyX0Seconds = function () {
3591
+ return "svakih %s sekundi";
3592
+ };
3593
+ hr.prototype.fifth = function () {
3594
+ return "peti";
3595
+ };
3596
+ hr.prototype.first = function () {
3597
+ return "prvi";
3598
+ };
3599
+ hr.prototype.firstWeekday = function () {
3600
+ return "prvi radni dan";
3601
+ };
3602
+ hr.prototype.fourth = function () {
3603
+ return "četvrti";
3604
+ };
3605
+ hr.prototype.minutesX0ThroughX1PastTheHour = function () {
3606
+ return "minute od %s do %s nakon punog sata";
3607
+ };
3608
+ hr.prototype.second = function () {
3609
+ return "drugi";
3610
+ };
3611
+ hr.prototype.secondsX0ThroughX1PastTheMinute = function () {
3612
+ return "sekunde od %s do %s nakon pune minute";
3613
+ };
3614
+ hr.prototype.spaceAnd = function () {
3615
+ return " i";
3616
+ };
3617
+ hr.prototype.spaceX0OfTheMonth = function () {
3618
+ return " %s u mjesecu";
3619
+ };
3620
+ hr.prototype.lastDay = function () {
3621
+ return "zadnji dan";
3622
+ };
3623
+ hr.prototype.third = function () {
3624
+ return "treći";
3625
+ };
3626
+ hr.prototype.weekdayNearestDayX0 = function () {
3627
+ return "radni dan najbliži %s. danu";
3628
+ };
3629
+ hr.prototype.commaMonthX0ThroughMonthX1 = function () {
3630
+ return null;
3631
+ };
3632
+ hr.prototype.commaYearX0ThroughYearX1 = function () {
3633
+ return null;
3634
+ };
3635
+ hr.prototype.atX0MinutesPastTheHourGt20 = function () {
3636
+ return null;
3637
+ };
3638
+ hr.prototype.atX0SecondsPastTheMinuteGt20 = function () {
3639
+ return null;
3640
+ };
3641
+ hr.prototype.commaStartingX0 = function () {
3642
+ return ", počevši od %s";
3643
+ };
3644
+ hr.prototype.daysOfTheWeek = function () {
3645
+ return [
3646
+ "Nedjelja",
3647
+ "Ponedjeljak",
3648
+ "Utorak",
3649
+ "Srijeda",
3650
+ "Četvrtak",
3651
+ "Petak",
3652
+ "Subota",
3653
+ ];
3654
+ };
3655
+ hr.prototype.monthsOfTheYear = function () {
3656
+ return [
3657
+ "siječanj",
3658
+ "veljača",
3659
+ "ožujak",
3660
+ "travanj",
3661
+ "svibanj",
3662
+ "lipanj",
3663
+ "srpanj",
3664
+ "kolovoz",
3665
+ "rujan",
3666
+ "listopad",
3667
+ "studeni",
3668
+ "prosinac",
3669
+ ];
3670
+ };
3671
+ return hr;
3672
+ }());
3673
+ exports.hr = hr;
3674
+
3675
+
3464
3676
  /***/ }),
3465
3677
 
3466
3678
  /***/ 194:
@@ -4722,7 +4934,7 @@ var nb = (function () {
4722
4934
  return "minuttene fra %s til og med %s etter timen";
4723
4935
  };
4724
4936
  nb.prototype.second = function () {
4725
- return "sekund";
4937
+ return "andre";
4726
4938
  };
4727
4939
  nb.prototype.secondsX0ThroughX1PastTheMinute = function () {
4728
4940
  return "sekundene fra %s til og med %s etter minuttet";
@@ -5787,7 +5999,7 @@ var ru = (function () {
5787
5999
  return ", каждый день";
5788
6000
  };
5789
6001
  ru.prototype.commaEveryX0DaysOfTheWeek = function (s) {
5790
- return getPhraseByNumber(s, ["", ", каждые %s дня недели", ", каждые %s дней недели"]);
6002
+ return getPhraseByNumber(s, [", каждый %s день недели", ", каждые %s дня недели", ", каждые %s дней недели"]);
5791
6003
  };
5792
6004
  ru.prototype.commaX0ThroughX1 = function (s) {
5793
6005
  return s && (s[0] == "2" || s[0] == "3") ? ", со %s по %s" : ", с %s по %s";
@@ -7471,19 +7683,19 @@ var zh_CN = (function () {
7471
7683
  return "每隔 %s 秒";
7472
7684
  };
7473
7685
  zh_CN.prototype.secondsX0ThroughX1PastTheMinute = function () {
7474
- return "在每分钟的第 %s 到 %s 秒";
7686
+ return "在一分钟后的第 %s 到 %s 秒";
7475
7687
  };
7476
7688
  zh_CN.prototype.atX0SecondsPastTheMinute = function () {
7477
- return "在每分钟的第 %s 秒";
7689
+ return "在一分钟后的第 %s 秒";
7478
7690
  };
7479
7691
  zh_CN.prototype.everyX0Minutes = function () {
7480
7692
  return "每隔 %s 分钟";
7481
7693
  };
7482
7694
  zh_CN.prototype.minutesX0ThroughX1PastTheHour = function () {
7483
- return "在每小时的第 %s 到 %s 分钟";
7695
+ return "在整点后的第 %s 到 %s 分钟";
7484
7696
  };
7485
7697
  zh_CN.prototype.atX0MinutesPastTheHour = function () {
7486
- return "在每小时的第 %s 分钟";
7698
+ return "在整点后的第 %s 分钟";
7487
7699
  };
7488
7700
  zh_CN.prototype.everyX0Hours = function () {
7489
7701
  return "每隔 %s 小时";
@@ -7652,19 +7864,19 @@ var zh_TW = (function () {
7652
7864
  return "每 %s 秒";
7653
7865
  };
7654
7866
  zh_TW.prototype.secondsX0ThroughX1PastTheMinute = function () {
7655
- return "在每分鐘的 %s 到 %s 秒";
7867
+ return "在一分鐘後的 %s 到 %s 秒";
7656
7868
  };
7657
7869
  zh_TW.prototype.atX0SecondsPastTheMinute = function () {
7658
- return "在每分鐘的 %s 秒";
7870
+ return "在一分鐘後的 %s 秒";
7659
7871
  };
7660
7872
  zh_TW.prototype.everyX0Minutes = function () {
7661
7873
  return "每 %s 分鐘";
7662
7874
  };
7663
7875
  zh_TW.prototype.minutesX0ThroughX1PastTheHour = function () {
7664
- return "在每小時的 %s 到 %s 分鐘";
7876
+ return "在整點後的 %s 到 %s 分鐘";
7665
7877
  };
7666
7878
  zh_TW.prototype.atX0MinutesPastTheHour = function () {
7667
- return "在每小時的 %s 分";
7879
+ return "在整點後的 %s 分";
7668
7880
  };
7669
7881
  zh_TW.prototype.everyX0Hours = function () {
7670
7882
  return "每 %s 小時";