@abgov/angular-components
Version:
Government of Alberta - UI components for Angular
82 lines • 7.28 kB
JavaScript
import { NgTemplateOutlet } from "@angular/common";
import { booleanAttribute, Component, CUSTOM_ELEMENTS_SCHEMA, EventEmitter, Input, Output, TemplateRef, } from "@angular/core";
import * as i0 from "@angular/core";
export class GoabDrawer {
constructor() {
this.onClose = new EventEmitter();
}
_onClose() {
this.onClose.emit();
}
getHeadingAsString() {
return this.heading instanceof TemplateRef ? "" : this.heading;
}
getHeadingAsTemplate() {
if (!this.heading)
return null;
return this.heading instanceof TemplateRef ? this.heading : null;
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: GoabDrawer, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "16.1.0", version: "18.0.3", type: GoabDrawer, isStandalone: true, selector: "goab-drawer", inputs: { open: ["open", "open", booleanAttribute], position: "position", heading: "heading", maxSize: "maxSize", testId: "testId", actions: "actions" }, outputs: { onClose: "onClose" }, ngImport: i0, template: `
<goa-drawer
[open]="open"
[attr.position]="position"
[attr.heading]="getHeadingAsString()"
[attr.maxsize]="maxSize"
[attr.testid]="testId"
(_close)="_onClose()"
>
<ng-content></ng-content>
<div slot="heading">
<ng-container [ngTemplateOutlet]="getHeadingAsTemplate()"></ng-container>
</div>
<div slot="actions">
<ng-container [ngTemplateOutlet]="actions"></ng-container>
</div>
</goa-drawer>
`, isInline: true, dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "18.0.3", ngImport: i0, type: GoabDrawer, decorators: [{
type: Component,
args: [{
standalone: true,
selector: "goab-drawer",
imports: [NgTemplateOutlet],
template: `
<goa-drawer
[open]="open"
[attr.position]="position"
[attr.heading]="getHeadingAsString()"
[attr.maxsize]="maxSize"
[attr.testid]="testId"
(_close)="_onClose()"
>
<ng-content></ng-content>
<div slot="heading">
<ng-container [ngTemplateOutlet]="getHeadingAsTemplate()"></ng-container>
</div>
<div slot="actions">
<ng-container [ngTemplateOutlet]="actions"></ng-container>
</div>
</goa-drawer>
`,
schemas: [CUSTOM_ELEMENTS_SCHEMA],
}]
}], propDecorators: { open: [{
type: Input,
args: [{ required: true, transform: booleanAttribute }]
}], position: [{
type: Input,
args: [{ required: true }]
}], heading: [{
type: Input
}], maxSize: [{
type: Input
}], testId: [{
type: Input
}], actions: [{
type: Input
}], onClose: [{
type: Output
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZHJhd2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vLi4vbGlicy9hbmd1bGFyLWNvbXBvbmVudHMvc3JjL2xpYi9jb21wb25lbnRzL2RyYXdlci9kcmF3ZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLGdCQUFnQixFQUFFLE1BQU0saUJBQWlCLENBQUM7QUFDbkQsT0FBTyxFQUNMLGdCQUFnQixFQUNoQixTQUFTLEVBQ1Qsc0JBQXNCLEVBQ3RCLFlBQVksRUFDWixLQUFLLEVBQ0wsTUFBTSxFQUNOLFdBQVcsR0FDWixNQUFNLGVBQWUsQ0FBQzs7QUEyQnZCLE1BQU0sT0FBTyxVQUFVO0lBeEJ2QjtRQStCWSxZQUFPLEdBQUcsSUFBSSxZQUFZLEVBQUUsQ0FBQztLQWN4QztJQVpDLFFBQVE7UUFDTixJQUFJLENBQUMsT0FBTyxDQUFDLElBQUksRUFBRSxDQUFDO0lBQ3RCLENBQUM7SUFFRCxrQkFBa0I7UUFDaEIsT0FBTyxJQUFJLENBQUMsT0FBTyxZQUFZLFdBQVcsQ0FBQyxDQUFDLENBQUMsRUFBRSxDQUFDLENBQUMsQ0FBQyxJQUFJLENBQUMsT0FBTyxDQUFDO0lBQ2pFLENBQUM7SUFFRCxvQkFBb0I7UUFDbEIsSUFBSSxDQUFDLElBQUksQ0FBQyxPQUFPO1lBQUUsT0FBTyxJQUFJLENBQUM7UUFDL0IsT0FBTyxJQUFJLENBQUMsT0FBTyxZQUFZLFdBQVcsQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDLE9BQU8sQ0FBQyxDQUFDLENBQUMsSUFBSSxDQUFDO0lBQ25FLENBQUM7OEdBcEJVLFVBQVU7a0dBQVYsVUFBVSxnRkFDZSxnQkFBZ0Isa0tBckIxQzs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQlQsNERBbEJTLGdCQUFnQjs7MkZBcUJmLFVBQVU7a0JBeEJ0QixTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsYUFBYTtvQkFDdkIsT0FBTyxFQUFFLENBQUMsZ0JBQWdCLENBQUM7b0JBQzNCLFFBQVEsRUFBRTs7Ozs7Ozs7Ozs7Ozs7Ozs7R0FpQlQ7b0JBQ0QsT0FBTyxFQUFFLENBQUMsc0JBQXNCLENBQUM7aUJBQ2xDOzhCQUV5RCxJQUFJO3NCQUEzRCxLQUFLO3VCQUFDLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBRSxTQUFTLEVBQUUsZ0JBQWdCLEVBQUU7Z0JBQzNCLFFBQVE7c0JBQWxDLEtBQUs7dUJBQUMsRUFBRSxRQUFRLEVBQUUsSUFBSSxFQUFFO2dCQUNoQixPQUFPO3NCQUFmLEtBQUs7Z0JBQ0csT0FBTztzQkFBZixLQUFLO2dCQUNHLE1BQU07c0JBQWQsS0FBSztnQkFDRyxPQUFPO3NCQUFmLEtBQUs7Z0JBQ0ksT0FBTztzQkFBaEIsTUFBTSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IE5nVGVtcGxhdGVPdXRsZXQgfSBmcm9tIFwiQGFuZ3VsYXIvY29tbW9uXCI7XG5pbXBvcnQge1xuICBib29sZWFuQXR0cmlidXRlLFxuICBDb21wb25lbnQsXG4gIENVU1RPTV9FTEVNRU5UU19TQ0hFTUEsXG4gIEV2ZW50RW1pdHRlcixcbiAgSW5wdXQsXG4gIE91dHB1dCxcbiAgVGVtcGxhdGVSZWYsXG59IGZyb20gXCJAYW5ndWxhci9jb3JlXCI7XG5pbXBvcnQgeyBHb2FiRHJhd2VyUG9zaXRpb24sIEdvYWJEcmF3ZXJTaXplIH0gZnJvbSBcIkBhYmdvdi91aS1jb21wb25lbnRzLWNvbW1vblwiO1xuXG5AQ29tcG9uZW50KHtcbiAgc3RhbmRhbG9uZTogdHJ1ZSxcbiAgc2VsZWN0b3I6IFwiZ29hYi1kcmF3ZXJcIixcbiAgaW1wb3J0czogW05nVGVtcGxhdGVPdXRsZXRdLFxuICB0ZW1wbGF0ZTogYFxuICAgIDxnb2EtZHJhd2VyXG4gICAgICBbb3Blbl09XCJvcGVuXCJcbiAgICAgIFthdHRyLnBvc2l0aW9uXT1cInBvc2l0aW9uXCJcbiAgICAgIFthdHRyLmhlYWRpbmddPVwiZ2V0SGVhZGluZ0FzU3RyaW5nKClcIlxuICAgICAgW2F0dHIubWF4c2l6ZV09XCJtYXhTaXplXCJcbiAgICAgIFthdHRyLnRlc3RpZF09XCJ0ZXN0SWRcIlxuICAgICAgKF9jbG9zZSk9XCJfb25DbG9zZSgpXCJcbiAgICA+XG4gICAgICA8bmctY29udGVudD48L25nLWNvbnRlbnQ+XG4gICAgICA8ZGl2IHNsb3Q9XCJoZWFkaW5nXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiZ2V0SGVhZGluZ0FzVGVtcGxhdGUoKVwiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgICA8ZGl2IHNsb3Q9XCJhY3Rpb25zXCI+XG4gICAgICAgIDxuZy1jb250YWluZXIgW25nVGVtcGxhdGVPdXRsZXRdPVwiYWN0aW9uc1wiPjwvbmctY29udGFpbmVyPlxuICAgICAgPC9kaXY+XG4gICAgPC9nb2EtZHJhd2VyPlxuICBgLFxuICBzY2hlbWFzOiBbQ1VTVE9NX0VMRU1FTlRTX1NDSEVNQV0sXG59KVxuZXhwb3J0IGNsYXNzIEdvYWJEcmF3ZXIge1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSwgdHJhbnNmb3JtOiBib29sZWFuQXR0cmlidXRlIH0pIG9wZW4hOiBib29sZWFuO1xuICBASW5wdXQoeyByZXF1aXJlZDogdHJ1ZSB9KSBwb3NpdGlvbiE6IEdvYWJEcmF3ZXJQb3NpdGlvbjtcbiAgQElucHV0KCkgaGVhZGluZyE6IHN0cmluZyB8IFRlbXBsYXRlUmVmPGFueT47XG4gIEBJbnB1dCgpIG1heFNpemU/OiBHb2FiRHJhd2VyU2l6ZTtcbiAgQElucHV0KCkgdGVzdElkPzogc3RyaW5nO1xuICBASW5wdXQoKSBhY3Rpb25zITogVGVtcGxhdGVSZWY8YW55PjtcbiAgQE91dHB1dCgpIG9uQ2xvc2UgPSBuZXcgRXZlbnRFbWl0dGVyKCk7XG5cbiAgX29uQ2xvc2UoKSB7XG4gICAgdGhpcy5vbkNsb3NlLmVtaXQoKTtcbiAgfVxuXG4gIGdldEhlYWRpbmdBc1N0cmluZygpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLmhlYWRpbmcgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZiA/IFwiXCIgOiB0aGlzLmhlYWRpbmc7XG4gIH1cblxuICBnZXRIZWFkaW5nQXNUZW1wbGF0ZSgpOiBUZW1wbGF0ZVJlZjxhbnk+IHwgbnVsbCB7XG4gICAgaWYgKCF0aGlzLmhlYWRpbmcpIHJldHVybiBudWxsO1xuICAgIHJldHVybiB0aGlzLmhlYWRpbmcgaW5zdGFuY2VvZiBUZW1wbGF0ZVJlZiA/IHRoaXMuaGVhZGluZyA6IG51bGw7XG4gIH1cbn1cbiJdfQ==