{"__symbolic":"module","version":4,"metadata":{"TsOptionModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":17,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"@angular/common","name":"CommonModule","line":19,"character":4},{"__symbolic":"reference","module":"@angular/material/core","name":"MatRippleModule","line":20,"character":4},{"__symbolic":"reference","module":"@terminus/ui/checkbox","name":"TsCheckboxModule","line":21,"character":4},{"__symbolic":"reference","module":"@terminus/ui/icon","name":"TsIconModule","line":22,"character":4},{"__symbolic":"reference","module":"@terminus/ui/form-field","name":"TsFormFieldModule","line":23,"character":4},{"__symbolic":"reference","module":"@terminus/ui/input","name":"TsInputModule","line":24,"character":4}],"declarations":[{"__symbolic":"reference","name":"TsOptionComponent"},{"__symbolic":"reference","name":"TsOptgroupComponent"},{"__symbolic":"reference","name":"TsOptionDisplayDirective"}],"exports":[{"__symbolic":"reference","name":"TsOptionComponent"},{"__symbolic":"reference","name":"TsOptgroupComponent"},{"__symbolic":"reference","name":"TsOptionDisplayDirective"}]}]}],"members":{}},"TsOption":{"__symbolic":"interface"},"TsOptionSelectionChange":{"__symbolic":"class","members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","name":"TsOptionComponent"},null]}]}},"TsOptionParentComponent":{"__symbolic":"interface"},"TS_OPTION_PARENT_COMPONENT":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":65,"character":46},"arguments":["TS_OPTION_PARENT_COMPONENT"]},"TsOptgroupParentComponent":{"__symbolic":"interface"},"TS_OPTGROUP_PARENT_COMPONENT":{"__symbolic":"new","expression":{"__symbolic":"reference","module":"@angular/core","name":"InjectionToken","line":79,"character":48},"arguments":["TS_OPTGROUP_PARENT_COMPONENT"]},"TsOptionComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":99,"character":1},"arguments":[{"selector":"ts-option","host":{"class":"ts-option","role":"option","[class.ts-selected]":"selected","[class.ts-option--multiple]":"allowMultiple","[class.ts-option--active]":"active","[class.ts-option--disabled]":"isDisabled","[class.ts-option--template]":"optionTemplate","[attr.tabindex]":"tabIndex","[attr.aria-selected]":"selected.toString()","[attr.aria-disabled]":"!!isDisabled","[attr.title]":"title","[id]":"id","(click)":"selectViaInteraction()","(keydown)":"handleKeydown($event)","$quoted$":["class","role","[class.ts-selected]","[class.ts-option--multiple]","[class.ts-option--active]","[class.ts-option--disabled]","[class.ts-option--template]","[attr.tabindex]","[attr.aria-selected]","[attr.aria-disabled]","[attr.title]","[id]","(click)","(keydown)"]},"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":119,"character":17},"member":"None"},"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":120,"character":19},"member":"OnPush"},"exportAs":"tsOption","template":"<ts-checkbox\n  class=\"qa-select-option-checkbox\"\n  *ngIf=\"allowMultiple && selectComponent\"\n  tabIndex=\"-1\"\n  [isDisabled]=\"isDisabled\"\n  [isChecked]=\"selected\"\n>\n  <ng-template *ngTemplateOutlet=\"contentTemplate\"></ng-template>\n</ts-checkbox>\n\n<ng-container *ngIf=\"!allowMultiple || !selectComponent\">\n  <ng-template *ngTemplateOutlet=\"contentTemplate\"></ng-template>\n</ng-container>\n\n\n<div\n  class=\"mat-option-ripple\"\n  mat-ripple\n  [matRippleTrigger]=\"hostElement\"\n  [matRippleDisabled]=\"isDisabled\"\n></div>\n\n\n<ng-template #contentTemplate>\n  <span class=\"ts-option-text qa-option-text\">\n    <ng-content *ngIf=\"!optionTemplate\">\n    </ng-content>\n\n    <ng-container\n      *ngIf=\"optionTemplate\"\n      [ngTemplateOutlet]=\"optionTemplate\"\n      [ngTemplateOutletContext]=\"{$implicit: option}\"\n    ></ng-container>\n  </span>\n</ng-template>\n","styles":[".ts-option{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:block;max-width:100%;padding:0 16px;position:relative;text-align:left;text-decoration:none;cursor:pointer;transition:background-color .2s ease-out}.ts-option :not(.mat-form-field-label-wrapper){box-sizing:border-box}.ts-option h1,.ts-option h2,.ts-option h3,.ts-option h4,.ts-option h5,.ts-option p{margin:unset}.ts-option:not(.ts-option--disabled):focus,.ts-option:not(.ts-option--disabled):hover{background-color:#f2f0f7}.ts-option.ts-option--active{background-color:#cee1ef}.ts-option.ts-option--disabled{color:#999;cursor:auto}.ts-option .ts-checkbox{line-height:3em;pointer-events:none}.ts-select-panel{box-shadow:0 5px 5px -3px rgba(0,0,0,.2),0 8px 10px 1px rgba(0,0,0,.14),0 3px 14px 2px rgba(0,0,0,.12);background:#fafafa;z-index:502}.ts-select-panel .ts-optgroup-label:not(.ts-option--template),.ts-select-panel .ts-option:not(.ts-option--template){font-size:inherit;height:3em;line-height:3em}.ts-select-panel .ts-option.ts-selected:not(.ts-option--multiple){background-color:#cee1ef}.ts-select-panel .ts-optgroup .ts-option{padding-left:24px}.ts-select-panel.ts-select-panel--multiple .ts-optgroup-label{padding-left:0}.ts-select-panel.ts-select-panel--multiple .ts-option{padding-left:4px}"]}]}],"members":{"optionTemplate":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":199,"character":3},"arguments":[{"__symbolic":"reference","module":"@angular/core","name":"TemplateRef","line":199,"character":16}]}]}],"displayElementRef":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChild","line":206,"character":3},"arguments":[{"__symbolic":"reference","name":"TsOptionDisplayDirective"}]}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":214,"character":3}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":228,"character":3}}]}],"option":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":242,"character":3}}]}],"value":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":254,"character":3}}]}],"selectionChange":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Output","line":261,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":270,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":270,"character":17},"arguments":[{"__symbolic":"reference","name":"TS_OPTION_PARENT_COMPONENT"}]}],[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":271,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":271,"character":17},"arguments":[{"__symbolic":"reference","name":"TS_OPTGROUP_PARENT_COMPONENT"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":266,"character":23},{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":267,"character":31},{"__symbolic":"reference","module":"@angular/core","name":"NgZone","line":268,"character":20},{"__symbolic":"reference","name":"any"},{"__symbolic":"reference","name":"any"}]}],"ngAfterContentInit":[{"__symbolic":"method"}],"ngAfterViewChecked":[{"__symbolic":"method"}],"ngOnDestroy":[{"__symbolic":"method"}],"getLabel":[{"__symbolic":"method"}],"deselect":[{"__symbolic":"method"}],"handleKeydown":[{"__symbolic":"method"}],"select":[{"__symbolic":"method"}],"selectViaInteraction":[{"__symbolic":"method"}],"setActiveStyles":[{"__symbolic":"method"}],"setInactiveStyles":[{"__symbolic":"method"}],"emitSelectionChangeEvent":[{"__symbolic":"method"}]}},"allOptionsAreSelected":{"__symbolic":"function"},"countGroupLabelsBeforeOption":{"__symbolic":"function"},"getOptionScrollPosition":{"__symbolic":"function"},"someOptionsAreSelected":{"__symbolic":"function"},"toggleAllOptions":{"__symbolic":"function"},"TsOptionDisplayDirective":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Directive","line":9,"character":1},"arguments":[{"selector":"[tsOptionDisplay]"}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":12,"character":23}]}]}},"TsOptgroupComponent":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":44,"character":1},"arguments":[{"selector":"ts-select-optgroup","host":{"class":"ts-optgroup","role":"group","[class.ts-optgroup--disabled]":"isDisabled","[attr.id]":"id","[attr.aria-disabled]":"!!isDisabled","[attr.aria-labelledby]":"labelId","$quoted$":["class","role","[class.ts-optgroup--disabled]","[attr.id]","[attr.aria-disabled]","[attr.aria-labelledby]"]},"providers":[{"provide":{"__symbolic":"reference","name":"TS_OPTGROUP_PARENT_COMPONENT"},"useExisting":{"__symbolic":"reference","name":"TsOptgroupComponent"}}],"encapsulation":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewEncapsulation","line":62,"character":17},"member":"None"},"changeDetection":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectionStrategy","line":63,"character":19},"member":"OnPush"},"exportAs":"tsOptgroup","template":"<label\n  class=\"ts-optgroup-label qa-optgroup-label\"\n  [attr.id]=\"labelId\"\n  [attr.title]=\"label\"\n  (click)=\"toggle()\"\n>\n  <ts-checkbox\n    class=\"qa-optgroup-checkbox\"\n    [isDisabled]=\"isDisabled\"\n    [isChecked]=\"allSelected\"\n    [isIndeterminate]=\"someSelected\"\n    *ngIf=\"parent.allowMultiple\"\n  >\n    {{ label }}\n  </ts-checkbox>\n\n  <ng-container *ngIf=\"!parent.allowMultiple\">\n    {{ label }}\n  </ng-container>\n</label>\n\n\n<ng-content select=\"ts-option, ng-container\">\n</ng-content>\n","styles":[".ts-optgroup{display:block}.ts-optgroup.ts-optgroup--disabled{color:#757575}.ts-optgroup .ts-optgroup-label{font-family:Roboto,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:16px;letter-spacing:.01em;font-weight:500;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#999;display:block;padding-left:12px}"]}]}],"members":{"checkbox":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":90,"character":3},"arguments":[{"__symbolic":"reference","module":"@terminus/ui/checkbox","name":"TsCheckboxComponent","line":90,"character":13}]}]}],"optgroupOptions":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ContentChildren","line":96,"character":3},"arguments":[{"__symbolic":"reference","name":"TsOptionComponent"}]}]}],"id":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":104,"character":3}}]}],"isDisabled":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":116,"character":3}}]}],"label":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Input","line":122,"character":3}}]}],"__ctor__":[{"__symbolic":"constructor","parameterDecorators":[null,null,[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Optional","line":130,"character":5}},{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Inject","line":130,"character":17},"arguments":[{"__symbolic":"reference","name":"TS_OPTION_PARENT_COMPONENT"}]}]],"parameters":[{"__symbolic":"reference","module":"@angular/core","name":"ChangeDetectorRef","line":127,"character":31},{"__symbolic":"reference","module":"@angular/core","name":"ElementRef","line":129,"character":23},{"__symbolic":"reference","name":"TsOptionParentComponent"}]}],"toggle":[{"__symbolic":"method"}],"triggerChangeDetection":[{"__symbolic":"method"}]}}},"origins":{"TsOptionModule":"./option.module","TsOption":"./option.component","TsOptionSelectionChange":"./option.component","TsOptionParentComponent":"./option.component","TS_OPTION_PARENT_COMPONENT":"./option.component","TsOptgroupParentComponent":"./option.component","TS_OPTGROUP_PARENT_COMPONENT":"./option.component","TsOptionComponent":"./option.component","allOptionsAreSelected":"./option-utilities","countGroupLabelsBeforeOption":"./option-utilities","getOptionScrollPosition":"./option-utilities","someOptionsAreSelected":"./option-utilities","toggleAllOptions":"./option-utilities","TsOptionDisplayDirective":"./option-display.directive","TsOptgroupComponent":"./optgroup.component"},"importAs":"@terminus/ui/option"}