@ajf/calendars 13.0.0-rc.1 → 13.1.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.
- package/README.md +2 -5
- package/ajf-calendars.d.ts +5 -0
- package/esm2020/ajf-calendars.mjs +5 -0
- package/esm2020/ethiopian/ajf-calendars-ethiopian.mjs +5 -0
- package/esm2020/ethiopian/calendar-module.mjs +5 -5
- package/esm2020/ethiopian/calendar-service.mjs +4 -4
- package/esm2020/ethiopian/converter.mjs +1 -1
- package/esm2020/ethiopian/ethiopian-date-pipe.mjs +5 -5
- package/esm2020/ethiopian/ethiopian-date.mjs +5 -1
- package/esm2020/ethiopian/public_api.mjs +26 -0
- package/esm2020/ethiopian/utils.mjs +1 -1
- package/esm2020/public-api.mjs +3 -2
- package/ethiopian/ajf-calendars-ethiopian.d.ts +5 -0
- package/ethiopian/calendar-module.d.ts +0 -0
- package/ethiopian/calendar-service.d.ts +0 -0
- package/ethiopian/converter.d.ts +0 -0
- package/ethiopian/ethiopian-date-pipe.d.ts +0 -0
- package/ethiopian/ethiopian-date.d.ts +0 -0
- package/ethiopian/package.json +8 -7
- package/ethiopian/{public-api.d.ts → public_api.d.ts} +0 -0
- package/ethiopian/utils.d.ts +0 -0
- package/fesm2015/{ethiopian.mjs → ajf-calendars-ethiopian.mjs} +16 -34
- package/fesm2015/ajf-calendars-ethiopian.mjs.map +1 -0
- package/{ethiopian/index.d.ts → fesm2015/ajf-calendars.mjs} +7 -1
- package/fesm2015/ajf-calendars.mjs.map +1 -0
- package/fesm2020/{ethiopian.mjs → ajf-calendars-ethiopian.mjs} +16 -34
- package/fesm2020/ajf-calendars-ethiopian.mjs.map +1 -0
- package/{version.d.ts → fesm2020/ajf-calendars.mjs} +7 -3
- package/fesm2020/ajf-calendars.mjs.map +1 -0
- package/package.json +27 -24
- package/public-api.d.ts +2 -1
- package/LICENSE +0 -661
- package/esm2020/ethiopian/ethiopian_public_index.mjs +0 -5
- package/esm2020/ethiopian/index.mjs +0 -23
- package/esm2020/ethiopian/public-api.mjs +0 -26
- package/esm2020/index.mjs +0 -23
- package/esm2020/version.mjs +0 -25
- package/ethiopian/ethiopian_public_index.d.ts +0 -4
- package/fesm2015/calendars.mjs +0 -72
- package/fesm2015/calendars.mjs.map +0 -1
- package/fesm2015/ethiopian.mjs.map +0 -1
- package/fesm2020/calendars.mjs +0 -72
- package/fesm2020/calendars.mjs.map +0 -1
- package/fesm2020/ethiopian.mjs.map +0 -1
- package/index.d.ts +0 -22
package/README.md
CHANGED
|
@@ -1,6 +1,3 @@
|
|
|
1
|
-
Advanced JSON forms
|
|
2
|
-
=======
|
|
1
|
+
# Advanced JSON forms
|
|
3
2
|
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
License: AGPLv3
|
|
3
|
+
This is the home for the Gnucoop's Advanced JSON forms built for and with Angular.
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public-api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWpmLWNhbGVuZGFycy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NhbGVuZGFycy9zcmMvYWpmLWNhbGVuZGFycy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpYy1hcGknO1xuIl19
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Generated bundle index. Do not edit.
|
|
3
|
+
*/
|
|
4
|
+
export * from './public_api';
|
|
5
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYWpmLWNhbGVuZGFycy1ldGhpb3BpYW4uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jYWxlbmRhcnMvZXRoaW9waWFuL3NyYy9hamYtY2FsZW5kYXJzLWV0aGlvcGlhbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7R0FFRztBQUVILGNBQWMsY0FBYyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBHZW5lcmF0ZWQgYnVuZGxlIGluZGV4LiBEbyBub3QgZWRpdC5cbiAqL1xuXG5leHBvcnQgKiBmcm9tICcuL3B1YmxpY19hcGknO1xuIl19
|
|
@@ -26,10 +26,10 @@ import { AjfEthiopianDatePipe } from './ethiopian-date-pipe';
|
|
|
26
26
|
import * as i0 from "@angular/core";
|
|
27
27
|
export class AjfEthiopianCalendarModule {
|
|
28
28
|
}
|
|
29
|
-
AjfEthiopianCalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.
|
|
30
|
-
AjfEthiopianCalendarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.
|
|
31
|
-
AjfEthiopianCalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.
|
|
32
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.
|
|
29
|
+
AjfEthiopianCalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
30
|
+
AjfEthiopianCalendarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarModule, declarations: [AjfEthiopianDatePipe], exports: [AjfEthiopianDatePipe] });
|
|
31
|
+
AjfEthiopianCalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarModule, providers: [{ provide: AjfCalendarService, useClass: AjfEthiopianCalendarService }] });
|
|
32
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarModule, decorators: [{
|
|
33
33
|
type: NgModule,
|
|
34
34
|
args: [{
|
|
35
35
|
declarations: [AjfEthiopianDatePipe],
|
|
@@ -37,4 +37,4 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ng
|
|
|
37
37
|
providers: [{ provide: AjfCalendarService, useClass: AjfEthiopianCalendarService }],
|
|
38
38
|
}]
|
|
39
39
|
}] });
|
|
40
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
40
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItbW9kdWxlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FsZW5kYXJzL2V0aGlvcGlhbi9zcmMvY2FsZW5kYXItbW9kdWxlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUVILE9BQU8sRUFBQyxrQkFBa0IsRUFBQyxNQUFNLG9CQUFvQixDQUFDO0FBQ3RELE9BQU8sRUFBQyxRQUFRLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFFdkMsT0FBTyxFQUFDLDJCQUEyQixFQUFDLE1BQU0sb0JBQW9CLENBQUM7QUFDL0QsT0FBTyxFQUFDLG9CQUFvQixFQUFDLE1BQU0sdUJBQXVCLENBQUM7O0FBTzNELE1BQU0sT0FBTywwQkFBMEI7O3VIQUExQiwwQkFBMEI7d0hBQTFCLDBCQUEwQixpQkFKdEIsb0JBQW9CLGFBQ3pCLG9CQUFvQjt3SEFHbkIsMEJBQTBCLGFBRjFCLENBQUMsRUFBQyxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsUUFBUSxFQUFFLDJCQUEyQixFQUFDLENBQUM7MkZBRXRFLDBCQUEwQjtrQkFMdEMsUUFBUTttQkFBQztvQkFDUixZQUFZLEVBQUUsQ0FBQyxvQkFBb0IsQ0FBQztvQkFDcEMsT0FBTyxFQUFFLENBQUMsb0JBQW9CLENBQUM7b0JBQy9CLFNBQVMsRUFBRSxDQUFDLEVBQUMsT0FBTyxFQUFFLGtCQUFrQixFQUFFLFFBQVEsRUFBRSwyQkFBMkIsRUFBQyxDQUFDO2lCQUNsRiIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAoQykgR251Y29vcCBzb2MuIGNvb3AuXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3JcbiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhc1xuICogcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsXG4gKiBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEFmZmVyb1xuICogR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICogSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuaW1wb3J0IHtBamZDYWxlbmRhclNlcnZpY2V9IGZyb20gJ0BhamYvY29yZS9jYWxlbmRhcic7XG5pbXBvcnQge05nTW9kdWxlfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuaW1wb3J0IHtBamZFdGhpb3BpYW5DYWxlbmRhclNlcnZpY2V9IGZyb20gJy4vY2FsZW5kYXItc2VydmljZSc7XG5pbXBvcnQge0FqZkV0aGlvcGlhbkRhdGVQaXBlfSBmcm9tICcuL2V0aGlvcGlhbi1kYXRlLXBpcGUnO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtBamZFdGhpb3BpYW5EYXRlUGlwZV0sXG4gIGV4cG9ydHM6IFtBamZFdGhpb3BpYW5EYXRlUGlwZV0sXG4gIHByb3ZpZGVyczogW3twcm92aWRlOiBBamZDYWxlbmRhclNlcnZpY2UsIHVzZUNsYXNzOiBBamZFdGhpb3BpYW5DYWxlbmRhclNlcnZpY2V9XSxcbn0pXG5leHBvcnQgY2xhc3MgQWpmRXRoaW9waWFuQ2FsZW5kYXJNb2R1bGUge31cbiJdfQ==
|
|
@@ -203,10 +203,10 @@ export class AjfEthiopianCalendarService extends AjfCalendarService {
|
|
|
203
203
|
return rows;
|
|
204
204
|
}
|
|
205
205
|
}
|
|
206
|
-
AjfEthiopianCalendarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.
|
|
207
|
-
AjfEthiopianCalendarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.
|
|
208
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.
|
|
206
|
+
AjfEthiopianCalendarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
207
|
+
AjfEthiopianCalendarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarService, providedIn: 'root' });
|
|
208
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarService, decorators: [{
|
|
209
209
|
type: Injectable,
|
|
210
210
|
args: [{ providedIn: 'root' }]
|
|
211
211
|
}] });
|
|
212
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3NyYy9jYWxlbmRhcnMvZXRoaW9waWFuL2NhbGVuZGFyLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBRUgsT0FBTyxFQUdMLGtCQUFrQixHQUduQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLE9BQU8sRUFDUCxRQUFRLEVBQ1IsUUFBUSxFQUNSLFlBQVksRUFDWixTQUFTLEVBQ1QsU0FBUyxFQUNULGNBQWMsRUFDZCxXQUFXLEVBQ1gsUUFBUSxHQUNULE1BQU0sVUFBVSxDQUFDO0FBRWxCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFFL0MsU0FBUyxZQUFZLENBQUMsS0FBYSxFQUFFLElBQVk7SUFDL0MsSUFBSSxLQUFLLEdBQUcsRUFBRSxFQUFFO1FBQ2QsT0FBTyxFQUFFLENBQUM7S0FDWDtJQUNELE9BQU8sSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2hDLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxJQUFtQjtJQUN6QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDaEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlCLE1BQU0sS0FBSyxHQUFHLElBQUksYUFBYSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEQsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN6QyxNQUFNLEdBQUcsR0FBRyxJQUFJLGFBQWEsQ0FB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QzdDLElBQUksT0FBTyxHQUFTLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRXhFLElBQUksSUFBSSxHQUF5QixFQUFFLENBQUM7UUFDcEMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUMxQixJQUFJLEdBQUcsR0FBdUIsRUFBRSxDQUFDO1lBQ2pDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQzFCLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUM3QixJQUFJLFFBQVEsR0FBcUIsRUFBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBQyxDQUFDO2dCQUM5RSxRQUFRLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUM5RCxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNuQixPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQzthQUNoQztZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDaEI7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7OzZIQXpLVSwyQkFBMkI7aUlBQTNCLDJCQUEyQixjQURmLE1BQU07Z0dBQ2xCLDJCQUEyQjtrQkFEdkMsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgKEMpIEdudWNvb3Agc29jLiBjb29wLlxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yXG4gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLFxuICogb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBBZmZlcm9cbiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uXG4gKlxuICovXG5cbmltcG9ydCB7XG4gIEFqZkNhbGVuZGFyRW50cnksXG4gIEFqZkNhbGVuZGFyUGFyYW1zLFxuICBBamZDYWxlbmRhclNlcnZpY2UsXG4gIEFqZkNhbGVuZGFyVmlldyxcbiAgQWpmQ2FsZW5kYXJWaWV3TW9kZSxcbn0gZnJvbSAnQGFqZi9jb3JlL2NhbGVuZGFyJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBhZGREYXlzLFxuICBhZGRXZWVrcyxcbiAgYWRkWWVhcnMsXG4gIGVuZE9mSVNPV2VlayxcbiAgZ2V0SVNPRGF5LFxuICBzZXRJU09EYXksXG4gIHN0YXJ0T2ZJU09XZWVrLFxuICBzdGFydE9mV2VlayxcbiAgc3ViV2Vla3MsXG59IGZyb20gJ2RhdGUtZm5zJztcblxuaW1wb3J0IHtFdGhpb3BpYW5EYXRlfSBmcm9tICcuL2V0aGlvcGlhbi1kYXRlJztcblxuZnVuY3Rpb24gZ2V0TW9udGhEYXlzKG1vbnRoOiBudW1iZXIsIHllYXI6IG51bWJlcik6IG51bWJlciB7XG4gIGlmIChtb250aCA8IDEyKSB7XG4gICAgcmV0dXJuIDMwO1xuICB9XG4gIHJldHVybiB5ZWFyICUgNCA9PT0gMyA/IDYgOiA1O1xufVxuXG5mdW5jdGlvbiBnZXRNb250aEJvdW5kcyhkYXRlOiBFdGhpb3BpYW5EYXRlKToge3N0YXJ0OiBFdGhpb3BpYW5EYXRlOyBlbmQ6IEV0aGlvcGlhbkRhdGV9IHtcbiAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgY29uc3QgbW9udGggPSBkYXRlLmdldE1vbnRoKCk7XG4gIGNvbnN0IHN0YXJ0ID0gbmV3IEV0aGlvcGlhbkRhdGUoeWVhciwgbW9udGgsIDEpO1xuICBjb25zdCBlbmREYXkgPSBnZXRNb250aERheXMobW9udGgsIHllYXIpO1xuICBjb25zdCBlbmQgPSBuZXcgRXRoaW9waWFuRGF0ZSh5ZWFyLCBtb250aCwgZW5kRGF5KTtcbiAgcmV0dXJuIHtzdGFydCwgZW5kfTtcbn1cblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgQWpmRXRoaW9waWFuQ2FsZW5kYXJTZXJ2aWNlIGV4dGVuZHMgQWpmQ2FsZW5kYXJTZXJ2aWNlIHtcbiAgb3ZlcnJpZGUgYnVpbGRWaWV3KHBhcmFtczogQWpmQ2FsZW5kYXJQYXJhbXMpOiBBamZDYWxlbmRhclZpZXcge1xuICAgIGNvbnN0IHt2aWV3TW9kZX0gPSBwYXJhbXM7XG4gICAgY29uc3Qgdmlld0RhdGUgPSBFdGhpb3BpYW5EYXRlLmdyZWdvcmlhblRvRXRoaW9waWFuKHBhcmFtcy52aWV3RGF0ZSk7XG4gICAgc3dpdGNoICh2aWV3TW9kZSkge1xuICAgICAgY2FzZSAnZGVjYWRlJzpcbiAgICAgICAgbGV0IGN1clllYXI6IG51bWJlciA9IHZpZXdEYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIGxldCBmaXJzdFllYXIgPSBjdXJZZWFyIC0gKGN1clllYXIgJSAxMCkgKyAxO1xuICAgICAgICBsZXQgbGFzdFllYXIgPSBmaXJzdFllYXIgKyAxMTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBoZWFkZXI6IGAke2ZpcnN0WWVhcn0gLSAke2xhc3RZZWFyfWAsXG4gICAgICAgICAgaGVhZGVyUm93OiBbXSxcbiAgICAgICAgICByb3dzOiB0aGlzLl9lY0RlY2FkZUNhbGVuZGFyUm93cyhwYXJhbXMpLFxuICAgICAgICB9O1xuICAgICAgY2FzZSAneWVhcic6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaGVhZGVyOiBgJHt2aWV3RGF0ZS5nZXRGdWxsWWVhcigpfWAsXG4gICAgICAgICAgaGVhZGVyUm93OiBbXSxcbiAgICAgICAgICByb3dzOiB0aGlzLl9lY1llYXJDYWxlbmRhclJvd3MocGFyYW1zKSxcbiAgICAgICAgfTtcbiAgICAgIGNhc2UgJ21vbnRoJzpcbiAgICAgICAgY29uc3QgdmlldyA9IHN1cGVyLmJ1aWxkVmlldyhwYXJhbXMpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGhlYWRlcjogYCR7dmlld0RhdGUuZ2V0U2hvcnRNb250aE5hbWUoKX0gJHt2aWV3RGF0ZS5nZXRGdWxsWWVhcigpfWAsXG4gICAgICAgICAgaGVhZGVyUm93OiB0aGlzLl9lY01vbnRoSGVhZGVyUm93KHBhcmFtcyksXG4gICAgICAgICAgcm93czogdmlldy5yb3dzLFxuICAgICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gc3VwZXIuYnVpbGRWaWV3KHBhcmFtcyk7XG4gIH1cblxuICBvdmVycmlkZSBlbnRyeUxhYmVsKGVudHJ5OiBBamZDYWxlbmRhckVudHJ5KTogc3RyaW5nIHtcbiAgICBjb25zdCBlY0RhdGUgPSBFdGhpb3BpYW5EYXRlLmdyZWdvcmlhblRvRXRoaW9waWFuKGVudHJ5LmRhdGUpO1xuICAgIGlmIChlbnRyeS50eXBlID09PSAnZGF5Jykge1xuICAgICAgcmV0dXJuIGAke2VjRGF0ZS5nZXREYXRlKCl9YDtcbiAgICB9XG4gICAgaWYgKGVudHJ5LnR5cGUgPT09ICdtb250aCcpIHtcbiAgICAgIHJldHVybiBgJHtlY0RhdGUuZ2V0TW9udGhOYW1lKCl9YDtcbiAgICB9XG4gICAgcmV0dXJuIGAke2VjRGF0ZS5nZXRGdWxsWWVhcigpfWA7XG4gIH1cblxuICBvdmVycmlkZSBtb250aEJvdW5kcyhkYXRlOiBEYXRlLCBpc29Nb2RlOiBib29sZWFuKToge3N0YXJ0OiBEYXRlOyBlbmQ6IERhdGV9IHtcbiAgICBpZiAoIWlzb01vZGUpIHtcbiAgICAgIGNvbnN0IGVjRGF0ZSA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4oZGF0ZSk7XG4gICAgICBjb25zdCB7c3RhcnQsIGVuZH0gPSBnZXRNb250aEJvdW5kcyhlY0RhdGUpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc3RhcnQ6IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4oc3RhcnQpLFxuICAgICAgICBlbmQ6IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4oZW5kKSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBpc29EYXkgPSBnZXRJU09EYXkoZGF0ZSk7XG4gICAgICBjb25zdCBlY0RhdGUgPSBFdGhpb3BpYW5EYXRlLmdyZWdvcmlhblRvRXRoaW9waWFuKGRhdGUpO1xuICAgICAgbGV0IHtzdGFydCwgZW5kfSA9IGdldE1vbnRoQm91bmRzKGVjRGF0ZSk7XG4gICAgICBpZiAoZWNEYXRlLmdldE1vbnRoKCkgPT09IDEyKSB7XG4gICAgICAgIHN0YXJ0ID0gRXRoaW9waWFuRGF0ZS5ncmVnb3JpYW5Ub0V0aGlvcGlhbihzdGFydE9mSVNPV2VlayhzdGFydC5nZXRHcmVnb3JpYW5EYXRlKCkpKTtcbiAgICAgICAgZW5kID0gRXRoaW9waWFuRGF0ZS5ncmVnb3JpYW5Ub0V0aGlvcGlhbihlbmRPZklTT1dlZWsoZW5kLmdldEdyZWdvcmlhbkRhdGUoKSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGF0ZSA9IGlzb0RheSA8IDQgPyBlbmRPZklTT1dlZWsoZGF0ZSkgOiBzdGFydE9mSVNPV2VlayhkYXRlKTtcbiAgICAgICAgY29uc3Qgc3RhcnRXZWVrRGF5ID0gc3RhcnQuZ2V0RGF5KCk7XG4gICAgICAgIGNvbnN0IGVuZFdlZWtEYXkgPSBlbmQuZ2V0RGF5KCk7XG4gICAgICAgIGlmIChzdGFydFdlZWtEYXkgPT0gMCB8fCBzdGFydFdlZWtEYXkgPiA0KSB7XG4gICAgICAgICAgc3RhcnQgPSBFdGhpb3BpYW5EYXRlLmdyZWdvcmlhblRvRXRoaW9waWFuKGFkZFdlZWtzKHN0YXJ0LmdldEdyZWdvcmlhbkRhdGUoKSwgMSkpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmRXZWVrRGF5ID4gMCAmJiBlbmRXZWVrRGF5IDwgNCkge1xuICAgICAgICAgIGVuZCA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4oc3ViV2Vla3MoZW5kLmdldEdyZWdvcmlhbkRhdGUoKSwgMSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzdGFydDogc3RhcnRPZklTT1dlZWsoc3RhcnQuZ2V0R3JlZ29yaWFuRGF0ZSgpKSxcbiAgICAgICAgZW5kOiBlbmRPZklTT1dlZWsoZW5kLmdldEdyZWdvcmlhbkRhdGUoKSksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIG5leHRWaWV3KHZpZXdEYXRlOiBEYXRlLCB2aWV3TW9kZTogQWpmQ2FsZW5kYXJWaWV3TW9kZSk6IERhdGUge1xuICAgIGlmICh2aWV3TW9kZSA9PT0gJ21vbnRoJykge1xuICAgICAgY29uc3QgZWNEYXRlID0gRXRoaW9waWFuRGF0ZS5ncmVnb3JpYW5Ub0V0aGlvcGlhbih2aWV3RGF0ZSk7XG4gICAgICBsZXQgeWVhciA9IGVjRGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgbGV0IG1vbnRoID0gZWNEYXRlLmdldE1vbnRoKCk7XG4gICAgICBpZiAobW9udGggPT09IDEyKSB7XG4gICAgICAgIG1vbnRoID0gMDtcbiAgICAgICAgeWVhciArPSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbW9udGggKz0gMTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBFdGhpb3BpYW5EYXRlLmV0aGlvcGlhblRvR3JlZ29yaWFuKG5ldyBFdGhpb3BpYW5EYXRlKHllYXIsIG1vbnRoLCAxKSk7XG4gICAgfVxuICAgIHJldHVybiBzdXBlci5uZXh0Vmlldyh2aWV3RGF0ZSwgdmlld01vZGUpO1xuICB9XG5cbiAgb3ZlcnJpZGUgcHJldmlvdXNWaWV3KHZpZXdEYXRlOiBEYXRlLCB2aWV3TW9kZTogQWpmQ2FsZW5kYXJWaWV3TW9kZSk6IERhdGUge1xuICAgIGlmICh2aWV3TW9kZSA9PT0gJ21vbnRoJykge1xuICAgICAgY29uc3QgZWNEYXRlID0gRXRoaW9waWFuRGF0ZS5ncmVnb3JpYW5Ub0V0aGlvcGlhbih2aWV3RGF0ZSk7XG4gICAgICBsZXQgeWVhciA9IGVjRGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgbGV0IG1vbnRoID0gZWNEYXRlLmdldE1vbnRoKCk7XG4gICAgICBpZiAobW9udGggPT09IDApIHtcbiAgICAgICAgbW9udGggPSAxMjtcbiAgICAgICAgeWVhciAtPSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbW9udGggLT0gMTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBFdGhpb3BpYW5EYXRlLmV0aGlvcGlhblRvR3JlZ29yaWFuKG5ldyBFdGhpb3BpYW5EYXRlKHllYXIsIG1vbnRoLCAxKSk7XG4gICAgfVxuICAgIHJldHVybiBzdXBlci5wcmV2aW91c1ZpZXcodmlld0RhdGUsIHZpZXdNb2RlKTtcbiAgfVxuXG4gIHByaXZhdGUgX2VjTW9udGhIZWFkZXJSb3cocGFyYW1zOiBBamZDYWxlbmRhclBhcmFtcyk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCB7aXNvTW9kZSwgdmlld0RhdGV9ID0gcGFyYW1zO1xuICAgIGxldCBjdXJEYXRlOiBEYXRlO1xuICAgIGlmIChpc29Nb2RlKSB7XG4gICAgICBjdXJEYXRlID0gc2V0SVNPRGF5KHN0YXJ0T2ZXZWVrKHZpZXdEYXRlKSwgMSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGN1ckRhdGUgPSBzdGFydE9mV2Vlayh2aWV3RGF0ZSk7XG4gICAgfVxuICAgIGxldCB3ZWVrRGF5TmFtZXM6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCA3OyBpKyspIHtcbiAgICAgIGNvbnN0IGVjRGF0ZSA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4oY3VyRGF0ZSk7XG4gICAgICB3ZWVrRGF5TmFtZXMucHVzaChlY0RhdGUuZ2V0RGF5T2ZXZWVrKCkpO1xuICAgICAgY3VyRGF0ZSA9IGFkZERheXMoY3VyRGF0ZSwgMSk7XG4gICAgfVxuICAgIHJldHVybiB3ZWVrRGF5TmFtZXM7XG4gIH1cblxuICBwcml2YXRlIF9lY1llYXJDYWxlbmRhclJvd3MocGFyYW1zOiBBamZDYWxlbmRhclBhcmFtcyk6IEFqZkNhbGVuZGFyRW50cnlbXVtdIHtcbiAgICBjb25zdCB7dmlld0RhdGUsIHNlbGVjdGlvbn0gPSBwYXJhbXM7XG4gICAgY29uc3QgeWVhciA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4odmlld0RhdGUpLmdldEZ1bGxZZWFyKCk7XG4gICAgbGV0IGN1ckRhdGU6IEV0aGlvcGlhbkRhdGU7XG5cbiAgICBsZXQgcm93czogQWpmQ2FsZW5kYXJFbnRyeVtdW10gPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8PSA0OyBpKyspIHtcbiAgICAgIGxldCByb3c6IEFqZkNhbGVuZGFyRW50cnlbXSA9IFtdO1xuICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCAzOyBqKyspIHtcbiAgICAgICAgY29uc3QgY3VyTW9udGggPSBpICogMyArIGo7XG4gICAgICAgIGlmIChjdXJNb250aCA8IDEzKSB7XG4gICAgICAgICAgY3VyRGF0ZSA9IG5ldyBFdGhpb3BpYW5EYXRlKHllYXIsIGN1ck1vbnRoLCAxKTtcbiAgICAgICAgICBsZXQgZGF0ZSA9IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4oY3VyRGF0ZSk7XG4gICAgICAgICAgbGV0IG5ld0VudHJ5OiBBamZDYWxlbmRhckVudHJ5ID0ge3R5cGU6ICdtb250aCcsIGRhdGUsIHNlbGVjdGVkOiAnbm9uZSd9O1xuICAgICAgICAgIG5ld0VudHJ5LnNlbGVjdGVkID0gdGhpcy5pc0VudHJ5U2VsZWN0ZWQobmV3RW50cnksIHNlbGVjdGlvbik7XG4gICAgICAgICAgcm93LnB1c2gobmV3RW50cnkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByb3dzLnB1c2gocm93KTtcbiAgICB9XG5cbiAgICByZXR1cm4gcm93cztcbiAgfVxuXG4gIHByaXZhdGUgX2VjRGVjYWRlQ2FsZW5kYXJSb3dzKHBhcmFtczogQWpmQ2FsZW5kYXJQYXJhbXMpOiBBamZDYWxlbmRhckVudHJ5W11bXSB7XG4gICAgY29uc3Qge3ZpZXdEYXRlLCBzZWxlY3Rpb259ID0gcGFyYW1zO1xuICAgIGNvbnN0IGVjRGF0ZSA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4odmlld0RhdGUpO1xuICAgIGxldCBjdXJZZWFyOiBudW1iZXIgPSBlY0RhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICBsZXQgZmlyc3RZZWFyID0gY3VyWWVhciAtIChjdXJZZWFyICUgMTApICsgMTtcbiAgICBsZXQgY3VyRGF0ZTogRGF0ZSA9IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4oZmlyc3RZZWFyLCAwLCAxKTtcblxuICAgIGxldCByb3dzOiBBamZDYWxlbmRhckVudHJ5W11bXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNDsgaSsrKSB7XG4gICAgICBsZXQgcm93OiBBamZDYWxlbmRhckVudHJ5W10gPSBbXTtcbiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgMzsgaisrKSB7XG4gICAgICAgIGxldCBkYXRlID0gbmV3IERhdGUoY3VyRGF0ZSk7XG4gICAgICAgIGxldCBuZXdFbnRyeTogQWpmQ2FsZW5kYXJFbnRyeSA9IHt0eXBlOiAneWVhcicsIGRhdGU6IGRhdGUsIHNlbGVjdGVkOiAnbm9uZSd9O1xuICAgICAgICBuZXdFbnRyeS5zZWxlY3RlZCA9IHRoaXMuaXNFbnRyeVNlbGVjdGVkKG5ld0VudHJ5LCBzZWxlY3Rpb24pO1xuICAgICAgICByb3cucHVzaChuZXdFbnRyeSk7XG4gICAgICAgIGN1ckRhdGUgPSBhZGRZZWFycyhjdXJEYXRlLCAxKTtcbiAgICAgIH1cbiAgICAgIHJvd3MucHVzaChyb3cpO1xuICAgIH1cblxuICAgIHJldHVybiByb3dzO1xuICB9XG59XG4iXX0=
|
|
212
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY2FsZW5kYXItc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NhbGVuZGFycy9ldGhpb3BpYW4vc3JjL2NhbGVuZGFyLXNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBRUgsT0FBTyxFQUdMLGtCQUFrQixHQUduQixNQUFNLG9CQUFvQixDQUFDO0FBQzVCLE9BQU8sRUFBQyxVQUFVLEVBQUMsTUFBTSxlQUFlLENBQUM7QUFDekMsT0FBTyxFQUNMLE9BQU8sRUFDUCxRQUFRLEVBQ1IsUUFBUSxFQUNSLFlBQVksRUFDWixTQUFTLEVBQ1QsU0FBUyxFQUNULGNBQWMsRUFDZCxXQUFXLEVBQ1gsUUFBUSxHQUNULE1BQU0sVUFBVSxDQUFDO0FBRWxCLE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFFL0MsU0FBUyxZQUFZLENBQUMsS0FBYSxFQUFFLElBQVk7SUFDL0MsSUFBSSxLQUFLLEdBQUcsRUFBRSxFQUFFO1FBQ2QsT0FBTyxFQUFFLENBQUM7S0FDWDtJQUNELE9BQU8sSUFBSSxHQUFHLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0FBQ2hDLENBQUM7QUFFRCxTQUFTLGNBQWMsQ0FBQyxJQUFtQjtJQUN6QyxNQUFNLElBQUksR0FBRyxJQUFJLENBQUMsV0FBVyxFQUFFLENBQUM7SUFDaEMsTUFBTSxLQUFLLEdBQUcsSUFBSSxDQUFDLFFBQVEsRUFBRSxDQUFDO0lBQzlCLE1BQU0sS0FBSyxHQUFHLElBQUksYUFBYSxDQUFDLElBQUksRUFBRSxLQUFLLEVBQUUsQ0FBQyxDQUFDLENBQUM7SUFDaEQsTUFBTSxNQUFNLEdBQUcsWUFBWSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsQ0FBQztJQUN6QyxNQUFNLEdBQUcsR0FBRyxJQUFJLGFBQWEs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O1FBQzdDLElBQUksT0FBTyxHQUFTLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxTQUFTLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1FBRXhFLElBQUksSUFBSSxHQUF5QixFQUFFLENBQUM7UUFDcEMsS0FBSyxJQUFJLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxHQUFHLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRTtZQUMxQixJQUFJLEdBQUcsR0FBdUIsRUFBRSxDQUFDO1lBQ2pDLEtBQUssSUFBSSxDQUFDLEdBQUcsQ0FBQyxFQUFFLENBQUMsR0FBRyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7Z0JBQzFCLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDO2dCQUM3QixJQUFJLFFBQVEsR0FBcUIsRUFBQyxJQUFJLEVBQUUsTUFBTSxFQUFFLElBQUksRUFBRSxJQUFJLEVBQUUsUUFBUSxFQUFFLE1BQU0sRUFBQyxDQUFDO2dCQUM5RSxRQUFRLENBQUMsUUFBUSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsUUFBUSxFQUFFLFNBQVMsQ0FBQyxDQUFDO2dCQUM5RCxHQUFHLENBQUMsSUFBSSxDQUFDLFFBQVEsQ0FBQyxDQUFDO2dCQUNuQixPQUFPLEdBQUcsUUFBUSxDQUFDLE9BQU8sRUFBRSxDQUFDLENBQUMsQ0FBQzthQUNoQztZQUNELElBQUksQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7U0FDaEI7UUFFRCxPQUFPLElBQUksQ0FBQztJQUNkLENBQUM7O3dIQXpLVSwyQkFBMkI7NEhBQTNCLDJCQUEyQixjQURmLE1BQU07MkZBQ2xCLDJCQUEyQjtrQkFEdkMsVUFBVTttQkFBQyxFQUFDLFVBQVUsRUFBRSxNQUFNLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgKEMpIEdudWNvb3Agc29jLiBjb29wLlxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yXG4gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLFxuICogb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBBZmZlcm9cbiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uXG4gKlxuICovXG5cbmltcG9ydCB7XG4gIEFqZkNhbGVuZGFyRW50cnksXG4gIEFqZkNhbGVuZGFyUGFyYW1zLFxuICBBamZDYWxlbmRhclNlcnZpY2UsXG4gIEFqZkNhbGVuZGFyVmlldyxcbiAgQWpmQ2FsZW5kYXJWaWV3TW9kZSxcbn0gZnJvbSAnQGFqZi9jb3JlL2NhbGVuZGFyJztcbmltcG9ydCB7SW5qZWN0YWJsZX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge1xuICBhZGREYXlzLFxuICBhZGRXZWVrcyxcbiAgYWRkWWVhcnMsXG4gIGVuZE9mSVNPV2VlayxcbiAgZ2V0SVNPRGF5LFxuICBzZXRJU09EYXksXG4gIHN0YXJ0T2ZJU09XZWVrLFxuICBzdGFydE9mV2VlayxcbiAgc3ViV2Vla3MsXG59IGZyb20gJ2RhdGUtZm5zJztcblxuaW1wb3J0IHtFdGhpb3BpYW5EYXRlfSBmcm9tICcuL2V0aGlvcGlhbi1kYXRlJztcblxuZnVuY3Rpb24gZ2V0TW9udGhEYXlzKG1vbnRoOiBudW1iZXIsIHllYXI6IG51bWJlcik6IG51bWJlciB7XG4gIGlmIChtb250aCA8IDEyKSB7XG4gICAgcmV0dXJuIDMwO1xuICB9XG4gIHJldHVybiB5ZWFyICUgNCA9PT0gMyA/IDYgOiA1O1xufVxuXG5mdW5jdGlvbiBnZXRNb250aEJvdW5kcyhkYXRlOiBFdGhpb3BpYW5EYXRlKToge3N0YXJ0OiBFdGhpb3BpYW5EYXRlOyBlbmQ6IEV0aGlvcGlhbkRhdGV9IHtcbiAgY29uc3QgeWVhciA9IGRhdGUuZ2V0RnVsbFllYXIoKTtcbiAgY29uc3QgbW9udGggPSBkYXRlLmdldE1vbnRoKCk7XG4gIGNvbnN0IHN0YXJ0ID0gbmV3IEV0aGlvcGlhbkRhdGUoeWVhciwgbW9udGgsIDEpO1xuICBjb25zdCBlbmREYXkgPSBnZXRNb250aERheXMobW9udGgsIHllYXIpO1xuICBjb25zdCBlbmQgPSBuZXcgRXRoaW9waWFuRGF0ZSh5ZWFyLCBtb250aCwgZW5kRGF5KTtcbiAgcmV0dXJuIHtzdGFydCwgZW5kfTtcbn1cblxuQEluamVjdGFibGUoe3Byb3ZpZGVkSW46ICdyb290J30pXG5leHBvcnQgY2xhc3MgQWpmRXRoaW9waWFuQ2FsZW5kYXJTZXJ2aWNlIGV4dGVuZHMgQWpmQ2FsZW5kYXJTZXJ2aWNlIHtcbiAgb3ZlcnJpZGUgYnVpbGRWaWV3KHBhcmFtczogQWpmQ2FsZW5kYXJQYXJhbXMpOiBBamZDYWxlbmRhclZpZXcge1xuICAgIGNvbnN0IHt2aWV3TW9kZX0gPSBwYXJhbXM7XG4gICAgY29uc3Qgdmlld0RhdGUgPSBFdGhpb3BpYW5EYXRlLmdyZWdvcmlhblRvRXRoaW9waWFuKHBhcmFtcy52aWV3RGF0ZSk7XG4gICAgc3dpdGNoICh2aWV3TW9kZSkge1xuICAgICAgY2FzZSAnZGVjYWRlJzpcbiAgICAgICAgbGV0IGN1clllYXI6IG51bWJlciA9IHZpZXdEYXRlLmdldEZ1bGxZZWFyKCk7XG4gICAgICAgIGxldCBmaXJzdFllYXIgPSBjdXJZZWFyIC0gKGN1clllYXIgJSAxMCkgKyAxO1xuICAgICAgICBsZXQgbGFzdFllYXIgPSBmaXJzdFllYXIgKyAxMTtcbiAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICBoZWFkZXI6IGAke2ZpcnN0WWVhcn0gLSAke2xhc3RZZWFyfWAsXG4gICAgICAgICAgaGVhZGVyUm93OiBbXSxcbiAgICAgICAgICByb3dzOiB0aGlzLl9lY0RlY2FkZUNhbGVuZGFyUm93cyhwYXJhbXMpLFxuICAgICAgICB9O1xuICAgICAgY2FzZSAneWVhcic6XG4gICAgICAgIHJldHVybiB7XG4gICAgICAgICAgaGVhZGVyOiBgJHt2aWV3RGF0ZS5nZXRGdWxsWWVhcigpfWAsXG4gICAgICAgICAgaGVhZGVyUm93OiBbXSxcbiAgICAgICAgICByb3dzOiB0aGlzLl9lY1llYXJDYWxlbmRhclJvd3MocGFyYW1zKSxcbiAgICAgICAgfTtcbiAgICAgIGNhc2UgJ21vbnRoJzpcbiAgICAgICAgY29uc3QgdmlldyA9IHN1cGVyLmJ1aWxkVmlldyhwYXJhbXMpO1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIGhlYWRlcjogYCR7dmlld0RhdGUuZ2V0U2hvcnRNb250aE5hbWUoKX0gJHt2aWV3RGF0ZS5nZXRGdWxsWWVhcigpfWAsXG4gICAgICAgICAgaGVhZGVyUm93OiB0aGlzLl9lY01vbnRoSGVhZGVyUm93KHBhcmFtcyksXG4gICAgICAgICAgcm93czogdmlldy5yb3dzLFxuICAgICAgICB9O1xuICAgIH1cbiAgICByZXR1cm4gc3VwZXIuYnVpbGRWaWV3KHBhcmFtcyk7XG4gIH1cblxuICBvdmVycmlkZSBlbnRyeUxhYmVsKGVudHJ5OiBBamZDYWxlbmRhckVudHJ5KTogc3RyaW5nIHtcbiAgICBjb25zdCBlY0RhdGUgPSBFdGhpb3BpYW5EYXRlLmdyZWdvcmlhblRvRXRoaW9waWFuKGVudHJ5LmRhdGUpO1xuICAgIGlmIChlbnRyeS50eXBlID09PSAnZGF5Jykge1xuICAgICAgcmV0dXJuIGAke2VjRGF0ZS5nZXREYXRlKCl9YDtcbiAgICB9XG4gICAgaWYgKGVudHJ5LnR5cGUgPT09ICdtb250aCcpIHtcbiAgICAgIHJldHVybiBgJHtlY0RhdGUuZ2V0TW9udGhOYW1lKCl9YDtcbiAgICB9XG4gICAgcmV0dXJuIGAke2VjRGF0ZS5nZXRGdWxsWWVhcigpfWA7XG4gIH1cblxuICBvdmVycmlkZSBtb250aEJvdW5kcyhkYXRlOiBEYXRlLCBpc29Nb2RlOiBib29sZWFuKToge3N0YXJ0OiBEYXRlOyBlbmQ6IERhdGV9IHtcbiAgICBpZiAoIWlzb01vZGUpIHtcbiAgICAgIGNvbnN0IGVjRGF0ZSA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4oZGF0ZSk7XG4gICAgICBjb25zdCB7c3RhcnQsIGVuZH0gPSBnZXRNb250aEJvdW5kcyhlY0RhdGUpO1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgc3RhcnQ6IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4oc3RhcnQpLFxuICAgICAgICBlbmQ6IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4oZW5kKSxcbiAgICAgIH07XG4gICAgfSBlbHNlIHtcbiAgICAgIGxldCBpc29EYXkgPSBnZXRJU09EYXkoZGF0ZSk7XG4gICAgICBjb25zdCBlY0RhdGUgPSBFdGhpb3BpYW5EYXRlLmdyZWdvcmlhblRvRXRoaW9waWFuKGRhdGUpO1xuICAgICAgbGV0IHtzdGFydCwgZW5kfSA9IGdldE1vbnRoQm91bmRzKGVjRGF0ZSk7XG4gICAgICBpZiAoZWNEYXRlLmdldE1vbnRoKCkgPT09IDEyKSB7XG4gICAgICAgIHN0YXJ0ID0gRXRoaW9waWFuRGF0ZS5ncmVnb3JpYW5Ub0V0aGlvcGlhbihzdGFydE9mSVNPV2VlayhzdGFydC5nZXRHcmVnb3JpYW5EYXRlKCkpKTtcbiAgICAgICAgZW5kID0gRXRoaW9waWFuRGF0ZS5ncmVnb3JpYW5Ub0V0aGlvcGlhbihlbmRPZklTT1dlZWsoZW5kLmdldEdyZWdvcmlhbkRhdGUoKSkpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgZGF0ZSA9IGlzb0RheSA8IDQgPyBlbmRPZklTT1dlZWsoZGF0ZSkgOiBzdGFydE9mSVNPV2VlayhkYXRlKTtcbiAgICAgICAgY29uc3Qgc3RhcnRXZWVrRGF5ID0gc3RhcnQuZ2V0RGF5KCk7XG4gICAgICAgIGNvbnN0IGVuZFdlZWtEYXkgPSBlbmQuZ2V0RGF5KCk7XG4gICAgICAgIGlmIChzdGFydFdlZWtEYXkgPT0gMCB8fCBzdGFydFdlZWtEYXkgPiA0KSB7XG4gICAgICAgICAgc3RhcnQgPSBFdGhpb3BpYW5EYXRlLmdyZWdvcmlhblRvRXRoaW9waWFuKGFkZFdlZWtzKHN0YXJ0LmdldEdyZWdvcmlhbkRhdGUoKSwgMSkpO1xuICAgICAgICB9XG4gICAgICAgIGlmIChlbmRXZWVrRGF5ID4gMCAmJiBlbmRXZWVrRGF5IDwgNCkge1xuICAgICAgICAgIGVuZCA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4oc3ViV2Vla3MoZW5kLmdldEdyZWdvcmlhbkRhdGUoKSwgMSkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByZXR1cm4ge1xuICAgICAgICBzdGFydDogc3RhcnRPZklTT1dlZWsoc3RhcnQuZ2V0R3JlZ29yaWFuRGF0ZSgpKSxcbiAgICAgICAgZW5kOiBlbmRPZklTT1dlZWsoZW5kLmdldEdyZWdvcmlhbkRhdGUoKSksXG4gICAgICB9O1xuICAgIH1cbiAgfVxuXG4gIG92ZXJyaWRlIG5leHRWaWV3KHZpZXdEYXRlOiBEYXRlLCB2aWV3TW9kZTogQWpmQ2FsZW5kYXJWaWV3TW9kZSk6IERhdGUge1xuICAgIGlmICh2aWV3TW9kZSA9PT0gJ21vbnRoJykge1xuICAgICAgY29uc3QgZWNEYXRlID0gRXRoaW9waWFuRGF0ZS5ncmVnb3JpYW5Ub0V0aGlvcGlhbih2aWV3RGF0ZSk7XG4gICAgICBsZXQgeWVhciA9IGVjRGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgbGV0IG1vbnRoID0gZWNEYXRlLmdldE1vbnRoKCk7XG4gICAgICBpZiAobW9udGggPT09IDEyKSB7XG4gICAgICAgIG1vbnRoID0gMDtcbiAgICAgICAgeWVhciArPSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbW9udGggKz0gMTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBFdGhpb3BpYW5EYXRlLmV0aGlvcGlhblRvR3JlZ29yaWFuKG5ldyBFdGhpb3BpYW5EYXRlKHllYXIsIG1vbnRoLCAxKSk7XG4gICAgfVxuICAgIHJldHVybiBzdXBlci5uZXh0Vmlldyh2aWV3RGF0ZSwgdmlld01vZGUpO1xuICB9XG5cbiAgb3ZlcnJpZGUgcHJldmlvdXNWaWV3KHZpZXdEYXRlOiBEYXRlLCB2aWV3TW9kZTogQWpmQ2FsZW5kYXJWaWV3TW9kZSk6IERhdGUge1xuICAgIGlmICh2aWV3TW9kZSA9PT0gJ21vbnRoJykge1xuICAgICAgY29uc3QgZWNEYXRlID0gRXRoaW9waWFuRGF0ZS5ncmVnb3JpYW5Ub0V0aGlvcGlhbih2aWV3RGF0ZSk7XG4gICAgICBsZXQgeWVhciA9IGVjRGF0ZS5nZXRGdWxsWWVhcigpO1xuICAgICAgbGV0IG1vbnRoID0gZWNEYXRlLmdldE1vbnRoKCk7XG4gICAgICBpZiAobW9udGggPT09IDApIHtcbiAgICAgICAgbW9udGggPSAxMjtcbiAgICAgICAgeWVhciAtPSAxO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgbW9udGggLT0gMTtcbiAgICAgIH1cbiAgICAgIHJldHVybiBFdGhpb3BpYW5EYXRlLmV0aGlvcGlhblRvR3JlZ29yaWFuKG5ldyBFdGhpb3BpYW5EYXRlKHllYXIsIG1vbnRoLCAxKSk7XG4gICAgfVxuICAgIHJldHVybiBzdXBlci5wcmV2aW91c1ZpZXcodmlld0RhdGUsIHZpZXdNb2RlKTtcbiAgfVxuXG4gIHByaXZhdGUgX2VjTW9udGhIZWFkZXJSb3cocGFyYW1zOiBBamZDYWxlbmRhclBhcmFtcyk6IHN0cmluZ1tdIHtcbiAgICBjb25zdCB7aXNvTW9kZSwgdmlld0RhdGV9ID0gcGFyYW1zO1xuICAgIGxldCBjdXJEYXRlOiBEYXRlO1xuICAgIGlmIChpc29Nb2RlKSB7XG4gICAgICBjdXJEYXRlID0gc2V0SVNPRGF5KHN0YXJ0T2ZXZWVrKHZpZXdEYXRlKSwgMSk7XG4gICAgfSBlbHNlIHtcbiAgICAgIGN1ckRhdGUgPSBzdGFydE9mV2Vlayh2aWV3RGF0ZSk7XG4gICAgfVxuICAgIGxldCB3ZWVrRGF5TmFtZXM6IHN0cmluZ1tdID0gW107XG4gICAgZm9yIChsZXQgaSA9IDA7IGkgPCA3OyBpKyspIHtcbiAgICAgIGNvbnN0IGVjRGF0ZSA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4oY3VyRGF0ZSk7XG4gICAgICB3ZWVrRGF5TmFtZXMucHVzaChlY0RhdGUuZ2V0RGF5T2ZXZWVrKCkpO1xuICAgICAgY3VyRGF0ZSA9IGFkZERheXMoY3VyRGF0ZSwgMSk7XG4gICAgfVxuICAgIHJldHVybiB3ZWVrRGF5TmFtZXM7XG4gIH1cblxuICBwcml2YXRlIF9lY1llYXJDYWxlbmRhclJvd3MocGFyYW1zOiBBamZDYWxlbmRhclBhcmFtcyk6IEFqZkNhbGVuZGFyRW50cnlbXVtdIHtcbiAgICBjb25zdCB7dmlld0RhdGUsIHNlbGVjdGlvbn0gPSBwYXJhbXM7XG4gICAgY29uc3QgeWVhciA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4odmlld0RhdGUpLmdldEZ1bGxZZWFyKCk7XG4gICAgbGV0IGN1ckRhdGU6IEV0aGlvcGlhbkRhdGU7XG5cbiAgICBsZXQgcm93czogQWpmQ2FsZW5kYXJFbnRyeVtdW10gPSBbXTtcbiAgICBmb3IgKGxldCBpID0gMDsgaSA8PSA0OyBpKyspIHtcbiAgICAgIGxldCByb3c6IEFqZkNhbGVuZGFyRW50cnlbXSA9IFtdO1xuICAgICAgZm9yIChsZXQgaiA9IDA7IGogPCAzOyBqKyspIHtcbiAgICAgICAgY29uc3QgY3VyTW9udGggPSBpICogMyArIGo7XG4gICAgICAgIGlmIChjdXJNb250aCA8IDEzKSB7XG4gICAgICAgICAgY3VyRGF0ZSA9IG5ldyBFdGhpb3BpYW5EYXRlKHllYXIsIGN1ck1vbnRoLCAxKTtcbiAgICAgICAgICBsZXQgZGF0ZSA9IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4oY3VyRGF0ZSk7XG4gICAgICAgICAgbGV0IG5ld0VudHJ5OiBBamZDYWxlbmRhckVudHJ5ID0ge3R5cGU6ICdtb250aCcsIGRhdGUsIHNlbGVjdGVkOiAnbm9uZSd9O1xuICAgICAgICAgIG5ld0VudHJ5LnNlbGVjdGVkID0gdGhpcy5pc0VudHJ5U2VsZWN0ZWQobmV3RW50cnksIHNlbGVjdGlvbik7XG4gICAgICAgICAgcm93LnB1c2gobmV3RW50cnkpO1xuICAgICAgICB9XG4gICAgICB9XG4gICAgICByb3dzLnB1c2gocm93KTtcbiAgICB9XG5cbiAgICByZXR1cm4gcm93cztcbiAgfVxuXG4gIHByaXZhdGUgX2VjRGVjYWRlQ2FsZW5kYXJSb3dzKHBhcmFtczogQWpmQ2FsZW5kYXJQYXJhbXMpOiBBamZDYWxlbmRhckVudHJ5W11bXSB7XG4gICAgY29uc3Qge3ZpZXdEYXRlLCBzZWxlY3Rpb259ID0gcGFyYW1zO1xuICAgIGNvbnN0IGVjRGF0ZSA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4odmlld0RhdGUpO1xuICAgIGxldCBjdXJZZWFyOiBudW1iZXIgPSBlY0RhdGUuZ2V0RnVsbFllYXIoKTtcbiAgICBsZXQgZmlyc3RZZWFyID0gY3VyWWVhciAtIChjdXJZZWFyICUgMTApICsgMTtcbiAgICBsZXQgY3VyRGF0ZTogRGF0ZSA9IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4oZmlyc3RZZWFyLCAwLCAxKTtcblxuICAgIGxldCByb3dzOiBBamZDYWxlbmRhckVudHJ5W11bXSA9IFtdO1xuICAgIGZvciAobGV0IGkgPSAwOyBpIDwgNDsgaSsrKSB7XG4gICAgICBsZXQgcm93OiBBamZDYWxlbmRhckVudHJ5W10gPSBbXTtcbiAgICAgIGZvciAobGV0IGogPSAwOyBqIDwgMzsgaisrKSB7XG4gICAgICAgIGxldCBkYXRlID0gbmV3IERhdGUoY3VyRGF0ZSk7XG4gICAgICAgIGxldCBuZXdFbnRyeTogQWpmQ2FsZW5kYXJFbnRyeSA9IHt0eXBlOiAneWVhcicsIGRhdGU6IGRhdGUsIHNlbGVjdGVkOiAnbm9uZSd9O1xuICAgICAgICBuZXdFbnRyeS5zZWxlY3RlZCA9IHRoaXMuaXNFbnRyeVNlbGVjdGVkKG5ld0VudHJ5LCBzZWxlY3Rpb24pO1xuICAgICAgICByb3cucHVzaChuZXdFbnRyeSk7XG4gICAgICAgIGN1ckRhdGUgPSBhZGRZZWFycyhjdXJEYXRlLCAxKTtcbiAgICAgIH1cbiAgICAgIHJvd3MucHVzaChyb3cpO1xuICAgIH1cblxuICAgIHJldHVybiByb3dzO1xuICB9XG59XG4iXX0=
|
|
@@ -151,4 +151,4 @@ export function toEC(dateArray) {
|
|
|
151
151
|
}
|
|
152
152
|
return gregorianToEthiopic(d, m, y);
|
|
153
153
|
}
|
|
154
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vc3JjL2NhbGVuZGFycy9ldGhpb3BpYW4vY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUVILE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUFXO0FBQ3ZELE1BQU0sNEJBQTRCLEdBQUcsT0FBTyxDQUFDLENBQUMsU0FBUztBQUN2RCxNQUFNLHlCQUF5QixHQUFHLE9BQU8sQ0FBQztBQUMxQyxNQUFNLHFCQUFxQixHQUFHLENBQUMsQ0FBQyxDQUFDO0FBRWpDLElBQUksVUFBVSxHQUFHLHFCQUFxQixDQUFDO0FBRXZDLE1BQU0sMEJBQTBCLEdBQUcsRUFBRSxDQUFDO0FBQ3RDLE1BQU0sU0FBUyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFFdEUsU0FBUyxRQUFRLENBQUMsQ0FBUyxFQUFFLENBQVM7SUFDcEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUMzQixDQUFDO0FBRUQsU0FBUyxlQUFlLENBQUMsSUFBWTtJQUNuQyxPQUFPLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUNsRSxDQUFDO0FBRUQsU0FBUyxNQUFNLENBQUMsR0FBVztJQUN6QixJQUFJLEdBQUcsS0FBSywwQkFBMEIsSUFBSSxHQUFHLEtBQUssNEJBQTRCLEVBQUU7UUFDOUUsVUFB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QUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7S0FDM0M7SUFDRCxPQUFPLG9CQUFvQixDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFFRCw2QkFBNkI7QUFDN0IsTUFBTSxVQUFVLElBQUksQ0FBQyxTQUFtQztJQUN0RCxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUM7SUFDNUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ3RDLE1BQU0sSUFBSSxLQUFLLENBQUMsd0JBQXdCLENBQUMsQ0FBQztLQUMzQztJQUNELE9BQU8sbUJBQW1CLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUN0QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IChDKSBHbnVjb29wIHNvYy4gY29vcC5cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vclxuICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzXG4gKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSxcbiAqIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZSBHTlUgQWZmZXJvXG4gKiBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKiBJZiBub3QsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvLlxuICpcbiAqL1xuXG5jb25zdCBKRF9FUE9DSF9PRkZTRVRfQU1FVEVfQUxFTSA9IC0yODUwMTk7IC8vICAgICAg4YuTL+GLk1xuY29uc3QgSkRfRVBPQ0hfT0ZGU0VUX0FNRVRFX01JSFJFVCA9IDE3MjM4NTY7IC8vICAgIOGLky/hiJ1cbmNvbnN0IEpEX0VQT0NIX09GRlNFVF9HUkVHT1JJQU4gPSAxNzIxNDI2O1xuY29uc3QgSkRfRVBPQ0hfT0ZGU0VUX1VOU0VUID0gLTE7XG5cbmxldCBKRE5fT0ZGU0VUID0gSkRfRVBPQ0hfT0ZGU0VUX1VOU0VUO1xuXG5jb25zdCBHUkVHT1JJQU5fTlVNQkVSX09GX01PTlRIUyA9IDEyO1xuY29uc3QgbW9udGhEYXlzID0gWzAsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdO1xuXG5mdW5jdGlvbiBxdW90aWVudChpOiBudW1iZXIsIGo6IG51bWJlcik6IG51bWJlciB7XG4gIHJldHVybiBNYXRoLmZsb29yKGkgLyBqKTtcbn1cblxuZnVuY3Rpb24gaXNHcmVnb3JpYW5MZWFwKHllYXI6IG51bWJlcik6IGJvb2xlYW4ge1xuICByZXR1cm4geWVhciAlIDQgPT09IDAgJiYgKHllYXIgJSAxMDAgIT09IDAgfHwgeWVhciAlIDQwMCA9PT0gMCk7XG59XG5cbmZ1bmN0aW9uIHNldEVyYShlcmE6IG51bWJlcik6IHZvaWQge1xuICBpZiAoZXJhID09PSBKRF9FUE9DSF9PRkZTRVRfQU1FVEVfQUxFTSB8fCBlcmEgPT09IEpEX0VQT0NIX09GRlNFVF9BTUVURV9NSUhSRVQpIHtcbiAgICBKRE5fT0ZGU0VUID0gZXJhO1xuICB9IGVsc2Uge1xuICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBFcmE6ICR7ZXJhfWApO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzRXJhU2V0KCk6IGJvb2xlYW4ge1xuICByZXR1cm4gSkRfRVBPQ0hfT0ZGU0VUX1VOU0VUICE9PSBKRE5fT0ZGU0VUO1xufVxuXG5mdW5jdGlvbiB1bnNldEVyYSgpOiB2b2lkIHtcbiAgSkROX09GRlNFVCA9IEpEX0VQT0NIX09GRlNFVF9VTlNFVDtcbn1cblxuZnVuY3Rpb24gZ3Vlc3NFcmFGcm9tSkROKGpkbjogbnVtYmVyKSB7XG4gIHJldHVybiBqZG4gPj0gSkRfRVBPQ0hfT0ZGU0VUX0FNRVRFX01JSFJFVCArIDM2NVxuICAgID8gSkRfRVBPQ0hfT0ZGU0VUX0FNRVRFX01JSFJFVFxuICAgIDogSkRfRVBPQ0hfT0ZGU0VUX0FNRVRFX0FMRU07XG59XG5cbmZ1bmN0aW9uIGV0aGlvcGljVG9KRE4oZGF5OiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIHllYXI6IG51bWJlcikge1xuICBjb25zdCBFUkEgPSBpc0VyYVNldCgpID8gSkROX09GRlNFVCA6IEpEX0VQT0NIX09GRlNFVF9BTUVURV9NSUhSRVQ7XG4gIGNvbnN0IGpkbiA9IEVSQSArIDM2NSArIDM2NSAqICh5ZWFyIC0gMSkgKyBxdW90aWVudCh5ZWFyLCA0KSArIDMwICogbW9udGggKyBkYXkgLSAzMTtcblxuICByZXR1cm4gamRuO1xufVxuXG5mdW5jdGlvbiBqZG5Ub0V0aGlvcGljKGpkbjogbnVtYmVyKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgRVJBID0gaXNFcmFTZXQoKSA/IEpETl9PRkZTRVQgOiBndWVzc0VyYUZyb21KRE4oamRuKTtcbiAgY29uc3QgciA9IChqZG4gLSBFUkEpICUgMTQ2MTtcbiAgY29uc3QgbiA9IChyICUgMzY1KSArIDM2NSAqIHF1b3RpZW50KHIsIDE0NjApO1xuICBjb25zdCB5ZWFyID0gNCAqIHF1b3RpZW50KGpkbiAtIEVSQSwgMTQ2MSkgKyBxdW90aWVudChyLCAzNjUpIC0gcXVvdGllbnQociwgMTQ2MCk7XG4gIGNvbnN0IG1vbnRoID0gcXVvdGllbnQobiwgMzApICsgMTtcbiAgY29uc3QgZGF5ID0gKG4gJSAzMCkgKyAxO1xuXG4gIHJldHVybiBbeWVhciwgbW9udGgsIGRheV07XG59XG5cbmZ1bmN0aW9uIGdyZWdvcmlhblRvSkROKGRheTogbnVtYmVyLCBtb250aDogbnVtYmVyLCB5ZWFyOiBudW1iZXIpOiBudW1iZXIge1xuICBjb25zdCBzID1cbiAgICBxdW90aWVudCh5ZWFyLCA0KSAtXG4gICAgcXVvdGllbnQoeWVhciAtIDEsIDQpIC1cbiAgICBxdW90aWVudCh5ZWFyLCAxMDApICtcbiAgICBxdW90aWVudCh5ZWFyIC0gMSwgMTAwKSArXG4gICAgcXVvdGllbnQoeWVhciwgNDAwKSAtXG4gICAgcXVvdGllbnQoeWVhciAtIDEsIDQwMCk7XG5cbiAgY29uc3QgdCA9IHF1b3RpZW50KDE0IC0gbW9udGgsIDEyKTtcblxuICBjb25zdCBuID1cbiAgICAzMSAqIHQgKiAobW9udGggLSAxKSArXG4gICAgKDEgLSB0KSAqICg1OSArIHMgKyAzMCAqIChtb250aCAtIDMpICsgcXVvdGllbnQoMyAqIG1vbnRoIC0gNywgNSkpICtcbiAgICBkYXkgLVxuICAgIDE7XG5cbiAgY29uc3QgaiA9XG4gICAgSkRfRVBPQ0hfT0ZGU0VUX0dSRUdPUklBTiArXG4gICAgMzY1ICogKHllYXIgLSAxKSArXG4gICAgcXVvdGllbnQoeWVhciAtIDEsIDQpIC1cbiAgICBxdW90aWVudCh5ZWFyIC0gMSwgMTAwKSArXG4gICAgcXVvdGllbnQoeWVhciAtIDEsIDQwMCkgK1xuICAgIG47XG5cbiAgcmV0dXJuIGo7XG59XG5cbmZ1bmN0aW9uIGpkblRvR3JlZ29yaWFuKGpkbjogbnVtYmVyKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgcjIwMDAgPSAoamRuIC0gSkRfRVBPQ0hfT0ZGU0VUX0dSRUdPUklBTikgJSA3MzA0ODU7XG4gIGNvbnN0IHI0MDAgPSAoamRuIC0gSkRfRVBPQ0hfT0ZGU0VUX0dSRUdPUklBTikgJSAxNDYwOTc7XG4gIGNvbnN0IHIxMDAgPSByNDAwICUgMzY1MjQ7XG4gIGNvbnN0IHI0ID0gcjEwMCAlIDE0NjE7XG4gIGxldCBuID0gKHI0ICUgMzY1KSArIDM2NSAqIHF1b3RpZW50KHI0LCAxNDYwKTtcbiAgY29uc3QgcyA9IHF1b3RpZW50KHI0LCAxMDk1KTtcbiAgY29uc3QgYXByaW1lID1cbiAgICA0MDAgKiBxdW90aWVudChqZG4gLSBKRF9FUE9DSF9PRkZTRVRfR1JFR09SSUFOLCAxNDYwOTcpICtcbiAgICAxMDAgKiBxdW90aWVudChyNDAwLCAzNjUyNCkgK1xuICAgIDQgKiBxdW90aWVudChyMTAwLCAxNDYxKSArXG4gICAgcXVvdGllbnQocjQsIDM2NSkgLVxuICAgIHF1b3RpZW50KHI0LCAxNDYwKSAtXG4gICAgcXVvdGllbnQocjIwMDAsIDczMDQ4NCk7XG4gIGNvbnN0IHllYXIgPSBhcHJpbWUgKyAxO1xuICBjb25zdCB0ID0gcXVvdGllbnQoMzY0ICsgcyAtIG4sIDMwNik7XG4gIGxldCBtb250aCA9IHQgKiAocXVvdGllbnQobiwgMzEpICsgMSkgKyAoMSAtIHQpICogKHF1b3RpZW50KDUgKiAobiAtIHMpICsgMTMsIDE1MykgKyAxKTtcbiAgbiArPSAxIC0gcXVvdGllbnQocjIwMDAsIDczMDQ4NCk7XG4gIGxldCBkYXkgPSBuO1xuXG4gIGlmIChyMTAwID09PSAwICYmIG4gPT09IDAgJiYgcjQwMCAhPT0gMCkge1xuICAgIG1vbnRoID0gMTI7XG4gICAgZGF5ID0gMzE7XG4gIH0gZWxzZSB7XG4gICAgbW9udGhEYXlzWzJdID0gaXNHcmVnb3JpYW5MZWFwKHllYXIpID8gMjkgOiAyODtcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8PSBHUkVHT1JJQU5fTlVNQkVSX09GX01PTlRIUzsgaSArPSAxKSB7XG4gICAgICBpZiAobiA8PSBtb250aERheXNbaV0pIHtcbiAgICAgICAgZGF5ID0gbjtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBuIC09IG1vbnRoRGF5c1tpXTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIFt5ZWFyLCBtb250aCwgZGF5XTtcbn1cblxuZnVuY3Rpb24gZ3JlZ29yaWFuVG9FdGhpb3BpYyhkYXk6IG51bWJlciwgbW9udGg6IG51bWJlciwgeWVhcjogbnVtYmVyKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgamRuID0gZ3JlZ29yaWFuVG9KRE4oZGF5LCBtb250aCwgeWVhcik7XG4gIHJldHVybiBqZG5Ub0V0aGlvcGljKGpkbik7XG59XG5cbmZ1bmN0aW9uIGV0aGlvaXBpY1RvR3JlZyhkYXk6IG51bWJlciwgbW9udGg6IG51bWJlciwgeWVhcjogbnVtYmVyKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgamRuID0gZXRoaW9waWNUb0pETihkYXksIG1vbnRoLCB5ZWFyKTtcbiAgcmV0dXJuIGpkblRvR3JlZ29yaWFuKGpkbik7XG59XG5cbmZ1bmN0aW9uIGV0aGlvaXBpY1RvR3JlZ29yaWFuKFxuICBkYXk6IG51bWJlcixcbiAgbW9udGg6IG51bWJlcixcbiAgeWVhcjogbnVtYmVyLFxuICBlcmE6IG51bWJlcixcbik6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyXSB7XG4gIHNldEVyYShlcmEpO1xuICBjb25zdCByZXN1bHQgPSBldGhpb2lwaWNUb0dyZWcoZGF5LCBtb250aCwgeWVhcik7XG4gIHVuc2V0RXJhKCk7XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbi8qKiBBUEkgKiAqL1xuXG4vKiogZXRoaW9waWFuIHRvIGdyZWdvcmlhbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvR0MoXG4gIGRhdGVBcnJheTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHwgW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl0sXG4pOiBbbnVtYmVyLCBudW1iZXIsIG51bWJlcl0ge1xuICBjb25zdCBbeSwgbSwgZF0gPSBkYXRlQXJyYXk7XG4gIGxldCBlcmEgPSBkYXRlQXJyYXkubGVuZ3RoID09PSA0ID8gZGF0ZUFycmF5WzNdIDogSkRfRVBPQ0hfT0ZGU0VUX0FNRVRFX01JSFJFVDtcbiAgaWYgKGQgPCAwIHx8IGQgPiAzMCB8fCBtIDwgMCB8fCBtID4gMTMpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgRXRoaW9waWFuIERhdGUnKTtcbiAgfVxuICByZXR1cm4gZXRoaW9pcGljVG9HcmVnb3JpYW4oZCwgbSwgeSwgZXJhKTtcbn1cblxuLyoqIGdyZWdvcmlhbiB0byBldGhpb3BpYW4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0VDKGRhdGVBcnJheTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgW3ksIG0sIGRdID0gZGF0ZUFycmF5O1xuICBpZiAoZCA8IDAgfHwgZCA+IDMxIHx8IG0gPCAwIHx8IG0gPiAxMikge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBHcmVnb3JpYW4gRGF0ZScpO1xuICB9XG4gIHJldHVybiBncmVnb3JpYW5Ub0V0aGlvcGljKGQsIG0sIHkpO1xufVxuIl19
|
|
154
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiY29udmVydGVyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vcHJvamVjdHMvY2FsZW5kYXJzL2V0aGlvcGlhbi9zcmMvY29udmVydGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7Ozs7Ozs7Ozs7Ozs7Ozs7OztHQW9CRztBQUVILE1BQU0sMEJBQTBCLEdBQUcsQ0FBQyxNQUFNLENBQUMsQ0FBQyxXQUFXO0FBQ3ZELE1BQU0sNEJBQTRCLEdBQUcsT0FBTyxDQUFDLENBQUMsU0FBUztBQUN2RCxNQUFNLHlCQUF5QixHQUFHLE9BQU8sQ0FBQztBQUMxQyxNQUFNLHFCQUFxQixHQUFHLENBQUMsQ0FBQyxDQUFDO0FBRWpDLElBQUksVUFBVSxHQUFHLHFCQUFxQixDQUFDO0FBRXZDLE1BQU0sMEJBQTBCLEdBQUcsRUFBRSxDQUFDO0FBQ3RDLE1BQU0sU0FBUyxHQUFHLENBQUMsQ0FBQyxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxFQUFFLEVBQUUsRUFBRSxDQUFDLENBQUM7QUFFdEUsU0FBUyxRQUFRLENBQUMsQ0FBUyxFQUFFLENBQVM7SUFDcEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQztBQUMzQixDQUFDO0FBRUQsU0FBUyxlQUFlLENBQUMsSUFBWTtJQUNuQyxPQUFPLElBQUksR0FBRyxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxHQUFHLEdBQUcsS0FBSyxDQUFDLElBQUksSUFBSSxHQUFHLEdBQUcsS0FBSyxDQUFDLENBQUMsQ0FBQztBQUNsRSxDQUFDO0FBRUQsU0FBUyxNQUFNLENBQUMsR0FBVztJQUN6QixJQUFJLEdBQUcsS0FBSywwQkFBMEIsSUFBSSxHQUFHLEtBQUssNEJBQTRCLEVBQUU7UUFDOUUs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LEdBQUcsRUFBRSxJQUFJLENBQUMsR0FBRyxDQUFDLElBQUksQ0FBQyxHQUFHLEVBQUUsRUFBRTtRQUN0QyxNQUFNLElBQUksS0FBSyxDQUFDLHdCQUF3QixDQUFDLENBQUM7S0FDM0M7SUFDRCxPQUFPLG9CQUFvQixDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsQ0FBQyxFQUFFLEdBQUcsQ0FBQyxDQUFDO0FBQzVDLENBQUM7QUFFRCw2QkFBNkI7QUFDN0IsTUFBTSxVQUFVLElBQUksQ0FBQyxTQUFtQztJQUN0RCxNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxTQUFTLENBQUM7SUFDNUIsSUFBSSxDQUFDLEdBQUcsQ0FBQyxJQUFJLENBQUMsR0FBRyxFQUFFLElBQUksQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLEdBQUcsRUFBRSxFQUFFO1FBQ3RDLE1BQU0sSUFBSSxLQUFLLENBQUMsd0JBQXdCLENBQUMsQ0FBQztLQUMzQztJQUNELE9BQU8sbUJBQW1CLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQztBQUN0QyxDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IChDKSBHbnVjb29wIHNvYy4gY29vcC5cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vclxuICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzXG4gKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSxcbiAqIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZSBHTlUgQWZmZXJvXG4gKiBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKiBJZiBub3QsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvLlxuICpcbiAqL1xuXG5jb25zdCBKRF9FUE9DSF9PRkZTRVRfQU1FVEVfQUxFTSA9IC0yODUwMTk7IC8vICAgICAg4YuTL+GLk1xuY29uc3QgSkRfRVBPQ0hfT0ZGU0VUX0FNRVRFX01JSFJFVCA9IDE3MjM4NTY7IC8vICAgIOGLky/hiJ1cbmNvbnN0IEpEX0VQT0NIX09GRlNFVF9HUkVHT1JJQU4gPSAxNzIxNDI2O1xuY29uc3QgSkRfRVBPQ0hfT0ZGU0VUX1VOU0VUID0gLTE7XG5cbmxldCBKRE5fT0ZGU0VUID0gSkRfRVBPQ0hfT0ZGU0VUX1VOU0VUO1xuXG5jb25zdCBHUkVHT1JJQU5fTlVNQkVSX09GX01PTlRIUyA9IDEyO1xuY29uc3QgbW9udGhEYXlzID0gWzAsIDMxLCAyOCwgMzEsIDMwLCAzMSwgMzAsIDMxLCAzMSwgMzAsIDMxLCAzMCwgMzFdO1xuXG5mdW5jdGlvbiBxdW90aWVudChpOiBudW1iZXIsIGo6IG51bWJlcik6IG51bWJlciB7XG4gIHJldHVybiBNYXRoLmZsb29yKGkgLyBqKTtcbn1cblxuZnVuY3Rpb24gaXNHcmVnb3JpYW5MZWFwKHllYXI6IG51bWJlcik6IGJvb2xlYW4ge1xuICByZXR1cm4geWVhciAlIDQgPT09IDAgJiYgKHllYXIgJSAxMDAgIT09IDAgfHwgeWVhciAlIDQwMCA9PT0gMCk7XG59XG5cbmZ1bmN0aW9uIHNldEVyYShlcmE6IG51bWJlcik6IHZvaWQge1xuICBpZiAoZXJhID09PSBKRF9FUE9DSF9PRkZTRVRfQU1FVEVfQUxFTSB8fCBlcmEgPT09IEpEX0VQT0NIX09GRlNFVF9BTUVURV9NSUhSRVQpIHtcbiAgICBKRE5fT0ZGU0VUID0gZXJhO1xuICB9IGVsc2Uge1xuICAgIHRocm93IG5ldyBFcnJvcihgVW5rbm93biBFcmE6ICR7ZXJhfWApO1xuICB9XG59XG5cbmZ1bmN0aW9uIGlzRXJhU2V0KCk6IGJvb2xlYW4ge1xuICByZXR1cm4gSkRfRVBPQ0hfT0ZGU0VUX1VOU0VUICE9PSBKRE5fT0ZGU0VUO1xufVxuXG5mdW5jdGlvbiB1bnNldEVyYSgpOiB2b2lkIHtcbiAgSkROX09GRlNFVCA9IEpEX0VQT0NIX09GRlNFVF9VTlNFVDtcbn1cblxuZnVuY3Rpb24gZ3Vlc3NFcmFGcm9tSkROKGpkbjogbnVtYmVyKSB7XG4gIHJldHVybiBqZG4gPj0gSkRfRVBPQ0hfT0ZGU0VUX0FNRVRFX01JSFJFVCArIDM2NVxuICAgID8gSkRfRVBPQ0hfT0ZGU0VUX0FNRVRFX01JSFJFVFxuICAgIDogSkRfRVBPQ0hfT0ZGU0VUX0FNRVRFX0FMRU07XG59XG5cbmZ1bmN0aW9uIGV0aGlvcGljVG9KRE4oZGF5OiBudW1iZXIsIG1vbnRoOiBudW1iZXIsIHllYXI6IG51bWJlcikge1xuICBjb25zdCBFUkEgPSBpc0VyYVNldCgpID8gSkROX09GRlNFVCA6IEpEX0VQT0NIX09GRlNFVF9BTUVURV9NSUhSRVQ7XG4gIGNvbnN0IGpkbiA9IEVSQSArIDM2NSArIDM2NSAqICh5ZWFyIC0gMSkgKyBxdW90aWVudCh5ZWFyLCA0KSArIDMwICogbW9udGggKyBkYXkgLSAzMTtcblxuICByZXR1cm4gamRuO1xufVxuXG5mdW5jdGlvbiBqZG5Ub0V0aGlvcGljKGpkbjogbnVtYmVyKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgRVJBID0gaXNFcmFTZXQoKSA/IEpETl9PRkZTRVQgOiBndWVzc0VyYUZyb21KRE4oamRuKTtcbiAgY29uc3QgciA9IChqZG4gLSBFUkEpICUgMTQ2MTtcbiAgY29uc3QgbiA9IChyICUgMzY1KSArIDM2NSAqIHF1b3RpZW50KHIsIDE0NjApO1xuICBjb25zdCB5ZWFyID0gNCAqIHF1b3RpZW50KGpkbiAtIEVSQSwgMTQ2MSkgKyBxdW90aWVudChyLCAzNjUpIC0gcXVvdGllbnQociwgMTQ2MCk7XG4gIGNvbnN0IG1vbnRoID0gcXVvdGllbnQobiwgMzApICsgMTtcbiAgY29uc3QgZGF5ID0gKG4gJSAzMCkgKyAxO1xuXG4gIHJldHVybiBbeWVhciwgbW9udGgsIGRheV07XG59XG5cbmZ1bmN0aW9uIGdyZWdvcmlhblRvSkROKGRheTogbnVtYmVyLCBtb250aDogbnVtYmVyLCB5ZWFyOiBudW1iZXIpOiBudW1iZXIge1xuICBjb25zdCBzID1cbiAgICBxdW90aWVudCh5ZWFyLCA0KSAtXG4gICAgcXVvdGllbnQoeWVhciAtIDEsIDQpIC1cbiAgICBxdW90aWVudCh5ZWFyLCAxMDApICtcbiAgICBxdW90aWVudCh5ZWFyIC0gMSwgMTAwKSArXG4gICAgcXVvdGllbnQoeWVhciwgNDAwKSAtXG4gICAgcXVvdGllbnQoeWVhciAtIDEsIDQwMCk7XG5cbiAgY29uc3QgdCA9IHF1b3RpZW50KDE0IC0gbW9udGgsIDEyKTtcblxuICBjb25zdCBuID1cbiAgICAzMSAqIHQgKiAobW9udGggLSAxKSArXG4gICAgKDEgLSB0KSAqICg1OSArIHMgKyAzMCAqIChtb250aCAtIDMpICsgcXVvdGllbnQoMyAqIG1vbnRoIC0gNywgNSkpICtcbiAgICBkYXkgLVxuICAgIDE7XG5cbiAgY29uc3QgaiA9XG4gICAgSkRfRVBPQ0hfT0ZGU0VUX0dSRUdPUklBTiArXG4gICAgMzY1ICogKHllYXIgLSAxKSArXG4gICAgcXVvdGllbnQoeWVhciAtIDEsIDQpIC1cbiAgICBxdW90aWVudCh5ZWFyIC0gMSwgMTAwKSArXG4gICAgcXVvdGllbnQoeWVhciAtIDEsIDQwMCkgK1xuICAgIG47XG5cbiAgcmV0dXJuIGo7XG59XG5cbmZ1bmN0aW9uIGpkblRvR3JlZ29yaWFuKGpkbjogbnVtYmVyKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgcjIwMDAgPSAoamRuIC0gSkRfRVBPQ0hfT0ZGU0VUX0dSRUdPUklBTikgJSA3MzA0ODU7XG4gIGNvbnN0IHI0MDAgPSAoamRuIC0gSkRfRVBPQ0hfT0ZGU0VUX0dSRUdPUklBTikgJSAxNDYwOTc7XG4gIGNvbnN0IHIxMDAgPSByNDAwICUgMzY1MjQ7XG4gIGNvbnN0IHI0ID0gcjEwMCAlIDE0NjE7XG4gIGxldCBuID0gKHI0ICUgMzY1KSArIDM2NSAqIHF1b3RpZW50KHI0LCAxNDYwKTtcbiAgY29uc3QgcyA9IHF1b3RpZW50KHI0LCAxMDk1KTtcbiAgY29uc3QgYXByaW1lID1cbiAgICA0MDAgKiBxdW90aWVudChqZG4gLSBKRF9FUE9DSF9PRkZTRVRfR1JFR09SSUFOLCAxNDYwOTcpICtcbiAgICAxMDAgKiBxdW90aWVudChyNDAwLCAzNjUyNCkgK1xuICAgIDQgKiBxdW90aWVudChyMTAwLCAxNDYxKSArXG4gICAgcXVvdGllbnQocjQsIDM2NSkgLVxuICAgIHF1b3RpZW50KHI0LCAxNDYwKSAtXG4gICAgcXVvdGllbnQocjIwMDAsIDczMDQ4NCk7XG4gIGNvbnN0IHllYXIgPSBhcHJpbWUgKyAxO1xuICBjb25zdCB0ID0gcXVvdGllbnQoMzY0ICsgcyAtIG4sIDMwNik7XG4gIGxldCBtb250aCA9IHQgKiAocXVvdGllbnQobiwgMzEpICsgMSkgKyAoMSAtIHQpICogKHF1b3RpZW50KDUgKiAobiAtIHMpICsgMTMsIDE1MykgKyAxKTtcbiAgbiArPSAxIC0gcXVvdGllbnQocjIwMDAsIDczMDQ4NCk7XG4gIGxldCBkYXkgPSBuO1xuXG4gIGlmIChyMTAwID09PSAwICYmIG4gPT09IDAgJiYgcjQwMCAhPT0gMCkge1xuICAgIG1vbnRoID0gMTI7XG4gICAgZGF5ID0gMzE7XG4gIH0gZWxzZSB7XG4gICAgbW9udGhEYXlzWzJdID0gaXNHcmVnb3JpYW5MZWFwKHllYXIpID8gMjkgOiAyODtcbiAgICBmb3IgKGxldCBpID0gMTsgaSA8PSBHUkVHT1JJQU5fTlVNQkVSX09GX01PTlRIUzsgaSArPSAxKSB7XG4gICAgICBpZiAobiA8PSBtb250aERheXNbaV0pIHtcbiAgICAgICAgZGF5ID0gbjtcbiAgICAgICAgYnJlYWs7XG4gICAgICB9XG4gICAgICBuIC09IG1vbnRoRGF5c1tpXTtcbiAgICB9XG4gIH1cbiAgcmV0dXJuIFt5ZWFyLCBtb250aCwgZGF5XTtcbn1cblxuZnVuY3Rpb24gZ3JlZ29yaWFuVG9FdGhpb3BpYyhkYXk6IG51bWJlciwgbW9udGg6IG51bWJlciwgeWVhcjogbnVtYmVyKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgamRuID0gZ3JlZ29yaWFuVG9KRE4oZGF5LCBtb250aCwgeWVhcik7XG4gIHJldHVybiBqZG5Ub0V0aGlvcGljKGpkbik7XG59XG5cbmZ1bmN0aW9uIGV0aGlvaXBpY1RvR3JlZyhkYXk6IG51bWJlciwgbW9udGg6IG51bWJlciwgeWVhcjogbnVtYmVyKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgamRuID0gZXRoaW9waWNUb0pETihkYXksIG1vbnRoLCB5ZWFyKTtcbiAgcmV0dXJuIGpkblRvR3JlZ29yaWFuKGpkbik7XG59XG5cbmZ1bmN0aW9uIGV0aGlvaXBpY1RvR3JlZ29yaWFuKFxuICBkYXk6IG51bWJlcixcbiAgbW9udGg6IG51bWJlcixcbiAgeWVhcjogbnVtYmVyLFxuICBlcmE6IG51bWJlcixcbik6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyXSB7XG4gIHNldEVyYShlcmEpO1xuICBjb25zdCByZXN1bHQgPSBldGhpb2lwaWNUb0dyZWcoZGF5LCBtb250aCwgeWVhcik7XG4gIHVuc2V0RXJhKCk7XG4gIHJldHVybiByZXN1bHQ7XG59XG5cbi8qKiBBUEkgKiAqL1xuXG4vKiogZXRoaW9waWFuIHRvIGdyZWdvcmlhbiAqL1xuZXhwb3J0IGZ1bmN0aW9uIHRvR0MoXG4gIGRhdGVBcnJheTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHwgW251bWJlciwgbnVtYmVyLCBudW1iZXIsIG51bWJlcl0sXG4pOiBbbnVtYmVyLCBudW1iZXIsIG51bWJlcl0ge1xuICBjb25zdCBbeSwgbSwgZF0gPSBkYXRlQXJyYXk7XG4gIGxldCBlcmEgPSBkYXRlQXJyYXkubGVuZ3RoID09PSA0ID8gZGF0ZUFycmF5WzNdIDogSkRfRVBPQ0hfT0ZGU0VUX0FNRVRFX01JSFJFVDtcbiAgaWYgKGQgPCAwIHx8IGQgPiAzMCB8fCBtIDwgMCB8fCBtID4gMTMpIHtcbiAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgRXRoaW9waWFuIERhdGUnKTtcbiAgfVxuICByZXR1cm4gZXRoaW9pcGljVG9HcmVnb3JpYW4oZCwgbSwgeSwgZXJhKTtcbn1cblxuLyoqIGdyZWdvcmlhbiB0byBldGhpb3BpYW4gKi9cbmV4cG9ydCBmdW5jdGlvbiB0b0VDKGRhdGVBcnJheTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdKTogW251bWJlciwgbnVtYmVyLCBudW1iZXJdIHtcbiAgY29uc3QgW3ksIG0sIGRdID0gZGF0ZUFycmF5O1xuICBpZiAoZCA8IDAgfHwgZCA+IDMxIHx8IG0gPCAwIHx8IG0gPiAxMikge1xuICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBHcmVnb3JpYW4gRGF0ZScpO1xuICB9XG4gIHJldHVybiBncmVnb3JpYW5Ub0V0aGlvcGljKGQsIG0sIHkpO1xufVxuIl19
|
|
@@ -35,13 +35,13 @@ export class AjfEthiopianDatePipe {
|
|
|
35
35
|
}
|
|
36
36
|
}
|
|
37
37
|
}
|
|
38
|
-
AjfEthiopianDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.
|
|
39
|
-
AjfEthiopianDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.
|
|
40
|
-
AjfEthiopianDatePipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.
|
|
41
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.
|
|
38
|
+
AjfEthiopianDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianDatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
39
|
+
AjfEthiopianDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianDatePipe, name: "ajfEthiopianDate" });
|
|
40
|
+
AjfEthiopianDatePipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianDatePipe });
|
|
41
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianDatePipe, decorators: [{
|
|
42
42
|
type: Injectable
|
|
43
43
|
}, {
|
|
44
44
|
type: Pipe,
|
|
45
45
|
args: [{ name: 'ajfEthiopianDate' }]
|
|
46
46
|
}] });
|
|
47
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
47
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXRoaW9waWFuLWRhdGUtcGlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NhbGVuZGFycy9ldGhpb3BpYW4vc3JjL2V0aGlvcGlhbi1kYXRlLXBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBRUgsT0FBTyxFQUFDLFVBQVUsRUFBRSxJQUFJLEVBQWdCLE1BQU0sZUFBZSxDQUFDO0FBQzlELE9BQU8sRUFBQyxhQUFhLEVBQUMsTUFBTSxrQkFBa0IsQ0FBQzs7QUFJL0MsTUFBTSxPQUFPLG9CQUFvQjtJQUMvQixTQUFTLENBQUMsS0FBVTtRQUNsQixJQUFJO1lBQ0YsTUFBTSxFQUFFLEdBQUcsYUFBYSxDQUFDLG9CQUFvQixDQUFDLEtBQUssQ0FBQyxDQUFDO1lBQ3JELE1BQU0sSUFBSSxHQUFHLElBQUksRUFBRSxDQUFDLE9BQU8sRUFBRSxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDMUMsTUFBTSxLQUFLLEdBQUcsSUFBSSxFQUFFLENBQUMsUUFBUSxFQUFFLEdBQUcsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7WUFDaEQsT0FBTyxHQUFHLElBQUksSUFBSSxLQUFLLElBQUksRUFBRSxDQUFDLFdBQVcsRUFBRSxFQUFFLENBQUM7U0FDL0M7UUFBQyxPQUFPLENBQUMsRUFBRTtZQUNWLE9BQU8sSUFBSSxDQUFDO1NBQ2I7SUFDSCxDQUFDOztpSEFWVSxvQkFBb0I7K0dBQXBCLG9CQUFvQjtxSEFBcEIsb0JBQW9COzJGQUFwQixvQkFBb0I7a0JBRmhDLFVBQVU7O2tCQUNWLElBQUk7bUJBQUMsRUFBQyxJQUFJLEVBQUUsa0JBQWtCLEVBQUMiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqIEBsaWNlbnNlXG4gKiBDb3B5cmlnaHQgKEMpIEdudWNvb3Agc29jLiBjb29wLlxuICpcbiAqIFRoaXMgZmlsZSBpcyBwYXJ0IG9mIHRoZSBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZnJlZSBzb2Z0d2FyZTogeW91IGNhbiByZWRpc3RyaWJ1dGUgaXQgYW5kL29yXG4gKiBtb2RpZnkgaXQgdW5kZXIgdGhlIHRlcm1zIG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgYXNcbiAqIHB1Ymxpc2hlZCBieSB0aGUgRnJlZSBTb2Z0d2FyZSBGb3VuZGF0aW9uLCBlaXRoZXIgdmVyc2lvbiAzIG9mIHRoZSBMaWNlbnNlLFxuICogb3IgKGF0IHlvdXIgb3B0aW9uKSBhbnkgbGF0ZXIgdmVyc2lvbi5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGRpc3RyaWJ1dGVkIGluIHRoZSBob3BlIHRoYXQgaXQgd2lsbCBiZSB1c2VmdWwsXG4gKiBidXQgV0lUSE9VVCBBTlkgV0FSUkFOVFk7IHdpdGhvdXQgZXZlbiB0aGUgaW1wbGllZCB3YXJyYW50eSBvZlxuICogTUVSQ0hBTlRBQklMSVRZIG9yIEZJVE5FU1MgRk9SIEEgUEFSVElDVUxBUiBQVVJQT1NFLiBTZWUgdGhlIEdOVSBBZmZlcm9cbiAqIEdlbmVyYWwgUHVibGljIExpY2Vuc2UgZm9yIG1vcmUgZGV0YWlscy5cbiAqXG4gKiBZb3Ugc2hvdWxkIGhhdmUgcmVjZWl2ZWQgYSBjb3B5IG9mIHRoZSBHTlUgQWZmZXJvIEdlbmVyYWwgUHVibGljIExpY2Vuc2VcbiAqIGFsb25nIHdpdGggQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqIElmIG5vdCwgc2VlIGh0dHA6Ly93d3cuZ251Lm9yZy9saWNlbnNlcy8uXG4gKlxuICovXG5cbmltcG9ydCB7SW5qZWN0YWJsZSwgUGlwZSwgUGlwZVRyYW5zZm9ybX0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQge0V0aGlvcGlhbkRhdGV9IGZyb20gJy4vZXRoaW9waWFuLWRhdGUnO1xuXG5ASW5qZWN0YWJsZSgpXG5AUGlwZSh7bmFtZTogJ2FqZkV0aGlvcGlhbkRhdGUnfSlcbmV4cG9ydCBjbGFzcyBBamZFdGhpb3BpYW5EYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuICB0cmFuc2Zvcm0odmFsdWU6IGFueSk6IHN0cmluZyB8IG51bGwge1xuICAgIHRyeSB7XG4gICAgICBjb25zdCBlZCA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4odmFsdWUpO1xuICAgICAgY29uc3QgZGF0ZSA9IGAwJHtlZC5nZXREYXRlKCl9YC5zbGljZSgtMik7XG4gICAgICBjb25zdCBtb250aCA9IGAwJHtlZC5nZXRNb250aCgpICsgMX1gLnNsaWNlKC0yKTtcbiAgICAgIHJldHVybiBgJHtkYXRlfS8ke21vbnRofS8ke2VkLmdldEZ1bGxZZWFyKCl9YDtcbiAgICB9IGNhdGNoIChlKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gIH1cbn1cbiJdfQ==
|
|
@@ -29,6 +29,10 @@ export class EthiopianDate {
|
|
|
29
29
|
* @param day A numeric value equal for the day of the month.
|
|
30
30
|
*/
|
|
31
31
|
constructor(val, month, day) {
|
|
32
|
+
this._year = 0;
|
|
33
|
+
this._month = 0;
|
|
34
|
+
this._date = 0;
|
|
35
|
+
this._gc = new Date();
|
|
32
36
|
if (val == null && month == null && day == null) {
|
|
33
37
|
const ahun = EthiopianDate.gregorianToEthiopian(new Date());
|
|
34
38
|
[this._year, this._month, this._date] = [ahun.getFullYear(), ahun.getMonth(), ahun.getDate()];
|
|
@@ -201,4 +205,4 @@ export class EthiopianDate {
|
|
|
201
205
|
throw new Error(`ParsingError: Can't parse ${dateString}`);
|
|
202
206
|
}
|
|
203
207
|
}
|
|
204
|
-
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXRoaW9waWFuLWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9zcmMvY2FsZW5kYXJzL2V0aGlvcGlhbi9ldGhpb3BpYW4tZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxPQUFPLEVBQUMsSUFBSSxFQUFFLElBQUksRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUN2QyxPQUFPLEVBQUMsWUFBWSxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUVyRSxNQUFNLE9BQU8sYUFBYTtJQU14Qjs7Ozs7T0FLRztJQUNILFlBQVksR0FBNEIsRUFBRSxLQUFjLEVBQUUsR0FBWTtRQUNwRSxJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFO1lBQy9DLE1BQU0sSUFBSSxHQUFHLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7WUFDNUQsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUM5RixJQUFJLENBQUMsR0FBRyxHQUFHLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NBQ3BGO2FBQU0sSUFBSSxHQUFHLElBQUksSUFBSSxJQUFJLEtBQUssSUFBSSxJQUFJLElBQUksR0FBRyxJQUFJLElBQUksSUFBSSxPQUFPLEdBQUcsS0FBSyxRQUFRLEVBQUU7WUFDakYsSUFBSSxPQUFPLEdB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Q0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxVQUFrQjtRQUM3QixJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2YsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckMsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN2QixNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUM7WUFDekIsT0FBTyxJQUFJLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUNqRjtRQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IChDKSBHbnVjb29wIHNvYy4gY29vcC5cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vclxuICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzXG4gKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSxcbiAqIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZSBHTlUgQWZmZXJvXG4gKiBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKiBJZiBub3QsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvLlxuICpcbiAqL1xuXG5pbXBvcnQge3RvRUMsIHRvR0N9IGZyb20gJy4vY29udmVydGVyJztcbmltcG9ydCB7TU9OVEhTX05BTUVTLCBTSE9SVF9NT05USFNfTkFNRVMsIFdFRUtfTkFNRVN9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgRXRoaW9waWFuRGF0ZSB7XG4gIHByaXZhdGUgX3llYXI6IG51bWJlcjtcbiAgcHJpdmF0ZSBfbW9udGg6IG51bWJlcjtcbiAgcHJpdmF0ZSBfZGF0ZTogbnVtYmVyO1xuICBwcml2YXRlIF9nYzogRGF0ZTtcblxuICAvKipcbiAgICogQHBhcmFtIHZhbCAtIEEgbnVtZXJpYyB5ZWFyIHZhbHVlIGlmIHRoZSBzZWNvbmQgYW5kIHRoaXJkIHBhcmFtZXRlcnMgYXIgcHJvdmlkZWQsXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEl0IHNob3VsZCBiZSBhIGRhdGUgc3RyaW5nIGlmIG5vdFxuICAgKiBAcGFyYW0gbW9udGggQSB6ZXJvLWJhc2VkIG51bWVyaWMgdmFsdWUgZm9yIHRoZSBtb250aCAoMCBmb3Ig4YiY4Yi14Yqo4Yio4YidLCAxMiBmb3Ig4Yyz4YyJ4Yic4YqVKVxuICAgKiBAcGFyYW0gZGF5IEEgbnVtZXJpYyB2YWx1ZSBlcXVhbCBmb3IgdGhlIGRheSBvZiB0aGUgbW9udGguXG4gICAqL1xuICBjb25zdHJ1Y3Rvcih2YWw/OiBEYXRlIHwgc3RyaW5nIHwgbnVtYmVyLCBtb250aD86IG51bWJlciwgZGF5PzogbnVtYmVyKSB7XG4gICAgaWYgKHZhbCA9PSBudWxsICYmIG1vbnRoID09IG51bGwgJiYgZGF5ID09IG51bGwpIHtcbiAgICAgIGNvbnN0IGFodW4gPSBFdGhpb3BpYW5EYXRlLmdyZWdvcmlhblRvRXRoaW9waWFuKG5ldyBEYXRlKCkpO1xuICAgICAgW3RoaXMuX3llYXIsIHRoaXMuX21vbnRoLCB0aGlzLl9kYXRlXSA9IFthaHVuLmdldEZ1bGxZZWFyKCksIGFodW4uZ2V0TW9udGgoKSwgYWh1bi5nZXREYXRlKCldO1xuICAgICAgdGhpcy5fZ2MgPSBFdGhpb3BpYW5EYXRlLmV0aGlvcGlhblRvR3JlZ29yaWFuKHRoaXMuX3llYXIsIHRoaXMuX21vbnRoLCB0aGlzLl9kYXRlKTtcbiAgICB9IGVsc2UgaWYgKHZhbCAhPSBudWxsICYmIG1vbnRoID09IG51bGwgJiYgZGF5ID09IG51bGwgJiYgdHlwZW9mIHZhbCAhPT0gJ251bWJlcicpIHtcbiAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb25zdCByZXN1bHQgPSBFdGhpb3BpYW5EYXRlLnBhcnNlKHZhbCk7XG4gICAgICAgIGlmIChyZXN1bHQgPT0gbnVsbCkge1xuICAgICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBBcmd1bWVudCBFeGNlcHRpb24nKTtcbiAgICAgICAgfVxuICAgICAgICBbdGhpcy5feWVhciwgdGhpcy5fbW9udGgsIHRoaXMuX2RhdGVdID0gW1xuICAgICAgICAgIHJlc3VsdC5nZXRGdWxsWWVhcigpLFxuICAgICAgICAgIHJlc3VsdC5nZXRNb250aCgpLFxuICAgICAgICAgIHJlc3VsdC5nZXREYXRlKCksXG4gICAgICAgIF07XG4gICAgICAgIHRoaXMuX2djID0gRXRoaW9waWFuRGF0ZS5ldGhpb3BpYW5Ub0dyZWdvcmlhbih0aGlzLl95ZWFyLCB0aGlzLl9tb250aCwgdGhpcy5fZGF0ZSk7XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWwgPT09ICdvYmplY3QnICYmIHZhbCBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gRXRoaW9waWFuRGF0ZS5ncmVnb3JpYW5Ub0V0aGlvcGlhbih2YWwpO1xuICAgICAgICBbdGhpcy5feWVhciwgdGhpcy5fbW9udGgsIHRoaXMuX2RhdGVdID0gW1xuICAgICAgICAgIHJlc3VsdC5nZXRGdWxsWWVhcigpLFxuICAgICAgICAgIHJlc3VsdC5nZXRNb250aCgpLFxuICAgICAgICAgIHJlc3VsdC5nZXREYXRlKCksXG4gICAgICAgIF07XG4gICAgICAgIHRoaXMuX2djID0gRXRoaW9waWFuRGF0ZS5ldGhpb3BpYW5Ub0dyZWdvcmlhbih0aGlzLl95ZWFyLCB0aGlzLl9tb250aCwgdGhpcy5fZGF0ZSk7XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgQXJndW1lbnQgRXhjZXB0aW9uJyk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh2YWwgIT0gbnVsbCAmJiBtb250aCAhPSBudWxsICYmIGRheSAhPSBudWxsICYmIHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICB0aGlzLl95ZWFyID0gdmFsO1xuICAgICAgdGhpcy5fbW9udGggPSBtb250aDtcbiAgICAgIHRoaXMuX2RhdGUgPSBkYXk7XG4gICAgICB0aGlzLl9nYyA9IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4odGhpcy5feWVhciwgdGhpcy5fbW9udGgsIHRoaXMuX2RhdGUpO1xuICAgIH1cbiAgfVxuXG4gIGdldERhdGUoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZGF0ZTtcbiAgfVxuXG4gIGdldERheSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9nYy5nZXREYXkoKTtcbiAgfVxuXG4gIGdldERheU9mV2VlaygpIHtcbiAgICBjb25zdCB3ZWVrRGF5ID0gdGhpcy5nZXRHQ1dlZWtEYXkoKTtcbiAgICByZXR1cm4gV0VFS19OQU1FU1t3ZWVrRGF5XTtcbiAgfVxuXG4gIGdldEZ1bGxZZWFyKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX3llYXI7XG4gIH1cblxuICBnZXRHcmVnb3JpYW5EYXRlKCk6IERhdGUge1xuICAgIHJldHVybiB0aGlzLl9nYztcbiAgfVxuXG4gIGdldEdDV2Vla0RheSgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9nYy5nZXREYXkoKTtcbiAgfVxuXG4gIGdldE1vbnRoKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX21vbnRoO1xuICB9XG5cbiAgZ2V0TW9udGhOYW1lKCk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9tb250aCA+PSAwICYmIHRoaXMuX21vbnRoIDwgTU9OVEhTX05BTUVTLmxlbmd0aCA/IE1PTlRIU19OQU1FU1t0aGlzLl9tb250aF0gOiBudWxsO1xuICB9XG5cbiAgZ2V0U2hvcnRNb250aE5hbWUoKTogc3RyaW5nIHwgbnVsbCB7XG4gICAgcmV0dXJuIHRoaXMuX21vbnRoID49IDAgJiYgdGhpcy5fbW9udGggPCBTSE9SVF9NT05USFNfTkFNRVMubGVuZ3RoXG4gICAgICA/IFNIT1JUX01PTlRIU19OQU1FU1t0aGlzLl9tb250aF1cbiAgICAgIDogbnVsbDtcbiAgfVxuXG4gIGdldEhvdXJzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICBnZXRNaW51dGVzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICBnZXRTZWNvbmRzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICBnZXRNaWxsaXNlY29uZHMoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gMDtcbiAgfVxuXG4gIHRvU3RyaW5nKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIGAke3RoaXMuX3llYXJ9LSR7dGhpcy5fbW9udGggKyAxfS0ke3RoaXMuX2RhdGV9YDtcbiAgfVxuXG4gIC8qKlxuICAgKiBDb252ZXJ0cyBhIEV0aGlvcGlhbiBkYXRlIHRvIEdyZWdvcmlhbiBhbmQgcmV0dXJucyBEYXRlIGluc3RhbmNlIHJlcHJlc2VudGluZyBHcmVnb3JpYW4gRGF0ZS5cbiAgICpcbiAgICogQHBhcmFtIHZhbCAtIEEgbnVtZXJpYyB5ZWFyIHZhbHVlIGlmIHRoZSBzZWNvbmQgYW5kIHRoaXJkIHBhcmFtZXRlcnMgYXJlXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBwcm92aWRlZCwgaXQgc2hvdWxkIGJlIGEgZGF0ZSBzdHJpbmcgaWYgbm90XG4gICAqIEBwYXJhbSBtb250aCBBIHplcm8tYmFzZWQgbnVtZXJpYyB2YWx1ZSBmb3IgdGhlIG1vbnRoXG4gICAqICAgICAgICAgICAgICAgICAgICAgICAgICgwIGZvciDhiJjhiLXhiqjhiKjhiJ0sIDEyIGZvciDhjLPhjInhiJzhipUpXG4gICAqIEBwYXJhbSBkYXkgQSBudW1lcmljIHZhbHVlIGVxdWFsIGZvciB0aGUgZGF5IG9mIHRoZSBtb250aC5cbiAgICpcbiAgICogQGFwaSBwdWJsaWNcbiAgICovXG4gIHN0YXRpYyBldGhpb3BpYW5Ub0dyZWdvcmlhbihcbiAgICB2YWw/OiBFdGhpb3BpYW5EYXRlIHwgc3RyaW5nIHwgbnVtYmVyLFxuICAgIG1vbnRoPzogbnVtYmVyLFxuICAgIGRheT86IG51bWJlcixcbiAgKTogRGF0ZSB7XG4gICAgbGV0IGVjOiBbbnVtYmVyLCBudW1iZXIsIG51bWJlcl07XG4gICAgaWYgKHZhbCAhPSBudWxsICYmIG1vbnRoID09IG51bGwgJiYgZGF5ID09IG51bGwgJiYgdHlwZW9mIHZhbCAhPT0gJ251bWJlcicpIHtcbiAgICAgIGlmICh0eXBlb2YgdmFsID09PSAnc3RyaW5nJykge1xuICAgICAgICBjb25zdCBldERhdGUgPSBuZXcgRXRoaW9waWFuRGF0ZSh2YWwpO1xuICAgICAgICBlYyA9IFtldERhdGUuZ2V0RnVsbFllYXIoKSwgZXREYXRlLmdldE1vbnRoKCkgKyAxLCBldERhdGUuZ2V0RGF0ZSgpXTtcbiAgICAgIH0gZWxzZSBpZiAodHlwZW9mIHZhbCA9PT0gJ29iamVjdCcgJiYgdmFsIGluc3RhbmNlb2YgRXRoaW9waWFuRGF0ZSkge1xuICAgICAgICBjb25zdCBbeSwgbSwgZF0gPSBbdmFsLmdldEZ1bGxZZWFyKCksIHZhbC5nZXRNb250aCgpICsgMSwgdmFsLmdldERhdGUoKV07XG4gICAgICAgIGVjID0gW3ksIG0sIGRdO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIEFyZ3VtZW50IEV4Y2VwdGlvbicpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodmFsICE9IG51bGwgJiYgbW9udGggIT0gbnVsbCAmJiBkYXkgIT0gbnVsbCAmJiB0eXBlb2YgdmFsID09PSAnbnVtYmVyJykge1xuICAgICAgZWMgPSBbdmFsLCBtb250aCArIDEsIGRheV07XG4gICAgfSBlbHNlIHtcbiAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBBcmd1bWVudCBFeGNlcHRpb24nKTtcbiAgICB9XG4gICAgY29uc3QgZ2MgPSB0b0dDKGVjKTtcbiAgICByZXR1cm4gbmV3IERhdGUoZ2NbMF0sIGdjWzFdIC0gMSwgZ2NbMl0pO1xuICB9XG5cbiAgLyoqXG4gICAqXG4gICAqIEBwYXJhbSB2YWwgLSBBIG51bWVyaWMgeWVhciB2YWx1ZSBpZiB0aGUgc2Vjb25kIGFuZCB0aGlyZCBwYXJhbWV0ZXJzIGFyZVxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdmlkZWQsIGl0IHNob3VsZCBiZSBhIGRhdGUgc3RyaW5nIGlmIG5vdFxuICAgKiBAcGFyYW0gbW9udGggQSB6ZXJvLWJhc2VkIG51bWVyaWMgdmFsdWUgZm9yIHRoZSBtb250aFxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAoMCBmb3IgSmFudWFyeSwgMTEgZm9yIERlY2VtYmVyKVxuICAgKiBAcGFyYW0gZGF5IEEgbnVtZXJpYyB2YWx1ZSBlcXVhbCBmb3IgdGhlIGRheSBvZiB0aGUgbW9udGguXG4gICAqXG4gICAqIEBhcGkgcHVibGljXG4gICAqL1xuICBzdGF0aWMgZ3JlZ29yaWFuVG9FdGhpb3BpYW4oXG4gICAgdmFsPzogRGF0ZSB8IHN0cmluZyB8IG51bWJlcixcbiAgICBtb250aD86IG51bWJlcixcbiAgICBkYXk/OiBudW1iZXIsXG4gICk6IEV0aGlvcGlhbkRhdGUge1xuICAgIGxldCBnYzogW251bWJlciwgbnVtYmVyLCBudW1iZXJdO1xuICAgIGlmICh2YWwgIT0gbnVsbCAmJiBtb250aCA9PSBudWxsICYmIGRheSA9PSBudWxsICYmIHR5cGVvZiB2YWwgIT09ICdudW1iZXInKSB7XG4gICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgY29uc3QgZ2NEYXRlID0gbmV3IERhdGUodmFsKTtcbiAgICAgICAgZ2MgPSBbZ2NEYXRlLmdldEZ1bGxZZWFyKCksIGdjRGF0ZS5nZXRNb250aCgpICsgMSwgZ2NEYXRlLmdldERhdGUoKV07XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWwgPT09ICdvYmplY3QnICYmIHZhbCBpbnN0YW5jZW9mIERhdGUpIHtcbiAgICAgICAgY29uc3QgW3ksIG0sIGRdID0gW3ZhbC5nZXRGdWxsWWVhcigpLCB2YWwuZ2V0TW9udGgoKSArIDEsIHZhbC5nZXREYXRlKCldO1xuICAgICAgICBnYyA9IFt5LCBtLCBkXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBBcmd1bWVudCBFeGNlcHRpb24nKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHZhbCAhPSBudWxsICYmIG1vbnRoICE9IG51bGwgJiYgZGF5ICE9IG51bGwgJiYgdHlwZW9mIHZhbCA9PT0gJ251bWJlcicpIHtcbiAgICAgIGdjID0gW3ZhbCwgbW9udGggKyAxLCBkYXldO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgQXJndW1lbnQgRXhjZXB0aW9uJyk7XG4gICAgfVxuICAgIGNvbnN0IGVjID0gdG9FQyhnYyk7XG4gICAgcmV0dXJuIG5ldyBFdGhpb3BpYW5EYXRlKGVjWzBdLCBlY1sxXSAtIDEsIGVjWzJdKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBQYXJzZSBFdGhpb3BpYW4gZGF0ZSBmcm9tIHN0cmluZ1xuICAgKlxuICAgKiBAcGFyYW0gZGF0ZVN0cmluZyBhIGRhdGUgc3RyaW5nIHRvIHBhcnNlXG4gICAqIEBwYXJhbSBwYXR0ZXJuIGEgcGFyc2luZyBwYXR0ZXJuXG4gICAqXG4gICAqIEByZXR1cm5zIEV0aGlvcGlhbkRhdGVcbiAgICovXG4gIHN0YXRpYyBwYXJzZShkYXRlU3RyaW5nOiBzdHJpbmcpOiBFdGhpb3BpYW5EYXRlIHwgbnVsbCB7XG4gICAgaWYgKCFkYXRlU3RyaW5nKSB7XG4gICAgICByZXR1cm4gbnVsbDtcbiAgICB9XG4gICAgY29uc3QgcmVzdWx0ID0gZGF0ZVN0cmluZy5zcGxpdCgnLScpO1xuICAgIGlmIChyZXN1bHQubGVuZ3RoID09PSAzKSB7XG4gICAgICBjb25zdCBbeSwgbSwgZF0gPSByZXN1bHQ7XG4gICAgICByZXR1cm4gbmV3IEV0aGlvcGlhbkRhdGUocGFyc2VJbnQoeSwgMTApLCBwYXJzZUludChtLCAxMCkgLSAxLCBwYXJzZUludChkLCAxMCkpO1xuICAgIH1cbiAgICB0aHJvdyBuZXcgRXJyb3IoYFBhcnNpbmdFcnJvcjogQ2FuJ3QgcGFyc2UgJHtkYXRlU3RyaW5nfWApO1xuICB9XG59XG4iXX0=
|
|
208
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXRoaW9waWFuLWRhdGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jYWxlbmRhcnMvZXRoaW9waWFuL3NyYy9ldGhpb3BpYW4tZGF0ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxPQUFPLEVBQUMsSUFBSSxFQUFFLElBQUksRUFBQyxNQUFNLGFBQWEsQ0FBQztBQUN2QyxPQUFPLEVBQUMsWUFBWSxFQUFFLGtCQUFrQixFQUFFLFVBQVUsRUFBQyxNQUFNLFNBQVMsQ0FBQztBQUVyRSxNQUFNLE9BQU8sYUFBYTtJQU14Qjs7Ozs7T0FLRztJQUNILFlBQVksR0FBNEIsRUFBRSxLQUFjLEVBQUUsR0FBWTtRQVg5RCxVQUFLLEdBQVcsQ0FBQyxDQUFDO1FBQ2xCLFdBQU0sR0FBVyxDQUFDLENBQUM7UUFDbkIsVUFBSyxHQUFXLENBQUMsQ0FBQztRQUNsQixRQUFHLEdBQVMsSUFBSSxJQUFJLEVBQUUsQ0FBQztRQVM3QixJQUFJLEdBQUcsSUFBSSxJQUFJLElBQUksS0FBSyxJQUFJLElBQUksSUFBSSxHQUFHLElBQUksSUFBSSxFQUFFO1lBQy9DLE1BQU0sSUFBSSxHQUFHLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLElBQUksRUFBRSxDQUFDLENBQUM7WUFDNUQsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQUMsSUFBSSxDQUFDLFdBQVcsRUFBRSxFQUFFLElBQUksQ0FBQyxRQUFRLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxFQUFFLENBQUMsQ0FBQztZQUM5RixJQUFJLENBQUMsR0FBRyxHQUFHLGFBQWEsQ0FBQyxvQkFBb0IsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDO1NB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LENBQUMsQ0FBQztRQUNwQixPQUFPLElBQUksYUFBYSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLENBQUMsQ0FBQyxDQUFDLEdBQUcsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO0lBQ3BELENBQUM7SUFFRDs7Ozs7OztPQU9HO0lBQ0gsTUFBTSxDQUFDLEtBQUssQ0FBQyxVQUFrQjtRQUM3QixJQUFJLENBQUMsVUFBVSxFQUFFO1lBQ2YsT0FBTyxJQUFJLENBQUM7U0FDYjtRQUNELE1BQU0sTUFBTSxHQUFHLFVBQVUsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUM7UUFDckMsSUFBSSxNQUFNLENBQUMsTUFBTSxLQUFLLENBQUMsRUFBRTtZQUN2QixNQUFNLENBQUMsQ0FBQyxFQUFFLENBQUMsRUFBRSxDQUFDLENBQUMsR0FBRyxNQUFNLENBQUM7WUFDekIsT0FBTyxJQUFJLGFBQWEsQ0FBQyxRQUFRLENBQUMsQ0FBQyxFQUFFLEVBQUUsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLEdBQUcsQ0FBQyxFQUFFLFFBQVEsQ0FBQyxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQztTQUNqRjtRQUNELE1BQU0sSUFBSSxLQUFLLENBQUMsNkJBQTZCLFVBQVUsRUFBRSxDQUFDLENBQUM7SUFDN0QsQ0FBQztDQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBAbGljZW5zZVxuICogQ29weXJpZ2h0IChDKSBHbnVjb29wIHNvYy4gY29vcC5cbiAqXG4gKiBUaGlzIGZpbGUgaXMgcGFydCBvZiB0aGUgQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKS5cbiAqXG4gKiBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpIGlzIGZyZWUgc29mdHdhcmU6IHlvdSBjYW4gcmVkaXN0cmlidXRlIGl0IGFuZC9vclxuICogbW9kaWZ5IGl0IHVuZGVyIHRoZSB0ZXJtcyBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGFzXG4gKiBwdWJsaXNoZWQgYnkgdGhlIEZyZWUgU29mdHdhcmUgRm91bmRhdGlvbiwgZWl0aGVyIHZlcnNpb24gMyBvZiB0aGUgTGljZW5zZSxcbiAqIG9yIChhdCB5b3VyIG9wdGlvbikgYW55IGxhdGVyIHZlcnNpb24uXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBkaXN0cmlidXRlZCBpbiB0aGUgaG9wZSB0aGF0IGl0IHdpbGwgYmUgdXNlZnVsLFxuICogYnV0IFdJVEhPVVQgQU5ZIFdBUlJBTlRZOyB3aXRob3V0IGV2ZW4gdGhlIGltcGxpZWQgd2FycmFudHkgb2ZcbiAqIE1FUkNIQU5UQUJJTElUWSBvciBGSVRORVNTIEZPUiBBIFBBUlRJQ1VMQVIgUFVSUE9TRS4gU2VlIHRoZSBHTlUgQWZmZXJvXG4gKiBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlIGZvciBtb3JlIGRldGFpbHMuXG4gKlxuICogWW91IHNob3VsZCBoYXZlIHJlY2VpdmVkIGEgY29weSBvZiB0aGUgR05VIEFmZmVybyBHZW5lcmFsIFB1YmxpYyBMaWNlbnNlXG4gKiBhbG9uZyB3aXRoIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKiBJZiBub3QsIHNlZSBodHRwOi8vd3d3LmdudS5vcmcvbGljZW5zZXMvLlxuICpcbiAqL1xuXG5pbXBvcnQge3RvRUMsIHRvR0N9IGZyb20gJy4vY29udmVydGVyJztcbmltcG9ydCB7TU9OVEhTX05BTUVTLCBTSE9SVF9NT05USFNfTkFNRVMsIFdFRUtfTkFNRVN9IGZyb20gJy4vdXRpbHMnO1xuXG5leHBvcnQgY2xhc3MgRXRoaW9waWFuRGF0ZSB7XG4gIHByaXZhdGUgX3llYXI6IG51bWJlciA9IDA7XG4gIHByaXZhdGUgX21vbnRoOiBudW1iZXIgPSAwO1xuICBwcml2YXRlIF9kYXRlOiBudW1iZXIgPSAwO1xuICBwcml2YXRlIF9nYzogRGF0ZSA9IG5ldyBEYXRlKCk7XG5cbiAgLyoqXG4gICAqIEBwYXJhbSB2YWwgLSBBIG51bWVyaWMgeWVhciB2YWx1ZSBpZiB0aGUgc2Vjb25kIGFuZCB0aGlyZCBwYXJhbWV0ZXJzIGFyIHByb3ZpZGVkLFxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBJdCBzaG91bGQgYmUgYSBkYXRlIHN0cmluZyBpZiBub3RcbiAgICogQHBhcmFtIG1vbnRoIEEgemVyby1iYXNlZCBudW1lcmljIHZhbHVlIGZvciB0aGUgbW9udGggKDAgZm9yIOGImOGIteGKqOGIqOGInSwgMTIgZm9yIOGMs+GMieGInOGKlSlcbiAgICogQHBhcmFtIGRheSBBIG51bWVyaWMgdmFsdWUgZXF1YWwgZm9yIHRoZSBkYXkgb2YgdGhlIG1vbnRoLlxuICAgKi9cbiAgY29uc3RydWN0b3IodmFsPzogRGF0ZSB8IHN0cmluZyB8IG51bWJlciwgbW9udGg/OiBudW1iZXIsIGRheT86IG51bWJlcikge1xuICAgIGlmICh2YWwgPT0gbnVsbCAmJiBtb250aCA9PSBudWxsICYmIGRheSA9PSBudWxsKSB7XG4gICAgICBjb25zdCBhaHVuID0gRXRoaW9waWFuRGF0ZS5ncmVnb3JpYW5Ub0V0aGlvcGlhbihuZXcgRGF0ZSgpKTtcbiAgICAgIFt0aGlzLl95ZWFyLCB0aGlzLl9tb250aCwgdGhpcy5fZGF0ZV0gPSBbYWh1bi5nZXRGdWxsWWVhcigpLCBhaHVuLmdldE1vbnRoKCksIGFodW4uZ2V0RGF0ZSgpXTtcbiAgICAgIHRoaXMuX2djID0gRXRoaW9waWFuRGF0ZS5ldGhpb3BpYW5Ub0dyZWdvcmlhbih0aGlzLl95ZWFyLCB0aGlzLl9tb250aCwgdGhpcy5fZGF0ZSk7XG4gICAgfSBlbHNlIGlmICh2YWwgIT0gbnVsbCAmJiBtb250aCA9PSBudWxsICYmIGRheSA9PSBudWxsICYmIHR5cGVvZiB2YWwgIT09ICdudW1iZXInKSB7XG4gICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgY29uc3QgcmVzdWx0ID0gRXRoaW9waWFuRGF0ZS5wYXJzZSh2YWwpO1xuICAgICAgICBpZiAocmVzdWx0ID09IG51bGwpIHtcbiAgICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgQXJndW1lbnQgRXhjZXB0aW9uJyk7XG4gICAgICAgIH1cbiAgICAgICAgW3RoaXMuX3llYXIsIHRoaXMuX21vbnRoLCB0aGlzLl9kYXRlXSA9IFtcbiAgICAgICAgICByZXN1bHQuZ2V0RnVsbFllYXIoKSxcbiAgICAgICAgICByZXN1bHQuZ2V0TW9udGgoKSxcbiAgICAgICAgICByZXN1bHQuZ2V0RGF0ZSgpLFxuICAgICAgICBdO1xuICAgICAgICB0aGlzLl9nYyA9IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4odGhpcy5feWVhciwgdGhpcy5fbW9udGgsIHRoaXMuX2RhdGUpO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsID09PSAnb2JqZWN0JyAmJiB2YWwgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgICAgIGNvbnN0IHJlc3VsdCA9IEV0aGlvcGlhbkRhdGUuZ3JlZ29yaWFuVG9FdGhpb3BpYW4odmFsKTtcbiAgICAgICAgW3RoaXMuX3llYXIsIHRoaXMuX21vbnRoLCB0aGlzLl9kYXRlXSA9IFtcbiAgICAgICAgICByZXN1bHQuZ2V0RnVsbFllYXIoKSxcbiAgICAgICAgICByZXN1bHQuZ2V0TW9udGgoKSxcbiAgICAgICAgICByZXN1bHQuZ2V0RGF0ZSgpLFxuICAgICAgICBdO1xuICAgICAgICB0aGlzLl9nYyA9IEV0aGlvcGlhbkRhdGUuZXRoaW9waWFuVG9HcmVnb3JpYW4odGhpcy5feWVhciwgdGhpcy5fbW9udGgsIHRoaXMuX2RhdGUpO1xuICAgICAgfSBlbHNlIHtcbiAgICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIEFyZ3VtZW50IEV4Y2VwdGlvbicpO1xuICAgICAgfVxuICAgIH0gZWxzZSBpZiAodmFsICE9IG51bGwgJiYgbW9udGggIT0gbnVsbCAmJiBkYXkgIT0gbnVsbCAmJiB0eXBlb2YgdmFsID09PSAnbnVtYmVyJykge1xuICAgICAgdGhpcy5feWVhciA9IHZhbDtcbiAgICAgIHRoaXMuX21vbnRoID0gbW9udGg7XG4gICAgICB0aGlzLl9kYXRlID0gZGF5O1xuICAgICAgdGhpcy5fZ2MgPSBFdGhpb3BpYW5EYXRlLmV0aGlvcGlhblRvR3JlZ29yaWFuKHRoaXMuX3llYXIsIHRoaXMuX21vbnRoLCB0aGlzLl9kYXRlKTtcbiAgICB9XG4gIH1cblxuICBnZXREYXRlKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIHRoaXMuX2RhdGU7XG4gIH1cblxuICBnZXREYXkoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZ2MuZ2V0RGF5KCk7XG4gIH1cblxuICBnZXREYXlPZldlZWsoKSB7XG4gICAgY29uc3Qgd2Vla0RheSA9IHRoaXMuZ2V0R0NXZWVrRGF5KCk7XG4gICAgcmV0dXJuIFdFRUtfTkFNRVNbd2Vla0RheV07XG4gIH1cblxuICBnZXRGdWxsWWVhcigpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl95ZWFyO1xuICB9XG5cbiAgZ2V0R3JlZ29yaWFuRGF0ZSgpOiBEYXRlIHtcbiAgICByZXR1cm4gdGhpcy5fZ2M7XG4gIH1cblxuICBnZXRHQ1dlZWtEYXkoKTogbnVtYmVyIHtcbiAgICByZXR1cm4gdGhpcy5fZ2MuZ2V0RGF5KCk7XG4gIH1cblxuICBnZXRNb250aCgpOiBudW1iZXIge1xuICAgIHJldHVybiB0aGlzLl9tb250aDtcbiAgfVxuXG4gIGdldE1vbnRoTmFtZSgpOiBzdHJpbmcgfCBudWxsIHtcbiAgICByZXR1cm4gdGhpcy5fbW9udGggPj0gMCAmJiB0aGlzLl9tb250aCA8IE1PTlRIU19OQU1FUy5sZW5ndGggPyBNT05USFNfTkFNRVNbdGhpcy5fbW9udGhdIDogbnVsbDtcbiAgfVxuXG4gIGdldFNob3J0TW9udGhOYW1lKCk6IHN0cmluZyB8IG51bGwge1xuICAgIHJldHVybiB0aGlzLl9tb250aCA+PSAwICYmIHRoaXMuX21vbnRoIDwgU0hPUlRfTU9OVEhTX05BTUVTLmxlbmd0aFxuICAgICAgPyBTSE9SVF9NT05USFNfTkFNRVNbdGhpcy5fbW9udGhdXG4gICAgICA6IG51bGw7XG4gIH1cblxuICBnZXRIb3VycygpOiBudW1iZXIge1xuICAgIHJldHVybiAwO1xuICB9XG5cbiAgZ2V0TWludXRlcygpOiBudW1iZXIge1xuICAgIHJldHVybiAwO1xuICB9XG5cbiAgZ2V0U2Vjb25kcygpOiBudW1iZXIge1xuICAgIHJldHVybiAwO1xuICB9XG5cbiAgZ2V0TWlsbGlzZWNvbmRzKCk6IG51bWJlciB7XG4gICAgcmV0dXJuIDA7XG4gIH1cblxuICB0b1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiBgJHt0aGlzLl95ZWFyfS0ke3RoaXMuX21vbnRoICsgMX0tJHt0aGlzLl9kYXRlfWA7XG4gIH1cblxuICAvKipcbiAgICogQ29udmVydHMgYSBFdGhpb3BpYW4gZGF0ZSB0byBHcmVnb3JpYW4gYW5kIHJldHVybnMgRGF0ZSBpbnN0YW5jZSByZXByZXNlbnRpbmcgR3JlZ29yaWFuIERhdGUuXG4gICAqXG4gICAqIEBwYXJhbSB2YWwgLSBBIG51bWVyaWMgeWVhciB2YWx1ZSBpZiB0aGUgc2Vjb25kIGFuZCB0aGlyZCBwYXJhbWV0ZXJzIGFyZVxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgcHJvdmlkZWQsIGl0IHNob3VsZCBiZSBhIGRhdGUgc3RyaW5nIGlmIG5vdFxuICAgKiBAcGFyYW0gbW9udGggQSB6ZXJvLWJhc2VkIG51bWVyaWMgdmFsdWUgZm9yIHRoZSBtb250aFxuICAgKiAgICAgICAgICAgICAgICAgICAgICAgICAoMCBmb3Ig4YiY4Yi14Yqo4Yio4YidLCAxMiBmb3Ig4Yyz4YyJ4Yic4YqVKVxuICAgKiBAcGFyYW0gZGF5IEEgbnVtZXJpYyB2YWx1ZSBlcXVhbCBmb3IgdGhlIGRheSBvZiB0aGUgbW9udGguXG4gICAqXG4gICAqIEBhcGkgcHVibGljXG4gICAqL1xuICBzdGF0aWMgZXRoaW9waWFuVG9HcmVnb3JpYW4oXG4gICAgdmFsPzogRXRoaW9waWFuRGF0ZSB8IHN0cmluZyB8IG51bWJlcixcbiAgICBtb250aD86IG51bWJlcixcbiAgICBkYXk/OiBudW1iZXIsXG4gICk6IERhdGUge1xuICAgIGxldCBlYzogW251bWJlciwgbnVtYmVyLCBudW1iZXJdO1xuICAgIGlmICh2YWwgIT0gbnVsbCAmJiBtb250aCA9PSBudWxsICYmIGRheSA9PSBudWxsICYmIHR5cGVvZiB2YWwgIT09ICdudW1iZXInKSB7XG4gICAgICBpZiAodHlwZW9mIHZhbCA9PT0gJ3N0cmluZycpIHtcbiAgICAgICAgY29uc3QgZXREYXRlID0gbmV3IEV0aGlvcGlhbkRhdGUodmFsKTtcbiAgICAgICAgZWMgPSBbZXREYXRlLmdldEZ1bGxZZWFyKCksIGV0RGF0ZS5nZXRNb250aCgpICsgMSwgZXREYXRlLmdldERhdGUoKV07XG4gICAgICB9IGVsc2UgaWYgKHR5cGVvZiB2YWwgPT09ICdvYmplY3QnICYmIHZhbCBpbnN0YW5jZW9mIEV0aGlvcGlhbkRhdGUpIHtcbiAgICAgICAgY29uc3QgW3ksIG0sIGRdID0gW3ZhbC5nZXRGdWxsWWVhcigpLCB2YWwuZ2V0TW9udGgoKSArIDEsIHZhbC5nZXREYXRlKCldO1xuICAgICAgICBlYyA9IFt5LCBtLCBkXTtcbiAgICAgIH0gZWxzZSB7XG4gICAgICAgIHRocm93IG5ldyBFcnJvcignSW52YWxpZCBBcmd1bWVudCBFeGNlcHRpb24nKTtcbiAgICAgIH1cbiAgICB9IGVsc2UgaWYgKHZhbCAhPSBudWxsICYmIG1vbnRoICE9IG51bGwgJiYgZGF5ICE9IG51bGwgJiYgdHlwZW9mIHZhbCA9PT0gJ251bWJlcicpIHtcbiAgICAgIGVjID0gW3ZhbCwgbW9udGggKyAxLCBkYXldO1xuICAgIH0gZWxzZSB7XG4gICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgQXJndW1lbnQgRXhjZXB0aW9uJyk7XG4gICAgfVxuICAgIGNvbnN0IGdjID0gdG9HQyhlYyk7XG4gICAgcmV0dXJuIG5ldyBEYXRlKGdjWzBdLCBnY1sxXSAtIDEsIGdjWzJdKTtcbiAgfVxuXG4gIC8qKlxuICAgKlxuICAgKiBAcGFyYW0gdmFsIC0gQSBudW1lcmljIHllYXIgdmFsdWUgaWYgdGhlIHNlY29uZCBhbmQgdGhpcmQgcGFyYW1ldGVycyBhcmVcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIHByb3ZpZGVkLCBpdCBzaG91bGQgYmUgYSBkYXRlIHN0cmluZyBpZiBub3RcbiAgICogQHBhcmFtIG1vbnRoIEEgemVyby1iYXNlZCBudW1lcmljIHZhbHVlIGZvciB0aGUgbW9udGhcbiAgICogICAgICAgICAgICAgICAgICAgICAgICAgKDAgZm9yIEphbnVhcnksIDExIGZvciBEZWNlbWJlcilcbiAgICogQHBhcmFtIGRheSBBIG51bWVyaWMgdmFsdWUgZXF1YWwgZm9yIHRoZSBkYXkgb2YgdGhlIG1vbnRoLlxuICAgKlxuICAgKiBAYXBpIHB1YmxpY1xuICAgKi9cbiAgc3RhdGljIGdyZWdvcmlhblRvRXRoaW9waWFuKFxuICAgIHZhbD86IERhdGUgfCBzdHJpbmcgfCBudW1iZXIsXG4gICAgbW9udGg/OiBudW1iZXIsXG4gICAgZGF5PzogbnVtYmVyLFxuICApOiBFdGhpb3BpYW5EYXRlIHtcbiAgICBsZXQgZ2M6IFtudW1iZXIsIG51bWJlciwgbnVtYmVyXTtcbiAgICBpZiAodmFsICE9IG51bGwgJiYgbW9udGggPT0gbnVsbCAmJiBkYXkgPT0gbnVsbCAmJiB0eXBlb2YgdmFsICE9PSAnbnVtYmVyJykge1xuICAgICAgaWYgKHR5cGVvZiB2YWwgPT09ICdzdHJpbmcnKSB7XG4gICAgICAgIGNvbnN0IGdjRGF0ZSA9IG5ldyBEYXRlKHZhbCk7XG4gICAgICAgIGdjID0gW2djRGF0ZS5nZXRGdWxsWWVhcigpLCBnY0RhdGUuZ2V0TW9udGgoKSArIDEsIGdjRGF0ZS5nZXREYXRlKCldO1xuICAgICAgfSBlbHNlIGlmICh0eXBlb2YgdmFsID09PSAnb2JqZWN0JyAmJiB2YWwgaW5zdGFuY2VvZiBEYXRlKSB7XG4gICAgICAgIGNvbnN0IFt5LCBtLCBkXSA9IFt2YWwuZ2V0RnVsbFllYXIoKSwgdmFsLmdldE1vbnRoKCkgKyAxLCB2YWwuZ2V0RGF0ZSgpXTtcbiAgICAgICAgZ2MgPSBbeSwgbSwgZF07XG4gICAgICB9IGVsc2Uge1xuICAgICAgICB0aHJvdyBuZXcgRXJyb3IoJ0ludmFsaWQgQXJndW1lbnQgRXhjZXB0aW9uJyk7XG4gICAgICB9XG4gICAgfSBlbHNlIGlmICh2YWwgIT0gbnVsbCAmJiBtb250aCAhPSBudWxsICYmIGRheSAhPSBudWxsICYmIHR5cGVvZiB2YWwgPT09ICdudW1iZXInKSB7XG4gICAgICBnYyA9IFt2YWwsIG1vbnRoICsgMSwgZGF5XTtcbiAgICB9IGVsc2Uge1xuICAgICAgdGhyb3cgbmV3IEVycm9yKCdJbnZhbGlkIEFyZ3VtZW50IEV4Y2VwdGlvbicpO1xuICAgIH1cbiAgICBjb25zdCBlYyA9IHRvRUMoZ2MpO1xuICAgIHJldHVybiBuZXcgRXRoaW9waWFuRGF0ZShlY1swXSwgZWNbMV0gLSAxLCBlY1syXSk7XG4gIH1cblxuICAvKipcbiAgICogUGFyc2UgRXRoaW9waWFuIGRhdGUgZnJvbSBzdHJpbmdcbiAgICpcbiAgICogQHBhcmFtIGRhdGVTdHJpbmcgYSBkYXRlIHN0cmluZyB0byBwYXJzZVxuICAgKiBAcGFyYW0gcGF0dGVybiBhIHBhcnNpbmcgcGF0dGVyblxuICAgKlxuICAgKiBAcmV0dXJucyBFdGhpb3BpYW5EYXRlXG4gICAqL1xuICBzdGF0aWMgcGFyc2UoZGF0ZVN0cmluZzogc3RyaW5nKTogRXRoaW9waWFuRGF0ZSB8IG51bGwge1xuICAgIGlmICghZGF0ZVN0cmluZykge1xuICAgICAgcmV0dXJuIG51bGw7XG4gICAgfVxuICAgIGNvbnN0IHJlc3VsdCA9IGRhdGVTdHJpbmcuc3BsaXQoJy0nKTtcbiAgICBpZiAocmVzdWx0Lmxlbmd0aCA9PT0gMykge1xuICAgICAgY29uc3QgW3ksIG0sIGRdID0gcmVzdWx0O1xuICAgICAgcmV0dXJuIG5ldyBFdGhpb3BpYW5EYXRlKHBhcnNlSW50KHksIDEwKSwgcGFyc2VJbnQobSwgMTApIC0gMSwgcGFyc2VJbnQoZCwgMTApKTtcbiAgICB9XG4gICAgdGhyb3cgbmV3IEVycm9yKGBQYXJzaW5nRXJyb3I6IENhbid0IHBhcnNlICR7ZGF0ZVN0cmluZ31gKTtcbiAgfVxufVxuIl19
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* @license
|
|
3
|
+
* Copyright (C) Gnucoop soc. coop.
|
|
4
|
+
*
|
|
5
|
+
* This file is part of the Advanced JSON forms (ajf).
|
|
6
|
+
*
|
|
7
|
+
* Advanced JSON forms (ajf) is free software: you can redistribute it and/or
|
|
8
|
+
* modify it under the terms of the GNU Affero General Public License as
|
|
9
|
+
* published by the Free Software Foundation, either version 3 of the License,
|
|
10
|
+
* or (at your option) any later version.
|
|
11
|
+
*
|
|
12
|
+
* Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
|
|
13
|
+
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
14
|
+
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
|
|
15
|
+
* General Public License for more details.
|
|
16
|
+
*
|
|
17
|
+
* You should have received a copy of the GNU Affero General Public License
|
|
18
|
+
* along with Advanced JSON forms (ajf).
|
|
19
|
+
* If not, see http://www.gnu.org/licenses/.
|
|
20
|
+
*
|
|
21
|
+
*/
|
|
22
|
+
export * from './calendar-module';
|
|
23
|
+
export * from './calendar-service';
|
|
24
|
+
export * from './ethiopian-date';
|
|
25
|
+
export * from './ethiopian-date-pipe';
|
|
26
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljX2FwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2NhbGVuZGFycy9ldGhpb3BpYW4vc3JjL3B1YmxpY19hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7O0dBb0JHO0FBRUgsY0FBYyxtQkFBbUIsQ0FBQztBQUNsQyxjQUFjLG9CQUFvQixDQUFDO0FBQ25DLGNBQWMsa0JBQWtCLENBQUM7QUFDakMsY0FBYyx1QkFBdUIsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAoQykgR251Y29vcCBzb2MuIGNvb3AuXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3JcbiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhc1xuICogcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsXG4gKiBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEFmZmVyb1xuICogR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICogSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9jYWxlbmRhci1tb2R1bGUnO1xuZXhwb3J0ICogZnJvbSAnLi9jYWxlbmRhci1zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vZXRoaW9waWFuLWRhdGUnO1xuZXhwb3J0ICogZnJvbSAnLi9ldGhpb3BpYW4tZGF0ZS1waXBlJztcbiJdfQ==
|
|
@@ -50,4 +50,4 @@ export const SHORT_MONTHS_NAMES = [
|
|
|
50
50
|
'ነሐሴ',
|
|
51
51
|
'ጳጉሜ',
|
|
52
52
|
];
|
|
53
|
-
//# sourceMappingURL=data:application/json;base64,
|
|
53
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidXRpbHMuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jYWxlbmRhcnMvZXRoaW9waWFuL3NyYy91dGlscy50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxNQUFNLENBQUMsTUFBTSxVQUFVLEdBQUcsQ0FBQyxLQUFLLEVBQUUsSUFBSSxFQUFFLE1BQU0sRUFBRSxLQUFLLEVBQUUsS0FBSyxFQUFFLEtBQUssRUFBRSxLQUFLLENBQUMsQ0FBQztBQUU1RSxNQUFNLENBQUMsTUFBTSxZQUFZLEdBQUc7SUFDMUIsT0FBTztJQUNQLE1BQU07SUFDTixLQUFLO0lBQ0wsTUFBTTtJQUNOLElBQUk7SUFDSixNQUFNO0lBQ04sTUFBTTtJQUNOLE1BQU07SUFDTixNQUFNO0lBQ04sSUFBSTtJQUNKLEtBQUs7SUFDTCxLQUFLO0lBQ0wsTUFBTTtDQUNQLENBQUM7QUFFRixNQUFNLENBQUMsTUFBTSxrQkFBa0IsR0FBRztJQUNoQyxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0lBQ0wsSUFBSTtJQUNKLEtBQUs7SUFDTCxLQUFLO0lBQ0wsS0FBSztJQUNMLEtBQUs7SUFDTCxJQUFJO0lBQ0osS0FBSztJQUNMLEtBQUs7SUFDTCxLQUFLO0NBQ04sQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAoQykgR251Y29vcCBzb2MuIGNvb3AuXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3JcbiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhc1xuICogcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsXG4gKiBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEFmZmVyb1xuICogR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICogSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuZXhwb3J0IGNvbnN0IFdFRUtfTkFNRVMgPSBbJ+GKpeGIkeGLtScsICfhiLDhip4nLCAn4Yib4Yqt4Yiw4YqeJywgJ+GIqOGJoeGLlScsICfhiJPhiJnhiLUnLCAn4YuT4Yit4YmlJywgJ+GJheGLs+GInCddO1xuXG5leHBvcnQgY29uc3QgTU9OVEhTX05BTUVTID0gW1xuICAn4YiY4Yi14Yqo4Yio4YidJyxcbiAgJ+GMpeGJheGIneGJtScsXG4gICfhioXhi7PhiK0nLFxuICAn4Ymz4YqF4Yij4YilJyxcbiAgJ+GMpeGIrScsXG4gICfhi6jhiqvhibLhibUnLFxuICAn4YiY4YyL4Ymi4Ym1JyxcbiAgJ+GImuGLq+GLneGLqycsXG4gICfhjI3hipXhiabhibUnLFxuICAn4Yiw4YqUJyxcbiAgJ+GIkOGIneGIjCcsXG4gICfhipDhiJDhiLQnLFxuICAn4Yyz4YyJ4Yic4YqVJyxcbl07XG5cbmV4cG9ydCBjb25zdCBTSE9SVF9NT05USFNfTkFNRVMgPSBbXG4gICfhiJjhiLXhiqgnLFxuICAn4Yyl4YmF4YidJyxcbiAgJ+GKheGLs+GIrScsXG4gICfhibPhioXhiKMnLFxuICAn4Yyl4YitJyxcbiAgJ+GLqOGKq+GJsicsXG4gICfhiJjhjIvhiaInLFxuICAn4Yia4Yur4YudJyxcbiAgJ+GMjeGKleGJpicsXG4gICfhiLDhipQnLFxuICAn4YiQ4Yid4YiMJyxcbiAgJ+GKkOGIkOGItCcsXG4gICfhjLPhjInhiJwnLFxuXTtcbiJdfQ==
|
package/esm2020/public-api.mjs
CHANGED
|
@@ -19,5 +19,6 @@
|
|
|
19
19
|
* If not, see http://www.gnu.org/licenses/.
|
|
20
20
|
*
|
|
21
21
|
*/
|
|
22
|
-
|
|
23
|
-
|
|
22
|
+
import { VERSION } from '@ajf/core';
|
|
23
|
+
export { VERSION };
|
|
24
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL2NhbGVuZGFycy9zcmMvcHVibGljLWFwaS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FvQkc7QUFFSCxPQUFPLEVBQUMsT0FBTyxFQUFDLE1BQU0sV0FBVyxDQUFDO0FBRWxDLE9BQU8sRUFBQyxPQUFPLEVBQUMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQGxpY2Vuc2VcbiAqIENvcHlyaWdodCAoQykgR251Y29vcCBzb2MuIGNvb3AuXG4gKlxuICogVGhpcyBmaWxlIGlzIHBhcnQgb2YgdGhlIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikuXG4gKlxuICogQWR2YW5jZWQgSlNPTiBmb3JtcyAoYWpmKSBpcyBmcmVlIHNvZnR3YXJlOiB5b3UgY2FuIHJlZGlzdHJpYnV0ZSBpdCBhbmQvb3JcbiAqIG1vZGlmeSBpdCB1bmRlciB0aGUgdGVybXMgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBhc1xuICogcHVibGlzaGVkIGJ5IHRoZSBGcmVlIFNvZnR3YXJlIEZvdW5kYXRpb24sIGVpdGhlciB2ZXJzaW9uIDMgb2YgdGhlIExpY2Vuc2UsXG4gKiBvciAoYXQgeW91ciBvcHRpb24pIGFueSBsYXRlciB2ZXJzaW9uLlxuICpcbiAqIEFkdmFuY2VkIEpTT04gZm9ybXMgKGFqZikgaXMgZGlzdHJpYnV0ZWQgaW4gdGhlIGhvcGUgdGhhdCBpdCB3aWxsIGJlIHVzZWZ1bCxcbiAqIGJ1dCBXSVRIT1VUIEFOWSBXQVJSQU5UWTsgd2l0aG91dCBldmVuIHRoZSBpbXBsaWVkIHdhcnJhbnR5IG9mXG4gKiBNRVJDSEFOVEFCSUxJVFkgb3IgRklUTkVTUyBGT1IgQSBQQVJUSUNVTEFSIFBVUlBPU0UuIFNlZSB0aGUgR05VIEFmZmVyb1xuICogR2VuZXJhbCBQdWJsaWMgTGljZW5zZSBmb3IgbW9yZSBkZXRhaWxzLlxuICpcbiAqIFlvdSBzaG91bGQgaGF2ZSByZWNlaXZlZCBhIGNvcHkgb2YgdGhlIEdOVSBBZmZlcm8gR2VuZXJhbCBQdWJsaWMgTGljZW5zZVxuICogYWxvbmcgd2l0aCBBZHZhbmNlZCBKU09OIGZvcm1zIChhamYpLlxuICogSWYgbm90LCBzZWUgaHR0cDovL3d3dy5nbnUub3JnL2xpY2Vuc2VzLy5cbiAqXG4gKi9cblxuaW1wb3J0IHtWRVJTSU9OfSBmcm9tICdAYWpmL2NvcmUnO1xuXG5leHBvcnQge1ZFUlNJT059O1xuIl19
|
|
File without changes
|
|
File without changes
|
package/ethiopian/converter.d.ts
CHANGED
|
File without changes
|
|
File without changes
|
|
File without changes
|
package/ethiopian/package.json
CHANGED
|
@@ -1,9 +1,10 @@
|
|
|
1
1
|
{
|
|
2
|
-
"
|
|
3
|
-
"
|
|
4
|
-
"
|
|
5
|
-
"
|
|
6
|
-
"
|
|
7
|
-
"
|
|
8
|
-
"
|
|
2
|
+
"module": "../fesm2015/ajf-calendars-ethiopian.mjs",
|
|
3
|
+
"es2020": "../fesm2020/ajf-calendars-ethiopian.mjs",
|
|
4
|
+
"esm2020": "../esm2020/ethiopian/ajf-calendars-ethiopian.mjs",
|
|
5
|
+
"fesm2020": "../fesm2020/ajf-calendars-ethiopian.mjs",
|
|
6
|
+
"fesm2015": "../fesm2015/ajf-calendars-ethiopian.mjs",
|
|
7
|
+
"typings": "ajf-calendars-ethiopian.d.ts",
|
|
8
|
+
"sideEffects": false,
|
|
9
|
+
"name": "@ajf/calendars/ethiopian"
|
|
9
10
|
}
|
|
File without changes
|
package/ethiopian/utils.d.ts
CHANGED
|
File without changes
|
|
@@ -239,6 +239,10 @@ class EthiopianDate {
|
|
|
239
239
|
* @param day A numeric value equal for the day of the month.
|
|
240
240
|
*/
|
|
241
241
|
constructor(val, month, day) {
|
|
242
|
+
this._year = 0;
|
|
243
|
+
this._month = 0;
|
|
244
|
+
this._date = 0;
|
|
245
|
+
this._gc = new Date();
|
|
242
246
|
if (val == null && month == null && day == null) {
|
|
243
247
|
const ahun = EthiopianDate.gregorianToEthiopian(new Date());
|
|
244
248
|
[this._year, this._month, this._date] = [ahun.getFullYear(), ahun.getMonth(), ahun.getDate()];
|
|
@@ -612,9 +616,9 @@ class AjfEthiopianCalendarService extends AjfCalendarService {
|
|
|
612
616
|
return rows;
|
|
613
617
|
}
|
|
614
618
|
}
|
|
615
|
-
AjfEthiopianCalendarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.
|
|
616
|
-
AjfEthiopianCalendarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.
|
|
617
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.
|
|
619
|
+
AjfEthiopianCalendarService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarService, deps: null, target: i0.ɵɵFactoryTarget.Injectable });
|
|
620
|
+
AjfEthiopianCalendarService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarService, providedIn: 'root' });
|
|
621
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarService, decorators: [{
|
|
618
622
|
type: Injectable,
|
|
619
623
|
args: [{ providedIn: 'root' }]
|
|
620
624
|
}] });
|
|
@@ -653,10 +657,10 @@ class AjfEthiopianDatePipe {
|
|
|
653
657
|
}
|
|
654
658
|
}
|
|
655
659
|
}
|
|
656
|
-
AjfEthiopianDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.
|
|
657
|
-
AjfEthiopianDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.
|
|
658
|
-
AjfEthiopianDatePipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.
|
|
659
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.
|
|
660
|
+
AjfEthiopianDatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianDatePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe });
|
|
661
|
+
AjfEthiopianDatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianDatePipe, name: "ajfEthiopianDate" });
|
|
662
|
+
AjfEthiopianDatePipe.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianDatePipe });
|
|
663
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianDatePipe, decorators: [{
|
|
660
664
|
type: Injectable
|
|
661
665
|
}, {
|
|
662
666
|
type: Pipe,
|
|
@@ -686,10 +690,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ng
|
|
|
686
690
|
*/
|
|
687
691
|
class AjfEthiopianCalendarModule {
|
|
688
692
|
}
|
|
689
|
-
AjfEthiopianCalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.
|
|
690
|
-
AjfEthiopianCalendarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.
|
|
691
|
-
AjfEthiopianCalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.
|
|
692
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.
|
|
693
|
+
AjfEthiopianCalendarModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
694
|
+
AjfEthiopianCalendarModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarModule, declarations: [AjfEthiopianDatePipe], exports: [AjfEthiopianDatePipe] });
|
|
695
|
+
AjfEthiopianCalendarModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarModule, providers: [{ provide: AjfCalendarService, useClass: AjfEthiopianCalendarService }] });
|
|
696
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.2.5", ngImport: i0, type: AjfEthiopianCalendarModule, decorators: [{
|
|
693
697
|
type: NgModule,
|
|
694
698
|
args: [{
|
|
695
699
|
declarations: [AjfEthiopianDatePipe],
|
|
@@ -720,31 +724,9 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0-rc.3", ng
|
|
|
720
724
|
*
|
|
721
725
|
*/
|
|
722
726
|
|
|
723
|
-
/**
|
|
724
|
-
* @license
|
|
725
|
-
* Copyright (C) Gnucoop soc. coop.
|
|
726
|
-
*
|
|
727
|
-
* This file is part of the Advanced JSON forms (ajf).
|
|
728
|
-
*
|
|
729
|
-
* Advanced JSON forms (ajf) is free software: you can redistribute it and/or
|
|
730
|
-
* modify it under the terms of the GNU Affero General Public License as
|
|
731
|
-
* published by the Free Software Foundation, either version 3 of the License,
|
|
732
|
-
* or (at your option) any later version.
|
|
733
|
-
*
|
|
734
|
-
* Advanced JSON forms (ajf) is distributed in the hope that it will be useful,
|
|
735
|
-
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
|
736
|
-
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Affero
|
|
737
|
-
* General Public License for more details.
|
|
738
|
-
*
|
|
739
|
-
* You should have received a copy of the GNU Affero General Public License
|
|
740
|
-
* along with Advanced JSON forms (ajf).
|
|
741
|
-
* If not, see http://www.gnu.org/licenses/.
|
|
742
|
-
*
|
|
743
|
-
*/
|
|
744
|
-
|
|
745
727
|
/**
|
|
746
728
|
* Generated bundle index. Do not edit.
|
|
747
729
|
*/
|
|
748
730
|
|
|
749
731
|
export { AjfEthiopianCalendarModule, AjfEthiopianCalendarService, AjfEthiopianDatePipe, EthiopianDate };
|
|
750
|
-
//# sourceMappingURL=ethiopian.mjs.map
|
|
732
|
+
//# sourceMappingURL=ajf-calendars-ethiopian.mjs.map
|