{"__symbolic":"module","version":4,"metadata":{"ɵa":{"__symbolic":"function","parameters":[],"value":[{"__symbolic":"reference","name":"ɵb"},{"__symbolic":"reference","name":"ɵc"}]},"ClientManagementModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":13,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","module":"tnx-shared","name":"TnxSharedModule","line":15,"character":8}],"declarations":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵa"}},"exports":{"__symbolic":"call","expression":{"__symbolic":"reference","name":"ɵa"}}}]}],"members":{}},"ClientManagementWithRouteModule":{"__symbolic":"class","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"NgModule","line":23,"character":1},"arguments":[{"imports":[{"__symbolic":"reference","name":"ClientManagementModule"},{"__symbolic":"reference","name":"ɵd"}],"exports":[{"__symbolic":"reference","name":"ClientManagementModule"}]}]}],"members":{}},"ɵb":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"tnx-shared","name":"DataFormBase","line":14,"character":51},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":8,"character":1},"arguments":[{"selector":"client-management-form","providers":[{"__symbolic":"reference","module":"tnx-shared","name":"ComponentContextService","line":12,"character":16}],"template":"<crud-form #crudForm [(data)]=\"model.data\" [setting]=\"setting\" [context]=\"context\" [disableCaching]=\"true\"\n           (onFormReady)=\"_handleFormReady($event)\">\n\n    <ng-template #clientSecretRowButton let-rowData=\"rowData\" let-control=\"control\" let-ri=\"rowIndex\"\n                 let-path=\"path\">\n        <!--        <td class=\"secret-function-bar\" style=\"text-align: center;\">-->\n        <button *ngIf=\"!rowData.id\" icon=\"pi pi-refresh\" pButton type=\"button\"\n                (click)=\"generateKey($event, 'generateSecretKey',rowData)\"\n                pTooltip=\"{{'Sinh mã bí mật' | translate}}\"\n                class=\"p-button-text p-button-success\"></button>\n        <button *ngIf=\"!rowData.id\" icon=\"fas fa-copy\" pButton type=\"button\"\n                (click)=\"generateKey($event, 'copy',rowData)\" pTooltip=\"{{'Copy' | translate}}\"\n                class=\"p-button-text p-button-info\"></button>\n        <button type=\"button\" pButton icon=\"pi pi-trash\" class=\"p-button-text p-button-danger\"\n                pTooltip=\"{{'Xóa mã' | translate}}\"\n                (click)=\"deleteSecretKey(rowData,ri, control, path)\"></button>\n        <!--        </td>-->\n    </ng-template>\n\n    <!--    <ng-template #clientSecret let-col=\"control\" let-crudForm=\"crudForm\">-->\n    <!--        <p-table [value]=\"attachKey\" [columns]=\"attachKeyColumn\" [responsive]=\"true\">-->\n    <!--            <ng-template pTemplate=\"header\" let-columns>-->\n    <!--                <tr>-->\n    <!--                    <th *ngFor=\"let colTableKey of columns\" [pSortableColumn]=\"colTableKey.field\"-->\n    <!--                        [style.width]=\"colTableKey.width\">-->\n    <!--                        {{colTableKey.header}}-->\n    <!--                    </th>-->\n    <!--                    <th>-->\n    <!--                        Chức năng-->\n    <!--                    </th>-->\n    <!--                </tr>-->\n    <!--            </ng-template>-->\n    <!--            <ng-template pTemplate=\"body\" let-rowData let-ri=\"rowIndex\" let-columns=\"columns\">-->\n    <!--                <tr>-->\n    <!--                    <td>-->\n    <!--                        {{ri + 1}}-->\n    <!--                    </td>-->\n    <!--                    <td>-->\n    <!--                        <input disabled=\"disabled\" pInputText type=\"text\" name='key'-->\n    <!--                               [ngModelOptions]=\"{standalone: true}\" [(ngModel)]=\"rowData.value\">-->\n    <!--                    </td>-->\n    <!--                    <td class=\"secret-function-bar\" style=\"text-align: center;\">-->\n    <!--                        <button *ngIf=\"rowData.isAddNew\" icon=\"pi pi-refresh\" pButton type=\"button\"-->\n    <!--                                (click)=\"generateKey(col,$event, 'generateSecretKey',ri)\"-->\n    <!--                                pTooltip=\"{{'Sinh mã bí mật' | translate}}\"-->\n    <!--                                class=\"p-button-text p-button-success\"></button>-->\n    <!--                        <button *ngIf=\"rowData.isAddNew\" icon=\"fas fa-copy\" pButton type=\"button\"-->\n    <!--                                (click)=\"generateKey(col,$event, 'copy',ri)\" pTooltip=\"{{'Copy' | translate}}\"-->\n    <!--                                class=\"p-button-text p-button-info\"></button>-->\n    <!--                        <button type=\"button\" pButton icon=\"pi pi-trash\" class=\"p-button-text p-button-danger\"-->\n    <!--                                (click)=\"deleteSecretKey(rowData,ri)\"></button>-->\n    <!--                    </td>-->\n    <!--                </tr>-->\n    <!--            </ng-template>-->\n    <!--            <ng-template pTemplate=\"summary\" let-rowData>-->\n    <!--                <div style=\"text-align:left\">-->\n    <!--                    <button style=\"width: auto;\" type=\"button\" class=\"p-button-text p-button-info\" pButton-->\n    <!--                            icon=\"fas fa-plus\"-->\n    <!--                            (click)=\"onAddSecretKey()\" label=\"{{ 'Thêm' | translate}}\"></button>-->\n    <!--                </div>-->\n    <!--            </ng-template>-->\n    <!--        </p-table>-->\n    <!--    </ng-template>-->\n<!--    <ng-template #tableex let-col=\"control\" let-crudForm=\"crudForm\">-->\n<!--        <p-table [value]=\"attachFiles\" [columns]=\"attachFileCols\" [responsive]=\"true\">-->\n<!--            <ng-template pTemplate=\"header\" let-columns>-->\n<!--                <tr>-->\n<!--                    <th *ngFor=\"let colTable of columns\" [pSortableColumn]=\"colTable.field\"-->\n<!--                        [style.width]=\"colTable.width\">-->\n<!--                        {{colTable.header}}-->\n<!--                    </th>-->\n<!--                    <th>-->\n<!--                        Chức năng-->\n<!--                    </th>-->\n<!--                </tr>-->\n<!--            </ng-template>-->\n<!--            <ng-template pTemplate=\"body\" let-rowData let-ri=\"rowIndex\" let-columns=\"columns\">-->\n<!--                <tr>-->\n<!--                    <td style=\"text-align:center\">{{ri + 1}}</td>-->\n\n<!--                    <td>-->\n<!--                        <input pInputText type=\"text\" name='value' [ngModelOptions]=\"{standalone: true}\"-->\n<!--                               [(ngModel)]=\"rowData.value\" placeholder=\"Nhập đường dẫn endpoint\">-->\n<!--                    </td>-->\n\n<!--                    <td style=\"text-align: center;\">-->\n<!--                        <button type=\"button\" pButton icon=\"pi pi-times\" class=\"p-button-text p-button-danger\"-->\n<!--                                (click)=\"deleteDocumentRow(rowData)\"></button>-->\n<!--                    </td>-->\n<!--                </tr>-->\n\n<!--            </ng-template>-->\n<!--            <ng-template pTemplate=\"summary\" let-rowData>-->\n<!--                <div style=\"text-align:left\" class=\"&#45;&#45;table-schema-footer\">-->\n<!--                    <button style=\"width: auto;\" type=\"button\" class=\"p-button-text p-button-info\" pButton-->\n<!--                            icon=\"fas fa-plus\"-->\n<!--                            (click)=\"onAddDocument()\" label=\"{{ 'Thêm' | translate}}\"></button>-->\n<!--                </div>-->\n<!--            </ng-template>-->\n<!--        </p-table>-->\n<!--    </ng-template>-->\n<!--</crud-form>-->\n<ng-template #buttonTemplate>\n    <button *ngIf=\"!model.data.__disableEdit && !__isFormView\" type=\"button\" pButton icon=\"pi pi-save\"\n            class=\"p-button-text\"\n            [label]=\"'FORM.SAVE' | translate\" (click)=\"_handleSave($event)\"></button>\n    <button type=\"button\" pButton icon=\"pi pi-replay\" class=\"p-button-text p-button-secondary\"\n            [label]=\"'FORM.CANCEL' | translate\" preventTab (click)=\"_handleCancel($event)\"></button>\n</ng-template>\n","styles":["::ng-deep .secret-function-bar button{margin-right:5px}"]}]}],"members":{"clientSecretRowButton":[{"__symbolic":"property","decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"ViewChild","line":15,"character":5},"arguments":["clientSecretRowButton",{"static":true}]}]}],"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"tnx-admin-service/client-management/services","name":"ClientService","line":48,"character":34},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":49,"character":29}]}],"ngOnInit":[{"__symbolic":"method"}],"getDetailCustom":[{"__symbolic":"method"}],"onFormInitialized":[{"__symbolic":"method"}],"modifyDetailData":[{"__symbolic":"method"}],"onBeforeSave":[{"__symbolic":"method"}],"generateKey":[{"__symbolic":"method"}],"copyMessage":[{"__symbolic":"method"}],"onAddDocument":[{"__symbolic":"method"}],"deleteDocumentRow":[{"__symbolic":"method"}],"onAddSecretKey":[{"__symbolic":"method"}],"deleteSecretKey":[{"__symbolic":"method"}],"removeAllElements":[{"__symbolic":"method"}]}},"ɵc":{"__symbolic":"class","extends":{"__symbolic":"reference","module":"tnx-shared","name":"DataListBase","line":10,"character":47},"decorators":[{"__symbolic":"call","expression":{"__symbolic":"reference","module":"@angular/core","name":"Component","line":4,"character":1},"arguments":[{"selector":"client-management","providers":[{"__symbolic":"reference","module":"tnx-shared","name":"ComponentContextService","line":8,"character":16}],"template":"<crud-list #crudList (onAdd)=\"_add($event)\" (onCopyLink)=\"_copyLink($event)\" (onCopyLinkMultiple)=\"_copyLinkMultiple()\"\n           (onDelete)=\"_delete($event)\" (onDeleteMultiple)=\"_deleteMultiple($event)\"\n           (onEdit)=\"_edit($event)\"\n           (onReload)=\"_triggerProcessData($event)\" (onReloaded)=\"_handleReloaded($event)\" (onView)=\"_view($event)\"\n           [dataSource]=\"model.dataSource\"\n           [model]=\"model\" [setting]=\"setting\">\n    <ng-template #endPoint let-col='col' let-rowData='rowData'>\n        <table *ngFor=\"let row of rowData.claims\" class=\"table\" style=\"text-align: left\">\n            <tbody>\n            <tr *ngIf=\"row.type === 'EndPoint'\">\n                <td>\n                    <a style=\"cursor: pointer\">{{row.value}}</a>\n                </td>\n            </tr>\n            </tbody>\n        </table>\n    </ng-template>\n\n    <ng-template #email let-col='col' let-rowData='rowData'>\n        <div *ngFor=\"let row of rowData.claims\">\n            <div *ngIf=\"row.type === 'Email'\">\n                {{row.value}}\n            </div>\n        </div>\n    </ng-template>\n\n    <ng-template #orgIdentity let-col='col' let-rowData='rowData'>\n        <div *ngFor=\"let row of rowData.claims\" style=\"text-align: left\">\n            <div *ngIf=\"row.type === 'OrgIdentity'\">\n                {{row.value}}\n            </div>\n        </div>\n    </ng-template>\n    <ng-template #allowedGrantType let-col='col' let-rowData='rowData'>\n        <span\n            *ngIf=\"rowData.allowedGrantTypes && rowData.allowedGrantTypes.length > 0 && rowData.allowedGrantTypes[0] == 'implicit'\">Implicit flow</span>\n        <span\n            *ngIf=\"rowData.allowedGrantTypes && rowData.allowedGrantTypes.length > 0 && rowData.allowedGrantTypes[0] == 'client_credentials'\">Client credentials</span>\n        <span\n            *ngIf=\"rowData.allowedGrantTypes && rowData.allowedGrantTypes.length > 0 && rowData.allowedGrantTypes[0] == 'password'\">Password flow</span>\n    </ng-template>\n</crud-list>\n<tn-dialog #dialog (onHide)=\"showDetailForm = false\" *ngIf=\"showDetailForm\" [header]=\"setting.popupHeader | translate\"\n           [popupSize]=\"setting.popupSize\" [styleClass]=\"'address-form'\">\n    <client-management-form #formBase [model]=\"formModel\" [parentContext]=\"context\" [parentModel]=\"model\"\n                            [parentSetting]=\"setting\" (onCancel)=\"_handleCancel($event)\"\n                            (onSaved)=\"showDetailForm = false;crudList.reload()\">\n    </client-management-form>\n</tn-dialog>\n","styles":[":host ::ng-deep .text-center li{text-align:center}"]}]}],"members":{"__ctor__":[{"__symbolic":"constructor","parameters":[{"__symbolic":"reference","module":"tnx-admin-service/client-management/services","name":"ClientService","line":17,"character":34},{"__symbolic":"reference","module":"@angular/core","name":"Injector","line":18,"character":29}]}],"ngOnInit":[{"__symbolic":"method"}],"modifyGridInfo":[{"__symbolic":"method"}]}},"ɵd":{"__symbolic":"call","expression":{"__symbolic":"select","expression":{"__symbolic":"reference","module":"@angular/router","name":"RouterModule","line":11,"character":38},"member":"forChild"},"arguments":[[{"path":"","component":{"__symbolic":"reference","name":"ɵc"},"children":[]}]]}},"origins":{"ɵa":"./client-management.module","ClientManagementModule":"./client-management.module","ClientManagementWithRouteModule":"./client-management.module","ɵb":"./client-form/client-management-form.component","ɵc":"./client-management.component","ɵd":"./client-management.routing"},"importAs":"tnx-admin-service/client-management"}