ngx-ode-sijil 4.6.0-dev.0 → 4.6.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (53) hide show
  1. package/esm2020/lib/components/s5l.component.mjs +52 -0
  2. package/esm2020/lib/ngx-ode-sijil.module.mjs +42 -0
  3. package/esm2020/lib/pipes/translate.pipe.mjs +18 -0
  4. package/esm2020/lib/services/bundles.service.mjs +98 -0
  5. package/esm2020/lib/services/parser/fragments.parser.mjs +142 -0
  6. package/esm2020/lib/services/parser/parser.interface.mjs +15 -0
  7. package/esm2020/lib/services/require/httprequire.service.mjs +23 -0
  8. package/esm2020/lib/services/require/require.interface.mjs +8 -0
  9. package/esm2020/lib/services/sijil.opts.mjs +11 -0
  10. package/esm2020/ngx-ode-sijil.mjs +5 -0
  11. package/esm2020/public-api.mjs +8 -0
  12. package/fesm2015/{ngx-ode-sijil.js → ngx-ode-sijil.mjs} +74 -349
  13. package/fesm2015/ngx-ode-sijil.mjs.map +1 -0
  14. package/fesm2020/ngx-ode-sijil.mjs +403 -0
  15. package/fesm2020/ngx-ode-sijil.mjs.map +1 -0
  16. package/index.d.ts +5 -0
  17. package/lib/components/s5l.component.d.ts +3 -0
  18. package/lib/ngx-ode-sijil.module.d.ts +9 -2
  19. package/lib/pipes/translate.pipe.d.ts +3 -0
  20. package/lib/services/require/httprequire.service.d.ts +3 -0
  21. package/package.json +27 -17
  22. package/CHANGELOG.md +0 -12
  23. package/bundles/ngx-ode-sijil.umd.js +0 -1029
  24. package/bundles/ngx-ode-sijil.umd.js.map +0 -1
  25. package/bundles/ngx-ode-sijil.umd.min.js +0 -16
  26. package/bundles/ngx-ode-sijil.umd.min.js.map +0 -1
  27. package/esm2015/lib/components/s5l.component.js +0 -92
  28. package/esm2015/lib/ngx-ode-sijil.module.js +0 -51
  29. package/esm2015/lib/pipes/translate.pipe.js +0 -39
  30. package/esm2015/lib/services/bundles.service.js +0 -154
  31. package/esm2015/lib/services/parser/fragments.parser.js +0 -208
  32. package/esm2015/lib/services/parser/parser.interface.js +0 -40
  33. package/esm2015/lib/services/require/httprequire.service.js +0 -47
  34. package/esm2015/lib/services/require/require.interface.js +0 -22
  35. package/esm2015/lib/services/sijil.opts.js +0 -25
  36. package/esm2015/ngx-ode-sijil.js +0 -15
  37. package/esm2015/public-api.js +0 -13
  38. package/esm5/lib/components/s5l.component.js +0 -98
  39. package/esm5/lib/ngx-ode-sijil.module.js +0 -64
  40. package/esm5/lib/pipes/translate.pipe.js +0 -44
  41. package/esm5/lib/services/bundles.service.js +0 -243
  42. package/esm5/lib/services/parser/fragments.parser.js +0 -230
  43. package/esm5/lib/services/parser/parser.interface.js +0 -57
  44. package/esm5/lib/services/require/httprequire.service.js +0 -50
  45. package/esm5/lib/services/require/require.interface.js +0 -38
  46. package/esm5/lib/services/sijil.opts.js +0 -41
  47. package/esm5/ngx-ode-sijil.js +0 -15
  48. package/esm5/public-api.js +0 -13
  49. package/fesm2015/ngx-ode-sijil.js.map +0 -1
  50. package/fesm5/ngx-ode-sijil.js +0 -829
  51. package/fesm5/ngx-ode-sijil.js.map +0 -1
  52. package/ngx-ode-sijil.d.ts +0 -9
  53. package/ngx-ode-sijil.metadata.json +0 -1
@@ -0,0 +1,52 @@
1
+ import { Component, Input, ViewChild, ChangeDetectionStrategy } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../services/bundles.service";
4
+ export class S5lComponent {
5
+ constructor(bundlesService) {
6
+ this.bundlesService = bundlesService;
7
+ }
8
+ refreshTranslation() {
9
+ const newDisplayedValue = this.bundlesService.translate(this.value, this.parameters, this.fixedLanguage);
10
+ if (this.displayedValue !== newDisplayedValue) {
11
+ this.displayedValue = newDisplayedValue;
12
+ this.wrapperRef.nativeElement.innerHTML = this.displayedValue;
13
+ }
14
+ }
15
+ ngAfterViewInit() {
16
+ this.value = this.wrapperRef.nativeElement.innerHTML.trim();
17
+ this.loaded = true;
18
+ this.refreshTranslation();
19
+ }
20
+ ngDoCheck() {
21
+ if (!this.loaded) {
22
+ return;
23
+ }
24
+ this.refreshTranslation();
25
+ }
26
+ }
27
+ S5lComponent.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: S5lComponent, deps: [{ token: i1.BundlesService }], target: i0.ɵɵFactoryTarget.Component });
28
+ S5lComponent.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "14.1.1", type: S5lComponent, selector: "s5l", inputs: { parameters: ["s5l-params", "parameters"], fixedLanguage: ["s5l-lang", "fixedLanguage"] }, viewQueries: [{ propertyName: "wrapperRef", first: true, predicate: ["wrapper"], descendants: true }], ngImport: i0, template: `
29
+ <span #wrapper>
30
+ <ng-content></ng-content>
31
+ </span>`, isInline: true, changeDetection: i0.ChangeDetectionStrategy.OnPush });
32
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: S5lComponent, decorators: [{
33
+ type: Component,
34
+ args: [{
35
+ selector: 's5l',
36
+ template: `
37
+ <span #wrapper>
38
+ <ng-content></ng-content>
39
+ </span>`,
40
+ changeDetection: ChangeDetectionStrategy.OnPush
41
+ }]
42
+ }], ctorParameters: function () { return [{ type: i1.BundlesService }]; }, propDecorators: { wrapperRef: [{
43
+ type: ViewChild,
44
+ args: ['wrapper']
45
+ }], parameters: [{
46
+ type: Input,
47
+ args: ["s5l-params"]
48
+ }], fixedLanguage: [{
49
+ type: Input,
50
+ args: ["s5l-lang"]
51
+ }] } });
52
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiczVsLmNvbXBvbmVudC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1vZGUtc2lqaWwvc3JjL2xpYi9jb21wb25lbnRzL3M1bC5jb21wb25lbnQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxLQUFLLEVBQWMsU0FBUyxFQUFpQix1QkFBdUIsRUFBVyxNQUFNLGVBQWUsQ0FBQzs7O0FBV3pILE1BQU0sT0FBTyxZQUFZO0lBRXJCLFlBQW9CLGNBQThCO1FBQTlCLG1CQUFjLEdBQWQsY0FBYyxDQUFnQjtJQUFHLENBQUM7SUFXOUMsa0JBQWtCO1FBQ3RCLE1BQU0saUJBQWlCLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsSUFBSSxDQUFDLEtBQUssRUFBRSxJQUFJLENBQUMsVUFBVSxFQUFFLElBQUksQ0FBQyxhQUFhLENBQUMsQ0FBQTtRQUN4RyxJQUFJLElBQUksQ0FBQyxjQUFjLEtBQUssaUJBQWlCLEVBQUU7WUFDM0MsSUFBSSxDQUFDLGNBQWMsR0FBRyxpQkFBaUIsQ0FBQztZQUN4QyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLEdBQUcsSUFBSSxDQUFDLGNBQWMsQ0FBQztTQUNqRTtJQUNMLENBQUM7SUFFRCxlQUFlO1FBQ1gsSUFBSSxDQUFDLEtBQUssR0FBRyxJQUFJLENBQUMsVUFBVSxDQUFDLGFBQWEsQ0FBQyxTQUFTLENBQUMsSUFBSSxFQUFFLENBQUM7UUFDNUQsSUFBSSxDQUFDLE1BQU0sR0FBRyxJQUFJLENBQUM7UUFDbkIsSUFBSSxDQUFDLGtCQUFrQixFQUFFLENBQUM7SUFDOUIsQ0FBQztJQUVELFNBQVM7UUFDTCxJQUFJLENBQUMsSUFBSSxDQUFDLE1BQU0sRUFBRTtZQUNkLE9BQU87U0FDVjtRQUNELElBQUksQ0FBQyxrQkFBa0IsRUFBRSxDQUFDO0lBQzlCLENBQUM7O3lHQWhDUSxZQUFZOzZGQUFaLFlBQVksc1BBTlg7OztZQUdGOzJGQUdDLFlBQVk7a0JBUnhCLFNBQVM7bUJBQUM7b0JBQ1AsUUFBUSxFQUFFLEtBQUs7b0JBQ2YsUUFBUSxFQUFFOzs7WUFHRjtvQkFDUixlQUFlLEVBQUUsdUJBQXVCLENBQUMsTUFBTTtpQkFDbEQ7cUdBS3lCLFVBQVU7c0JBQS9CLFNBQVM7dUJBQUMsU0FBUztnQkFNQyxVQUFVO3NCQUE5QixLQUFLO3VCQUFDLFlBQVk7Z0JBQ0EsYUFBYTtzQkFBL0IsS0FBSzt1QkFBQyxVQUFVIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ29tcG9uZW50LCBJbnB1dCwgRWxlbWVudFJlZiwgVmlld0NoaWxkLCBBZnRlclZpZXdJbml0LCBDaGFuZ2VEZXRlY3Rpb25TdHJhdGVneSwgRG9DaGVjayB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuaW1wb3J0IHsgQnVuZGxlc1NlcnZpY2UgfSBmcm9tICcuLi9zZXJ2aWNlcy9idW5kbGVzLnNlcnZpY2UnO1xuXG5AQ29tcG9uZW50KHtcbiAgICBzZWxlY3RvcjogJ3M1bCcsXG4gICAgdGVtcGxhdGU6IGBcbiAgICA8c3BhbiAjd3JhcHBlcj5cbiAgICAgICAgPG5nLWNvbnRlbnQ+PC9uZy1jb250ZW50PlxuICAgIDwvc3Bhbj5gLFxuICAgIGNoYW5nZURldGVjdGlvbjogQ2hhbmdlRGV0ZWN0aW9uU3RyYXRlZ3kuT25QdXNoXG59KVxuZXhwb3J0IGNsYXNzIFM1bENvbXBvbmVudCBpbXBsZW1lbnRzIEFmdGVyVmlld0luaXQsIERvQ2hlY2sge1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBidW5kbGVzU2VydmljZTogQnVuZGxlc1NlcnZpY2UpIHt9XG5cbiAgICBAVmlld0NoaWxkKCd3cmFwcGVyJykgd3JhcHBlclJlZjogRWxlbWVudFJlZjtcblxuICAgIHByaXZhdGUgdmFsdWU6IHN0cmluZztcbiAgICBwcml2YXRlIGxvYWRlZDogYm9vbGVhbjtcbiAgICBwcml2YXRlIGRpc3BsYXllZFZhbHVlOiBzdHJpbmc7XG5cbiAgICBASW5wdXQoXCJzNWwtcGFyYW1zXCIpIHBhcmFtZXRlcnM6IE9iamVjdCB8IGFueVtdO1xuICAgIEBJbnB1dChcInM1bC1sYW5nXCIpIGZpeGVkTGFuZ3VhZ2U6IHN0cmluZztcblxuICAgIHByaXZhdGUgcmVmcmVzaFRyYW5zbGF0aW9uKCkge1xuICAgICAgICBjb25zdCBuZXdEaXNwbGF5ZWRWYWx1ZSA9IHRoaXMuYnVuZGxlc1NlcnZpY2UudHJhbnNsYXRlKHRoaXMudmFsdWUsIHRoaXMucGFyYW1ldGVycywgdGhpcy5maXhlZExhbmd1YWdlKVxuICAgICAgICBpZiAodGhpcy5kaXNwbGF5ZWRWYWx1ZSAhPT0gbmV3RGlzcGxheWVkVmFsdWUpIHtcbiAgICAgICAgICAgIHRoaXMuZGlzcGxheWVkVmFsdWUgPSBuZXdEaXNwbGF5ZWRWYWx1ZTtcbiAgICAgICAgICAgIHRoaXMud3JhcHBlclJlZi5uYXRpdmVFbGVtZW50LmlubmVySFRNTCA9IHRoaXMuZGlzcGxheWVkVmFsdWU7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICBuZ0FmdGVyVmlld0luaXQoKTogdm9pZCB7XG4gICAgICAgIHRoaXMudmFsdWUgPSB0aGlzLndyYXBwZXJSZWYubmF0aXZlRWxlbWVudC5pbm5lckhUTUwudHJpbSgpO1xuICAgICAgICB0aGlzLmxvYWRlZCA9IHRydWU7XG4gICAgICAgIHRoaXMucmVmcmVzaFRyYW5zbGF0aW9uKCk7XG4gICAgfVxuXG4gICAgbmdEb0NoZWNrKCk6IHZvaWQge1xuICAgICAgICBpZiAoIXRoaXMubG9hZGVkKSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgdGhpcy5yZWZyZXNoVHJhbnNsYXRpb24oKTtcbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,42 @@
1
+ import { NgModule } from '@angular/core';
2
+ import { S5lComponent } from './components/s5l.component';
3
+ import { TranslatePipe } from './pipes/translate.pipe';
4
+ import { HttpClientModule } from '@angular/common/http';
5
+ import { RequireService } from './services/require/require.interface';
6
+ import { Parser } from './services/parser/parser.interface';
7
+ import { SijilOpts, defaultSijilOpts } from './services/sijil.opts';
8
+ import { BundlesService } from './services/bundles.service';
9
+ import { HttpRequireService } from './services/require/httprequire.service';
10
+ import { FragmentsParser } from './services/parser/fragments.parser';
11
+ import * as i0 from "@angular/core";
12
+ export class NgxOdeSijilModule {
13
+ static forRoot(require, parser, options) {
14
+ return {
15
+ ngModule: NgxOdeSijilModule,
16
+ providers: [
17
+ { provide: BundlesService, useClass: BundlesService, deps: [RequireService, Parser, SijilOpts] },
18
+ { provide: RequireService, useClass: require || HttpRequireService },
19
+ { provide: Parser, useClass: parser || FragmentsParser },
20
+ { provide: SijilOpts, useValue: options || defaultSijilOpts }
21
+ ]
22
+ };
23
+ }
24
+ static forChild() {
25
+ return {
26
+ ngModule: NgxOdeSijilModule,
27
+ providers: []
28
+ };
29
+ }
30
+ }
31
+ NgxOdeSijilModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NgxOdeSijilModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
32
+ NgxOdeSijilModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "14.1.1", ngImport: i0, type: NgxOdeSijilModule, declarations: [S5lComponent, TranslatePipe], imports: [HttpClientModule], exports: [S5lComponent, TranslatePipe] });
33
+ NgxOdeSijilModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NgxOdeSijilModule, imports: [HttpClientModule] });
34
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: NgxOdeSijilModule, decorators: [{
35
+ type: NgModule,
36
+ args: [{
37
+ declarations: [S5lComponent, TranslatePipe],
38
+ imports: [HttpClientModule],
39
+ exports: [S5lComponent, TranslatePipe]
40
+ }]
41
+ }] });
42
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LW9kZS1zaWppbC5tb2R1bGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtb2RlLXNpamlsL3NyYy9saWIvbmd4LW9kZS1zaWppbC5tb2R1bGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFFBQVEsRUFBNkIsTUFBTSxlQUFlLENBQUM7QUFDcEUsT0FBTyxFQUFFLFlBQVksRUFBRSxNQUFNLDRCQUE0QixDQUFDO0FBQzFELE9BQU8sRUFBRSxhQUFhLEVBQUUsTUFBTSx3QkFBd0IsQ0FBQztBQUN2RCxPQUFPLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSxzQkFBc0IsQ0FBQztBQUN4RCxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sc0NBQXNDLENBQUM7QUFDdEUsT0FBTyxFQUFFLE1BQU0sRUFBRSxNQUFNLG9DQUFvQyxDQUFDO0FBQzVELE9BQU8sRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUNwRSxPQUFPLEVBQUUsY0FBYyxFQUFFLE1BQU0sNEJBQTRCLENBQUM7QUFDNUQsT0FBTyxFQUFFLGtCQUFrQixFQUFFLE1BQU0sd0NBQXdDLENBQUM7QUFDNUUsT0FBTyxFQUFFLGVBQWUsRUFBRSxNQUFNLG9DQUFvQyxDQUFDOztBQU9yRSxNQUFNLE9BQU8saUJBQWlCO0lBQzVCLE1BQU0sQ0FBQyxPQUFPLENBQUMsT0FBOEIsRUFBRSxNQUFxQixFQUFFLE9BQW1CO1FBQ3ZGLE9BQU87WUFDSCxRQUFRLEVBQUUsaUJBQWlCO1lBQzNCLFNBQVMsRUFBRTtnQkFDUCxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLGNBQWMsRUFBRSxJQUFJLEVBQUUsQ0FBRSxjQUFjLEVBQUUsTUFBTSxFQUFFLFNBQVMsQ0FBRSxFQUFFO2dCQUNsRyxFQUFFLE9BQU8sRUFBRSxjQUFjLEVBQUUsUUFBUSxFQUFFLE9BQU8sSUFBSSxrQkFBa0IsRUFBRTtnQkFDcEUsRUFBRSxPQUFPLEVBQUUsTUFBTSxFQUFFLFFBQVEsRUFBRSxNQUFNLElBQUksZUFBZSxFQUFFO2dCQUN4RCxFQUFFLE9BQU8sRUFBRSxTQUFTLEVBQUUsUUFBUSxFQUFFLE9BQU8sSUFBSSxnQkFBZ0IsRUFBRTthQUNoRTtTQUNKLENBQUM7SUFDSixDQUFDO0lBRUQsTUFBTSxDQUFDLFFBQVE7UUFDYixPQUFPO1lBQ0gsUUFBUSxFQUFFLGlCQUFpQjtZQUMzQixTQUFTLEVBQUUsRUFBRTtTQUNoQixDQUFDO0lBQ0osQ0FBQzs7OEdBbEJVLGlCQUFpQjsrR0FBakIsaUJBQWlCLGlCQUpiLFlBQVksRUFBRSxhQUFhLGFBQ2hDLGdCQUFnQixhQUNoQixZQUFZLEVBQUUsYUFBYTsrR0FFMUIsaUJBQWlCLFlBSGxCLGdCQUFnQjsyRkFHZixpQkFBaUI7a0JBTDdCLFFBQVE7bUJBQUM7b0JBQ1IsWUFBWSxFQUFFLENBQUMsWUFBWSxFQUFFLGFBQWEsQ0FBQztvQkFDM0MsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQzNCLE9BQU8sRUFBRSxDQUFDLFlBQVksRUFBRSxhQUFhLENBQUM7aUJBQ3ZDIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgTmdNb2R1bGUsIE1vZHVsZVdpdGhQcm92aWRlcnMsIFR5cGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcbmltcG9ydCB7IFM1bENvbXBvbmVudCB9IGZyb20gJy4vY29tcG9uZW50cy9zNWwuY29tcG9uZW50JztcbmltcG9ydCB7IFRyYW5zbGF0ZVBpcGUgfSBmcm9tICcuL3BpcGVzL3RyYW5zbGF0ZS5waXBlJztcbmltcG9ydCB7IEh0dHBDbGllbnRNb2R1bGUgfSBmcm9tICdAYW5ndWxhci9jb21tb24vaHR0cCc7XG5pbXBvcnQgeyBSZXF1aXJlU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcmVxdWlyZS9yZXF1aXJlLmludGVyZmFjZSc7XG5pbXBvcnQgeyBQYXJzZXIgfSBmcm9tICcuL3NlcnZpY2VzL3BhcnNlci9wYXJzZXIuaW50ZXJmYWNlJztcbmltcG9ydCB7IFNpamlsT3B0cywgZGVmYXVsdFNpamlsT3B0cyB9IGZyb20gJy4vc2VydmljZXMvc2lqaWwub3B0cyc7XG5pbXBvcnQgeyBCdW5kbGVzU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvYnVuZGxlcy5zZXJ2aWNlJztcbmltcG9ydCB7IEh0dHBSZXF1aXJlU2VydmljZSB9IGZyb20gJy4vc2VydmljZXMvcmVxdWlyZS9odHRwcmVxdWlyZS5zZXJ2aWNlJztcbmltcG9ydCB7IEZyYWdtZW50c1BhcnNlciB9IGZyb20gJy4vc2VydmljZXMvcGFyc2VyL2ZyYWdtZW50cy5wYXJzZXInO1xuXG5ATmdNb2R1bGUoe1xuICBkZWNsYXJhdGlvbnM6IFtTNWxDb21wb25lbnQsIFRyYW5zbGF0ZVBpcGVdLFxuICBpbXBvcnRzOiBbSHR0cENsaWVudE1vZHVsZV0sXG4gIGV4cG9ydHM6IFtTNWxDb21wb25lbnQsIFRyYW5zbGF0ZVBpcGVdXG59KVxuZXhwb3J0IGNsYXNzIE5neE9kZVNpamlsTW9kdWxlIHtcbiAgc3RhdGljIGZvclJvb3QocmVxdWlyZT86IFR5cGU8UmVxdWlyZVNlcnZpY2U+LCBwYXJzZXI/OiBUeXBlPFBhcnNlcj4sIG9wdGlvbnM/OiBTaWppbE9wdHMpOiBNb2R1bGVXaXRoUHJvdmlkZXJzPE5neE9kZVNpamlsTW9kdWxlPiB7XG4gICAgcmV0dXJuIHtcbiAgICAgICAgbmdNb2R1bGU6IE5neE9kZVNpamlsTW9kdWxlLFxuICAgICAgICBwcm92aWRlcnM6IFtcbiAgICAgICAgICAgIHsgcHJvdmlkZTogQnVuZGxlc1NlcnZpY2UsIHVzZUNsYXNzOiBCdW5kbGVzU2VydmljZSwgZGVwczogWyBSZXF1aXJlU2VydmljZSwgUGFyc2VyLCBTaWppbE9wdHMgXSB9LFxuICAgICAgICAgICAgeyBwcm92aWRlOiBSZXF1aXJlU2VydmljZSwgdXNlQ2xhc3M6IHJlcXVpcmUgfHwgSHR0cFJlcXVpcmVTZXJ2aWNlIH0sXG4gICAgICAgICAgICB7IHByb3ZpZGU6IFBhcnNlciwgdXNlQ2xhc3M6IHBhcnNlciB8fCBGcmFnbWVudHNQYXJzZXIgfSxcbiAgICAgICAgICAgIHsgcHJvdmlkZTogU2lqaWxPcHRzLCB1c2VWYWx1ZTogb3B0aW9ucyB8fCBkZWZhdWx0U2lqaWxPcHRzIH1cbiAgICAgICAgXVxuICAgIH07XG4gIH1cblxuICBzdGF0aWMgZm9yQ2hpbGQoKTogTW9kdWxlV2l0aFByb3ZpZGVyczxOZ3hPZGVTaWppbE1vZHVsZT4ge1xuICAgIHJldHVybiB7XG4gICAgICAgIG5nTW9kdWxlOiBOZ3hPZGVTaWppbE1vZHVsZSxcbiAgICAgICAgcHJvdmlkZXJzOiBbXVxuICAgIH07XG4gIH1cbn1cbiJdfQ==
@@ -0,0 +1,18 @@
1
+ import { Pipe } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "../services/bundles.service";
4
+ export class TranslatePipe {
5
+ constructor(bundlesService) {
6
+ this.bundlesService = bundlesService;
7
+ }
8
+ transform(key, parameters, lang) {
9
+ return this.bundlesService.translate(key, parameters, lang);
10
+ }
11
+ }
12
+ TranslatePipe.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: TranslatePipe, deps: [{ token: i1.BundlesService }], target: i0.ɵɵFactoryTarget.Pipe });
13
+ TranslatePipe.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "14.1.1", ngImport: i0, type: TranslatePipe, name: "translate", pure: false });
14
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: TranslatePipe, decorators: [{
15
+ type: Pipe,
16
+ args: [{ name: 'translate', pure: false }]
17
+ }], ctorParameters: function () { return [{ type: i1.BundlesService }]; } });
18
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNsYXRlLnBpcGUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtb2RlLXNpamlsL3NyYy9saWIvcGlwZXMvdHJhbnNsYXRlLnBpcGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLElBQUksRUFBaUIsTUFBTSxlQUFlLENBQUM7OztBQUdwRCxNQUFNLE9BQU8sYUFBYTtJQUV0QixZQUFvQixjQUE4QjtRQUE5QixtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7SUFBRyxDQUFDO0lBRXRELFNBQVMsQ0FBQyxHQUFXLEVBQUUsVUFBMkIsRUFBRSxJQUFhO1FBQzdELE9BQU8sSUFBSSxDQUFDLGNBQWMsQ0FBQyxTQUFTLENBQUMsR0FBRyxFQUFFLFVBQVUsRUFBRSxJQUFJLENBQUMsQ0FBQztJQUNoRSxDQUFDOzswR0FOUSxhQUFhO3dHQUFiLGFBQWE7MkZBQWIsYUFBYTtrQkFEekIsSUFBSTttQkFBQyxFQUFDLElBQUksRUFBRSxXQUFXLEVBQUUsSUFBSSxFQUFFLEtBQUssRUFBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEJ1bmRsZXNTZXJ2aWNlIH0gZnJvbSAnLi4vc2VydmljZXMvYnVuZGxlcy5zZXJ2aWNlJztcbmltcG9ydCB7IFBpcGUsIFBpcGVUcmFuc2Zvcm0gfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQFBpcGUoe25hbWU6ICd0cmFuc2xhdGUnLCBwdXJlOiBmYWxzZX0pXG5leHBvcnQgY2xhc3MgVHJhbnNsYXRlUGlwZSBpbXBsZW1lbnRzIFBpcGVUcmFuc2Zvcm0ge1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBidW5kbGVzU2VydmljZTogQnVuZGxlc1NlcnZpY2UpIHt9XG5cbiAgICB0cmFuc2Zvcm0oa2V5OiBzdHJpbmcsIHBhcmFtZXRlcnM/OiBvYmplY3QgfCBhbnlbXSwgbGFuZz86IHN0cmluZyk6IHN0cmluZyB7XG4gICAgICAgIHJldHVybiB0aGlzLmJ1bmRsZXNTZXJ2aWNlLnRyYW5zbGF0ZShrZXksIHBhcmFtZXRlcnMsIGxhbmcpO1xuICAgIH1cblxufVxuIl19
@@ -0,0 +1,98 @@
1
+ /**
2
+ * Defines a BundlesService, whice is the main entry point for Sijil operations.
3
+ *
4
+ * A BundlesServices has three dependencies :
5
+ * - RequireService : Used to fetch bundles
6
+ * - Parser : Used to parse logic inside bundle values
7
+ * - SijilOpts : An object containing custom settings
8
+ */
9
+ export class BundlesService {
10
+ constructor(requireService, parser, sijilOpts) {
11
+ this.requireService = requireService;
12
+ this.parser = parser;
13
+ this.bundles = {};
14
+ this.defaultLanguage = sijilOpts.defaultLanguage;
15
+ if (!this.defaultLanguage && typeof window !== 'undefined') {
16
+ this.defaultLanguage = window.navigator.language.split('-')[0];
17
+ }
18
+ this.currentLanguage = this.defaultLanguage;
19
+ }
20
+ /**
21
+ * Add keys/values to an existing bundle, or create it if missing.
22
+ *
23
+ * @param bundle An object containing translations as key / values.
24
+ * @param lang The language to map the bundle with, or the current langugage if omitted.
25
+ */
26
+ addToBundle(bundle, lang) {
27
+ const targetLanguage = lang || this.currentLanguage || this.defaultLanguage || 'en';
28
+ if (!this.bundles[targetLanguage]) {
29
+ this.bundles[targetLanguage] = {};
30
+ }
31
+ this.bundles[targetLanguage] = Object.assign({}, this.bundles[targetLanguage], bundle);
32
+ if (!this.currentLanguage) {
33
+ this.currentLanguage = lang;
34
+ }
35
+ }
36
+ /**
37
+ * Loads a bundle and associates it with a language.
38
+ * If the target language already contains key/values, then we mixin the new bundle and the existing one.
39
+ *
40
+ * @param where The path, or whatever the RequireService needs to fetch the bundle.
41
+ * @param lang The target language, or the current language if omitted.
42
+ * @returns A Promise, because the RequireService can be (is - by default) asynchronous.
43
+ */
44
+ loadBundle(where, lang) {
45
+ return this.requireService.load(where)
46
+ .then(bundle => {
47
+ this.addToBundle(bundle, lang);
48
+ });
49
+ }
50
+ /**
51
+ * Loads multiple bundles and associates then with a language.
52
+ *
53
+ * @see {@link loadBundle}
54
+ */
55
+ loadBundles(specs) {
56
+ return Promise.all(specs.map((spec) => {
57
+ return this.loadBundle(spec.where, spec.lang);
58
+ }));
59
+ }
60
+ /**
61
+ * Removes a bundle from the bundles list.
62
+ *
63
+ * @param lang Language to remove.
64
+ */
65
+ unloadBundle(lang) {
66
+ delete this.bundles[lang];
67
+ }
68
+ /**
69
+ * @returns Returns a list of all loaded languages.
70
+ */
71
+ getLoadedLanguages() {
72
+ return Object.keys(this.bundles);
73
+ }
74
+ /**
75
+ * Translates a single key into a target language, using the parameters provided if needed.
76
+ *
77
+ * @param key Key to translate
78
+ * @param parameters Parameters to use if the translation contains logic.
79
+ * @param lang Target language, of the current language if omitted.
80
+ * @returns The computed translation, or the key if no match was found in the bundles (including the fallback language bundle).
81
+ */
82
+ translate(key, parameters, lang) {
83
+ const targetLanguage = lang || this.currentLanguage;
84
+ const rawTranslation = this.bundles[targetLanguage] &&
85
+ this.bundles[targetLanguage][key] ||
86
+ this.defaultLanguage &&
87
+ this.bundles[this.defaultLanguage] &&
88
+ this.bundles[this.defaultLanguage][key] ||
89
+ key;
90
+ if (rawTranslation !== key && parameters) {
91
+ return this.parser.compile(rawTranslation, parameters, (e) => { console.error(e); return key; });
92
+ }
93
+ else {
94
+ return rawTranslation;
95
+ }
96
+ }
97
+ }
98
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiYnVuZGxlcy5zZXJ2aWNlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvbmd4LW9kZS1zaWppbC9zcmMvbGliL3NlcnZpY2VzL2J1bmRsZXMuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFJQTs7Ozs7OztHQU9HO0FBQ0gsTUFBTSxPQUFPLGNBQWM7SUFFdkIsWUFBb0IsY0FBOEIsRUFBVSxNQUFjLEVBQUUsU0FBb0I7UUFBNUUsbUJBQWMsR0FBZCxjQUFjLENBQWdCO1FBQVUsV0FBTSxHQUFOLE1BQU0sQ0FBUTtRQVFsRSxZQUFPLEdBQVcsRUFBRSxDQUFDO1FBUHpCLElBQUksQ0FBQyxlQUFlLEdBQUcsU0FBUyxDQUFDLGVBQWUsQ0FBQztRQUNqRCxJQUFHLENBQUMsSUFBSSxDQUFDLGVBQWUsSUFBSSxPQUFPLE1BQU0sS0FBSyxXQUFXLEVBQUU7WUFDdkQsSUFBSSxDQUFDLGVBQWUsR0FBRyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDbEU7UUFDRCxJQUFJLENBQUMsZUFBZSxHQUFHLElBQUksQ0FBQyxlQUFlLENBQUM7SUFDaEQsQ0FBQztJQVlEOzs7OztPQUtHO0lBQ0gsV0FBVyxDQUFDLE1BQWMsRUFBRSxJQUFhO1FBQ3JDLE1BQU0sY0FBYyxHQUFHLElBQUksSUFBSSxJQUFJLENBQUMsZUFBZSxJQUFJLElBQUksQ0FBQyxlQUFlLElBQUksSUFBSSxDQUFDO1FBRXBGLElBQUcsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFO1lBQzlCLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLEdBQUcsRUFBRSxDQUFDO1NBQ3JDO1FBRUQsSUFBSSxDQUFDLE9BQU8sQ0FBQyxjQUFjLENBQUMsR0FBRyxNQUFNLENBQUMsTUFBTSxDQUFDLEVBQUUsRUFBRSxJQUFJLENBQUMsT0FBTyxDQUFDLGNBQWMsQ0FBQyxFQUFFLE1BQU0sQ0FBQyxDQUFDO1FBRXZGLElBQUcsQ0FBQyxJQUFJLENBQUMsZUFBZSxFQUFFO1lBQ3RCLElBQUksQ0FBQyxlQUFlLEdBQUcsSUFBSSxDQUFDO1NBQy9CO0lBQ0wsQ0FBQztJQUVEOzs7Ozs7O09BT0c7SUFDSCxVQUFVLENBQUMsS0FBSyxFQUFFLElBQWE7UUFDM0IsT0FBTyxJQUFJLENBQUMsY0FBYyxDQUFDLElBQUksQ0FBQyxLQUFLLENBQUM7YUFDakMsSUFBSSxDQUFDLE1BQU0sQ0FBQyxFQUFFO1lBQ1gsSUFBSSxDQUFDLFdBQVcsQ0FBQyxNQUFNLEVBQUUsSUFBSSxDQUFDLENBQUM7UUFDbkMsQ0FBQyxDQUFDLENBQUE7SUFDVixDQUFDO0lBQ0Q7Ozs7T0FJRztJQUNILFdBQVcsQ0FBQyxLQUFxQztRQUM3QyxPQUFPLE9BQU8sQ0FBQyxHQUFHLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FBQyxDQUFDLElBQUksRUFBRSxFQUFFO1lBQ2xDLE9BQU8sSUFBSSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxFQUFFLElBQUksQ0FBQyxJQUFJLENBQUMsQ0FBQztRQUNsRCxDQUFDLENBQUMsQ0FBQyxDQUFBO0lBQ1AsQ0FBQztJQUVEOzs7O09BSUc7SUFDSCxZQUFZLENBQUMsSUFBWTtRQUNyQixPQUFPLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDOUIsQ0FBQztJQUVEOztPQUVHO0lBQ0gsa0JBQWtCO1FBQ2QsT0FBTyxNQUFNLENBQUMsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPLENBQUMsQ0FBQztJQUNyQyxDQUFDO0lBRUQ7Ozs7Ozs7T0FPRztJQUNILFNBQVMsQ0FBQyxHQUFXLEVBQUUsVUFBMkIsRUFBRSxJQUFhO1FBQzdELE1BQU0sY0FBYyxHQUFHLElBQUksSUFBSSxJQUFJLENBQUMsZUFBZSxDQUFDO1FBRXBELE1BQU0sY0FBYyxHQUFZLElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDO1lBQ3hELElBQUksQ0FBQyxPQUFPLENBQUMsY0FBYyxDQUFDLENBQUMsR0FBRyxDQUFDO1lBQ2pDLElBQUksQ0FBQyxlQUFlO2dCQUNwQixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUM7Z0JBQ2xDLElBQUksQ0FBQyxPQUFPLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxDQUFDLEdBQUcsQ0FBQztZQUN2QyxHQUFHLENBQUM7UUFFUixJQUFHLGNBQWMsS0FBSyxHQUFHLElBQUksVUFBVSxFQUFFO1lBQ3JDLE9BQU8sSUFBSSxDQUFDLE1BQU0sQ0FBQyxPQUFPLENBQUMsY0FBYyxFQUFFLFVBQVUsRUFBRSxDQUFDLENBQUMsRUFBRSxFQUFFLEdBQUcsT0FBTyxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLE9BQU8sR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7U0FDcEc7YUFBTTtZQUNILE9BQU8sY0FBYyxDQUFDO1NBQ3pCO0lBQ0wsQ0FBQztDQUNKIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgUmVxdWlyZVNlcnZpY2UgfSBmcm9tICcuL3JlcXVpcmUvcmVxdWlyZS5pbnRlcmZhY2UnO1xuaW1wb3J0IHsgUGFyc2VyIH0gZnJvbSAnLi9wYXJzZXIvcGFyc2VyLmludGVyZmFjZSc7XG5pbXBvcnQgeyBTaWppbE9wdHMgfSBmcm9tICcuL3NpamlsLm9wdHMnO1xuXG4vKipcbiAqIERlZmluZXMgYSBCdW5kbGVzU2VydmljZSwgd2hpY2UgaXMgdGhlIG1haW4gZW50cnkgcG9pbnQgZm9yIFNpamlsIG9wZXJhdGlvbnMuXG4gKlxuICogQSBCdW5kbGVzU2VydmljZXMgaGFzIHRocmVlIGRlcGVuZGVuY2llcyA6XG4gKiAtIFJlcXVpcmVTZXJ2aWNlIDogVXNlZCB0byBmZXRjaCBidW5kbGVzXG4gKiAtIFBhcnNlciA6IFVzZWQgdG8gcGFyc2UgbG9naWMgaW5zaWRlIGJ1bmRsZSB2YWx1ZXNcbiAqIC0gU2lqaWxPcHRzIDogQW4gb2JqZWN0IGNvbnRhaW5pbmcgY3VzdG9tIHNldHRpbmdzXG4gKi9cbmV4cG9ydCBjbGFzcyBCdW5kbGVzU2VydmljZSB7XG5cbiAgICBjb25zdHJ1Y3Rvcihwcml2YXRlIHJlcXVpcmVTZXJ2aWNlOiBSZXF1aXJlU2VydmljZSwgcHJpdmF0ZSBwYXJzZXI6IFBhcnNlciwgc2lqaWxPcHRzOiBTaWppbE9wdHMpIHtcbiAgICAgICAgdGhpcy5kZWZhdWx0TGFuZ3VhZ2UgPSBzaWppbE9wdHMuZGVmYXVsdExhbmd1YWdlO1xuICAgICAgICBpZighdGhpcy5kZWZhdWx0TGFuZ3VhZ2UgJiYgdHlwZW9mIHdpbmRvdyAhPT0gJ3VuZGVmaW5lZCcpIHtcbiAgICAgICAgICAgIHRoaXMuZGVmYXVsdExhbmd1YWdlID0gd2luZG93Lm5hdmlnYXRvci5sYW5ndWFnZS5zcGxpdCgnLScpWzBdO1xuICAgICAgICB9XG4gICAgICAgIHRoaXMuY3VycmVudExhbmd1YWdlID0gdGhpcy5kZWZhdWx0TGFuZ3VhZ2U7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBidW5kbGVzOiBPYmplY3QgPSB7fTtcbiAgICAvKipcbiAgICAgKiBGYWxsYmFjayBsYW5ndWFnZS5cbiAgICAgKi9cbiAgICBkZWZhdWx0TGFuZ3VhZ2U6IHN0cmluZztcbiAgICAvKipcbiAgICAgKiBDdXJyZW50IGxhbmd1YWdlLlxuICAgICAqL1xuICAgIGN1cnJlbnRMYW5ndWFnZTogc3RyaW5nO1xuXG4gICAgLyoqXG4gICAgICogQWRkIGtleXMvdmFsdWVzIHRvIGFuIGV4aXN0aW5nIGJ1bmRsZSwgb3IgY3JlYXRlIGl0IGlmIG1pc3NpbmcuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gYnVuZGxlIEFuIG9iamVjdCBjb250YWluaW5nIHRyYW5zbGF0aW9ucyBhcyBrZXkgLyB2YWx1ZXMuXG4gICAgICogQHBhcmFtIGxhbmcgVGhlIGxhbmd1YWdlIHRvIG1hcCB0aGUgYnVuZGxlIHdpdGgsIG9yIHRoZSBjdXJyZW50IGxhbmd1Z2FnZSBpZiBvbWl0dGVkLlxuICAgICAqL1xuICAgIGFkZFRvQnVuZGxlKGJ1bmRsZTogT2JqZWN0LCBsYW5nPzogc3RyaW5nKSA6IHZvaWQge1xuICAgICAgICBjb25zdCB0YXJnZXRMYW5ndWFnZSA9IGxhbmcgfHwgdGhpcy5jdXJyZW50TGFuZ3VhZ2UgfHwgdGhpcy5kZWZhdWx0TGFuZ3VhZ2UgfHwgJ2VuJztcblxuICAgICAgICBpZighdGhpcy5idW5kbGVzW3RhcmdldExhbmd1YWdlXSkge1xuICAgICAgICAgICAgdGhpcy5idW5kbGVzW3RhcmdldExhbmd1YWdlXSA9IHt9O1xuICAgICAgICB9XG5cbiAgICAgICAgdGhpcy5idW5kbGVzW3RhcmdldExhbmd1YWdlXSA9IE9iamVjdC5hc3NpZ24oe30sIHRoaXMuYnVuZGxlc1t0YXJnZXRMYW5ndWFnZV0sIGJ1bmRsZSk7XG5cbiAgICAgICAgaWYoIXRoaXMuY3VycmVudExhbmd1YWdlKSB7XG4gICAgICAgICAgICB0aGlzLmN1cnJlbnRMYW5ndWFnZSA9IGxhbmc7XG4gICAgICAgIH1cbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBMb2FkcyBhIGJ1bmRsZSBhbmQgYXNzb2NpYXRlcyBpdCB3aXRoIGEgbGFuZ3VhZ2UuXG4gICAgICogSWYgdGhlIHRhcmdldCBsYW5ndWFnZSBhbHJlYWR5IGNvbnRhaW5zIGtleS92YWx1ZXMsIHRoZW4gd2UgbWl4aW4gdGhlIG5ldyBidW5kbGUgYW5kIHRoZSBleGlzdGluZyBvbmUuXG4gICAgICpcbiAgICAgKiBAcGFyYW0gd2hlcmUgVGhlIHBhdGgsIG9yIHdoYXRldmVyIHRoZSBSZXF1aXJlU2VydmljZSBuZWVkcyB0byBmZXRjaCB0aGUgYnVuZGxlLlxuICAgICAqIEBwYXJhbSBsYW5nIFRoZSB0YXJnZXQgbGFuZ3VhZ2UsIG9yIHRoZSBjdXJyZW50IGxhbmd1YWdlIGlmIG9taXR0ZWQuXG4gICAgICogQHJldHVybnMgQSBQcm9taXNlLCBiZWNhdXNlIHRoZSBSZXF1aXJlU2VydmljZSBjYW4gYmUgKGlzIC0gYnkgZGVmYXVsdCkgYXN5bmNocm9ub3VzLlxuICAgICAqL1xuICAgIGxvYWRCdW5kbGUod2hlcmUsIGxhbmc/OiBzdHJpbmcpIDogUHJvbWlzZTx2b2lkPiB7XG4gICAgICAgIHJldHVybiB0aGlzLnJlcXVpcmVTZXJ2aWNlLmxvYWQod2hlcmUpXG4gICAgICAgICAgICAudGhlbihidW5kbGUgPT4ge1xuICAgICAgICAgICAgICAgIHRoaXMuYWRkVG9CdW5kbGUoYnVuZGxlLCBsYW5nKTtcbiAgICAgICAgICAgIH0pXG4gICAgfVxuICAgIC8qKlxuICAgICAqIExvYWRzIG11bHRpcGxlIGJ1bmRsZXMgYW5kIGFzc29jaWF0ZXMgdGhlbiB3aXRoIGEgbGFuZ3VhZ2UuXG4gICAgICpcbiAgICAgKiBAc2VlIHtAbGluayBsb2FkQnVuZGxlfVxuICAgICAqL1xuICAgIGxvYWRCdW5kbGVzKHNwZWNzOiB7IGxhbmc6IHN0cmluZywgd2hlcmU6IGFueSB9W10pOiBQcm9taXNlPHZvaWRbXT4ge1xuICAgICAgICByZXR1cm4gUHJvbWlzZS5hbGwoc3BlY3MubWFwKChzcGVjKSA9PiB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5sb2FkQnVuZGxlKHNwZWMud2hlcmUsIHNwZWMubGFuZyk7XG4gICAgICAgIH0pKVxuICAgIH1cblxuICAgIC8qKlxuICAgICAqIFJlbW92ZXMgYSBidW5kbGUgZnJvbSB0aGUgYnVuZGxlcyBsaXN0LlxuICAgICAqXG4gICAgICogQHBhcmFtIGxhbmcgTGFuZ3VhZ2UgdG8gcmVtb3ZlLlxuICAgICAqL1xuICAgIHVubG9hZEJ1bmRsZShsYW5nOiBzdHJpbmcpOiB2b2lkIHtcbiAgICAgICAgZGVsZXRlIHRoaXMuYnVuZGxlc1tsYW5nXTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBAcmV0dXJucyBSZXR1cm5zIGEgbGlzdCBvZiBhbGwgbG9hZGVkIGxhbmd1YWdlcy5cbiAgICAgKi9cbiAgICBnZXRMb2FkZWRMYW5ndWFnZXMoKSA6IHN0cmluZ1tdIHtcbiAgICAgICAgcmV0dXJuIE9iamVjdC5rZXlzKHRoaXMuYnVuZGxlcyk7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogVHJhbnNsYXRlcyBhIHNpbmdsZSBrZXkgaW50byBhIHRhcmdldCBsYW5ndWFnZSwgdXNpbmcgdGhlIHBhcmFtZXRlcnMgcHJvdmlkZWQgaWYgbmVlZGVkLlxuICAgICAqXG4gICAgICogQHBhcmFtIGtleSBLZXkgdG8gdHJhbnNsYXRlXG4gICAgICogQHBhcmFtIHBhcmFtZXRlcnMgUGFyYW1ldGVycyB0byB1c2UgaWYgdGhlIHRyYW5zbGF0aW9uIGNvbnRhaW5zIGxvZ2ljLlxuICAgICAqIEBwYXJhbSBsYW5nIFRhcmdldCBsYW5ndWFnZSwgb2YgdGhlIGN1cnJlbnQgbGFuZ3VhZ2UgaWYgb21pdHRlZC5cbiAgICAgKiBAcmV0dXJucyBUaGUgY29tcHV0ZWQgdHJhbnNsYXRpb24sIG9yIHRoZSBrZXkgaWYgbm8gbWF0Y2ggd2FzIGZvdW5kIGluIHRoZSBidW5kbGVzIChpbmNsdWRpbmcgdGhlIGZhbGxiYWNrIGxhbmd1YWdlIGJ1bmRsZSkuXG4gICAgICovXG4gICAgdHJhbnNsYXRlKGtleTogc3RyaW5nLCBwYXJhbWV0ZXJzPzogT2JqZWN0IHwgYW55W10sIGxhbmc/OiBzdHJpbmcpIDogc3RyaW5nIHtcbiAgICAgICAgY29uc3QgdGFyZ2V0TGFuZ3VhZ2UgPSBsYW5nIHx8IHRoaXMuY3VycmVudExhbmd1YWdlO1xuXG4gICAgICAgIGNvbnN0IHJhd1RyYW5zbGF0aW9uIDogc3RyaW5nID0gdGhpcy5idW5kbGVzW3RhcmdldExhbmd1YWdlXSAmJlxuICAgICAgICAgICAgdGhpcy5idW5kbGVzW3RhcmdldExhbmd1YWdlXVtrZXldIHx8XG4gICAgICAgICAgICB0aGlzLmRlZmF1bHRMYW5ndWFnZSAmJlxuICAgICAgICAgICAgdGhpcy5idW5kbGVzW3RoaXMuZGVmYXVsdExhbmd1YWdlXSAmJlxuICAgICAgICAgICAgdGhpcy5idW5kbGVzW3RoaXMuZGVmYXVsdExhbmd1YWdlXVtrZXldIHx8XG4gICAgICAgICAgICBrZXk7XG5cbiAgICAgICAgaWYocmF3VHJhbnNsYXRpb24gIT09IGtleSAmJiBwYXJhbWV0ZXJzKSB7XG4gICAgICAgICAgICByZXR1cm4gdGhpcy5wYXJzZXIuY29tcGlsZShyYXdUcmFuc2xhdGlvbiwgcGFyYW1ldGVycywgKGUpID0+IHsgY29uc29sZS5lcnJvcihlKTsgcmV0dXJuIGtleTsgfSk7XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICByZXR1cm4gcmF3VHJhbnNsYXRpb247XG4gICAgICAgIH1cbiAgICB9XG59XG4iXX0=
@@ -0,0 +1,142 @@
1
+ import { ParserError } from './parser.interface';
2
+ /**
3
+ * The default Sijil parser.
4
+ *
5
+ * - Input : bundle value (translation) + parameters (Object or Array)
6
+ * - Output : compiled translation
7
+ *
8
+ * Logic is contained inside mustache blocks : {{ LOGIC BLOCK }}
9
+ *
10
+ * There are two variants :
11
+ * - A single parameter key (when the params are contained inside an object) or index (params contained inside an array)
12
+ *
13
+ * Examples:
14
+ *
15
+ * {{ key }} + { "key" : "my key" } = my key
16
+ *
17
+ * {{ 1 }} + [1, 2] = 2
18
+ *
19
+ * - A ternary-like condition
20
+ *
21
+ * {{ condition ? trueValue : falseValue }}
22
+ * Where condition may be : a single parameter key/index, or 2 clauses with the following operators : ==, >, =>, <=, <
23
+ *
24
+ * Examples:
25
+ *
26
+ * (the $ sign to refer to a variable is mandatory when a clause contains more than 1 word)
27
+ *
28
+ * {{ count > 1 ? $count cats : 1 cat }} + {"count": 10} = 10 cats
29
+ * {{ 1 < count ? $count cats : 1 cat }} + {"count": 1} = 1 cat
30
+ *
31
+ * @export
32
+ */
33
+ // @dynamic
34
+ export class FragmentsParser {
35
+ constructor() { }
36
+ getParameter(parameters, fragment, strict) {
37
+ const splittedFrag = fragment.split(/\s+/);
38
+ if (splittedFrag.length === 1) {
39
+ return fragment[0] === '$' ?
40
+ parameters[fragment.substr(1)] :
41
+ strict ?
42
+ fragment :
43
+ parameters[fragment] !== undefined ?
44
+ parameters[fragment] :
45
+ fragment;
46
+ }
47
+ return fragment.split(/\s+/).reduce((l, r) => {
48
+ l.push(r[0] === '$' ? parameters[r.substr(1)] : r);
49
+ return l;
50
+ }, []).join(' ');
51
+ }
52
+ compileFragment(fragment, parameters) {
53
+ fragment = fragment.replace(/{{|}}/g, '');
54
+ let interrogationIndex;
55
+ let dotsIndex;
56
+ if ((interrogationIndex = fragment.indexOf('?')) > 0 && (dotsIndex = fragment.lastIndexOf(':')) > 1) {
57
+ const condition = fragment.substring(0, interrogationIndex).trim();
58
+ const trueReturn = fragment.substring(interrogationIndex + 1, dotsIndex).trim();
59
+ const falseReturn = fragment.substring(dotsIndex + 1).trim();
60
+ const computedTrueReturn = this.getParameter(parameters, trueReturn);
61
+ const computedFalseReturn = this.getParameter(parameters, falseReturn);
62
+ const splittedCondition = condition.split(/\s+/);
63
+ if (splittedCondition.length === 1) {
64
+ // Single variable case
65
+ const variable = parameters[splittedCondition[0]];
66
+ return variable ?
67
+ computedTrueReturn :
68
+ computedFalseReturn;
69
+ }
70
+ else if (splittedCondition.length === 3) {
71
+ // Operator case
72
+ const leftHandParam = this.getParameter(parameters, splittedCondition[0], parameters instanceof Array);
73
+ const rightHand = this.getParameter(parameters, splittedCondition[2], parameters instanceof Array);
74
+ const comparisonOperator = splittedCondition[1];
75
+ switch (comparisonOperator) {
76
+ case '==':
77
+ return leftHandParam === rightHand ?
78
+ computedTrueReturn :
79
+ computedFalseReturn;
80
+ case '>':
81
+ return leftHandParam > rightHand ?
82
+ computedTrueReturn :
83
+ computedFalseReturn;
84
+ case '>=':
85
+ return leftHandParam >= rightHand ?
86
+ computedTrueReturn :
87
+ computedFalseReturn;
88
+ case '<':
89
+ return leftHandParam < rightHand ?
90
+ computedTrueReturn :
91
+ computedFalseReturn;
92
+ case '<=':
93
+ return leftHandParam <= rightHand ?
94
+ computedTrueReturn :
95
+ computedFalseReturn;
96
+ default:
97
+ throw new ParserError(`Invalid conditional operator for fragment : ${fragment}`, fragment);
98
+ }
99
+ }
100
+ else {
101
+ throw new ParserError(`Invalid condition for fragment : ${fragment}`, fragment);
102
+ }
103
+ }
104
+ else {
105
+ fragment = fragment.trim();
106
+ return parameters[fragment];
107
+ }
108
+ }
109
+ compile(rawTranslation, parameters, onError) {
110
+ const parts = rawTranslation.split(FragmentsParser.delimRegexp);
111
+ const fragments = rawTranslation.match(FragmentsParser.delimRegexp);
112
+ let compiledTranslation = '';
113
+ if (!onError) {
114
+ onError = FragmentsParser.defaultErrorCallback;
115
+ }
116
+ if (!fragments) {
117
+ compiledTranslation += rawTranslation;
118
+ }
119
+ else {
120
+ for (let i = 0; i < parts.length; i++) {
121
+ compiledTranslation += parts[i];
122
+ if (i > fragments.length - 1) {
123
+ continue;
124
+ }
125
+ try {
126
+ compiledTranslation += this.compileFragment(fragments[i], parameters);
127
+ }
128
+ catch (e) {
129
+ compiledTranslation += onError(e);
130
+ }
131
+ }
132
+ }
133
+ return compiledTranslation;
134
+ }
135
+ }
136
+ FragmentsParser.delimiters = ['{{', '}}'];
137
+ FragmentsParser.delimRegexp = new RegExp(`${FragmentsParser.delimiters[0]}[^}]+${FragmentsParser.delimiters[1]}`, 'gm');
138
+ FragmentsParser.defaultErrorCallback = (e) => {
139
+ console.error(e);
140
+ return e.fragment;
141
+ };
142
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZnJhZ21lbnRzLnBhcnNlci5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1vZGUtc2lqaWwvc3JjL2xpYi9zZXJ2aWNlcy9wYXJzZXIvZnJhZ21lbnRzLnBhcnNlci50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQTBCLFdBQVcsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBRXpFOzs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7R0E4Qkc7QUFDSCxXQUFXO0FBQ1gsTUFBTSxPQUFPLGVBQWU7SUFFeEIsZ0JBQWMsQ0FBQztJQVVQLFlBQVksQ0FBQyxVQUEwQixFQUFFLFFBQWdCLEVBQUUsTUFBZ0I7UUFDL0UsTUFBTSxZQUFZLEdBQUcsUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQztRQUMzQyxJQUFHLFlBQVksQ0FBQyxNQUFNLEtBQUssQ0FBQyxFQUFFO1lBQzFCLE9BQU8sUUFBUSxDQUFDLENBQUMsQ0FBQyxLQUFLLEdBQUcsQ0FBQyxDQUFDO2dCQUN4QixVQUFVLENBQUMsUUFBUSxDQUFDLE1BQU0sQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUM7Z0JBQ2hDLE1BQU0sQ0FBQyxDQUFDO29CQUNKLFFBQVEsQ0FBQyxDQUFDO29CQUNWLFVBQVUsQ0FBQyxRQUFRLENBQUMsS0FBSyxTQUFTLENBQUMsQ0FBQzt3QkFDaEMsVUFBVSxDQUFDLFFBQVEsQ0FBQyxDQUFDLENBQUM7d0JBQ3RCLFFBQVEsQ0FBQztTQUN4QjtRQUNELE9BQU8sUUFBUSxDQUFDLEtBQUssQ0FBQyxLQUFLLENBQUMsQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxFQUFFLEVBQUU7WUFDekMsQ0FBQyxDQUFDLElBQUksQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEtBQUssR0FBRyxDQUFDLENBQUMsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxD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QUFJLENBQUMsZUFBZSxDQUFDLFNBQVMsQ0FBQyxDQUFDLENBQUMsRUFBRSxVQUFVLENBQUMsQ0FBQztpQkFDekU7Z0JBQUMsT0FBTyxDQUFDLEVBQUU7b0JBQ1IsbUJBQW1CLElBQUksT0FBTyxDQUFDLENBQUMsQ0FBQyxDQUFDO2lCQUNyQzthQUNKO1NBQ0o7UUFFRCxPQUFPLG1CQUFtQixDQUFDO0lBRS9CLENBQUM7O0FBeEhjLDBCQUFVLEdBQWEsQ0FBQyxJQUFJLEVBQUUsSUFBSSxDQUFDLENBQUM7QUFDcEMsMkJBQVcsR0FBRyxJQUFJLE1BQU0sQ0FBQyxHQUFHLGVBQWUsQ0FBQyxVQUFVLENBQUMsQ0FBQyxDQUFDLFFBQVEsZUFBZSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFLElBQUksQ0FBQyxDQUFDO0FBRXhHLG9DQUFvQixHQUFtQixDQUFDLENBQWMsRUFBRSxFQUFFO0lBQ3JFLE9BQU8sQ0FBQyxLQUFLLENBQUMsQ0FBQyxDQUFDLENBQUM7SUFDakIsT0FBTyxDQUFDLENBQUMsUUFBUSxDQUFDO0FBQ3RCLENBQUMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFBhcnNlciwgUGFyc2VyQ2FsbGJhY2ssIFBhcnNlckVycm9yIH0gZnJvbSAnLi9wYXJzZXIuaW50ZXJmYWNlJztcblxuLyoqXG4gKiBUaGUgZGVmYXVsdCBTaWppbCBwYXJzZXIuXG4gKlxuICogLSBJbnB1dCA6IGJ1bmRsZSB2YWx1ZSAodHJhbnNsYXRpb24pICsgcGFyYW1ldGVycyAoT2JqZWN0IG9yIEFycmF5KVxuICogLSBPdXRwdXQgOiBjb21waWxlZCB0cmFuc2xhdGlvblxuICpcbiAqIExvZ2ljIGlzIGNvbnRhaW5lZCBpbnNpZGUgbXVzdGFjaGUgYmxvY2tzIDoge3sgTE9HSUMgQkxPQ0sgfX1cbiAqXG4gKiBUaGVyZSBhcmUgdHdvIHZhcmlhbnRzIDpcbiAqICAtIEEgc2luZ2xlIHBhcmFtZXRlciBrZXkgKHdoZW4gdGhlIHBhcmFtcyBhcmUgY29udGFpbmVkIGluc2lkZSBhbiBvYmplY3QpIG9yIGluZGV4IChwYXJhbXMgY29udGFpbmVkIGluc2lkZSBhbiBhcnJheSlcbiAqXG4gKiBFeGFtcGxlczpcbiAqXG4gKiB7eyBrZXkgfX0gKyB7IFwia2V5XCIgOiBcIm15IGtleVwiIH0gPSBteSBrZXlcbiAqXG4gKiB7eyAxIH19ICsgWzEsIDJdID0gMlxuICpcbiAqICAtIEEgdGVybmFyeS1saWtlIGNvbmRpdGlvblxuICpcbiAqIHt7IGNvbmRpdGlvbiA/IHRydWVWYWx1ZSA6IGZhbHNlVmFsdWUgfX1cbiAqIFdoZXJlIGNvbmRpdGlvbiBtYXkgYmUgOiBhIHNpbmdsZSBwYXJhbWV0ZXIga2V5L2luZGV4LCBvciAyIGNsYXVzZXMgd2l0aCB0aGUgZm9sbG93aW5nIG9wZXJhdG9ycyA6ID09LCA+LCA9PiwgPD0sIDxcbiAqXG4gKiBFeGFtcGxlczpcbiAqXG4gKiAodGhlICQgc2lnbiB0byByZWZlciB0byBhIHZhcmlhYmxlIGlzIG1hbmRhdG9yeSB3aGVuIGEgY2xhdXNlIGNvbnRhaW5zIG1vcmUgdGhhbiAxIHdvcmQpXG4gKlxuICoge3sgY291bnQgPiAxID8gJGNvdW50IGNhdHMgOiAxIGNhdCB9fSArIHtcImNvdW50XCI6IDEwfSA9IDEwIGNhdHNcbiAqIHt7IDEgPCBjb3VudCA/ICRjb3VudCBjYXRzIDogMSBjYXQgfX0gKyB7XCJjb3VudFwiOiAxfSA9IDEgY2F0XG4gKlxuICogQGV4cG9ydFxuICovXG4vLyBAZHluYW1pY1xuZXhwb3J0IGNsYXNzIEZyYWdtZW50c1BhcnNlciBpbXBsZW1lbnRzIFBhcnNlciB7XG5cbiAgICBjb25zdHJ1Y3Rvcigpe31cblxuICAgIHByaXZhdGUgc3RhdGljIGRlbGltaXRlcnM6IHN0cmluZ1tdID0gWyd7eycsICd9fSddO1xuICAgIHByaXZhdGUgc3RhdGljIGRlbGltUmVnZXhwID0gbmV3IFJlZ0V4cChgJHtGcmFnbWVudHNQYXJzZXIuZGVsaW1pdGVyc1swXX1bXn1dKyR7RnJhZ21lbnRzUGFyc2VyLmRlbGltaXRlcnNbMV19YCwgJ2dtJyk7XG5cbiAgICBwcml2YXRlIHN0YXRpYyBkZWZhdWx0RXJyb3JDYWxsYmFjazogUGFyc2VyQ2FsbGJhY2sgPSAoZTogUGFyc2VyRXJyb3IpID0+IHtcbiAgICAgICAgY29uc29sZS5lcnJvcihlKTtcbiAgICAgICAgcmV0dXJuIGUuZnJhZ21lbnQ7XG4gICAgfVxuXG4gICAgcHJpdmF0ZSBnZXRQYXJhbWV0ZXIocGFyYW1ldGVyczogT2JqZWN0IHwgYW55W10sIGZyYWdtZW50OiBzdHJpbmcsIHN0cmljdD86IGJvb2xlYW4pOiBzdHJpbmcge1xuICAgICAgICBjb25zdCBzcGxpdHRlZEZyYWcgPSBmcmFnbWVudC5zcGxpdCgvXFxzKy8pO1xuICAgICAgICBpZihzcGxpdHRlZEZyYWcubGVuZ3RoID09PSAxKSB7XG4gICAgICAgICAgICByZXR1cm4gZnJhZ21lbnRbMF0gPT09ICckJyA/XG4gICAgICAgICAgICAgICAgcGFyYW1ldGVyc1tmcmFnbWVudC5zdWJzdHIoMSldIDpcbiAgICAgICAgICAgICAgICBzdHJpY3QgP1xuICAgICAgICAgICAgICAgICAgICBmcmFnbWVudCA6XG4gICAgICAgICAgICAgICAgICAgIHBhcmFtZXRlcnNbZnJhZ21lbnRdICE9PSB1bmRlZmluZWQgP1xuICAgICAgICAgICAgICAgICAgICAgICAgcGFyYW1ldGVyc1tmcmFnbWVudF0gOlxuICAgICAgICAgICAgICAgICAgICAgICAgZnJhZ21lbnQ7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIGZyYWdtZW50LnNwbGl0KC9cXHMrLykucmVkdWNlKChsLCByKSA9PiB7XG4gICAgICAgICAgICBsLnB1c2goclswXSA9PT0gJyQnID8gcGFyYW1ldGVyc1tyLnN1YnN0cigxKV0gOiByKTtcbiAgICAgICAgICAgIHJldHVybiBsO1xuICAgICAgICB9LCBbXSkuam9pbignICcpO1xuICAgIH1cblxuICAgIHByaXZhdGUgY29tcGlsZUZyYWdtZW50KGZyYWdtZW50OiBzdHJpbmcsIHBhcmFtZXRlcnM6IE9iamVjdCB8IGFueVtdKTogc3RyaW5nIHtcbiAgICAgICAgZnJhZ21lbnQgPSBmcmFnbWVudC5yZXBsYWNlKC97e3x9fS9nLCAnJyk7XG5cbiAgICAgICAgbGV0IGludGVycm9nYXRpb25JbmRleDtcbiAgICAgICAgbGV0IGRvdHNJbmRleDtcbiAgICAgICAgaWYgKChpbnRlcnJvZ2F0aW9uSW5kZXggPSBmcmFnbWVudC5pbmRleE9mKCc/JykpID4gMCAmJiAoZG90c0luZGV4ID0gZnJhZ21lbnQubGFzdEluZGV4T2YoJzonKSkgPiAxKSB7XG4gICAgICAgICAgICBjb25zdCBjb25kaXRpb24gPSBmcmFnbWVudC5zdWJzdHJpbmcoMCwgaW50ZXJyb2dhdGlvbkluZGV4KS50cmltKCk7XG4gICAgICAgICAgICBjb25zdCB0cnVlUmV0dXJuID0gZnJhZ21lbnQuc3Vic3RyaW5nKGludGVycm9nYXRpb25JbmRleCArIDEsIGRvdHNJbmRleCkudHJpbSgpO1xuICAgICAgICAgICAgY29uc3QgZmFsc2VSZXR1cm4gPSBmcmFnbWVudC5zdWJzdHJpbmcoZG90c0luZGV4ICsgMSkudHJpbSgpO1xuICAgICAgICAgICAgY29uc3QgY29tcHV0ZWRUcnVlUmV0dXJuID0gdGhpcy5nZXRQYXJhbWV0ZXIocGFyYW1ldGVycywgdHJ1ZVJldHVybik7XG4gICAgICAgICAgICBjb25zdCBjb21wdXRlZEZhbHNlUmV0dXJuID0gdGhpcy5nZXRQYXJhbWV0ZXIocGFyYW1ldGVycywgZmFsc2VSZXR1cm4pO1xuXG4gICAgICAgICAgICBjb25zdCBzcGxpdHRlZENvbmRpdGlvbiA9IGNvbmRpdGlvbi5zcGxpdCgvXFxzKy8pO1xuXG4gICAgICAgICAgICBpZiAoc3BsaXR0ZWRDb25kaXRpb24ubGVuZ3RoID09PSAxKSB7XG5cbiAgICAgICAgICAgICAgICAvLyBTaW5nbGUgdmFyaWFibGUgY2FzZVxuXG4gICAgICAgICAgICAgICAgY29uc3QgdmFyaWFibGUgPSBwYXJhbWV0ZXJzW3NwbGl0dGVkQ29uZGl0aW9uWzBdXTtcblxuICAgICAgICAgICAgICAgIHJldHVybiB2YXJpYWJsZSA/XG4gICAgICAgICAgICAgICAgICAgIGNvbXB1dGVkVHJ1ZVJldHVybiA6XG4gICAgICAgICAgICAgICAgICAgIGNvbXB1dGVkRmFsc2VSZXR1cm47XG5cbiAgICAgICAgICAgIH0gZWxzZSBpZiAoc3BsaXR0ZWRDb25kaXRpb24ubGVuZ3RoID09PSAzKSB7XG5cbiAgICAgICAgICAgICAgICAvLyBPcGVyYXRvciBjYXNlXG5cbiAgICAgICAgICAgICAgICBjb25zdCBsZWZ0SGFuZFBhcmFtID0gdGhpcy5nZXRQYXJhbWV0ZXIocGFyYW1ldGVycywgc3BsaXR0ZWRDb25kaXRpb25bMF0sIHBhcmFtZXRlcnMgaW5zdGFuY2VvZiBBcnJheSk7XG4gICAgICAgICAgICAgICAgY29uc3QgcmlnaHRIYW5kID0gdGhpcy5nZXRQYXJhbWV0ZXIocGFyYW1ldGVycywgc3BsaXR0ZWRDb25kaXRpb25bMl0sIHBhcmFtZXRlcnMgaW5zdGFuY2VvZiBBcnJheSk7XG4gICAgICAgICAgICAgICAgY29uc3QgY29tcGFyaXNvbk9wZXJhdG9yID0gc3BsaXR0ZWRDb25kaXRpb25bMV07XG5cbiAgICAgICAgICAgICAgICBzd2l0Y2ggKGNvbXBhcmlzb25PcGVyYXRvcikge1xuICAgICAgICAgICAgICAgICAgICBjYXNlICc9PSc6XG4gICAgICAgICAgICAgICAgICAgICAgICByZXR1cm4gbGVmdEhhbmRQYXJhbSA9PT0gcmlnaHRIYW5kID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wdXRlZFRydWVSZXR1cm4gOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXB1dGVkRmFsc2VSZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJz4nOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxlZnRIYW5kUGFyYW0gPiByaWdodEhhbmQgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXB1dGVkVHJ1ZVJldHVybiA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWRGYWxzZVJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnPj0nOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxlZnRIYW5kUGFyYW0gPj0gcmlnaHRIYW5kID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wdXRlZFRydWVSZXR1cm4gOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXB1dGVkRmFsc2VSZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJzwnOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxlZnRIYW5kUGFyYW0gPCByaWdodEhhbmQgP1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXB1dGVkVHJ1ZVJldHVybiA6XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgY29tcHV0ZWRGYWxzZVJldHVybjtcbiAgICAgICAgICAgICAgICAgICAgY2FzZSAnPD0nOlxuICAgICAgICAgICAgICAgICAgICAgICAgcmV0dXJuIGxlZnRIYW5kUGFyYW0gPD0gcmlnaHRIYW5kID9cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBjb21wdXRlZFRydWVSZXR1cm4gOlxuICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbXB1dGVkRmFsc2VSZXR1cm47XG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgICAgICAgICAgICAgICB0aHJvdyBuZXcgUGFyc2VyRXJyb3IoYEludmFsaWQgY29uZGl0aW9uYWwgb3BlcmF0b3IgZm9yIGZyYWdtZW50IDogJHtmcmFnbWVudH1gLCBmcmFnbWVudCk7XG4gICAgICAgICAgICAgICAgfVxuXG4gICAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgICAgIHRocm93IG5ldyBQYXJzZXJFcnJvcihgSW52YWxpZCBjb25kaXRpb24gZm9yIGZyYWdtZW50IDogJHtmcmFnbWVudH1gLCBmcmFnbWVudCk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH0gZWxzZSB7XG4gICAgICAgICAgICBmcmFnbWVudCA9IGZyYWdtZW50LnRyaW0oKTtcbiAgICAgICAgICAgIHJldHVybiBwYXJhbWV0ZXJzW2ZyYWdtZW50XTtcbiAgICAgICAgfVxuICAgIH1cblxuICAgIGNvbXBpbGUocmF3VHJhbnNsYXRpb246IHN0cmluZywgcGFyYW1ldGVyczogT2JqZWN0LCBvbkVycm9yPzogUGFyc2VyQ2FsbGJhY2spOiBzdHJpbmcge1xuXG4gICAgICAgIGNvbnN0IHBhcnRzID0gcmF3VHJhbnNsYXRpb24uc3BsaXQoRnJhZ21lbnRzUGFyc2VyLmRlbGltUmVnZXhwKTtcbiAgICAgICAgY29uc3QgZnJhZ21lbnRzID0gcmF3VHJhbnNsYXRpb24ubWF0Y2goRnJhZ21lbnRzUGFyc2VyLmRlbGltUmVnZXhwKTtcblxuICAgICAgICBsZXQgY29tcGlsZWRUcmFuc2xhdGlvbiA9ICcnO1xuXG4gICAgICAgIGlmICghb25FcnJvcikge1xuICAgICAgICAgICAgb25FcnJvciA9IEZyYWdtZW50c1BhcnNlci5kZWZhdWx0RXJyb3JDYWxsYmFjaztcbiAgICAgICAgfVxuXG4gICAgICAgIGlmICghZnJhZ21lbnRzKSB7XG4gICAgICAgICAgICBjb21waWxlZFRyYW5zbGF0aW9uICs9IHJhd1RyYW5zbGF0aW9uO1xuICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgZm9yIChsZXQgaSA9IDA7IGkgPCBwYXJ0cy5sZW5ndGg7IGkrKykge1xuICAgICAgICAgICAgICAgIGNvbXBpbGVkVHJhbnNsYXRpb24gKz0gcGFydHNbaV07XG4gICAgICAgICAgICAgICAgaWYgKGkgPiBmcmFnbWVudHMubGVuZ3RoIC0gMSkge1xuICAgICAgICAgICAgICAgICAgICBjb250aW51ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgdHJ5IHtcbiAgICAgICAgICAgICAgICAgICAgY29tcGlsZWRUcmFuc2xhdGlvbiArPSB0aGlzLmNvbXBpbGVGcmFnbWVudChmcmFnbWVudHNbaV0sIHBhcmFtZXRlcnMpO1xuICAgICAgICAgICAgICAgIH0gY2F0Y2ggKGUpIHtcbiAgICAgICAgICAgICAgICAgICAgY29tcGlsZWRUcmFuc2xhdGlvbiArPSBvbkVycm9yKGUpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuXG4gICAgICAgIHJldHVybiBjb21waWxlZFRyYW5zbGF0aW9uO1xuXG4gICAgfVxuXG59XG4iXX0=
@@ -0,0 +1,15 @@
1
+ export class ParserError extends Error {
2
+ constructor(message, fragment) {
3
+ super(message);
4
+ this.message = message;
5
+ this.fragment = fragment;
6
+ }
7
+ }
8
+ /**
9
+ * Parses logic inside translations.
10
+ *
11
+ * @export
12
+ */
13
+ export class Parser {
14
+ }
15
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFyc2VyLmludGVyZmFjZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1vZGUtc2lqaWwvc3JjL2xpYi9zZXJ2aWNlcy9wYXJzZXIvcGFyc2VyLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxNQUFNLE9BQU8sV0FBWSxTQUFRLEtBQUs7SUFDbEMsWUFBbUIsT0FBZSxFQUFTLFFBQWdCO1FBQ3ZELEtBQUssQ0FBQyxPQUFPLENBQUMsQ0FBQTtRQURDLFlBQU8sR0FBUCxPQUFPLENBQVE7UUFBUyxhQUFRLEdBQVIsUUFBUSxDQUFRO0lBRTNELENBQUM7Q0FDSjtBQUdEOzs7O0dBSUc7QUFDSCxNQUFNLE9BQWdCLE1BQU07Q0FPM0IiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgUGFyc2VyRXJyb3IgZXh0ZW5kcyBFcnJvciB7XG4gICAgY29uc3RydWN0b3IocHVibGljIG1lc3NhZ2U6IHN0cmluZywgcHVibGljIGZyYWdtZW50OiBzdHJpbmcpIHtcbiAgICAgICAgc3VwZXIobWVzc2FnZSlcbiAgICB9XG59XG5cbmV4cG9ydCB0eXBlIFBhcnNlckNhbGxiYWNrID0gKF8gOiBQYXJzZXJFcnJvcikgPT4gc3RyaW5nO1xuLyoqXG4gKiBQYXJzZXMgbG9naWMgaW5zaWRlIHRyYW5zbGF0aW9ucy5cbiAqXG4gKiBAZXhwb3J0XG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBQYXJzZXIge1xuICAgIC8qKlxuICAgICAqIFByb2Nlc3NlcyBhIHN0cmluZywgaXNvbGF0aW5nIGxvZ2ljIGZyYWdtZW50cyBhbmQgY29tcGlsaW5nIHRoZW0uXG4gICAgICpcbiAgICAgKiBAbWVtYmVyT2YgUGFyc2VyXG4gICAgICovXG4gICAgY29tcGlsZTogKHRleHQ6IHN0cmluZywgcGFyYW1ldGVyczogYW55LCBlcnJvcj86IFBhcnNlckNhbGxiYWNrKSA9PiBzdHJpbmc7XG59XG4iXX0=
@@ -0,0 +1,23 @@
1
+ import { Injectable } from '@angular/core';
2
+ import * as i0 from "@angular/core";
3
+ import * as i1 from "@angular/common/http";
4
+ /**
5
+ * Fetches a bundle from a target url.
6
+ *
7
+ * @export
8
+ */
9
+ export class HttpRequireService {
10
+ constructor(httpClient) {
11
+ this.httpClient = httpClient;
12
+ }
13
+ load(url) {
14
+ return this.httpClient.get(url).toPromise()
15
+ .then(data => data);
16
+ }
17
+ }
18
+ HttpRequireService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: HttpRequireService, deps: [{ token: i1.HttpClient }], target: i0.ɵɵFactoryTarget.Injectable });
19
+ HttpRequireService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: HttpRequireService });
20
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "14.1.1", ngImport: i0, type: HttpRequireService, decorators: [{
21
+ type: Injectable
22
+ }], ctorParameters: function () { return [{ type: i1.HttpClient }]; } });
23
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaHR0cHJlcXVpcmUuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1vZGUtc2lqaWwvc3JjL2xpYi9zZXJ2aWNlcy9yZXF1aXJlL2h0dHByZXF1aXJlLnNlcnZpY2UudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQ0EsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLGVBQWUsQ0FBQTs7O0FBRzFDOzs7O0dBSUc7QUFFSCxNQUFNLE9BQU8sa0JBQWtCO0lBRTNCLFlBQW9CLFVBQXNCO1FBQXRCLGVBQVUsR0FBVixVQUFVLENBQVk7SUFBRSxDQUFDO0lBRTdDLElBQUksQ0FBQyxHQUFHO1FBQ0osT0FBTyxJQUFJLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQyxHQUFHLENBQUMsQ0FBQyxTQUFTLEVBQUU7YUFDdEMsSUFBSSxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsSUFBSSxDQUFDLENBQUM7SUFDNUIsQ0FBQzs7K0dBUFEsa0JBQWtCO21IQUFsQixrQkFBa0I7MkZBQWxCLGtCQUFrQjtrQkFEOUIsVUFBVSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IFJlcXVpcmVTZXJ2aWNlIH0gZnJvbSAnLi9yZXF1aXJlLmludGVyZmFjZSdcbmltcG9ydCB7IEluamVjdGFibGUgfSBmcm9tICdAYW5ndWxhci9jb3JlJ1xuaW1wb3J0IHsgSHR0cENsaWVudCB9IGZyb20gJ0Bhbmd1bGFyL2NvbW1vbi9odHRwJ1xuXG4vKipcbiAqIEZldGNoZXMgYSBidW5kbGUgZnJvbSBhIHRhcmdldCB1cmwuXG4gKlxuICogQGV4cG9ydFxuICovXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSHR0cFJlcXVpcmVTZXJ2aWNlIGltcGxlbWVudHMgUmVxdWlyZVNlcnZpY2Uge1xuXG4gICAgY29uc3RydWN0b3IocHJpdmF0ZSBodHRwQ2xpZW50OiBIdHRwQ2xpZW50KXt9XG5cbiAgICBsb2FkKHVybCkgOiBQcm9taXNlPE9iamVjdD4ge1xuICAgICAgICByZXR1cm4gdGhpcy5odHRwQ2xpZW50LmdldCh1cmwpLnRvUHJvbWlzZSgpXG4gICAgICAgICAgICAudGhlbihkYXRhID0+IGRhdGEpO1xuICAgIH1cblxufVxuIl19
@@ -0,0 +1,8 @@
1
+ /**
2
+ * Service used to fetch bundles.
3
+ *
4
+ * @export
5
+ */
6
+ export class RequireService {
7
+ }
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZS5pbnRlcmZhY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9uZ3gtb2RlLXNpamlsL3NyYy9saWIvc2VydmljZXMvcmVxdWlyZS9yZXF1aXJlLmludGVyZmFjZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7OztHQUlHO0FBQ0gsTUFBTSxPQUFnQixjQUFjO0NBTW5DIiwic291cmNlc0NvbnRlbnQiOlsiLyoqXG4gKiBTZXJ2aWNlIHVzZWQgdG8gZmV0Y2ggYnVuZGxlcy5cbiAqXG4gKiBAZXhwb3J0XG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBSZXF1aXJlU2VydmljZSB7XG4gICAgLyoqXG4gICAgICogRmV0Y2ggYSBidW5kbGUuXG4gICAgICogQG1lbWJlck9mIFJlcXVpcmVTZXJ2aWNlXG4gICAgICovXG4gICAgbG9hZDogKGZyb206IGFueSkgPT4gUHJvbWlzZTxPYmplY3Q+O1xufVxuIl19
@@ -0,0 +1,11 @@
1
+ /**
2
+ * Contains Sijil options.
3
+ *
4
+ * @export
5
+ */
6
+ export class SijilOpts {
7
+ }
8
+ export let defaultSijilOpts = {
9
+ defaultLanguage: window ? window.navigator.language.split('-')[0] : undefined
10
+ };
11
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoic2lqaWwub3B0cy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL25neC1vZGUtc2lqaWwvc3JjL2xpYi9zZXJ2aWNlcy9zaWppbC5vcHRzLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBOzs7O0dBSUc7QUFDSCxNQUFNLE9BQWdCLFNBQVM7Q0FHOUI7QUFFRCxNQUFNLENBQUMsSUFBSSxnQkFBZ0IsR0FBZTtJQUN0QyxlQUFlLEVBQUUsTUFBTSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsU0FBUyxDQUFDLFFBQVEsQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLFNBQVM7Q0FDaEYsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogQ29udGFpbnMgU2lqaWwgb3B0aW9ucy5cbiAqXG4gKiBAZXhwb3J0XG4gKi9cbmV4cG9ydCBhYnN0cmFjdCBjbGFzcyBTaWppbE9wdHMge1xuICAgIC8qKiBGYWxsYmFjayBsYW5ndWFnZSB3aGVuIGEgdHJhbnNsYXRpb24gaXMgbm90IGF2YWlsYWJsZSBpbiB0aGUgY3VycmVudCBsYW5ndWFnZS4gKi9cbiAgICBkZWZhdWx0TGFuZ3VhZ2U6IHN0cmluZztcbn1cblxuZXhwb3J0IGxldCBkZWZhdWx0U2lqaWxPcHRzIDogU2lqaWxPcHRzID0ge1xuICAgIGRlZmF1bHRMYW5ndWFnZTogd2luZG93ID8gd2luZG93Lm5hdmlnYXRvci5sYW5ndWFnZS5zcGxpdCgnLScpWzBdIDogdW5kZWZpbmVkXG59O1xuIl19
@@ -0,0 +1,5 @@
1
+ /**
2
+ * Generated bundle index. Do not edit.
3
+ */
4
+ export * from './public-api';
5
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibmd4LW9kZS1zaWppbC5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1vZGUtc2lqaWwvc3JjL25neC1vZGUtc2lqaWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGNBQWMsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbIi8qKlxuICogR2VuZXJhdGVkIGJ1bmRsZSBpbmRleC4gRG8gbm90IGVkaXQuXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9wdWJsaWMtYXBpJztcbiJdfQ==
@@ -0,0 +1,8 @@
1
+ /*
2
+ * Public API Surface of ngx-ode-sijil
3
+ */
4
+ export * from './lib/services/bundles.service';
5
+ export * from './lib/components/s5l.component';
6
+ export * from './lib/pipes/translate.pipe';
7
+ export * from './lib/ngx-ode-sijil.module';
8
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicHVibGljLWFwaS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3Byb2plY3RzL25neC1vZGUtc2lqaWwvc3JjL3B1YmxpYy1hcGkudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUE7O0dBRUc7QUFFSCxjQUFjLGdDQUFnQyxDQUFDO0FBQy9DLGNBQWMsZ0NBQWdDLENBQUM7QUFDL0MsY0FBYyw0QkFBNEIsQ0FBQztBQUMzQyxjQUFjLDRCQUE0QixDQUFDIiwic291cmNlc0NvbnRlbnQiOlsiLypcbiAqIFB1YmxpYyBBUEkgU3VyZmFjZSBvZiBuZ3gtb2RlLXNpamlsXG4gKi9cblxuZXhwb3J0ICogZnJvbSAnLi9saWIvc2VydmljZXMvYnVuZGxlcy5zZXJ2aWNlJztcbmV4cG9ydCAqIGZyb20gJy4vbGliL2NvbXBvbmVudHMvczVsLmNvbXBvbmVudCc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9waXBlcy90cmFuc2xhdGUucGlwZSc7XG5leHBvcnQgKiBmcm9tICcuL2xpYi9uZ3gtb2RlLXNpamlsLm1vZHVsZSc7XG4iXX0=