nuxeo-development-framework 5.2.5 → 5.2.6

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.
@@ -19927,7 +19927,7 @@
19927
19927
  return FiltersPanelComponent;
19928
19928
  }(BaseFiltersPanel));
19929
19929
  FiltersPanelComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: FiltersPanelComponent, deps: [{ token: i1__namespace.TranslateService }], target: i0__namespace.ɵɵFactoryTarget.Component });
19930
- FiltersPanelComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FiltersPanelComponent, selector: "app-filters-panel", inputs: { aggregations: "aggregations", fields: "fields", activeQuery: "activeQuery" }, outputs: { filterChanged: "filterChanged" }, usesInheritance: true, ngImport: i0__namespace, template: "<div [formGroup]=\"formGroup\" class=\"filters-panel\" [dir]=\"direction$ | async\">\r\n\t<div class=\"reset-filter flex reset-container\">\r\n\t\t<button mat-stroked-button class=\"w-full\" (click)=\"resetFilters()\" [disabled]=\"!hasValues\">\r\n\t\t\t{{ 'BUTTONS.clearFilter' | translate }}\r\n\t\t</button>\r\n\t</div>\r\n\t<ng-container *ngFor=\"let field of fields | filterByRoles; trackBy: trackByFieldKey\">\r\n\t\t<ng-container *permission=\"{ name: field.config?.permission }\">\r\n\t\t\t<app-predicate-field\r\n\t\t\t\t*ngIf=\"field.type == fieldTypes.predicate\"\r\n\t\t\t\t[fieldConfig]=\"field.config\"\r\n\t\t\t\t[formControlName]=\"field.config.fieldKey\"\r\n\t\t\t></app-predicate-field>\r\n\t\t\t<app-aggregation-field\r\n\t\t\t\t*ngIf=\"field.type == fieldTypes.aggregation && !!aggregations\"\r\n\t\t\t\t[formControlName]=\"field.config.fieldKey\"\r\n\t\t\t\t[fieldConfig]=\"field.config\"\r\n\t\t\t\t[aggregation]=\"aggregations[field.config.aggregation]\"\r\n\t\t\t\t[contentTemplate]=\"getContentTemplate(field.config.render.type)\"\r\n\t\t\t></app-aggregation-field>\r\n\t\t\t<app-custom-field\r\n\t\t\t\t*ngIf=\"field.type == fieldTypes.custom\"\r\n\t\t\t\t[fieldConfig]=\"field.config\"\r\n\t\t\t\t[formControlName]=\"field.config.fieldKey\"\r\n\t\t\t\t[aggregations]=\"aggregations\"\r\n\t\t\t></app-custom-field>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n</div>\r\n", styles: [".filters-panel{display:var(--filters-panel-display, flex);flex-direction:var(--filters-panel-direction, column);grid-gap:var(--filters-panel-gap, .5rem);gap:var(--filters-panel-gap, .5rem);flex-wrap:var(--filters-panel-wrap, wrap);max-width:100%;box-sizing:border-box}.aggregation-field{padding-inline:var(--af-padding-inline, var(--ff-padding-inline, .5rem));padding-block:var(--af-padding-block, var(--ff-padding-block, 0));max-width:100%}.reset-container{padding:.5rem;position:sticky;top:-8px;z-index:4;background:var(--reset-filter-panel-bg, #fff)}.reset-container button.mat-button-base{background-color:var(--reset-filter-panel-btn-bg, transparent);border-color:var(--reset-filter-panel-btn-bg, #e2e8f0)}\n"], components: [{ type: i1__namespace$b.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: PredicateFieldComponent, selector: "app-predicate-field" }, { type: AggregationFieldComponent, selector: "app-aggregation-field", inputs: ["aggregation", "contentTemplate"] }, { type: CustomFieldComponent, selector: "app-custom-field", inputs: ["aggregations"] }], directives: [{ type: i2__namespace$5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2__namespace$5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4__namespace.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i4__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: PermissionsDirective, selector: "[permission]", inputs: ["permission"] }, { type: i4__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2__namespace$5.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "async": i4__namespace$1.AsyncPipe, "translate": i1__namespace.TranslatePipe, "filterByRoles": FiltersByRolesPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
19930
+ FiltersPanelComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: FiltersPanelComponent, selector: "app-filters-panel", inputs: { aggregations: "aggregations", fields: "fields", activeQuery: "activeQuery" }, outputs: { filterChanged: "filterChanged" }, usesInheritance: true, ngImport: i0__namespace, template: "<div [formGroup]=\"formGroup\" class=\"filters-panel\" [dir]=\"direction$ | async\">\r\n\t<div class=\"reset-filter flex reset-container\">\r\n\t\t<button mat-stroked-button class=\"w-full\" (click)=\"resetFilters()\" [disabled]=\"!hasValues\">\r\n\t\t\t{{ 'BUTTONS.clearFilter' | translate }}\r\n\t\t</button>\r\n\t</div>\r\n\t<ng-container *ngFor=\"let field of fields | filterByRoles; trackBy: trackByFieldKey\">\r\n\t\t<ng-container *permission=\"{ name: field.config?.permission }\">\r\n\t\t\t<app-predicate-field\r\n\t\t\t\t*ngIf=\"field.type == fieldTypes.predicate\"\r\n\t\t\t\t[fieldConfig]=\"field.config\"\r\n\t\t\t\t[formControlName]=\"field.config.fieldKey\"\r\n\t\t\t></app-predicate-field>\r\n\t\t\t<app-aggregation-field\r\n\t\t\t\t*ngIf=\"field.type == fieldTypes.aggregation && !!aggregations\"\r\n\t\t\t\t[formControlName]=\"field.config.fieldKey\"\r\n\t\t\t\t[fieldConfig]=\"field.config\"\r\n\t\t\t\t[aggregation]=\"aggregations[field.config.aggregation]\"\r\n\t\t\t\t[contentTemplate]=\"getContentTemplate(field.config.render.type)\"\r\n\t\t\t></app-aggregation-field>\r\n\t\t\t<app-custom-field\r\n\t\t\t\t*ngIf=\"field.type == fieldTypes.custom\"\r\n\t\t\t\t[fieldConfig]=\"field.config\"\r\n\t\t\t\t[formControlName]=\"field.config.fieldKey\"\r\n\t\t\t\t[aggregations]=\"aggregations\"\r\n\t\t\t></app-custom-field>\r\n\t\t</ng-container>\r\n\t</ng-container>\r\n</div>\r\n", styles: [".filters-panel{display:var(--filters-panel-display, flex);flex-direction:var(--filters-panel-direction, column);grid-gap:var(--filters-panel-gap, .5rem);gap:var(--filters-panel-gap, .5rem);flex-wrap:var(--filters-panel-wrap, wrap);max-width:100%;box-sizing:border-box}.aggregation-field{padding-inline:var(--af-padding-inline, var(--ff-padding-inline, .5rem));padding-block:var(--af-padding-block, var(--ff-padding-block, 0));max-width:100%}.reset-container{padding:.5rem;position:sticky;top:-8px;z-index:4;background:var(--reset-filter-panel-bg, #fff)}.reset-container button.mat-button-base{background-color:var(--reset-filter-panel-btn-bg, transparent);border-color:var(--reset-filter-panel-btn-bg, #e2e8f0);color:var(--reset-filter-panel-btn-color, currentColor)}\n"], components: [{ type: i1__namespace$b.MatButton, selector: "button[mat-button], button[mat-raised-button], button[mat-icon-button], button[mat-fab], button[mat-mini-fab], button[mat-stroked-button], button[mat-flat-button]", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { type: PredicateFieldComponent, selector: "app-predicate-field" }, { type: AggregationFieldComponent, selector: "app-aggregation-field", inputs: ["aggregation", "contentTemplate"] }, { type: CustomFieldComponent, selector: "app-custom-field", inputs: ["aggregations"] }], directives: [{ type: i2__namespace$5.NgControlStatusGroup, selector: "[formGroupName],[formArrayName],[ngModelGroup],[formGroup],form:not([ngNoForm]),[ngForm]" }, { type: i2__namespace$5.FormGroupDirective, selector: "[formGroup]", inputs: ["formGroup"], outputs: ["ngSubmit"], exportAs: ["ngForm"] }, { type: i4__namespace.Dir, selector: "[dir]", inputs: ["dir"], outputs: ["dirChange"], exportAs: ["dir"] }, { type: i4__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: PermissionsDirective, selector: "[permission]", inputs: ["permission"] }, { type: i4__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i2__namespace$5.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { type: i2__namespace$5.FormControlName, selector: "[formControlName]", inputs: ["disabled", "formControlName", "ngModel"], outputs: ["ngModelChange"] }], pipes: { "async": i4__namespace$1.AsyncPipe, "translate": i1__namespace.TranslatePipe, "filterByRoles": FiltersByRolesPipe }, changeDetection: i0__namespace.ChangeDetectionStrategy.OnPush });
19931
19931
  i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: FiltersPanelComponent, decorators: [{
19932
19932
  type: i0.Component,
19933
19933
  args: [{
@@ -42522,6 +42522,172 @@
42522
42522
  legendMargin: legendMargin
42523
42523
  });
42524
42524
 
42525
+ var NdfTabsComponent = /** @class */ (function (_super) {
42526
+ __extends(NdfTabsComponent, _super);
42527
+ function NdfTabsComponent(injector, evaluatorsService) {
42528
+ var _this = _super.call(this, injector) || this;
42529
+ _this.evaluatorsService = evaluatorsService;
42530
+ _this._showHeader = true;
42531
+ _this.isAllowdTabFn = function (_) { return true; };
42532
+ _this.activeTabEmitter = new i0.EventEmitter();
42533
+ _this.checkingPermission = false;
42534
+ return _this;
42535
+ }
42536
+ Object.defineProperty(NdfTabsComponent.prototype, "showHeader", {
42537
+ get: function () {
42538
+ return this._showHeader;
42539
+ },
42540
+ set: function (value) {
42541
+ this._showHeader = value;
42542
+ },
42543
+ enumerable: false,
42544
+ configurable: true
42545
+ });
42546
+ NdfTabsComponent.prototype.ngOnInit = function () {
42547
+ this.checkTabsPermissions();
42548
+ };
42549
+ NdfTabsComponent.prototype.checkTabsPermissions = function () {
42550
+ var _this = this;
42551
+ this.checkingPermission = true;
42552
+ var permissionCalls = [];
42553
+ var createPermissionCall = function (id, permission, secondaryTab) {
42554
+ if (secondaryTab === void 0) { secondaryTab = false; }
42555
+ if (permission) {
42556
+ return rxjs.from(_this.evaluatorsService.evaluateRule(permission)).pipe(operators.map(function (res) { return ({ id: id, enabled: res, secondaryTab: secondaryTab }); }));
42557
+ }
42558
+ return rxjs.of({ id: id, enabled: true, secondaryTab: secondaryTab });
42559
+ };
42560
+ this.tabs.forEach(function (tab) {
42561
+ var _a;
42562
+ permissionCalls.push(createPermissionCall(tab.id, tab.permission));
42563
+ (_a = tab.secondary_tabs) === null || _a === void 0 ? void 0 : _a.forEach(function (subTab) {
42564
+ permissionCalls.push(createPermissionCall(subTab.id, subTab.permission, true));
42565
+ });
42566
+ });
42567
+ rxjs.forkJoin(permissionCalls)
42568
+ .pipe(operators.takeUntil(this.destroy$), operators.tap(function (results) {
42569
+ var secondaryTabsPerms = results.filter(function (r) { return r.secondaryTab; });
42570
+ var primaryTabsPerms = results.filter(function (r) { return !r.secondaryTab; });
42571
+ var filteredTabs = _.cloneDeep(_this.tabs);
42572
+ filteredTabs = filteredTabs
42573
+ .filter(function (tab) { return primaryTabsPerms.some(function (p) { return p.id === tab.id && p.enabled; }); })
42574
+ .map(function (tab) {
42575
+ var _a;
42576
+ if ((_a = tab.secondary_tabs) === null || _a === void 0 ? void 0 : _a.length) {
42577
+ tab.secondary_tabs = tab.secondary_tabs.filter(function (sub) { return secondaryTabsPerms.some(function (p) { return p.id === sub.id && p.enabled; }); });
42578
+ }
42579
+ return tab;
42580
+ });
42581
+ _this.tabs = filteredTabs;
42582
+ }))
42583
+ .subscribe(function () {
42584
+ if (_this.tabs.length) {
42585
+ _this.activateTab(_this.tabs[0]);
42586
+ }
42587
+ _this.checkingPermission = false;
42588
+ });
42589
+ };
42590
+ Object.defineProperty(NdfTabsComponent.prototype, "activatedTabId", {
42591
+ get: function () {
42592
+ var _a, _b, _c;
42593
+ return (_a = this.activeTab) !== null && _a !== void 0 ? _a : (_c = (_b = this.tabs) === null || _b === void 0 ? void 0 : _b[0]) === null || _c === void 0 ? void 0 : _c.id;
42594
+ },
42595
+ enumerable: false,
42596
+ configurable: true
42597
+ });
42598
+ Object.defineProperty(NdfTabsComponent.prototype, "activatedTab", {
42599
+ get: function () {
42600
+ var _this = this;
42601
+ return this.tabs.find(function (_d) {
42602
+ var id = _d.id;
42603
+ return id === _this.activatedTabId;
42604
+ });
42605
+ },
42606
+ enumerable: false,
42607
+ configurable: true
42608
+ });
42609
+ NdfTabsComponent.prototype.activateTab = function (tab) {
42610
+ this.activeTab = tab.id;
42611
+ this.activeTabEmitter.emit(tab);
42612
+ };
42613
+ NdfTabsComponent.prototype.ngOnDestroy = function () {
42614
+ this.destroy$.next();
42615
+ this.destroy$.complete();
42616
+ };
42617
+ NdfTabsComponent.prototype.isEnabledTab = function (tabId) {
42618
+ var _a;
42619
+ return (_a = tabId.isEnable) !== null && _a !== void 0 ? _a : true;
42620
+ };
42621
+ return NdfTabsComponent;
42622
+ }(BaseComponent));
42623
+ NdfTabsComponent.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfTabsComponent, deps: [{ token: i0__namespace.Injector }, { token: EvaluatorsService }], target: i0__namespace.ɵɵFactoryTarget.Component });
42624
+ NdfTabsComponent.ɵcmp = i0__namespace.ɵɵngDeclareComponent({ minVersion: "12.0.0", version: "12.2.17", type: NdfTabsComponent, selector: "ndf-tabs", inputs: { tabs: "tabs", showHeader: "showHeader", isAllowdTabFn: "isAllowdTabFn" }, outputs: { activeTabEmitter: "activeTabEmitter" }, host: { classAttribute: "w-full h-full" }, queries: [{ propertyName: "tabHeader", first: true, predicate: ["tabHeader"], descendants: true, read: i0.TemplateRef }, { propertyName: "headerOptions", first: true, predicate: ["headerOptions"], descendants: true, read: i0.TemplateRef }, { propertyName: "tabBody", first: true, predicate: ["tabBody"], descendants: true, read: i0.TemplateRef }], usesInheritance: true, ngImport: i0__namespace, template: "<div class=\"flex flex-col ndf-tabs-wrapper rounded-md overflow-auto px-0.5\" *ngIf=\"!checkingPermission\">\r\n\t<div\r\n\t\tclass=\"tabs-header flex justify-between items-center w-full border-b\"\r\n\t\t[@visibilitySlide]=\"showHeader\"\r\n\t\t[class.overflow-hidden]=\"!showHeader\"\r\n\t>\r\n\t\t<div class=\"tabs-wrapper flex justify-start items-center gap-2.5 self-stretch\">\r\n\t\t\t<ng-container *ngFor=\"let tab of tabs\">\r\n\t\t\t\t<ng-container *ngIf=\"isEnabledTab(tab) && isAllowdTabFn(tab)\">\r\n\t\t\t\t\t<div\r\n\t\t\t\t\t\t[ngClass]=\"{\r\n\t\t\t\t\t\t\t'selected-tab': activeTab === tab.id\r\n\t\t\t\t\t\t}\"\r\n\t\t\t\t\t\tclass=\"tab-item flex p-4 justify-center items-center gap-2.5 rounded-t-md font-medium text-xl cursor-pointer\"\r\n\t\t\t\t\t\t(click)=\"activateTab(tab)\"\r\n\t\t\t\t\t>\r\n\t\t\t\t\t\t<ng-template\r\n\t\t\t\t\t\t\t[ngTemplateOutlet]=\"tabHeader || defaultHeader\"\r\n\t\t\t\t\t\t\t[ngTemplateOutletContext]=\"{ $implicit: tab }\"\r\n\t\t\t\t\t\t></ng-template>\r\n\t\t\t\t\t</div>\r\n\t\t\t\t</ng-container>\r\n\t\t\t</ng-container>\r\n\t\t</div>\r\n\t\t<ng-template\r\n\t\t\t[ngTemplateOutlet]=\"headerOptions\"\r\n\t\t\t[ngTemplateOutletContext]=\"{ $implicit: activatedTab }\"\r\n\t\t></ng-template>\r\n\t</div>\r\n\t<ng-template\r\n\t\t[ngTemplateOutlet]=\"tabBody || defaultBody\"\r\n\t\t[ngTemplateOutletContext]=\"{ $implicit: activatedTab }\"\r\n\t></ng-template>\r\n</div>\r\n\r\n<ng-template #defaultHeader let-tab>{{ tab.label | translate }}</ng-template>\r\n<ng-template #defaultBody>Default Body</ng-template>\r\n", styles: [":host{display:block}.ndf-tabs-wrapper{background-color:var(--ndf-tabs-body, #fff);border-radius:8px 8px 0 0;overflow:hidden!important;height:calc(100vh - 100px)}.ndf-tabs-wrapper .tabs-header{background-color:var(--ndf-tabs-header, #fff)}\n"], directives: [{ type: i4__namespace$1.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { type: i4__namespace$1.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { type: i4__namespace$1.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { type: i4__namespace$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet"] }], pipes: { "translate": i1__namespace.TranslatePipe }, animations: [
42625
+ animations.trigger('visibilitySlide', [
42626
+ animations.state('true', animations.style({ height: '*', visibility: '*' })),
42627
+ animations.state('false', animations.style({ height: '0', visibility: 'hidden' })),
42628
+ animations.transition('false => true', animations.animate('150ms ease-out')),
42629
+ animations.transition('true => false', animations.animate('150ms ease-in'))
42630
+ ])
42631
+ ] });
42632
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfTabsComponent, decorators: [{
42633
+ type: i0.Component,
42634
+ args: [{
42635
+ selector: 'ndf-tabs',
42636
+ templateUrl: './ndf-tabs.component.html',
42637
+ styleUrls: ['./ndf-tabs.component.scss'],
42638
+ host: { class: 'w-full h-full' },
42639
+ animations: [
42640
+ animations.trigger('visibilitySlide', [
42641
+ animations.state('true', animations.style({ height: '*', visibility: '*' })),
42642
+ animations.state('false', animations.style({ height: '0', visibility: 'hidden' })),
42643
+ animations.transition('false => true', animations.animate('150ms ease-out')),
42644
+ animations.transition('true => false', animations.animate('150ms ease-in'))
42645
+ ])
42646
+ ]
42647
+ }]
42648
+ }], ctorParameters: function () { return [{ type: i0__namespace.Injector }, { type: EvaluatorsService }]; }, propDecorators: { tabHeader: [{
42649
+ type: i0.ContentChild,
42650
+ args: ['tabHeader', { read: i0.TemplateRef }]
42651
+ }], headerOptions: [{
42652
+ type: i0.ContentChild,
42653
+ args: ['headerOptions', { read: i0.TemplateRef }]
42654
+ }], tabBody: [{
42655
+ type: i0.ContentChild,
42656
+ args: ['tabBody', { read: i0.TemplateRef }]
42657
+ }], tabs: [{
42658
+ type: i0.Input
42659
+ }], showHeader: [{
42660
+ type: i0.Input
42661
+ }], isAllowdTabFn: [{
42662
+ type: i0.Input
42663
+ }], activeTabEmitter: [{
42664
+ type: i0.Output
42665
+ }] } });
42666
+
42667
+ var NdfTabsModule = /** @class */ (function () {
42668
+ function NdfTabsModule() {
42669
+ }
42670
+ return NdfTabsModule;
42671
+ }());
42672
+ NdfTabsModule.ɵfac = i0__namespace.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfTabsModule, deps: [], target: i0__namespace.ɵɵFactoryTarget.NgModule });
42673
+ NdfTabsModule.ɵmod = i0__namespace.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfTabsModule, declarations: [NdfTabsComponent], imports: [i4.CommonModule,
42674
+ i1.TranslateModule], exports: [NdfTabsComponent] });
42675
+ NdfTabsModule.ɵinj = i0__namespace.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfTabsModule, imports: [[
42676
+ i4.CommonModule,
42677
+ i1.TranslateModule
42678
+ ]] });
42679
+ i0__namespace.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.17", ngImport: i0__namespace, type: NdfTabsModule, decorators: [{
42680
+ type: i0.NgModule,
42681
+ args: [{
42682
+ declarations: [NdfTabsComponent],
42683
+ imports: [
42684
+ i4.CommonModule,
42685
+ i1.TranslateModule
42686
+ ],
42687
+ exports: [NdfTabsComponent]
42688
+ }]
42689
+ }] });
42690
+
42525
42691
  /*
42526
42692
  * Public API Surface of nuxeo-development-framework
42527
42693
  */
@@ -42823,6 +42989,8 @@
42823
42989
  exports.NdfTableComponent = NdfTableComponent;
42824
42990
  exports.NdfTableModule = NdfTableModule;
42825
42991
  exports.NdfTableService = NdfTableService;
42992
+ exports.NdfTabsComponent = NdfTabsComponent;
42993
+ exports.NdfTabsModule = NdfTabsModule;
42826
42994
  exports.NdfTransformService = NdfTransformService;
42827
42995
  exports.NgxHijriGregorianDatepickerModule = NgxHijriGregorianDatepickerModule;
42828
42996
  exports.NoDataComponent = NoDataComponent;