@ajf/calendars 12.1.5 → 12.1.8
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/bundles/calendars-ethiopian.umd.js +91 -39
- package/bundles/calendars-ethiopian.umd.js.map +1 -1
- package/bundles/calendars.umd.js +1 -1
- package/bundles/calendars.umd.js.map +1 -1
- package/esm2015/ethiopian/calendar-module.js +4 -10
- package/esm2015/ethiopian/calendar-service.js +4 -4
- package/esm2015/ethiopian/converter.js +34 -20
- package/esm2015/ethiopian/ethiopian-date-pipe.js +2 -2
- package/esm2015/ethiopian/ethiopian-date.js +26 -10
- package/esm2015/ethiopian/utils.js +29 -3
- package/esm2015/version.js +1 -1
- package/ethiopian/converter.d.ts +1 -5
- package/ethiopian/ethiopian-date.d.ts +11 -1
- package/ethiopian/index.metadata.json +1 -1
- package/fesm2015/calendars.js +1 -1
- package/fesm2015/calendars.js.map +1 -1
- package/fesm2015/ethiopian.js +91 -41
- package/fesm2015/ethiopian.js.map +1 -1
- package/package.json +2 -2
|
@@ -376,14 +376,14 @@
|
|
|
376
376
|
return Math.floor(i / j);
|
|
377
377
|
}
|
|
378
378
|
function isGregorianLeap(year) {
|
|
379
|
-
return
|
|
379
|
+
return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
|
|
380
380
|
}
|
|
381
381
|
function setEra(era) {
|
|
382
|
-
if (
|
|
382
|
+
if (era === JD_EPOCH_OFFSET_AMETE_ALEM || era === JD_EPOCH_OFFSET_AMETE_MIHRET) {
|
|
383
383
|
JDN_OFFSET = era;
|
|
384
384
|
}
|
|
385
385
|
else {
|
|
386
|
-
throw
|
|
386
|
+
throw new Error("Unknown Era: " + era);
|
|
387
387
|
}
|
|
388
388
|
}
|
|
389
389
|
function isEraSet() {
|
|
@@ -393,31 +393,42 @@
|
|
|
393
393
|
JDN_OFFSET = JD_EPOCH_OFFSET_UNSET;
|
|
394
394
|
}
|
|
395
395
|
function guessEraFromJDN(jdn) {
|
|
396
|
-
return
|
|
397
|
-
|
|
396
|
+
return jdn >= JD_EPOCH_OFFSET_AMETE_MIHRET + 365
|
|
397
|
+
? JD_EPOCH_OFFSET_AMETE_MIHRET
|
|
398
|
+
: JD_EPOCH_OFFSET_AMETE_ALEM;
|
|
398
399
|
}
|
|
399
400
|
function ethiopicToJDN(day, month, year) {
|
|
400
401
|
var ERA = isEraSet() ? JDN_OFFSET : JD_EPOCH_OFFSET_AMETE_MIHRET;
|
|
401
|
-
var jdn =
|
|
402
|
+
var jdn = ERA + 365 + 365 * (year - 1) + quotient(year, 4) + 30 * month + day - 31;
|
|
402
403
|
return jdn;
|
|
403
404
|
}
|
|
404
405
|
function jdnToEthiopic(jdn) {
|
|
405
406
|
var ERA = isEraSet() ? JDN_OFFSET : guessEraFromJDN(jdn);
|
|
406
407
|
var r = (jdn - ERA) % 1461;
|
|
407
408
|
var n = (r % 365) + 365 * quotient(r, 1460);
|
|
408
|
-
var year = 4 * quotient(
|
|
409
|
+
var year = 4 * quotient(jdn - ERA, 1461) + quotient(r, 365) - quotient(r, 1460);
|
|
409
410
|
var month = quotient(n, 30) + 1;
|
|
410
411
|
var day = (n % 30) + 1;
|
|
411
412
|
return [year, month, day];
|
|
412
413
|
}
|
|
413
414
|
function gregorianToJDN(day, month, year) {
|
|
414
|
-
var s = quotient(year, 4) -
|
|
415
|
-
quotient(year - 1,
|
|
415
|
+
var s = quotient(year, 4) -
|
|
416
|
+
quotient(year - 1, 4) -
|
|
417
|
+
quotient(year, 100) +
|
|
418
|
+
quotient(year - 1, 100) +
|
|
419
|
+
quotient(year, 400) -
|
|
420
|
+
quotient(year - 1, 400);
|
|
416
421
|
var t = quotient(14 - month, 12);
|
|
417
422
|
var n = 31 * t * (month - 1) +
|
|
418
|
-
(1 - t) * (59 + s + 30 * (month - 3) + quotient(
|
|
419
|
-
|
|
420
|
-
|
|
423
|
+
(1 - t) * (59 + s + 30 * (month - 3) + quotient(3 * month - 7, 5)) +
|
|
424
|
+
day -
|
|
425
|
+
1;
|
|
426
|
+
var j = JD_EPOCH_OFFSET_GREGORIAN +
|
|
427
|
+
365 * (year - 1) +
|
|
428
|
+
quotient(year - 1, 4) -
|
|
429
|
+
quotient(year - 1, 100) +
|
|
430
|
+
quotient(year - 1, 400) +
|
|
431
|
+
n;
|
|
421
432
|
return j;
|
|
422
433
|
}
|
|
423
434
|
function jdnToGregorian(jdn) {
|
|
@@ -427,20 +438,23 @@
|
|
|
427
438
|
var r4 = r100 % 1461;
|
|
428
439
|
var n = (r4 % 365) + 365 * quotient(r4, 1460);
|
|
429
440
|
var s = quotient(r4, 1095);
|
|
430
|
-
var aprime = 400 * quotient(
|
|
431
|
-
100 * quotient(r400, 36524) +
|
|
432
|
-
|
|
441
|
+
var aprime = 400 * quotient(jdn - JD_EPOCH_OFFSET_GREGORIAN, 146097) +
|
|
442
|
+
100 * quotient(r400, 36524) +
|
|
443
|
+
4 * quotient(r100, 1461) +
|
|
444
|
+
quotient(r4, 365) -
|
|
445
|
+
quotient(r4, 1460) -
|
|
446
|
+
quotient(r2000, 730484);
|
|
433
447
|
var year = aprime + 1;
|
|
434
|
-
var t = quotient(
|
|
435
|
-
var month = t * (quotient(n, 31) + 1) + (1 - t) * (quotient(
|
|
448
|
+
var t = quotient(364 + s - n, 306);
|
|
449
|
+
var month = t * (quotient(n, 31) + 1) + (1 - t) * (quotient(5 * (n - s) + 13, 153) + 1);
|
|
436
450
|
n += 1 - quotient(r2000, 730484);
|
|
437
451
|
var day = n;
|
|
438
|
-
if (
|
|
452
|
+
if (r100 === 0 && n === 0 && r400 !== 0) {
|
|
439
453
|
month = 12;
|
|
440
454
|
day = 31;
|
|
441
455
|
}
|
|
442
456
|
else {
|
|
443
|
-
monthDays[2] =
|
|
457
|
+
monthDays[2] = isGregorianLeap(year) ? 29 : 28;
|
|
444
458
|
for (var i = 1; i <= GREGORIAN_NUMBER_OF_MONTHS; i += 1) {
|
|
445
459
|
if (n <= monthDays[i]) {
|
|
446
460
|
day = n;
|
|
@@ -507,9 +521,35 @@
|
|
|
507
521
|
*/
|
|
508
522
|
var WEEK_NAMES = ['እሑድ', 'ሰኞ', 'ማክሰኞ', 'ረቡዕ', 'ሓሙስ', 'ዓርብ', 'ቅዳሜ'];
|
|
509
523
|
var MONTHS_NAMES = [
|
|
510
|
-
'መስከረም',
|
|
524
|
+
'መስከረም',
|
|
525
|
+
'ጥቅምት',
|
|
526
|
+
'ኅዳር',
|
|
527
|
+
'ታኅሣሥ',
|
|
528
|
+
'ጥር',
|
|
529
|
+
'የካቲት',
|
|
530
|
+
'መጋቢት',
|
|
531
|
+
'ሚያዝያ',
|
|
532
|
+
'ግንቦት',
|
|
533
|
+
'ሰኔ',
|
|
534
|
+
'ሐምሌ',
|
|
535
|
+
'ነሐሴ',
|
|
536
|
+
'ጳጉሜን',
|
|
537
|
+
];
|
|
538
|
+
var SHORT_MONTHS_NAMES = [
|
|
539
|
+
'መስከ',
|
|
540
|
+
'ጥቅም',
|
|
541
|
+
'ኅዳር',
|
|
542
|
+
'ታኅሣ',
|
|
543
|
+
'ጥር',
|
|
544
|
+
'የካቲ',
|
|
545
|
+
'መጋቢ',
|
|
546
|
+
'ሚያዝ',
|
|
547
|
+
'ግንቦ',
|
|
548
|
+
'ሰኔ',
|
|
549
|
+
'ሐምሌ',
|
|
550
|
+
'ነሐሴ',
|
|
551
|
+
'ጳጉሜ',
|
|
511
552
|
];
|
|
512
|
-
var SHORT_MONTHS_NAMES = ['መስከ', 'ጥቅም', 'ኅዳር', 'ታኅሣ', 'ጥር', 'የካቲ', 'መጋቢ', 'ሚያዝ', 'ግንቦ', 'ሰኔ', 'ሐምሌ', 'ነሐሴ', 'ጳጉሜ'];
|
|
513
553
|
|
|
514
554
|
var EthiopianDate = /** @class */ (function () {
|
|
515
555
|
/**
|
|
@@ -531,12 +571,20 @@
|
|
|
531
571
|
if (result == null) {
|
|
532
572
|
throw new Error('Invalid Argument Exception');
|
|
533
573
|
}
|
|
534
|
-
_b = __read([
|
|
574
|
+
_b = __read([
|
|
575
|
+
result.getFullYear(),
|
|
576
|
+
result.getMonth(),
|
|
577
|
+
result.getDate(),
|
|
578
|
+
], 3), this._year = _b[0], this._month = _b[1], this._date = _b[2];
|
|
535
579
|
this._gc = EthiopianDate.ethiopianToGregorian(this._year, this._month, this._date);
|
|
536
580
|
}
|
|
537
581
|
else if (typeof val === 'object' && val instanceof Date) {
|
|
538
|
-
var result = EthiopianDate.gregorianToEthiopian(val
|
|
539
|
-
_c = __read([
|
|
582
|
+
var result = EthiopianDate.gregorianToEthiopian(val);
|
|
583
|
+
_c = __read([
|
|
584
|
+
result.getFullYear(),
|
|
585
|
+
result.getMonth(),
|
|
586
|
+
result.getDate(),
|
|
587
|
+
], 3), this._year = _c[0], this._month = _c[1], this._date = _c[2];
|
|
540
588
|
this._gc = EthiopianDate.ethiopianToGregorian(this._year, this._month, this._date);
|
|
541
589
|
}
|
|
542
590
|
else {
|
|
@@ -576,9 +624,9 @@
|
|
|
576
624
|
return this._month >= 0 && this._month < MONTHS_NAMES.length ? MONTHS_NAMES[this._month] : null;
|
|
577
625
|
};
|
|
578
626
|
EthiopianDate.prototype.getShortMonthName = function () {
|
|
579
|
-
return this._month >= 0 && this._month < SHORT_MONTHS_NAMES.length
|
|
580
|
-
SHORT_MONTHS_NAMES[this._month]
|
|
581
|
-
null;
|
|
627
|
+
return this._month >= 0 && this._month < SHORT_MONTHS_NAMES.length
|
|
628
|
+
? SHORT_MONTHS_NAMES[this._month]
|
|
629
|
+
: null;
|
|
582
630
|
};
|
|
583
631
|
EthiopianDate.prototype.getHours = function () {
|
|
584
632
|
return 0;
|
|
@@ -601,7 +649,7 @@
|
|
|
601
649
|
* @param val - A numeric year value if the second and third parameters are
|
|
602
650
|
* provided, it should be a date string if not
|
|
603
651
|
* @param month A zero-based numeric value for the month
|
|
604
|
-
* (0 for
|
|
652
|
+
* (0 for መስከረም, 12 for ጳጉሜን)
|
|
605
653
|
* @param day A numeric value equal for the day of the month.
|
|
606
654
|
*
|
|
607
655
|
* @api public
|
|
@@ -630,6 +678,16 @@
|
|
|
630
678
|
var gc = toGC(ec);
|
|
631
679
|
return new Date(gc[0], gc[1] - 1, gc[2]);
|
|
632
680
|
};
|
|
681
|
+
/**
|
|
682
|
+
*
|
|
683
|
+
* @param val - A numeric year value if the second and third parameters are
|
|
684
|
+
* provided, it should be a date string if not
|
|
685
|
+
* @param month A zero-based numeric value for the month
|
|
686
|
+
* (0 for January, 11 for December)
|
|
687
|
+
* @param day A numeric value equal for the day of the month.
|
|
688
|
+
*
|
|
689
|
+
* @api public
|
|
690
|
+
*/
|
|
633
691
|
EthiopianDate.gregorianToEthiopian = function (val, month, day) {
|
|
634
692
|
var gc;
|
|
635
693
|
if (val != null && month == null && day == null && typeof val !== 'number') {
|
|
@@ -843,7 +901,7 @@
|
|
|
843
901
|
var ecDate = EthiopianDate.gregorianToEthiopian(viewDate);
|
|
844
902
|
var curYear = ecDate.getFullYear();
|
|
845
903
|
var firstYear = curYear - (curYear % 10) + 1;
|
|
846
|
-
var curDate = EthiopianDate.ethiopianToGregorian(firstYear,
|
|
904
|
+
var curDate = EthiopianDate.ethiopianToGregorian(firstYear, 0, 1);
|
|
847
905
|
var rows = [];
|
|
848
906
|
for (var i = 0; i < 4; i++) {
|
|
849
907
|
var row = [];
|
|
@@ -893,7 +951,7 @@
|
|
|
893
951
|
try {
|
|
894
952
|
var ed = EthiopianDate.gregorianToEthiopian(value);
|
|
895
953
|
var date = ("0" + ed.getDate()).slice(-2);
|
|
896
|
-
var month = ("0" + ed.getMonth()).slice(-2);
|
|
954
|
+
var month = ("0" + (ed.getMonth() + 1)).slice(-2);
|
|
897
955
|
return date + "/" + month + "/" + ed.getFullYear();
|
|
898
956
|
}
|
|
899
957
|
catch (e) {
|
|
@@ -935,15 +993,9 @@
|
|
|
935
993
|
}());
|
|
936
994
|
AjfEthiopianCalendarModule.decorators = [
|
|
937
995
|
{ type: i0.NgModule, args: [{
|
|
938
|
-
declarations: [
|
|
939
|
-
|
|
940
|
-
],
|
|
941
|
-
exports: [
|
|
942
|
-
AjfEthiopianDatePipe,
|
|
943
|
-
],
|
|
944
|
-
providers: [
|
|
945
|
-
{ provide: calendar.AjfCalendarService, useClass: AjfEthiopianCalendarService },
|
|
946
|
-
],
|
|
996
|
+
declarations: [AjfEthiopianDatePipe],
|
|
997
|
+
exports: [AjfEthiopianDatePipe],
|
|
998
|
+
providers: [{ provide: calendar.AjfCalendarService, useClass: AjfEthiopianCalendarService }],
|
|
947
999
|
},] }
|
|
948
1000
|
];
|
|
949
1001
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendars-ethiopian.umd.js","sources":["../../../../../external/npm/node_modules/tslib/tslib.es6.js","../../../../../src/calendars/ethiopian/converter.ts","../../../../../src/calendars/ethiopian/utils.ts","../../../../../src/calendars/ethiopian/ethiopian-date.ts","../../../../../src/calendars/ethiopian/calendar-service.ts","../../../../../src/calendars/ethiopian/ethiopian-date-pipe.ts","../../../../../src/calendars/ethiopian/calendar-module.ts","../../../../../src/calendars/ethiopian/public-api.ts","../../../../../src/calendars/ethiopian/index.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nconst JD_EPOCH_OFFSET_AMETE_ALEM = -285019; // ዓ/ዓ\nconst JD_EPOCH_OFFSET_AMETE_MIHRET = 1723856; // ዓ/ም\nconst JD_EPOCH_OFFSET_GREGORIAN = 1721426;\nconst JD_EPOCH_OFFSET_UNSET = -1;\n\nlet JDN_OFFSET = JD_EPOCH_OFFSET_UNSET;\n\nconst GREGORIAN_NUMBER_OF_MONTHS = 12;\nconst monthDays = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n\nfunction quotient(i: number, j: number): number {\n return Math.floor(i / j);\n}\n\nfunction isGregorianLeap(year: number): boolean {\n return (year % 4 === 0) && ((year % 100 !== 0) || (year % 400 === 0));\n}\n\nfunction setEra(era: number): void {\n if ((era === JD_EPOCH_OFFSET_AMETE_ALEM) || (era === JD_EPOCH_OFFSET_AMETE_MIHRET)) {\n JDN_OFFSET = era;\n } else {\n throw (new Error(`Unknown Era: ${era}`));\n }\n}\n\nfunction isEraSet(): boolean {\n return JD_EPOCH_OFFSET_UNSET !== JDN_OFFSET;\n}\n\nfunction unsetEra(): void {\n JDN_OFFSET = JD_EPOCH_OFFSET_UNSET;\n}\n\nfunction guessEraFromJDN(jdn: number) {\n return (jdn >= (JD_EPOCH_OFFSET_AMETE_MIHRET + 365)) ? JD_EPOCH_OFFSET_AMETE_MIHRET :\n JD_EPOCH_OFFSET_AMETE_ALEM;\n}\n\nfunction ethiopicToJDN(day: number, month: number, year: number) {\n const ERA = isEraSet() ? JDN_OFFSET : JD_EPOCH_OFFSET_AMETE_MIHRET;\n const jdn = (ERA + 365) + 365 * (year - 1) + quotient(year, 4) + 30 * month + day - 31;\n\n return jdn;\n}\n\nfunction jdnToEthiopic(jdn: number): [number, number, number] {\n const ERA = isEraSet() ? JDN_OFFSET : guessEraFromJDN(jdn);\n const r = (jdn - ERA) % 1461;\n const n = (r % 365) + 365 * quotient(r, 1460);\n const year = 4 * quotient((jdn - ERA), 1461) + quotient(r, 365) - quotient(r, 1460);\n const month = quotient(n, 30) + 1;\n const day = (n % 30) + 1;\n\n return [year, month, day];\n}\n\nfunction gregorianToJDN(day: number, month: number, year: number): number {\n const s = quotient(year, 4) - quotient(year - 1, 4) - quotient(year, 100) +\n quotient(year - 1, 100) + quotient(year, 400) - quotient(year - 1, 400);\n\n const t = quotient(14 - month, 12);\n\n const n = 31 * t * (month - 1) +\n (1 - t) * (59 + s + 30 * (month - 3) + quotient((3 * month - 7), 5)) + day - 1;\n\n const j = JD_EPOCH_OFFSET_GREGORIAN + 365 * (year - 1) + quotient(year - 1, 4) -\n quotient(year - 1, 100) + quotient(year - 1, 400) + n;\n\n return j;\n}\n\nfunction jdnToGregorian(jdn: number): [number, number, number] {\n const r2000 = (jdn - JD_EPOCH_OFFSET_GREGORIAN) % 730485;\n const r400 = (jdn - JD_EPOCH_OFFSET_GREGORIAN) % 146097;\n const r100 = r400 % 36524;\n const r4 = r100 % 1461;\n let n = (r4 % 365) + 365 * quotient(r4, 1460);\n const s = quotient(r4, 1095);\n const aprime = 400 * quotient((jdn - JD_EPOCH_OFFSET_GREGORIAN), 146097) +\n 100 * quotient(r400, 36524) + 4 * quotient(r100, 1461) + quotient(r4, 365) -\n quotient(r4, 1460) - quotient(r2000, 730484);\n const year = aprime + 1;\n const t = quotient((364 + s - n), 306);\n let month = t * (quotient(n, 31) + 1) + (1 - t) * (quotient((5 * (n - s) + 13), 153) + 1);\n n += 1 - quotient(r2000, 730484);\n let day = n;\n\n if ((r100 === 0) && (n === 0) && (r400 !== 0)) {\n month = 12;\n day = 31;\n } else {\n monthDays[2] = (isGregorianLeap(year)) ? 29 : 28;\n for (let i = 1; i <= GREGORIAN_NUMBER_OF_MONTHS; i += 1) {\n if (n <= monthDays[i]) {\n day = n;\n break;\n }\n n -= monthDays[i];\n }\n }\n return [year, month, day];\n}\n\nfunction gregorianToEthiopic(day: number, month: number, year: number): [number, number, number] {\n const jdn = gregorianToJDN(day, month, year);\n return jdnToEthiopic(jdn);\n}\n\nfunction ethioipicToGreg(day: number, month: number, year: number): [number, number, number] {\n const jdn = ethiopicToJDN(day, month, year);\n return jdnToGregorian(jdn);\n}\n\nfunction ethioipicToGregorian(\n day: number, month: number, year: number, era: number): [number, number, number] {\n setEra(era);\n const result = ethioipicToGreg(day, month, year);\n unsetEra();\n return result;\n}\n\n/** API * */\n\n/** ethiopian to gregorian */\nexport function toGC(dateArray: [number, number, number]|[number, number, number, number]):\n [number, number, number] {\n const [y, m, d] = dateArray;\n let era = dateArray.length === 4 ? dateArray[3] : JD_EPOCH_OFFSET_AMETE_MIHRET;\n if (d < 0 || d > 30 || m < 0 || m > 13) {\n throw new Error('Invalid Ethiopian Date');\n }\n return ethioipicToGregorian(d, m, y, era);\n}\n\n/** gregorian to ethiopian */\nexport function toEC(dateArray: [number, number, number]): [number, number, number] {\n const [y, m, d] = dateArray;\n if (d < 0 || d > 31 || m < 0 || m > 12) {\n throw new Error('Invalid Gregorian Date');\n }\n return gregorianToEthiopic(d, m, y);\n}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nexport const WEEK_NAMES = ['እሑድ', 'ሰኞ', 'ማክሰኞ', 'ረቡዕ', 'ሓሙስ', 'ዓርብ', 'ቅዳሜ'];\n\nexport const MONTHS_NAMES = [\n 'መስከረም', 'ጥቅምት', 'ኅዳር', 'ታኅሣሥ', 'ጥር', 'የካቲት', 'መጋቢት', 'ሚያዝያ', 'ግንቦት', 'ሰኔ', 'ሐምሌ', 'ነሐሴ', 'ጳጉሜን'\n];\n\nexport const SHORT_MONTHS_NAMES =\n ['መስከ', 'ጥቅም', 'ኅዳር', 'ታኅሣ', 'ጥር', 'የካቲ', 'መጋቢ', 'ሚያዝ', 'ግንቦ', 'ሰኔ', 'ሐምሌ', 'ነሐሴ', 'ጳጉሜ'];\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {toEC, toGC} from './converter';\nimport {MONTHS_NAMES, SHORT_MONTHS_NAMES, WEEK_NAMES} from './utils';\n\nexport class EthiopianDate {\n private _year: number;\n private _month: number;\n private _date: number;\n private _gc: Date;\n\n /**\n * @param val - A numeric year value if the second and third parameters ar provided,\n * It should be a date string if not\n * @param month A zero-based numeric value for the month (0 for መስከረም, 12 for ጳጉሜን)\n * @param day A numeric value equal for the day of the month.\n */\n constructor(val?: Date|string|number, month?: number, day?: number) {\n if (val == null && month == null && day == null) {\n const ahun = EthiopianDate.gregorianToEthiopian(new Date());\n [this._year, this._month, this._date] = [ahun.getFullYear(), ahun.getMonth(), ahun.getDate()];\n this._gc = EthiopianDate.ethiopianToGregorian(this._year, this._month, this._date);\n } else if (val != null && month == null && day == null && typeof val !== 'number') {\n if (typeof val === 'string') {\n const result = EthiopianDate.parse(val);\n if (result == null) {\n throw new Error('Invalid Argument Exception');\n }\n [this._year, this._month, this._date] =\n [result.getFullYear(), result.getMonth(), result.getDate()];\n this._gc = EthiopianDate.ethiopianToGregorian(this._year, this._month, this._date);\n } else if (typeof val === 'object' && val instanceof Date) {\n const result = EthiopianDate.gregorianToEthiopian(\n val.getFullYear(), val.getMonth() + 1, val.getDate());\n [this._year, this._month, this._date] =\n [result.getFullYear(), result.getMonth(), result.getDate()];\n this._gc = EthiopianDate.ethiopianToGregorian(this._year, this._month, this._date);\n } else {\n throw new Error('Invalid Argument Exception');\n }\n } else if (val != null && month != null && day != null && typeof val === 'number') {\n this._year = val;\n this._month = month;\n this._date = day;\n this._gc = EthiopianDate.ethiopianToGregorian(this._year, this._month, this._date);\n }\n }\n\n getDate(): number {\n return this._date;\n }\n\n getDay(): number {\n return this._gc.getDay();\n }\n\n getDayOfWeek() {\n const weekDay = this.getGCWeekDay();\n return WEEK_NAMES[weekDay];\n }\n\n getFullYear(): number {\n return this._year;\n }\n\n getGregorianDate(): Date {\n return this._gc;\n }\n\n getGCWeekDay(): number {\n return this._gc.getDay();\n }\n\n getMonth(): number {\n return this._month;\n }\n\n getMonthName(): string|null {\n return this._month >= 0 && this._month < MONTHS_NAMES.length ? MONTHS_NAMES[this._month] : null;\n }\n\n getShortMonthName(): string|null {\n return this._month >= 0 && this._month < SHORT_MONTHS_NAMES.length ?\n SHORT_MONTHS_NAMES[this._month] :\n null;\n }\n\n getHours(): number {\n return 0;\n }\n\n getMinutes(): number {\n return 0;\n }\n\n getSeconds(): number {\n return 0;\n }\n\n getMilliseconds(): number {\n return 0;\n }\n\n toString(): string {\n return `${this._year}-${this._month + 1}-${this._date}`;\n }\n\n /**\n * Converts a Ethiopian date to Gregorian and returns Date instance representing Gregorian Date.\n *\n * @param val - A numeric year value if the second and third parameters are\n * provided, it should be a date string if not\n * @param month A zero-based numeric value for the month\n * (0 for January, 11 for December)\n * @param day A numeric value equal for the day of the month.\n *\n * @api public\n */\n static ethiopianToGregorian(val?: EthiopianDate|string|number, month?: number, day?: number):\n Date {\n let ec: [number, number, number];\n if (val != null && month == null && day == null && typeof val !== 'number') {\n if (typeof val === 'string') {\n const etDate = new EthiopianDate(val);\n ec = [etDate.getFullYear(), etDate.getMonth() + 1, etDate.getDate()];\n } else if (typeof val === 'object' && val instanceof EthiopianDate) {\n const [y, m, d] = [val.getFullYear(), val.getMonth() + 1, val.getDate()];\n ec = [y, m, d];\n } else {\n throw new Error('Invalid Argument Exception');\n }\n } else if (val != null && month != null && day != null && typeof val === 'number') {\n ec = [val, month + 1, day];\n } else {\n throw new Error('Invalid Argument Exception');\n }\n const gc = toGC(ec);\n return new Date(gc[0], gc[1] - 1, gc[2]);\n }\n\n static gregorianToEthiopian(val?: Date|string|number, month?: number, day?: number):\n EthiopianDate {\n let gc: [number, number, number];\n if (val != null && month == null && day == null && typeof val !== 'number') {\n if (typeof val === 'string') {\n const gcDate = new Date(val);\n gc = [gcDate.getFullYear(), gcDate.getMonth() + 1, gcDate.getDate()];\n } else if (typeof val === 'object' && val instanceof Date) {\n const [y, m, d] = [val.getFullYear(), val.getMonth() + 1, val.getDate()];\n gc = [y, m, d];\n } else {\n throw new Error('Invalid Argument Exception');\n }\n } else if (val != null && month != null && day != null && typeof val === 'number') {\n gc = [val, month + 1, day];\n } else {\n throw new Error('Invalid Argument Exception');\n }\n const ec = toEC(gc);\n return new EthiopianDate(ec[0], ec[1] - 1, ec[2]);\n }\n\n /**\n * Parse Ethiopian date from string\n *\n * @param dateString a date string to parse\n * @param pattern a parsing pattern\n *\n * @returns EthiopianDate\n */\n static parse(dateString: string): EthiopianDate|null {\n if (!dateString) {\n return null;\n }\n const result = dateString.split('-');\n if (result.length === 3) {\n const [y, m, d] = result;\n return new EthiopianDate(parseInt(y, 10), parseInt(m, 10) - 1, parseInt(d, 10));\n }\n throw new Error(`ParsingError: Can't parse ${dateString}`);\n }\n}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {\n AjfCalendarEntry,\n AjfCalendarParams,\n AjfCalendarService,\n AjfCalendarView,\n AjfCalendarViewMode\n} from '@ajf/core/calendar';\nimport {Injectable} from '@angular/core';\nimport {\n addDays,\n addWeeks,\n addYears,\n endOfISOWeek,\n getISODay,\n setISODay,\n startOfISOWeek,\n startOfWeek,\n subWeeks\n} from 'date-fns';\n\nimport {EthiopianDate} from './ethiopian-date';\n\nfunction getMonthDays(month: number, year: number): number {\n if (month < 12) {\n return 30;\n }\n return year % 4 === 3 ? 6 : 5;\n}\n\nfunction getMonthBounds(date: EthiopianDate): {start: EthiopianDate, end: EthiopianDate} {\n const year = date.getFullYear();\n const month = date.getMonth();\n const start = new EthiopianDate(year, month, 1);\n const endDay = getMonthDays(month, year);\n const end = new EthiopianDate(year, month, endDay);\n return {start, end};\n}\n\n@Injectable({providedIn: 'root'})\nexport class AjfEthiopianCalendarService extends AjfCalendarService {\n override buildView(params: AjfCalendarParams): AjfCalendarView {\n const {viewMode} = params;\n const viewDate = EthiopianDate.gregorianToEthiopian(params.viewDate);\n switch (viewMode) {\n case 'decade':\n let curYear: number = viewDate.getFullYear();\n let firstYear = curYear - (curYear % 10) + 1;\n let lastYear = firstYear + 11;\n return {\n header: `${firstYear} - ${lastYear}`,\n headerRow: [],\n rows: this._ecDecadeCalendarRows(params),\n };\n case 'year':\n return {\n header: `${viewDate.getFullYear()}`,\n headerRow: [],\n rows: this._ecYearCalendarRows(params),\n };\n case 'month':\n const view = super.buildView(params);\n return {\n header: `${viewDate.getShortMonthName()} ${viewDate.getFullYear()}`,\n headerRow: this._ecMonthHeaderRow(params),\n rows: view.rows,\n };\n }\n return super.buildView(params);\n }\n\n override entryLabel(entry: AjfCalendarEntry): string {\n const ecDate = EthiopianDate.gregorianToEthiopian(entry.date);\n if (entry.type === 'day') {\n return `${ecDate.getDate()}`;\n }\n if (entry.type === 'month') {\n return `${ecDate.getMonthName()}`;\n }\n return `${ecDate.getFullYear()}`;\n }\n\n override monthBounds(date: Date, isoMode: boolean): {start: Date, end: Date} {\n if (!isoMode) {\n const ecDate = EthiopianDate.gregorianToEthiopian(date);\n const {start, end} = getMonthBounds(ecDate);\n return {\n start: EthiopianDate.ethiopianToGregorian(start),\n end: EthiopianDate.ethiopianToGregorian(end),\n };\n } else {\n let isoDay = getISODay(date);\n const ecDate = EthiopianDate.gregorianToEthiopian(date);\n let {start, end} = getMonthBounds(ecDate);\n if (ecDate.getMonth() === 12) {\n start = EthiopianDate.gregorianToEthiopian(startOfISOWeek(start.getGregorianDate()));\n end = EthiopianDate.gregorianToEthiopian(endOfISOWeek(end.getGregorianDate()));\n } else {\n date = isoDay < 4 ? endOfISOWeek(date) : startOfISOWeek(date);\n const startWeekDay = start.getDay();\n const endWeekDay = end.getDay();\n if (startWeekDay == 0 || startWeekDay > 4) {\n start = EthiopianDate.gregorianToEthiopian(addWeeks(start.getGregorianDate(), 1));\n }\n if (endWeekDay > 0 && endWeekDay < 4) {\n end = EthiopianDate.gregorianToEthiopian(subWeeks(end.getGregorianDate(), 1));\n }\n }\n return {\n start: startOfISOWeek(start.getGregorianDate()),\n end: endOfISOWeek(end.getGregorianDate()),\n };\n }\n }\n\n override nextView(viewDate: Date, viewMode: AjfCalendarViewMode): Date {\n if (viewMode === 'month') {\n const ecDate = EthiopianDate.gregorianToEthiopian(viewDate);\n let year = ecDate.getFullYear();\n let month = ecDate.getMonth();\n if (month === 12) {\n month = 0;\n year += 1;\n } else {\n month += 1;\n }\n return EthiopianDate.ethiopianToGregorian(new EthiopianDate(year, month, 1));\n }\n return super.nextView(viewDate, viewMode);\n }\n\n override previousView(viewDate: Date, viewMode: AjfCalendarViewMode): Date {\n if (viewMode === 'month') {\n const ecDate = EthiopianDate.gregorianToEthiopian(viewDate);\n let year = ecDate.getFullYear();\n let month = ecDate.getMonth();\n if (month === 0) {\n month = 12;\n year -= 1;\n } else {\n month -= 1;\n }\n return EthiopianDate.ethiopianToGregorian(new EthiopianDate(year, month, 1));\n }\n return super.previousView(viewDate, viewMode);\n }\n\n private _ecMonthHeaderRow(params: AjfCalendarParams): string[] {\n const {isoMode, viewDate} = params;\n let curDate: Date;\n if (isoMode) {\n curDate = setISODay(startOfWeek(viewDate), 1);\n } else {\n curDate = startOfWeek(viewDate);\n }\n let weekDayNames: string[] = [];\n for (let i = 0; i < 7; i++) {\n const ecDate = EthiopianDate.gregorianToEthiopian(curDate);\n weekDayNames.push(ecDate.getDayOfWeek());\n curDate = addDays(curDate, 1);\n }\n return weekDayNames;\n }\n\n private _ecYearCalendarRows(params: AjfCalendarParams): AjfCalendarEntry[][] {\n const {viewDate, selection} = params;\n const year = EthiopianDate.gregorianToEthiopian(viewDate).getFullYear();\n let curDate: EthiopianDate;\n\n let rows: AjfCalendarEntry[][] = [];\n for (let i = 0; i <= 4; i++) {\n let row: AjfCalendarEntry[] = [];\n for (let j = 0; j < 3; j++) {\n const curMonth = i * 3 + j;\n if (curMonth < 13) {\n curDate = new EthiopianDate(year, curMonth, 1);\n let date = EthiopianDate.ethiopianToGregorian(curDate);\n let newEntry: AjfCalendarEntry = {type: 'month', date, selected: 'none'};\n newEntry.selected = this.isEntrySelected(newEntry, selection);\n row.push(newEntry);\n }\n }\n rows.push(row);\n }\n\n return rows;\n }\n\n private _ecDecadeCalendarRows(params: AjfCalendarParams): AjfCalendarEntry[][] {\n const {viewDate, selection} = params;\n const ecDate = EthiopianDate.gregorianToEthiopian(viewDate);\n let curYear: number = ecDate.getFullYear();\n let firstYear = curYear - (curYear % 10) + 1;\n let curDate: Date = EthiopianDate.ethiopianToGregorian(firstYear, 1, 1);\n\n let rows: AjfCalendarEntry[][] = [];\n for (let i = 0; i < 4; i++) {\n let row: AjfCalendarEntry[] = [];\n for (let j = 0; j < 3; j++) {\n let date = new Date(curDate);\n let newEntry: AjfCalendarEntry = {type: 'year', date: date, selected: 'none'};\n newEntry.selected = this.isEntrySelected(newEntry, selection);\n row.push(newEntry);\n curDate = addYears(curDate, 1);\n }\n rows.push(row);\n }\n\n return rows;\n }\n}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {Injectable, Pipe, PipeTransform} from '@angular/core';\nimport {EthiopianDate} from './ethiopian-date';\n\n@Injectable()\n@Pipe({name: 'ajfEthiopianDate'})\nexport class AjfEthiopianDatePipe implements PipeTransform {\n transform(value: any): string|null {\n try {\n const ed = EthiopianDate.gregorianToEthiopian(value);\n const date = `0${ed.getDate()}`.slice(-2);\n const month = `0${ed.getMonth()}`.slice(-2);\n return `${date}/${month}/${ed.getFullYear()}`;\n } catch (e) {\n return null;\n }\n }\n}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfCalendarService} from '@ajf/core/calendar';\nimport {NgModule} from '@angular/core';\n\nimport {AjfEthiopianCalendarService} from './calendar-service';\nimport {AjfEthiopianDatePipe} from './ethiopian-date-pipe';\n\n@NgModule({\n declarations: [\n AjfEthiopianDatePipe,\n ],\n exports: [\n AjfEthiopianDatePipe,\n ],\n providers: [\n {provide: AjfCalendarService, useClass: AjfEthiopianCalendarService},\n ],\n})\nexport class AjfEthiopianCalendarModule {\n}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nexport * from './calendar-module';\nexport * from './calendar-service';\nexport * from './ethiopian-date';\nexport * from './ethiopian-date-pipe';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["getISODay","startOfISOWeek","endOfISOWeek","addWeeks","subWeeks","setISODay","startOfWeek","addDays","addYears","AjfCalendarService","Injectable","Pipe","NgModule"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"calendars-ethiopian.umd.js","sources":["../../../../../external/npm/node_modules/tslib/tslib.es6.js","../../../../../src/calendars/ethiopian/converter.ts","../../../../../src/calendars/ethiopian/utils.ts","../../../../../src/calendars/ethiopian/ethiopian-date.ts","../../../../../src/calendars/ethiopian/calendar-service.ts","../../../../../src/calendars/ethiopian/ethiopian-date-pipe.ts","../../../../../src/calendars/ethiopian/calendar-module.ts","../../../../../src/calendars/ethiopian/public-api.ts","../../../../../src/calendars/ethiopian/index.ts"],"sourcesContent":["/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport var __createBinding = Object.create ? (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });\r\n}) : (function(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n});\r\n\r\nexport function __exportStar(m, o) {\r\n for (var p in m) if (p !== \"default\" && !Object.prototype.hasOwnProperty.call(o, p)) __createBinding(o, m, p);\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\n/** @deprecated */\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n}\r\n\r\nexport function __spreadArray(to, from, pack) {\r\n if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {\r\n if (ar || !(i in from)) {\r\n if (!ar) ar = Array.prototype.slice.call(from, 0, i);\r\n ar[i] = from[i];\r\n }\r\n }\r\n return to.concat(ar || from);\r\n}\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nvar __setModuleDefault = Object.create ? (function(o, v) {\r\n Object.defineProperty(o, \"default\", { enumerable: true, value: v });\r\n}) : function(o, v) {\r\n o[\"default\"] = v;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (k !== \"default\" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);\r\n __setModuleDefault(result, mod);\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, state, kind, f) {\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a getter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot read private member from an object whose class did not declare it\");\r\n return kind === \"m\" ? f : kind === \"a\" ? f.call(receiver) : f ? f.value : state.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, state, value, kind, f) {\r\n if (kind === \"m\") throw new TypeError(\"Private method is not writable\");\r\n if (kind === \"a\" && !f) throw new TypeError(\"Private accessor was defined without a setter\");\r\n if (typeof state === \"function\" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError(\"Cannot write private member to an object whose class did not declare it\");\r\n return (kind === \"a\" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;\r\n}\r\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nconst JD_EPOCH_OFFSET_AMETE_ALEM = -285019; // ዓ/ዓ\nconst JD_EPOCH_OFFSET_AMETE_MIHRET = 1723856; // ዓ/ም\nconst JD_EPOCH_OFFSET_GREGORIAN = 1721426;\nconst JD_EPOCH_OFFSET_UNSET = -1;\n\nlet JDN_OFFSET = JD_EPOCH_OFFSET_UNSET;\n\nconst GREGORIAN_NUMBER_OF_MONTHS = 12;\nconst monthDays = [0, 31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];\n\nfunction quotient(i: number, j: number): number {\n return Math.floor(i / j);\n}\n\nfunction isGregorianLeap(year: number): boolean {\n return year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);\n}\n\nfunction setEra(era: number): void {\n if (era === JD_EPOCH_OFFSET_AMETE_ALEM || era === JD_EPOCH_OFFSET_AMETE_MIHRET) {\n JDN_OFFSET = era;\n } else {\n throw new Error(`Unknown Era: ${era}`);\n }\n}\n\nfunction isEraSet(): boolean {\n return JD_EPOCH_OFFSET_UNSET !== JDN_OFFSET;\n}\n\nfunction unsetEra(): void {\n JDN_OFFSET = JD_EPOCH_OFFSET_UNSET;\n}\n\nfunction guessEraFromJDN(jdn: number) {\n return jdn >= JD_EPOCH_OFFSET_AMETE_MIHRET + 365\n ? JD_EPOCH_OFFSET_AMETE_MIHRET\n : JD_EPOCH_OFFSET_AMETE_ALEM;\n}\n\nfunction ethiopicToJDN(day: number, month: number, year: number) {\n const ERA = isEraSet() ? JDN_OFFSET : JD_EPOCH_OFFSET_AMETE_MIHRET;\n const jdn = ERA + 365 + 365 * (year - 1) + quotient(year, 4) + 30 * month + day - 31;\n\n return jdn;\n}\n\nfunction jdnToEthiopic(jdn: number): [number, number, number] {\n const ERA = isEraSet() ? JDN_OFFSET : guessEraFromJDN(jdn);\n const r = (jdn - ERA) % 1461;\n const n = (r % 365) + 365 * quotient(r, 1460);\n const year = 4 * quotient(jdn - ERA, 1461) + quotient(r, 365) - quotient(r, 1460);\n const month = quotient(n, 30) + 1;\n const day = (n % 30) + 1;\n\n return [year, month, day];\n}\n\nfunction gregorianToJDN(day: number, month: number, year: number): number {\n const s =\n quotient(year, 4) -\n quotient(year - 1, 4) -\n quotient(year, 100) +\n quotient(year - 1, 100) +\n quotient(year, 400) -\n quotient(year - 1, 400);\n\n const t = quotient(14 - month, 12);\n\n const n =\n 31 * t * (month - 1) +\n (1 - t) * (59 + s + 30 * (month - 3) + quotient(3 * month - 7, 5)) +\n day -\n 1;\n\n const j =\n JD_EPOCH_OFFSET_GREGORIAN +\n 365 * (year - 1) +\n quotient(year - 1, 4) -\n quotient(year - 1, 100) +\n quotient(year - 1, 400) +\n n;\n\n return j;\n}\n\nfunction jdnToGregorian(jdn: number): [number, number, number] {\n const r2000 = (jdn - JD_EPOCH_OFFSET_GREGORIAN) % 730485;\n const r400 = (jdn - JD_EPOCH_OFFSET_GREGORIAN) % 146097;\n const r100 = r400 % 36524;\n const r4 = r100 % 1461;\n let n = (r4 % 365) + 365 * quotient(r4, 1460);\n const s = quotient(r4, 1095);\n const aprime =\n 400 * quotient(jdn - JD_EPOCH_OFFSET_GREGORIAN, 146097) +\n 100 * quotient(r400, 36524) +\n 4 * quotient(r100, 1461) +\n quotient(r4, 365) -\n quotient(r4, 1460) -\n quotient(r2000, 730484);\n const year = aprime + 1;\n const t = quotient(364 + s - n, 306);\n let month = t * (quotient(n, 31) + 1) + (1 - t) * (quotient(5 * (n - s) + 13, 153) + 1);\n n += 1 - quotient(r2000, 730484);\n let day = n;\n\n if (r100 === 0 && n === 0 && r400 !== 0) {\n month = 12;\n day = 31;\n } else {\n monthDays[2] = isGregorianLeap(year) ? 29 : 28;\n for (let i = 1; i <= GREGORIAN_NUMBER_OF_MONTHS; i += 1) {\n if (n <= monthDays[i]) {\n day = n;\n break;\n }\n n -= monthDays[i];\n }\n }\n return [year, month, day];\n}\n\nfunction gregorianToEthiopic(day: number, month: number, year: number): [number, number, number] {\n const jdn = gregorianToJDN(day, month, year);\n return jdnToEthiopic(jdn);\n}\n\nfunction ethioipicToGreg(day: number, month: number, year: number): [number, number, number] {\n const jdn = ethiopicToJDN(day, month, year);\n return jdnToGregorian(jdn);\n}\n\nfunction ethioipicToGregorian(\n day: number,\n month: number,\n year: number,\n era: number,\n): [number, number, number] {\n setEra(era);\n const result = ethioipicToGreg(day, month, year);\n unsetEra();\n return result;\n}\n\n/** API * */\n\n/** ethiopian to gregorian */\nexport function toGC(\n dateArray: [number, number, number] | [number, number, number, number],\n): [number, number, number] {\n const [y, m, d] = dateArray;\n let era = dateArray.length === 4 ? dateArray[3] : JD_EPOCH_OFFSET_AMETE_MIHRET;\n if (d < 0 || d > 30 || m < 0 || m > 13) {\n throw new Error('Invalid Ethiopian Date');\n }\n return ethioipicToGregorian(d, m, y, era);\n}\n\n/** gregorian to ethiopian */\nexport function toEC(dateArray: [number, number, number]): [number, number, number] {\n const [y, m, d] = dateArray;\n if (d < 0 || d > 31 || m < 0 || m > 12) {\n throw new Error('Invalid Gregorian Date');\n }\n return gregorianToEthiopic(d, m, y);\n}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nexport const WEEK_NAMES = ['እሑድ', 'ሰኞ', 'ማክሰኞ', 'ረቡዕ', 'ሓሙስ', 'ዓርብ', 'ቅዳሜ'];\n\nexport const MONTHS_NAMES = [\n 'መስከረም',\n 'ጥቅምት',\n 'ኅዳር',\n 'ታኅሣሥ',\n 'ጥር',\n 'የካቲት',\n 'መጋቢት',\n 'ሚያዝያ',\n 'ግንቦት',\n 'ሰኔ',\n 'ሐምሌ',\n 'ነሐሴ',\n 'ጳጉሜን',\n];\n\nexport const SHORT_MONTHS_NAMES = [\n 'መስከ',\n 'ጥቅም',\n 'ኅዳር',\n 'ታኅሣ',\n 'ጥር',\n 'የካቲ',\n 'መጋቢ',\n 'ሚያዝ',\n 'ግንቦ',\n 'ሰኔ',\n 'ሐምሌ',\n 'ነሐሴ',\n 'ጳጉሜ',\n];\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {toEC, toGC} from './converter';\nimport {MONTHS_NAMES, SHORT_MONTHS_NAMES, WEEK_NAMES} from './utils';\n\nexport class EthiopianDate {\n private _year: number;\n private _month: number;\n private _date: number;\n private _gc: Date;\n\n /**\n * @param val - A numeric year value if the second and third parameters ar provided,\n * It should be a date string if not\n * @param month A zero-based numeric value for the month (0 for መስከረም, 12 for ጳጉሜን)\n * @param day A numeric value equal for the day of the month.\n */\n constructor(val?: Date | string | number, month?: number, day?: number) {\n if (val == null && month == null && day == null) {\n const ahun = EthiopianDate.gregorianToEthiopian(new Date());\n [this._year, this._month, this._date] = [ahun.getFullYear(), ahun.getMonth(), ahun.getDate()];\n this._gc = EthiopianDate.ethiopianToGregorian(this._year, this._month, this._date);\n } else if (val != null && month == null && day == null && typeof val !== 'number') {\n if (typeof val === 'string') {\n const result = EthiopianDate.parse(val);\n if (result == null) {\n throw new Error('Invalid Argument Exception');\n }\n [this._year, this._month, this._date] = [\n result.getFullYear(),\n result.getMonth(),\n result.getDate(),\n ];\n this._gc = EthiopianDate.ethiopianToGregorian(this._year, this._month, this._date);\n } else if (typeof val === 'object' && val instanceof Date) {\n const result = EthiopianDate.gregorianToEthiopian(val);\n [this._year, this._month, this._date] = [\n result.getFullYear(),\n result.getMonth(),\n result.getDate(),\n ];\n this._gc = EthiopianDate.ethiopianToGregorian(this._year, this._month, this._date);\n } else {\n throw new Error('Invalid Argument Exception');\n }\n } else if (val != null && month != null && day != null && typeof val === 'number') {\n this._year = val;\n this._month = month;\n this._date = day;\n this._gc = EthiopianDate.ethiopianToGregorian(this._year, this._month, this._date);\n }\n }\n\n getDate(): number {\n return this._date;\n }\n\n getDay(): number {\n return this._gc.getDay();\n }\n\n getDayOfWeek() {\n const weekDay = this.getGCWeekDay();\n return WEEK_NAMES[weekDay];\n }\n\n getFullYear(): number {\n return this._year;\n }\n\n getGregorianDate(): Date {\n return this._gc;\n }\n\n getGCWeekDay(): number {\n return this._gc.getDay();\n }\n\n getMonth(): number {\n return this._month;\n }\n\n getMonthName(): string | null {\n return this._month >= 0 && this._month < MONTHS_NAMES.length ? MONTHS_NAMES[this._month] : null;\n }\n\n getShortMonthName(): string | null {\n return this._month >= 0 && this._month < SHORT_MONTHS_NAMES.length\n ? SHORT_MONTHS_NAMES[this._month]\n : null;\n }\n\n getHours(): number {\n return 0;\n }\n\n getMinutes(): number {\n return 0;\n }\n\n getSeconds(): number {\n return 0;\n }\n\n getMilliseconds(): number {\n return 0;\n }\n\n toString(): string {\n return `${this._year}-${this._month + 1}-${this._date}`;\n }\n\n /**\n * Converts a Ethiopian date to Gregorian and returns Date instance representing Gregorian Date.\n *\n * @param val - A numeric year value if the second and third parameters are\n * provided, it should be a date string if not\n * @param month A zero-based numeric value for the month\n * (0 for መስከረም, 12 for ጳጉሜን)\n * @param day A numeric value equal for the day of the month.\n *\n * @api public\n */\n static ethiopianToGregorian(\n val?: EthiopianDate | string | number,\n month?: number,\n day?: number,\n ): Date {\n let ec: [number, number, number];\n if (val != null && month == null && day == null && typeof val !== 'number') {\n if (typeof val === 'string') {\n const etDate = new EthiopianDate(val);\n ec = [etDate.getFullYear(), etDate.getMonth() + 1, etDate.getDate()];\n } else if (typeof val === 'object' && val instanceof EthiopianDate) {\n const [y, m, d] = [val.getFullYear(), val.getMonth() + 1, val.getDate()];\n ec = [y, m, d];\n } else {\n throw new Error('Invalid Argument Exception');\n }\n } else if (val != null && month != null && day != null && typeof val === 'number') {\n ec = [val, month + 1, day];\n } else {\n throw new Error('Invalid Argument Exception');\n }\n const gc = toGC(ec);\n return new Date(gc[0], gc[1] - 1, gc[2]);\n }\n\n /**\n *\n * @param val - A numeric year value if the second and third parameters are\n * provided, it should be a date string if not\n * @param month A zero-based numeric value for the month\n * (0 for January, 11 for December)\n * @param day A numeric value equal for the day of the month.\n *\n * @api public\n */\n static gregorianToEthiopian(\n val?: Date | string | number,\n month?: number,\n day?: number,\n ): EthiopianDate {\n let gc: [number, number, number];\n if (val != null && month == null && day == null && typeof val !== 'number') {\n if (typeof val === 'string') {\n const gcDate = new Date(val);\n gc = [gcDate.getFullYear(), gcDate.getMonth() + 1, gcDate.getDate()];\n } else if (typeof val === 'object' && val instanceof Date) {\n const [y, m, d] = [val.getFullYear(), val.getMonth() + 1, val.getDate()];\n gc = [y, m, d];\n } else {\n throw new Error('Invalid Argument Exception');\n }\n } else if (val != null && month != null && day != null && typeof val === 'number') {\n gc = [val, month + 1, day];\n } else {\n throw new Error('Invalid Argument Exception');\n }\n const ec = toEC(gc);\n return new EthiopianDate(ec[0], ec[1] - 1, ec[2]);\n }\n\n /**\n * Parse Ethiopian date from string\n *\n * @param dateString a date string to parse\n * @param pattern a parsing pattern\n *\n * @returns EthiopianDate\n */\n static parse(dateString: string): EthiopianDate | null {\n if (!dateString) {\n return null;\n }\n const result = dateString.split('-');\n if (result.length === 3) {\n const [y, m, d] = result;\n return new EthiopianDate(parseInt(y, 10), parseInt(m, 10) - 1, parseInt(d, 10));\n }\n throw new Error(`ParsingError: Can't parse ${dateString}`);\n }\n}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {\n AjfCalendarEntry,\n AjfCalendarParams,\n AjfCalendarService,\n AjfCalendarView,\n AjfCalendarViewMode,\n} from '@ajf/core/calendar';\nimport {Injectable} from '@angular/core';\nimport {\n addDays,\n addWeeks,\n addYears,\n endOfISOWeek,\n getISODay,\n setISODay,\n startOfISOWeek,\n startOfWeek,\n subWeeks,\n} from 'date-fns';\n\nimport {EthiopianDate} from './ethiopian-date';\n\nfunction getMonthDays(month: number, year: number): number {\n if (month < 12) {\n return 30;\n }\n return year % 4 === 3 ? 6 : 5;\n}\n\nfunction getMonthBounds(date: EthiopianDate): {start: EthiopianDate; end: EthiopianDate} {\n const year = date.getFullYear();\n const month = date.getMonth();\n const start = new EthiopianDate(year, month, 1);\n const endDay = getMonthDays(month, year);\n const end = new EthiopianDate(year, month, endDay);\n return {start, end};\n}\n\n@Injectable({providedIn: 'root'})\nexport class AjfEthiopianCalendarService extends AjfCalendarService {\n override buildView(params: AjfCalendarParams): AjfCalendarView {\n const {viewMode} = params;\n const viewDate = EthiopianDate.gregorianToEthiopian(params.viewDate);\n switch (viewMode) {\n case 'decade':\n let curYear: number = viewDate.getFullYear();\n let firstYear = curYear - (curYear % 10) + 1;\n let lastYear = firstYear + 11;\n return {\n header: `${firstYear} - ${lastYear}`,\n headerRow: [],\n rows: this._ecDecadeCalendarRows(params),\n };\n case 'year':\n return {\n header: `${viewDate.getFullYear()}`,\n headerRow: [],\n rows: this._ecYearCalendarRows(params),\n };\n case 'month':\n const view = super.buildView(params);\n return {\n header: `${viewDate.getShortMonthName()} ${viewDate.getFullYear()}`,\n headerRow: this._ecMonthHeaderRow(params),\n rows: view.rows,\n };\n }\n return super.buildView(params);\n }\n\n override entryLabel(entry: AjfCalendarEntry): string {\n const ecDate = EthiopianDate.gregorianToEthiopian(entry.date);\n if (entry.type === 'day') {\n return `${ecDate.getDate()}`;\n }\n if (entry.type === 'month') {\n return `${ecDate.getMonthName()}`;\n }\n return `${ecDate.getFullYear()}`;\n }\n\n override monthBounds(date: Date, isoMode: boolean): {start: Date; end: Date} {\n if (!isoMode) {\n const ecDate = EthiopianDate.gregorianToEthiopian(date);\n const {start, end} = getMonthBounds(ecDate);\n return {\n start: EthiopianDate.ethiopianToGregorian(start),\n end: EthiopianDate.ethiopianToGregorian(end),\n };\n } else {\n let isoDay = getISODay(date);\n const ecDate = EthiopianDate.gregorianToEthiopian(date);\n let {start, end} = getMonthBounds(ecDate);\n if (ecDate.getMonth() === 12) {\n start = EthiopianDate.gregorianToEthiopian(startOfISOWeek(start.getGregorianDate()));\n end = EthiopianDate.gregorianToEthiopian(endOfISOWeek(end.getGregorianDate()));\n } else {\n date = isoDay < 4 ? endOfISOWeek(date) : startOfISOWeek(date);\n const startWeekDay = start.getDay();\n const endWeekDay = end.getDay();\n if (startWeekDay == 0 || startWeekDay > 4) {\n start = EthiopianDate.gregorianToEthiopian(addWeeks(start.getGregorianDate(), 1));\n }\n if (endWeekDay > 0 && endWeekDay < 4) {\n end = EthiopianDate.gregorianToEthiopian(subWeeks(end.getGregorianDate(), 1));\n }\n }\n return {\n start: startOfISOWeek(start.getGregorianDate()),\n end: endOfISOWeek(end.getGregorianDate()),\n };\n }\n }\n\n override nextView(viewDate: Date, viewMode: AjfCalendarViewMode): Date {\n if (viewMode === 'month') {\n const ecDate = EthiopianDate.gregorianToEthiopian(viewDate);\n let year = ecDate.getFullYear();\n let month = ecDate.getMonth();\n if (month === 12) {\n month = 0;\n year += 1;\n } else {\n month += 1;\n }\n return EthiopianDate.ethiopianToGregorian(new EthiopianDate(year, month, 1));\n }\n return super.nextView(viewDate, viewMode);\n }\n\n override previousView(viewDate: Date, viewMode: AjfCalendarViewMode): Date {\n if (viewMode === 'month') {\n const ecDate = EthiopianDate.gregorianToEthiopian(viewDate);\n let year = ecDate.getFullYear();\n let month = ecDate.getMonth();\n if (month === 0) {\n month = 12;\n year -= 1;\n } else {\n month -= 1;\n }\n return EthiopianDate.ethiopianToGregorian(new EthiopianDate(year, month, 1));\n }\n return super.previousView(viewDate, viewMode);\n }\n\n private _ecMonthHeaderRow(params: AjfCalendarParams): string[] {\n const {isoMode, viewDate} = params;\n let curDate: Date;\n if (isoMode) {\n curDate = setISODay(startOfWeek(viewDate), 1);\n } else {\n curDate = startOfWeek(viewDate);\n }\n let weekDayNames: string[] = [];\n for (let i = 0; i < 7; i++) {\n const ecDate = EthiopianDate.gregorianToEthiopian(curDate);\n weekDayNames.push(ecDate.getDayOfWeek());\n curDate = addDays(curDate, 1);\n }\n return weekDayNames;\n }\n\n private _ecYearCalendarRows(params: AjfCalendarParams): AjfCalendarEntry[][] {\n const {viewDate, selection} = params;\n const year = EthiopianDate.gregorianToEthiopian(viewDate).getFullYear();\n let curDate: EthiopianDate;\n\n let rows: AjfCalendarEntry[][] = [];\n for (let i = 0; i <= 4; i++) {\n let row: AjfCalendarEntry[] = [];\n for (let j = 0; j < 3; j++) {\n const curMonth = i * 3 + j;\n if (curMonth < 13) {\n curDate = new EthiopianDate(year, curMonth, 1);\n let date = EthiopianDate.ethiopianToGregorian(curDate);\n let newEntry: AjfCalendarEntry = {type: 'month', date, selected: 'none'};\n newEntry.selected = this.isEntrySelected(newEntry, selection);\n row.push(newEntry);\n }\n }\n rows.push(row);\n }\n\n return rows;\n }\n\n private _ecDecadeCalendarRows(params: AjfCalendarParams): AjfCalendarEntry[][] {\n const {viewDate, selection} = params;\n const ecDate = EthiopianDate.gregorianToEthiopian(viewDate);\n let curYear: number = ecDate.getFullYear();\n let firstYear = curYear - (curYear % 10) + 1;\n let curDate: Date = EthiopianDate.ethiopianToGregorian(firstYear, 0, 1);\n\n let rows: AjfCalendarEntry[][] = [];\n for (let i = 0; i < 4; i++) {\n let row: AjfCalendarEntry[] = [];\n for (let j = 0; j < 3; j++) {\n let date = new Date(curDate);\n let newEntry: AjfCalendarEntry = {type: 'year', date: date, selected: 'none'};\n newEntry.selected = this.isEntrySelected(newEntry, selection);\n row.push(newEntry);\n curDate = addYears(curDate, 1);\n }\n rows.push(row);\n }\n\n return rows;\n }\n}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {Injectable, Pipe, PipeTransform} from '@angular/core';\nimport {EthiopianDate} from './ethiopian-date';\n\n@Injectable()\n@Pipe({name: 'ajfEthiopianDate'})\nexport class AjfEthiopianDatePipe implements PipeTransform {\n transform(value: any): string | null {\n try {\n const ed = EthiopianDate.gregorianToEthiopian(value);\n const date = `0${ed.getDate()}`.slice(-2);\n const month = `0${ed.getMonth() + 1}`.slice(-2);\n return `${date}/${month}/${ed.getFullYear()}`;\n } catch (e) {\n return null;\n }\n }\n}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {AjfCalendarService} from '@ajf/core/calendar';\nimport {NgModule} from '@angular/core';\n\nimport {AjfEthiopianCalendarService} from './calendar-service';\nimport {AjfEthiopianDatePipe} from './ethiopian-date-pipe';\n\n@NgModule({\n declarations: [AjfEthiopianDatePipe],\n exports: [AjfEthiopianDatePipe],\n providers: [{provide: AjfCalendarService, useClass: AjfEthiopianCalendarService}],\n})\nexport class AjfEthiopianCalendarModule {}\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nexport * from './calendar-module';\nexport * from './calendar-service';\nexport * from './ethiopian-date';\nexport * from './ethiopian-date-pipe';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["getISODay","startOfISOWeek","endOfISOWeek","addWeeks","subWeeks","setISODay","startOfWeek","addDays","addYears","AjfCalendarService","Injectable","Pipe","NgModule"],"mappings":"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"}
|
package/bundles/calendars.umd.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"calendars.umd.js","sources":["../../../../../src/calendars/version.ts","../../../../../src/calendars/public-api.ts","../../../../../src/calendars/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {Version} from '@angular/core';\n\n/** Current version of Ajf. */\nexport const VERSION = new Version('12.1.
|
|
1
|
+
{"version":3,"file":"calendars.umd.js","sources":["../../../../../src/calendars/version.ts","../../../../../src/calendars/public-api.ts","../../../../../src/calendars/index.ts"],"sourcesContent":["/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nimport {Version} from '@angular/core';\n\n/** Current version of Ajf. */\nexport const VERSION = new Version('12.1.8');\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nexport * from './version';\n","/**\n * @license\n * Copyright (C) Gnucoop soc. coop.\n *\n * This file is part of the Advanced JSON forms (ajf).\n *\n * Advanced JSON forms (ajf) is free software: you can redistribute it and/or\n * modify it under the terms of the GNU Affero General Public License as\n * published by the Free Software Foundation, either version 3 of the License,\n * or (at your option) any later version.\n *\n * Advanced JSON forms (ajf) is distributed in the hope that it will be useful,\n * but WITHOUT ANY WARRANTY; without even the implied warranty of\n * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero\n * General Public License for more details.\n *\n * You should have received a copy of the GNU Affero General Public License\n * along with Advanced JSON forms (ajf).\n * If not, see http://www.gnu.org/licenses/.\n *\n */\n\nexport * from './public-api';\n"],"names":["Version"],"mappings":";;;;;;CAAA;;;;;;;;;;;;;;;;;;;;;CAwBA;KACa,OAAO,GAAG,IAAIA,YAAO,CAAC,mBAAmB;;CCzBtD;;;;;;;;;;;;;;;;;;;;;;CCAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
|