{"version":3,"file":"servicestack-angular.mjs","sources":["../../../../projects/servicestack/angular/src/lib/SetAttrs.ts","../../../../projects/servicestack/angular/src/lib/Forbidden.ts","../../../../projects/servicestack/angular/src/lib/core.ts","../../../../projects/servicestack/angular/src/lib/Link.ts","../../../../projects/servicestack/angular/src/lib/NavLink.ts","../../../../projects/servicestack/angular/src/lib/Navbar.ts","../../../../projects/servicestack/angular/src/lib/LinkButton.ts","../../../../projects/servicestack/angular/src/lib/ErrorSummary.ts","../../../../projects/servicestack/angular/src/lib/Input.ts","../../../../projects/servicestack/angular/src/lib/Checkbox.ts","../../../../projects/servicestack/angular/src/lib/Button.ts","../../../../projects/servicestack/angular/src/lib/NavLinkButton.ts","../../../../projects/servicestack/angular/src/lib/NavButtonGroup.ts","../../../../projects/servicestack/angular/src/lib/ServiceStack.module.ts","../../../../projects/servicestack/angular/src/public-api.ts","../../../../projects/servicestack/angular/src/servicestack-angular.ts"],"sourcesContent":["import { Directive, ElementRef, Input } from '@angular/core';\r\n\r\n@Directive({\r\n    selector:'[setAttrs]'\r\n})\r\nexport class SetAttrsDirective {\r\n    constructor(private el:ElementRef) {}\r\n\r\n    @Input()\r\n    set setAttrs(attrs: any) {\r\n        for (let k in attrs) {\r\n            this.el.nativeElement.setAttribute(k, attrs[k]);\r\n        }\r\n    }\r\n}","import { Component, Input, OnInit } from '@angular/core';\r\nimport { Router, ActivatedRoute } from '@angular/router';\r\n\r\n@Component({\r\n    template: `\r\n        <div class=\"forbidden\">\r\n            <h3>\r\n                You are not authorized to access\r\n                <code *ngIf=\"usePath\">{{usePath}}</code>\r\n                <span *ngIf=\"!usePath\">this page</span>\r\n            </h3>\r\n            <p *ngIf=\"useMessage\">{{useMessage}}</p>\r\n            <p *ngIf=\"!useMessage && useRole\">Missing role <code>{{useRole}}</code></p>\r\n            <p *ngIf=\"!useMessage && usePermission\">Missing permission <code>{{usePermission}}</code></p>\r\n        </div>    \r\n    `\r\n})\r\nexport class ForbiddenComponent implements OnInit {\r\n    @Input() message: string|undefined;\r\n    @Input() path: string|undefined;\r\n    @Input() role: string|undefined;\r\n    @Input() permission: string|undefined;\r\n\r\n    useMessage = '';\r\n    usePath = '';\r\n    useRole = '';\r\n    usePermission = '';\r\n\r\n    constructor(\r\n        private route: ActivatedRoute,\r\n        private router: Router\r\n      ) { }\r\n\r\n    ngOnInit() {\r\n        // Can pass params via props, queryString, or pushState\r\n        this.useMessage = window.history.state.message || this.route.snapshot.paramMap.get('message') || this.message;\r\n        this.usePath = window.history.state.path || this.route.snapshot.paramMap.get('path') || this.path;\r\n        this.useRole = window.history.state.role || this.route.snapshot.paramMap.get('role') || this.role;\r\n        this.usePermission = window.history.state.permission || this.route.snapshot.paramMap.get('permission') || this.permission;\r\n    }    \r\n}\r\n","import { NavItem, NavOptions, classNames } from '@servicestack/client';\r\nimport { Component, Input, forwardRef } from '@angular/core';\r\nimport { ControlValueAccessor, NG_VALUE_ACCESSOR } from '@angular/forms';\r\n\r\nexport function bootstrapAttrs(this: any) {\r\n    return {\r\n        'primary': this.primary,\r\n        'outline-primary': this.outlinePrimary,\r\n        'secondary': this.secondary,\r\n        'outline-secondary': this.outlineSecondary,\r\n        'success': this.success,\r\n        'outline-success': this.outlineSuccess,\r\n        'info': this.info,\r\n        'outline-info': this.outlineInfo,\r\n        'warning': this.warning,\r\n        'outline-warning': this.outlineWarning,\r\n        'danger': this.danger,\r\n        'outline-danger': this.outlineDanger,\r\n        'light': this.light,\r\n        'outline-light': this.outlineLight,\r\n        'dark': this.dark,\r\n        'outline-dark': this.outlineDark,\r\n        'lg': this.lg,\r\n        'md': this.md,\r\n        'sm': this.sm,\r\n        'xs': this.xs,\r\n        'block': this.block,\r\n    } as any;\r\n}\r\n\r\n@Component({\r\n    template: `<i></i>`\r\n})\r\nexport class BootstrapBase {\r\n    @Input() primary: boolean|undefined;\r\n    @Input('outline-primary') outlinePrimary: boolean|undefined;\r\n    @Input() secondary: boolean|undefined;\r\n    @Input('outline-secondary') outlineSecondary: boolean|undefined;\r\n    @Input() success: boolean|undefined;\r\n    @Input('outline-success') outlineSuccess: boolean|undefined;\r\n    @Input() info: boolean|undefined;\r\n    @Input('outline-info') outlineInfo: boolean|undefined;\r\n    @Input() warning: boolean|undefined;\r\n    @Input('outline-warning') outlineWarning: boolean|undefined;\r\n    @Input() danger: boolean|undefined;\r\n    @Input('outline-danger') outlineDanger: boolean|undefined;\r\n    @Input() light: boolean|undefined;\r\n    @Input('outline-light') outlineLight: boolean|undefined;\r\n    @Input() dark: boolean|undefined;\r\n    @Input('outline-dark') outlineDark: boolean|undefined;\r\n\r\n    @Input() lg: boolean|undefined;\r\n    @Input() md: boolean|undefined;\r\n    @Input() sm: boolean|undefined;\r\n    @Input() xs: boolean|undefined;\r\n\r\n    @Input() block: boolean|undefined;\r\n    @Input() vertical: boolean|undefined;\r\n    @Input() horizontal: boolean|undefined;\r\n\r\n    @Input() attrs: any;\r\n\r\n    get bootstrapAttrs() {\r\n        return Object.assign(bootstrapAttrs.call(this), this.attrs ? bootstrapAttrs.call(this.attrs) : {});\r\n    }\r\n\r\n    get bootstrapClasses() {\r\n        const props = this.bootstrapAttrs;\r\n        const ret: any = {};\r\n        Object.keys(props).forEach((k: any) => {\r\n            if (props[k] !== false && props[k] != null) {\r\n                ret[k] = props[k] || true;\r\n            }\r\n        });\r\n        return ret;\r\n    }\r\n\r\n    cls(...args:any[]) { return classNames(args); }\r\n}\r\n\r\n@Component({\r\n    template: `<i></i>`\r\n})\r\nexport class NavBootstrapBase extends BootstrapBase {\r\n    @Input() items: NavItem[] = [];\r\n    @Input() options: NavOptions|undefined;\r\n    @Input() attributes: string[] = [];\r\n    @Input() activePath: string|undefined;\r\n    @Input() baseHref: string|undefined;\r\n    @Input() navClass: string|undefined;\r\n    @Input() navItemClass: string|undefined;\r\n    @Input() navLinkClass: string|undefined;\r\n    @Input() childNavItemClass: string|undefined;\r\n    @Input() childNavLinkClass: string|undefined;\r\n    @Input() childNavMenuClass: string|undefined;\r\n    @Input() childNavMenuItemClass: string|undefined;\r\n}\r\n\r\n@Component({\r\n    template: `<i></i>`\r\n})\r\nexport class NavBase {\r\n    @Input() message = '';   \r\n    @Input() items: NavItem[] = [];\r\n    @Input() options: NavOptions|undefined;\r\n    @Input() attributes: string[] = [];\r\n    @Input() activePath: string|undefined;\r\n    @Input() baseHref: string|undefined;\r\n    @Input() navClass: string|undefined;\r\n    @Input() navItemClass: string|undefined;\r\n    @Input() navLinkClass: string|undefined;\r\n    @Input() childNavItemClass: string|undefined;\r\n    @Input() childNavLinkClass: string|undefined;\r\n    @Input() childNavMenuClass: string|undefined;\r\n    @Input() childNavMenuItemClass: string|undefined;\r\n    @Input() attrs: any;\r\n\r\n    cls(...args:any[]|any) { return classNames(args); }\r\n}\r\n\r\nconst OptionKeys = ['attributes', 'activePath', 'baseHref', 'navClass', 'navItemClass', 'navLinkClass',\r\n                    'childNavItemClass', 'childNavLinkClass', 'childNavMenuClass', 'childNavMenuItemClass' ];\r\nexport function optionProps(props: any) {\r\n    const to: any = {};\r\n    for (const key of OptionKeys) {\r\n        if (props[key]) {\r\n            to[key] = props[key];\r\n        }\r\n    }\r\n    return to;\r\n}\r\n\r\nexport function sanitizeOptions(opt: any) {\r\n    if (!opt.baseHref) {\r\n        opt.baseHref = '';\r\n    }\r\n    return opt;\r\n}\r\n\r\nexport function routePath(component: any) {\r\n    return location.pathname;\r\n}\r\n\r\n\r\nexport abstract class AbstractValueAccessor implements ControlValueAccessor {\r\n    _value: any = '';\r\n    get value(): any { return this._value; };\r\n    set value(v: any) {\r\n      if (v !== this._value) {\r\n        this._value = v;\r\n        this.onChange(v);\r\n      }\r\n    }\r\n\r\n    writeValue(value: any) {\r\n      this._value = value;\r\n      // warning: comment below if only want to emit on user intervention\r\n      this.onChange(value);\r\n    }\r\n\r\n    onChange = (_:any) => {};\r\n    onTouched = () => {};\r\n    registerOnChange(fn: (_: any) => void): void { this.onChange = fn; }\r\n    registerOnTouched(fn: () => void): void { this.onTouched = fn; }\r\n}\r\n\r\nexport function MakeProvider(type : any){\r\n  return {\r\n    provide: NG_VALUE_ACCESSOR,\r\n    useExisting: forwardRef(() => type),\r\n    multi: true\r\n  };\r\n}\r\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { classNames, pick } from '@servicestack/client';\r\n\r\nconst PROPS = ['id', 'name', 'autofocus'];\r\n\r\n@Component({\r\n    selector: 'ng-link',\r\n    template: `\r\n    <ng-template #content><ng-content></ng-content></ng-template>\r\n    <a *ngIf=\"!to\" href=\"javascript:void(0)\" (click)=\"onClick($event)\" [className]=\"cls\" [setAttrs]=\"useAttrs\"><ng-container *ngTemplateOutlet=\"content\"></ng-container></a>\r\n    <a *ngIf=\"to && isAbsolute\"  [href]=\"to\" [className]=\"cls\" [setAttrs]=\"useAttrs\"><ng-container *ngTemplateOutlet=\"content\"></ng-container></a>\r\n    <a *ngIf=\"to && !isAbsolute\" [routerLink]=\"to\" [className]=\"cls\" [setAttrs]=\"useAttrs\"><ng-container *ngTemplateOutlet=\"content\"></ng-container></a>\r\n    `\r\n})\r\nexport class LinkComponent {\r\n\r\n    @Input() classList: string[] = [];\r\n    @Input() to: string|undefined;\r\n    @Output() click: EventEmitter<any> = new EventEmitter();\r\n\r\n    @Input() attrs: any;\r\n    @Input() id: string|undefined;\r\n    @Input() name: string|undefined;\r\n    @Input() autofocus: boolean|undefined;\r\n    @Input() disabled: boolean|undefined;\r\n\r\n    onClick(e:any) {\r\n        this.click.emit(e);\r\n    }\r\n\r\n    get cls() { return classNames(this.classList); }\r\n\r\n    get isAbsolute() {\r\n        return this.to && (this.to.startsWith('http://') || this.to.startsWith('https://') || this.to.startsWith('://'));\r\n    }\r\n\r\n    get useAttrs() { return Object.assign(pick(this.attrs, PROPS), pick(this, PROPS)); }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport {\r\n    NavItem, NavOptions, NavDefaults, safeVarName, activeClassNav,\r\n} from '@servicestack/client';\r\nimport { NavBase, sanitizeOptions, routePath } from './core';\r\n\r\n@Component({\r\n    selector: 'nav-link',\r\n    template: `\r\n        <li *ngIf=\"show\" [className]=\"cls([item?.className||'', navItemCls])\">\r\n            <ng-link [to]=\"opt.baseHref + (item?.href||'')\" [classList]=\"[navLinkCls, activeCls]\" [id]=\"id\" [attrs]=\"childProps\">\r\n                {{item?.label||''}}\r\n            </ng-link>\r\n            <div *ngFor=\"let x of (item?.children||[])\" [className]=\"cls(opt.childNavMenuClass)\" aria-labelledby=\"id\">\r\n                <div *ngIf=\"x.label === '-'\" className=\"dropdown-divider\"></div>\r\n                <ng-link *ngIf=\"x.label !== '-'\"  [to]=\"opt.baseHref + x.href\" \r\n                         [className]=\"cls(opt.childNavMenuItemClass, activeClassNav(x, useActivePath))\">\r\n                    {{x.label}}\r\n                </ng-link>\r\n            </div>\r\n        </li>\r\n    `\r\n})\r\nexport class NavLinkComponent extends NavBase {\r\n\r\n    @Input() item: NavItem|undefined;\r\n    @Input() options: NavOptions|undefined;\r\n    @Input() activePath: string|undefined;\r\n    @Input() navItemClass: string|undefined;\r\n    @Input() navLinkClass: string|undefined;\r\n\r\n    get opt() {\r\n        return sanitizeOptions(NavDefaults.forNav(this.options));\r\n    }\r\n\r\n    get show() {\r\n        return !(this.item == null || !NavDefaults.showNav(this.item, this.opt.attributes));\r\n    }\r\n\r\n    get useActivePath() {\r\n        return this.activePath || this.opt.activePath || routePath(this) || '';\r\n    }\r\n\r\n    get hasChildren() {\r\n        return this.item && this.item.children && this.item.children.length > 0;\r\n    }\r\n\r\n    get navItemCls() {\r\n        return this.hasChildren\r\n            ? this.opt.childNavItemClass\r\n            : this.opt.navItemClass;\r\n    }\r\n\r\n    get navLinkCls() {\r\n        return this.hasChildren\r\n            ? this.opt.childNavLinkClass\r\n            : this.opt.navLinkClass;\r\n    }\r\n\r\n    get childProps() {\r\n        return this.hasChildren\r\n            ? {\r\n                'role': 'button',\r\n                'data-toggle': 'dropdown',\r\n                'aria-haspopup': 'true',\r\n                'aria-expanded': 'false',\r\n              }\r\n            : {};\r\n    }\r\n\r\n    get id() { return this.item && (this.item.id || this.hasChildren ? safeVarName(this.item.label) : null) || ''; }\r\n\r\n    get activeCls() {\r\n        return this.item && activeClassNav(this.item, this.useActivePath);\r\n    }\r\n\r\n    activeClassNav(x: NavItem, activePath: string) { return activeClassNav(x, activePath); }\r\n}\r\n","import { Component } from '@angular/core';\r\nimport { NavbarDefaults } from '@servicestack/client';\r\nimport { NavBase, optionProps, sanitizeOptions } from './core';\r\n\r\n@Component({\r\n    selector: 'navbar',\r\n    template: `\r\n        <div *ngIf=\"items && items.length\" [className]=\"cls(opt.navClass)\">\r\n            <nav-link *ngFor=\"let item of items\" [item]=\"item\"\r\n                      [options]=\"opt\" [activePath]=\"activePath\" [navItemClass]=\"opt.navItemClass\"></nav-link>\r\n        </div>\r\n    `\r\n})\r\nexport class NavbarComponent extends NavBase {\r\n    get opt() {\r\n        return sanitizeOptions(Object.assign(NavbarDefaults.forNavbar(this.options), optionProps(this)));\r\n    }\r\n}\r\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { NavOptions, LinkButtonDefaults, trimEnd, pick, btnClasses, activeClass } from '@servicestack/client';\r\nimport { BootstrapBase, optionProps, sanitizeOptions } from './core';\r\n\r\n@Component({\r\n    selector: 'link-button',\r\n    template: `\r\n        <ng-link [to]=\"hashPrefix + href\" [attrs]=\"useAttrs\" (click)=\"onClick($event)\" \r\n                 [classList]=\"[opt.navItemClass, activeCls, btnCls]\">\r\n            <ng-content></ng-content>\r\n        </ng-link>\r\n    `\r\n})\r\nexport class LinkButtonComponent extends BootstrapBase {\r\n\r\n    @Input() href: string = '';\r\n    @Input() options: NavOptions|undefined;\r\n    @Input() navItemClass: string|undefined;\r\n    @Input() exact: boolean|undefined;\r\n    @Output() click: EventEmitter<any> = new EventEmitter();\r\n\r\n    @Input() id: string|undefined;\r\n    @Input() name: string|undefined;\r\n    @Input() autofocus: boolean|undefined;\r\n    @Input() disabled: boolean|undefined;\r\n\r\n    onClick(e:any) {\r\n        this.click.emit(e);\r\n    }\r\n\r\n    get opt() {\r\n        return sanitizeOptions(Object.assign(LinkButtonDefaults.forLinkButton(this.options), optionProps(this)));\r\n    }\r\n\r\n    get activeHref() {\r\n        return this.href != null ? this.opt.activePath || location.pathname : null;\r\n    }\r\n\r\n    get hashPrefix() {\r\n        return trimEnd(this.opt.baseHref || '', '/');\r\n    }\r\n\r\n    get useAttrs() {\r\n        return pick(this, ['id', 'name', 'autofocus', 'disabled']);\r\n    }\r\n\r\n    get activeCls() {\r\n        return activeClass(this.href || null, this.activeHref, this.exact);\r\n    }\r\n\r\n    get btnCls() {\r\n        return btnClasses(this.bootstrapClasses);\r\n    }\r\n\r\n    ngOnInit(this: any|any[]) {\r\n        if (this.attrs) {\r\n            for (const k in this.attrs) {\r\n                this[k] = this.attrs[k];\r\n            }\r\n        }\r\n    }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { errorResponseExcept } from '@servicestack/client';\r\n\r\n@Component({\r\n    selector: 'error-summary',\r\n    template: `\r\n        <div *ngIf=\"errorSummary\" class=\"alert alert-danger mt-2\">{{errorSummary}}</div>\r\n    `\r\n})\r\nexport class ErrorSummaryComponent {\r\n\r\n    @Input() responseStatus!: object;\r\n    @Input() except: string|undefined;\r\n\r\n    get errorSummary(){ return errorResponseExcept.call(this, this.except||''); }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { errorResponse, classNames } from '@servicestack/client';\r\nimport { MakeProvider } from './core';\r\nimport { ControlValueAccessor } from '@angular/forms';\r\n\r\nfunction inputSelectedValues(input: HTMLInputElement) {\r\n    if (input.form == null) {\r\n        throw new Error('multiple values must be within a <form> element');\r\n    }\r\n\r\n    const selectedValues = (Array.from(input.form.elements) as HTMLInputElement[])\r\n        .filter((el) => el.name === input.name && el.checked)\r\n        .map((el) => el.value);\r\n    return selectedValues;\r\n}\r\n\r\n@Component({\r\n    selector: 'ng-input',\r\n    template: `\r\n    <div>\r\n        <label *ngIf=\"label\" [className]=\"isCheck ? 'form-check-label' : 'form-label'\" [for]=\"id\">{{label}}</label>\r\n        <div *ngIf=\"isCheck\" [className]=\"cls(['form-check',{'is-invalid':hasError,'form-control':hasError}])\">\r\n            <template *ngIf=\"type === 'radio'\">\r\n                <div *ngFor=\"let kvp of kvpValues\" [className]=\"cls(['custom-control','custom-radio',{'custom-control-inline':inline}])\">\r\n                    <input type=\"radio\" [id]=\"concat(id,'-',kvp.key)\" [name]=\"id\" [value]=\"kvp.key\"\r\n                        [className]=\"cls('custom-control-input',inputClass)\" [checked]=\"value==kvp.key\" (input)=\"onInput($event.target)\" />\r\n                    <label class=\"custom-control-label\" [for]=\"concat(id,'-',kvp.key)\">{{kvp.value}}</label>\r\n                </div>\r\n            </template>\r\n            <template *ngIf=\"type === 'checkbox'\">\r\n                <div *ngFor=\"let kvp of kvpValues\" [className]=\"cls('custom-control','custom-checkbox',{'custom-control-inline':inline})\">\r\n                    <input type=\"checkbox\" [id]=\"concat(id,'-',kvp.key)\" [name]=\"id\" [value]=\"kvp.key\"\r\n                        class=\"form-check-input\" [checked]=\"hasValue(kvp.key)\" (input)=\"onInputValues($event.target)\" />\r\n                    <label class=\"form-check-label\" [for]=\"concat(id,'-',kvp.key)\">{{kvp.value}}</label>\r\n                </div>\r\n            </template>\r\n            <small *ngIf=\"help\" class=\"text-muted\">{{help}}</small>\r\n        </div>\r\n        <input *ngIf=\"!isCheck\" [type]=\"type\" [id]=\"id\" [name]=\"id\" (input)=\"onInput($event.target)\" [value]=\"value\"\r\n            [className]=\"cls('form-control',{'is-invalid':errorField},inputClass)\"\r\n            [placeholder]=\"placeholder\" />\r\n        <small *ngIf=\"!isCheck && help\" class=\"text-muted\">{{help}}</small>\r\n        <div *ngIf=\"hasError\" class=\"invalid-feedback\">{{errorField}}</div>\r\n    </div>\r\n    `,\r\n    providers: [MakeProvider(InputComponent)],\r\n})\r\nexport class InputComponent implements ControlValueAccessor {\r\n\r\n    @Input() responseStatus: object|undefined;\r\n    @Input() type: string = 'text';\r\n    @Input() name: string|undefined;\r\n    @Input() placeholder: string|undefined;\r\n    @Input() label: string|undefined;\r\n    @Input() help: string|undefined;\r\n    @Input() inputClass: string = 'form-control-lg';\r\n    @Input() inline: boolean = false;\r\n    @Input() values: any[] = [];\r\n    \r\n    @Input()\r\n    _value: string[] | string = '';\r\n    get value(): string[] | string { return this._value; };\r\n    set value(v: string[] | string) {\r\n      if (v !== this._value) {\r\n        this._value = v;\r\n        this.onChange(v);\r\n      }\r\n    }\r\n\r\n    writeValue(value: any) {\r\n      this._value = value;\r\n      // warning: comment below if only want to emit on user intervention\r\n      this.onChange(value);\r\n    }\r\n\r\n    onChange = (_:any) => {};\r\n    onTouched = () => {};\r\n    registerOnChange(fn: (_: any) => void): void { this.onChange = fn; }\r\n    registerOnTouched(fn: () => void): void { this.onTouched = fn; }\r\n\r\n    onInput(e: HTMLInputElement|any) { \r\n        this.value = e.value;\r\n    }\r\n\r\n    onInputValues(e: HTMLInputElement|any) { \r\n        this.value = inputSelectedValues(e);\r\n    }\r\n\r\n    get id(){ return this.name||''; }\r\n\r\n    concat(prefix: string, id: string, suffix: string) { return prefix + id + (suffix || ''); }\r\n    get isCheck(){ return this.type === 'radio' || this.type === 'checkbox'; }\r\n    get errorField(){ return errorResponse.call(this, this.id || ''); }\r\n    get hasError(){ return !!this.errorField; }\r\n    get kvpValues() {\r\n        const kvps = (this.values || []).map((x) => typeof x === 'string'\r\n            ? { key: x, value: x }\r\n            : x);\r\n        return kvps;\r\n    }\r\n\r\n    hasValue(elValue: string) {\r\n        return this.type === 'checkbox'\r\n            ? (this.value instanceof Array\r\n                ? this.value.indexOf(elValue) >= 0\r\n                : false)\r\n            : this.value === elValue;\r\n    }\r\n\r\n    cls(...args:any[]) { return classNames(args); }\r\n}\r\n","import { Component, Input } from '@angular/core';\r\nimport { errorResponse, classNames } from '@servicestack/client';\r\nimport { MakeProvider } from './core';\r\nimport { ControlValueAccessor } from '@angular/forms';\r\n\r\n@Component({\r\n    selector: 'ng-checkbox',\r\n    template: `\r\n    <div>\r\n        <div [className]=\"cls('form-check',{'is-invalid':errorField,'form-control':errorField})\">\r\n            <input type=\"checkbox\" [id]=\"name\" [name]=\"name\" \r\n                [checked]=\"value\" (input)=\"onInput($event.target)\"\r\n                [className]=\"cls('form-check-input',{'is-invalid':errorField},inputClass)\" >\r\n            <label class=\"form-check-label\" [for]=\"id\"><ng-content></ng-content></label>\r\n        </div>\r\n        <small *ngIf=\"help\" class=\"text-muted\">{{help}}</small>\r\n        <div *ngIf=\"errorField\" class=\"invalid-feedback\">{{errorField}}</div>\r\n    </div>\r\n    `,\r\n    providers: [MakeProvider(CheckboxComponent)],\r\n})\r\nexport class CheckboxComponent implements ControlValueAccessor {\r\n\r\n    @Input() responseStatus: any;\r\n    @Input() name: string|undefined;\r\n    @Input() placeholder: string|undefined;\r\n    @Input() checked: boolean = false;\r\n    @Input() help: string|undefined;\r\n    @Input() inputClass: string = '';\r\n    \r\n    @Input()\r\n    _value: boolean = false;\r\n    get value(): boolean { return this._value; };\r\n    set value(v: boolean) {\r\n      if (v !== this._value) {\r\n        this._value = v;\r\n        this.onChange(v);\r\n      }\r\n    }\r\n\r\n    writeValue(value: any) {\r\n      this._value = value;\r\n      // warning: comment below if only want to emit on user intervention\r\n      this.onChange(value);\r\n    }\r\n\r\n    onChange = (_:any) => {};\r\n    onTouched = () => {};\r\n    registerOnChange(fn: (_: any) => void): void { this.onChange = fn; }\r\n    registerOnTouched(fn: () => void): void { this.onTouched = fn; }\r\n\r\n    onInput(e: HTMLInputElement|any) { \r\n        this.value = e?.checked;\r\n    }\r\n\r\n    get id(){ return this.name; }\r\n    get errorField(){ return errorResponse.call(this, this.id || ''); }\r\n\r\n    cls(...args:any[]) { return classNames(args); }\r\n}\r\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { btnClasses, pick } from '@servicestack/client';\r\nimport { BootstrapBase } from './core';\r\n\r\nconst PROPS = ['id', 'type', 'name', 'autofocus', 'disabled', 'value'];\r\n\r\n@Component({\r\n    selector: 'ng-button',\r\n    template: `\r\n    <button (click)=\"onClick($event)\" [className]=\"cls('btn', btnCls)\" [setAttrs]=\"useAttrs\">\r\n        <ng-content></ng-content>\r\n    </button>\r\n    `,\r\n})\r\nexport class ButtonComponent extends BootstrapBase {\r\n    @Input() id: string|undefined;\r\n    @Input() name: string|undefined;\r\n    @Input() type: string|undefined;\r\n    @Input() value: string|undefined;\r\n    @Input() autofocus: boolean|undefined;\r\n    @Input() disabled: boolean|undefined;\r\n\r\n    @Output() click: EventEmitter<any> = new EventEmitter();\r\n\r\n    onClick(e:any) {\r\n        this.click.emit(e);\r\n    }\r\n\r\n    get useAttrs() { return Object.assign(pick(this.attrs, PROPS), pick(this, PROPS)); }\r\n\r\n    get btnCls() { return btnClasses(this.bootstrapClasses); }\r\n}\r\n","import { Component, Input, Output, EventEmitter } from '@angular/core';\r\nimport { NavItem, NavOptions, NavDefaults, NavLinkDefaults, trimEnd, activeClassNav, btnClasses } from '@servicestack/client';\r\nimport { BootstrapBase, optionProps, sanitizeOptions, routePath } from './core';\r\n\r\n@Component({\r\n    selector: 'nav-link-button',\r\n    template: `\r\n        <ng-link *ngIf=\"show\"\r\n                [to]=\"hashPrefix + (item?.href||'')\" (click)=\"onClick($event)\" [id]=\"item?.id\"\r\n                [classList]=\"[item?.className||'', opt.navItemClass, activeCls, btnCls]\">\r\n            <i *ngIf=\"item?.iconClass\" [className]=\"item?.iconClass||''\"></i>\r\n            {{item?.label || ''}}\r\n        </ng-link>\r\n    `\r\n})\r\nexport class NavLinkButtonComponent extends BootstrapBase {\r\n\r\n    @Input() href: string|undefined;\r\n    @Input() item: NavItem|undefined;\r\n    @Input() options: NavOptions|undefined;\r\n    @Input() id: string|undefined;\r\n    @Input() baseHref: string|undefined;\r\n    @Input() activePath: string|undefined;\r\n    @Input() navItemClass: string|undefined;\r\n    @Input() exact: boolean|undefined;\r\n    @Output() click: EventEmitter<any> = new EventEmitter();\r\n\r\n    onClick(e:any) {\r\n        this.click.emit(e);\r\n    }\r\n\r\n    get opt() {\r\n        return sanitizeOptions(Object.assign(NavLinkDefaults.forNavLink(this.options), optionProps(this)));\r\n    }\r\n\r\n    get show() {\r\n        return !(this.item == null || !NavDefaults.showNav(this.item, this.opt.attributes));\r\n    }\r\n\r\n    get useActivePath() {\r\n        return this.activePath || this.opt.activePath || routePath(this) || '';\r\n    }\r\n\r\n    get hashPrefix() {\r\n        return trimEnd(this.baseHref || this.opt.baseHref || '', '/');\r\n    }\r\n\r\n    get activeCls() {\r\n        return this.item && activeClassNav(this.item, this.useActivePath);\r\n    }\r\n\r\n    get btnCls() {\r\n        return btnClasses(this.bootstrapClasses);\r\n    }\r\n}\r\n","import { Component, Output, EventEmitter } from '@angular/core';\r\nimport { NavButtonGroupDefaults } from '@servicestack/client';\r\nimport { NavBootstrapBase, optionProps, sanitizeOptions } from './core';\r\n\r\n@Component({\r\n    selector: 'nav-button-group',\r\n    template: `\r\n        <div *ngIf=\"items && items.length\" [className]=\"clsName\">\r\n            <nav-link-button *ngFor=\"let item of items\" [item]=\"item\" [className]=\"clsBlock\"\r\n                             (click)=\"onClick($event)\" [options]=\"opt\" [attrs]=\"bootstrapAttrs\"></nav-link-button>\r\n        </div>\r\n    `\r\n})\r\nexport class NavButtonGroupComponent extends NavBootstrapBase {\r\n\r\n    @Output() click: EventEmitter<any> = new EventEmitter();\r\n\r\n    onClick(e:any) {\r\n        this.click.emit(e);\r\n    }\r\n\r\n    get opt() {\r\n        return sanitizeOptions(Object.assign(NavButtonGroupDefaults.forNavButtonGroup(this.options), optionProps(this)));\r\n    }\r\n    \r\n    get clsName() {\r\n        return (this.block !== false ? null : this.vertical !== false ? 'btn-group-vertical' : this.opt.navClass) || '';\r\n    }\r\n\r\n    //Angular creates wrapper html tags, so need to lift class so bootstrap `.btn-block + .btn-block` applies\r\n    get clsBlock() {        \r\n        return this.block !== false ? 'btn-block' : ''; \r\n    }\r\n}\r\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { RouterModule } from '@angular/router';\n\nimport { NavBase, BootstrapBase, NavBootstrapBase } from './core';\nimport { SetAttrsDirective } from './SetAttrs';\nimport { ForbiddenComponent } from './Forbidden';\nimport { NavbarComponent } from './Navbar';\nimport { NavLinkComponent } from './NavLink';\nimport { LinkComponent } from './Link';\nimport { LinkButtonComponent } from './LinkButton';\nimport { ErrorSummaryComponent } from './ErrorSummary';\nimport { InputComponent } from './Input';\nimport { CheckboxComponent } from './Checkbox';\nimport { ButtonComponent } from './Button';\nimport { NavButtonGroupComponent } from './NavButtonGroup';\nimport { NavLinkButtonComponent } from './NavLinkButton';\n\nexport { NavBase, BootstrapBase, NavBootstrapBase };\n\n@NgModule({\n  declarations: [\n    NavBase, BootstrapBase, NavBootstrapBase,\n    SetAttrsDirective,\n    ForbiddenComponent,\n    NavbarComponent,\n    NavLinkComponent,\n    LinkComponent,\n    LinkButtonComponent,\n    ErrorSummaryComponent,\n    InputComponent,\n    CheckboxComponent,\n    ButtonComponent,\n    NavButtonGroupComponent,\n    NavLinkButtonComponent,\n  ],\n  imports: [\n    CommonModule,\n    RouterModule,\n  ],\n  exports: [\n    NavBase, BootstrapBase, NavBootstrapBase,\n    SetAttrsDirective,\n    ForbiddenComponent,\n    NavbarComponent,\n    NavLinkComponent,\n    LinkComponent,\n    LinkButtonComponent,\n    ErrorSummaryComponent,\n    InputComponent,\n    CheckboxComponent,\n    ButtonComponent,\n    NavButtonGroupComponent,\n    NavLinkButtonComponent,\n  ]\n})\nexport class ServiceStackModule { }\n","/*\n * Public API Surface of angular\n */\n\nexport * from './lib/SetAttrs';\nexport * from './lib/Forbidden';\nexport * from './lib/Navbar';\nexport * from './lib/NavLink';\nexport * from './lib/Link';\nexport * from './lib/LinkButton';\nexport * from './lib/ErrorSummary';\nexport * from './lib/Input';\nexport * from './lib/Checkbox';\nexport * from './lib/Button';\nexport * from './lib/NavButtonGroup';\nexport * from './lib/NavLinkButton';\n\nexport * from './lib/ServiceStack.module';\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i2","PROPS","i1","i3.SetAttrsDirective","i2.LinkComponent","i2.NavLinkComponent","i1.LinkComponent","i1.SetAttrsDirective","i2.NavLinkButtonComponent"],"mappings":"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"}