@visa/nova-angular
Version:
Visa Product Design System Nova Angular library
73 lines • 7.84 kB
JavaScript
/**
* © 2025 Visa
*
* 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,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidGFibGUtd3JhcHBlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25vdmEtbGliL3NyYy9saWIvdGFibGUtd3JhcHBlci90YWJsZS13cmFwcGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQTs7Ozs7Ozs7Ozs7Ozs7O0lBZUk7QUFDSixPQUFPLEVBQUUsU0FBUyxFQUFFLFdBQVcsRUFBRSxLQUFLLEVBQUUsTUFBTSxlQUFlLENBQUM7O0FBTTlELE1BQU0sT0FBTyxxQkFBcUI7SUFNaEMsSUFDSSxXQUFXO1FBQ2IsT0FBTyxDQUFDLElBQUksQ0FBQyxLQUFLLEVBQUUsaUJBQWlCLENBQUMsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUM7SUFDbkQsQ0FBQztJQUVEOztPQUVHO0lBQ0gsSUFDSSxnQkFBZ0I7UUFDbEIsT0FBTyxJQUFJLENBQUMsaUJBQWlCLENBQUM7SUFDaEMsQ0FBQztJQUNELElBQUksZ0JBQWdCLENBQUMsVUFBVTtRQUM3QixJQUFJLENBQUMsaUJBQWlCLEdBQUcsR0FBRyxVQUFVLElBQUksQ0FBQztJQUM3QyxDQUFDO0lBR0Q7O09BRUc7SUFDSCxJQUNJLGVBQWU7UUFDakIsT0FBTyxJQUFJLENBQUMsZ0JBQWdCLENBQUM7SUFDL0IsQ0FBQztJQUNELElBQUksZUFBZSxDQUFDLFNBQVM7UUFDM0IsSUFBSSxDQUFDLGdCQUFnQixHQUFHLEdBQUcsU0FBUyxJQUFJLENBQUM7SUFDM0MsQ0FBQztJQUdELElBQ0ksb0JBQW9CO1FBQ3RCLE9BQU8sSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxpQkFBaUIsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDeEUsQ0FBQztJQUVELElBQ0ksbUJBQW1CO1FBQ3JCLE9BQU8sSUFBSSxDQUFDLGdCQUFnQixDQUFDLENBQUMsQ0FBQyxHQUFHLElBQUksQ0FBQyxnQkFBZ0IsRUFBRSxDQUFDLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFDdEUsQ0FBQztJQUVELGdCQUFlLENBQUM7K0dBN0NMLHFCQUFxQjttR0FBckIscUJBQXFCOzs0RkFBckIscUJBQXFCO2tCQUpqQyxTQUFTO21CQUFDO29CQUNULFVBQVUsRUFBRSxJQUFJO29CQUNoQixRQUFRLEVBQUUsbUJBQW1CO2lCQUM5Qjt3REFNVSxLQUFLO3NCQUFiLEtBQUs7Z0JBRUYsV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU87Z0JBU2hCLGdCQUFnQjtzQkFEbkIsS0FBSztnQkFhRixlQUFlO3NCQURsQixLQUFLO2dCQVVGLG9CQUFvQjtzQkFEdkIsV0FBVzt1QkFBQyxxQ0FBcUM7Z0JBTTlDLG1CQUFtQjtzQkFEdEIsV0FBVzt1QkFBQyxvQ0FBb0MiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICAgICAgICAgICAgICDCqSAyMDI1IFZpc2FcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICpcbiAqKi9cbmltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjogJ1t2LXRhYmxlLXdyYXBwZXJdJ1xufSlcbmV4cG9ydCBjbGFzcyBUYWJsZVdyYXBwZXJEaXJlY3RpdmUge1xuICAvKipcbiAgICogUHJvdmlkZXMgY3VzdG9tIGNsYXNzJiM0MDtlcyYjNDE7IGZvciBjdXN0b20gc3R5bGluZy5cbiAgICogQGRlZmF1bHQgLnYtdGFibGUtd3JhcHBlclxuICAgKi9cbiAgQElucHV0KCkgY2xhc3M6IHN0cmluZztcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbdGhpcy5jbGFzcywgJ3YtdGFibGUtd3JhcHBlciddLmpvaW4oJyAnKTtcbiAgfVxuXG4gIC8qKlxuICAgKiBTZXRzIENTUyB2YXJpYWJsZSA8Y29kZT4tLXYtdGFibGUtd3JhcHBlci1pbmxpbmUtc2l6ZTwvY29kZT4gdG8gY3VzdG9taXplIHRoZSBpbmxpbmUgc2l6ZSBvZiB0aGUgc2Nyb2xsIGFyZWEuXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgc2Nyb2xsSW5saW5lU2l6ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zY3JvbGxJbmxpbmVTaXplO1xuICB9XG4gIHNldCBzY3JvbGxJbmxpbmVTaXplKGlubGluZVNpemUpIHtcbiAgICB0aGlzLl9zY3JvbGxJbmxpbmVTaXplID0gYCR7aW5saW5lU2l6ZX1weGA7XG4gIH1cbiAgX3Njcm9sbElubGluZVNpemU6IHN0cmluZztcblxuICAvKipcbiAgICogU2V0cyBDU1MgdmFyaWFibGUgPGNvZGU+LS12LXRhYmxlLXdyYXBwZXItYmxvY2stc2l6ZTwvY29kZT4gdG8gY3VzdG9taXplIHRoZSBibG9jayBzaXplIG9mIHRoZSBzY3JvbGwgYXJlYS5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCBzY3JvbGxCbG9ja1NpemUoKTogc3RyaW5nIHtcbiAgICByZXR1cm4gdGhpcy5fc2Nyb2xsQmxvY2tTaXplO1xuICB9XG4gIHNldCBzY3JvbGxCbG9ja1NpemUoYmxvY2tTaXplKSB7XG4gICAgdGhpcy5fc2Nyb2xsQmxvY2tTaXplID0gYCR7YmxvY2tTaXplfXB4YDtcbiAgfVxuICBfc2Nyb2xsQmxvY2tTaXplOiBzdHJpbmc7XG5cbiAgQEhvc3RCaW5kaW5nKCdzdHlsZS4tLXYtdGFibGUtd3JhcHBlci1pbmxpbmUtc2l6ZScpXG4gIGdldCBob3N0U3R5bGVzSW5saW5lU2l6ZSgpOiBzdHJpbmcge1xuICAgIHJldHVybiB0aGlzLl9zY3JvbGxJbmxpbmVTaXplID8gYCR7dGhpcy5fc2Nyb2xsSW5saW5lU2l6ZX1gIDogJ3Vuc2V0JztcbiAgfVxuXG4gIEBIb3N0QmluZGluZygnc3R5bGUuLS12LXRhYmxlLXdyYXBwZXItYmxvY2stc2l6ZScpXG4gIGdldCBob3N0U3R5bGVzQmxvY2tTaXplKCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHRoaXMuX3Njcm9sbEJsb2NrU2l6ZSA/IGAke3RoaXMuX3Njcm9sbEJsb2NrU2l6ZX1gIDogJ3Vuc2V0JztcbiAgfVxuXG4gIGNvbnN0cnVjdG9yKCkge31cbn1cbiJdfQ==