UNPKG

@visa/nova-angular

Version:

Visa Product Design System Nova Angular library

73 lines 7.88 kB
/** * Copyright (c) 2025 Visa, Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * **/ import { Directive, HostBinding, Input } from '@angular/core'; import * as i0 from "@angular/core"; export class TableWrapperDirective { get hostClasses() { return [this.class, 'v-table-wrapper'].join(' '); } /** * Sets CSS variable <code>--v-table-wrapper-inline-size</code> to customize the inline size of the scroll area. */ get scrollInlineSize() { return this._scrollInlineSize; } set scrollInlineSize(inlineSize) { this._scrollInlineSize = `${inlineSize}px`; } /** * Sets CSS variable <code>--v-table-wrapper-block-size</code> to customize the block size of the scroll area. */ get scrollBlockSize() { return this._scrollBlockSize; } set scrollBlockSize(blockSize) { this._scrollBlockSize = `${blockSize}px`; } get hostStylesInlineSize() { return this._scrollInlineSize ? `${this._scrollInlineSize}` : 'unset'; } get hostStylesBlockSize() { return this._scrollBlockSize ? `${this._scrollBlockSize}` : 'unset'; } constructor() { } static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TableWrapperDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); } static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: TableWrapperDirective, isStandalone: true, selector: "[v-table-wrapper]", inputs: { class: "class", scrollInlineSize: "scrollInlineSize", scrollBlockSize: "scrollBlockSize" }, host: { properties: { "class": "this.hostClasses", "style.--v-table-wrapper-inline-size": "this.hostStylesInlineSize", "style.--v-table-wrapper-block-size": "this.hostStylesBlockSize" } }, ngImport: i0 }); } } i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: TableWrapperDirective, decorators: [{ type: Directive, args: [{ standalone: true, selector: '[v-table-wrapper]' }] }], ctorParameters: () => [], propDecorators: { class: [{ type: Input }], hostClasses: [{ type: HostBinding, args: ['class'] }], scrollInlineSize: [{ type: Input }], scrollBlockSize: [{ type: Input }], hostStylesInlineSize: [{ type: HostBinding, args: ['style.--v-table-wrapper-inline-size'] }], hostStylesBlockSize: [{ type: HostBinding, args: ['style.--v-table-wrapper-block-size'] }] } }); //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtd3JhcHBlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25vdmEtbGliL3NyYy9saWIvdGFibGUtd3JhcHBlci90YWJsZS13cmFwcGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0lBZUk7QUFDSixPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTlELE1BQU0sT0FBTyxxQkFBcUI7SUFNaEMsSUFDSSxXQUFXO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQztJQUNELElBQUksZ0JBQWdCLENBQUMsVUFBVTtRQUM3QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsR0FBRyxVQUFVLElBQUksQ0FBQztJQUM3QyxDQUFDO0lBR0Q7O09BRUc7SUFDSCxJQUNJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztJQUNELElBQUksZUFBZSxDQUFDLFNBQVM7UUFDM0IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEdBQUcsU0FBUyxJQUFJLENBQUM7SUFDM0MsQ0FBQztJQUdELElBQ0ksb0JBQW9CO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDeEUsQ0FBQztJQUVELElBQ0ksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDdEUsQ0FBQztJQUVELGdCQUFlLENBQUM7K0dBN0NMLHFCQUFxQjttR0FBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsbUJBQW1CO2lCQUM5Qjt3REFNVSxLQUFLO3NCQUFiLEtBQUs7Z0JBRUYsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU87Z0JBU2hCLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFhRixlQUFlO3NCQURsQixLQUFLO2dCQVVGLG9CQUFvQjtzQkFEdkIsV0FBVzt1QkFBQyxxQ0FBcUM7Z0JBTTlDLG1CQUFtQjtzQkFEdEIsV0FBVzt1QkFBQyxvQ0FBb0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICAgICAgICAgICAgICBDb3B5cmlnaHQgKGMpIDIwMjUgVmlzYSwgSW5jLlxuICpcbiAqIExpY2Vuc2VkIHVuZGVyIHRoZSBBcGFjaGUgTGljZW5zZSwgVmVyc2lvbiAyLjAgKHRoZSBcIkxpY2Vuc2VcIik7XG4gKiB5b3UgbWF5IG5vdCB1c2UgdGhpcyBmaWxlIGV4Y2VwdCBpbiBjb21wbGlhbmNlIHdpdGggdGhlIExpY2Vuc2UuXG4gKiBZb3UgbWF5IG9idGFpbiBhIGNvcHkgb2YgdGhlIExpY2Vuc2UgYXRcbiAqXG4gKiAgICAgICAgIGh0dHA6Ly93d3cuYXBhY2hlLm9yZy9saWNlbnNlcy9MSUNFTlNFLTIuMFxuICpcbiAqIFVubGVzcyByZXF1aXJlZCBieSBhcHBsaWNhYmxlIGxhdyBvciBhZ3JlZWQgdG8gaW4gd3JpdGluZywgc29mdHdhcmVcbiAqIGRpc3RyaWJ1dGVkIHVuZGVyIHRoZSBMaWNlbnNlIGlzIGRpc3RyaWJ1dGVkIG9uIGFuIFwiQVMgSVNcIiBCQVNJUyxcbiAqIFdJVEhPVVQgV0FSUkFOVElFUyBPUiBDT05ESVRJT05TIE9GIEFOWSBLSU5ELCBlaXRoZXIgZXhwcmVzcyBvciBpbXBsaWVkLlxuICogU2VlIHRoZSBMaWNlbnNlIGZvciB0aGUgc3BlY2lmaWMgbGFuZ3VhZ2UgZ292ZXJuaW5nIHBlcm1pc3Npb25zIGFuZFxuICogbGltaXRhdGlvbnMgdW5kZXIgdGhlIExpY2Vuc2UuXG4gKlxuICoqL1xuaW1wb3J0IHsgRGlyZWN0aXZlLCBIb3N0QmluZGluZywgSW5wdXQgfSBmcm9tICdAYW5ndWxhci9jb3JlJztcblxuQERpcmVjdGl2ZSh7XG4gIHN0YW5kYWxvbmU6IHRydWUsXG4gIHNlbGVjdG9yOiAnW3YtdGFibGUtd3JhcHBlcl0nXG59KVxuZXhwb3J0IGNsYXNzIFRhYmxlV3JhcHBlckRpcmVjdGl2ZSB7XG4gIC8qKlxuICAgKiBQcm92aWRlcyBjdXN0b20gY2xhc3MmIzQwO2VzJiM0MTsgZm9yIGN1c3RvbSBzdHlsaW5nLlxuICAgKiBAZGVmYXVsdCAudi10YWJsZS13cmFwcGVyXG4gICAqL1xuICBASW5wdXQoKSBjbGFzczogc3RyaW5nO1xuICBASG9zdEJpbmRpbmcoJ2NsYXNzJylcbiAgZ2V0IGhvc3RDbGFzc2VzKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIFt0aGlzLmNsYXNzLCAndi10YWJsZS13cmFwcGVyJ10uam9pbignICcpO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgQ1NTIHZhcmlhYmxlIDxjb2RlPi0tdi10YWJsZS13cmFwcGVyLWlubGluZS1zaXplPC9jb2RlPiB0byBjdXN0b21pemUgdGhlIGlubGluZSBzaXplIG9mIHRoZSBzY3JvbGwgYXJlYS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBzY3JvbGxJbmxpbmVTaXplKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3Njcm9sbElubGluZVNpemU7XG4gIH1cbiAgc2V0IHNjcm9sbElubGluZVNpemUoaW5saW5lU2l6ZSkge1xuICAgIHRoaXMuX3Njcm9sbElubGluZVNpemUgPSBgJHtpbmxpbmVTaXplfXB4YDtcbiAgfVxuICBfc2Nyb2xsSW5saW5lU2l6ZTogc3RyaW5nO1xuXG4gIC8qKlxuICAgKiBTZXRzIENTUyB2YXJpYWJsZSA8Y29kZT4tLXYtdGFibGUtd3JhcHBlci1ibG9jay1zaXplPC9jb2RlPiB0byBjdXN0b21pemUgdGhlIGJsb2NrIHNpemUgb2YgdGhlIHNjcm9sbCBhcmVhLlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IHNjcm9sbEJsb2NrU2l6ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zY3JvbGxCbG9ja1NpemU7XG4gIH1cbiAgc2V0IHNjcm9sbEJsb2NrU2l6ZShibG9ja1NpemUpIHtcbiAgICB0aGlzLl9zY3JvbGxCbG9ja1NpemUgPSBgJHtibG9ja1NpemV9cHhgO1xuICB9XG4gIF9zY3JvbGxCbG9ja1NpemU6IHN0cmluZztcblxuICBASG9zdEJpbmRpbmcoJ3N0eWxlLi0tdi10YWJsZS13cmFwcGVyLWlubGluZS1zaXplJylcbiAgZ2V0IGhvc3RTdHlsZXNJbmxpbmVTaXplKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3Njcm9sbElubGluZVNpemUgPyBgJHt0aGlzLl9zY3JvbGxJbmxpbmVTaXplfWAgOiAndW5zZXQnO1xuICB9XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS4tLXYtdGFibGUtd3JhcHBlci1ibG9jay1zaXplJylcbiAgZ2V0IGhvc3RTdHlsZXNCbG9ja1NpemUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fc2Nyb2xsQmxvY2tTaXplID8gYCR7dGhpcy5fc2Nyb2xsQmxvY2tTaXplfWAgOiAndW5zZXQnO1xuICB9XG5cbiAgY29uc3RydWN0b3IoKSB7fVxufVxuIl19