@visa/nova-angular
Version:
Visa Product Design System Nova Angular library
149 lines • 16.1 kB
JavaScript
import { Directive, HostBinding, Input } from '@angular/core';
import * as i0 from "@angular/core";
export class PaddingDirective {
get hostClasses() {
return [
this.vPT || this.vPT === 0
? this.convertToString(this.vPT).startsWith('-')
? `-v-pt${this.vPT}`
: `v-pt-${this.vPT}`
: null,
this.vPR || this.vPR === 0
? this.convertToString(this.vPR).startsWith('-')
? `-v-pr${this.vPR}`
: `v-pr-${this.vPR}`
: null,
this.vPB || this.vPB === 0
? this.convertToString(this.vPB).startsWith('-')
? `-v-pb${this.vPB}`
: `v-pb-${this.vPB}`
: null,
this.vPL || this.vPL === 0
? this.convertToString(this.vPL).startsWith('-')
? `-v-pl${this.vPL}`
: `v-pl-${this.vPL}`
: null,
this.vPX || this.vPX === 0
? this.convertToString(this.vPX).startsWith('-')
? `-v-px${this.vPX}`
: `v-px-${this.vPX}`
: null,
this.vPY || this.vPY === 0
? this.convertToString(this.vPY).startsWith('-')
? `-v-py${this.vPY}`
: `v-py-${this.vPY}`
: null,
this.vP || this.vP === 0
? this.convertToString(this.vP).startsWith('-')
? `-v-p${this.vP}`
: `v-p-${this.vP}`
: null
].join(' ');
}
convertToString(value) {
return value ? value.toString() : '';
}
/**
* Sets padding-block-start property. <br>
* Accepts: 0 - 48 or <code>SpacingProperties</code>.
*/
get vPT() {
return this._vPT;
}
set vPT(value) {
this._vPT = value;
}
/**
* Sets padding-inline-end property. <br>
* Accepts: 0 - 48 or <code>SpacingProperties</code>.
*/
get vPR() {
return this._vPR;
}
set vPR(value) {
this._vPR = value;
}
/**
* Sets padding-block-end property. <br>
* Accepts: 0 - 48 or <code>SpacingProperties</code>.
*/
get vPB() {
return this._vPB;
}
set vPB(value) {
this._vPB = value;
}
/**
* Sets padding-inline-start property. <br>
* Accepts: 0 - 48 or <code>SpacingProperties</code>.
*/
get vPL() {
return this._vPL;
}
set vPL(value) {
this._vPL = value;
}
/**
* Sets padding-inline property. <br>
* Accepts: 0 - 48 or <code>SpacingProperties</code>.
*/
get vPX() {
return this._vPX;
}
set vPX(value) {
this._vPX = value;
}
/**
* Sets padding-block property. <br>
* Accepts: 0 - 48 or <code>SpacingProperties</code>.
*/
get vPY() {
return this._vPY;
}
set vPY(value) {
this._vPY = value;
}
/**
* Sets padding property. <br>
* Accepts: 0 - 48 or <code>SpacingProperties</code>.
*/
get vP() {
return this._vP;
}
set vP(value) {
this._vP = value;
}
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PaddingDirective, deps: [], target: i0.ɵɵFactoryTarget.Directive }); }
static { this.ɵdir = i0.ɵɵngDeclareDirective({ minVersion: "14.0.0", version: "17.3.12", type: PaddingDirective, isStandalone: true, selector: "[vPT], [vPR], [vPB], [vPL], [vPX], [vPY], [vP], ", inputs: { vPT: "vPT", vPR: "vPR", vPB: "vPB", vPL: "vPL", vPX: "vPX", vPY: "vPY", vP: "vP" }, host: { properties: { "class": "this.hostClasses" } }, ngImport: i0 }); }
}
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.12", ngImport: i0, type: PaddingDirective, decorators: [{
type: Directive,
args: [{
standalone: true,
selector: '[vPT], ' + // padding block start
'[vPR], ' + // padding inline end
'[vPB], ' + // padding block end
'[vPL], ' + // padding inline start
'[vPX], ' + // padding inline
'[vPY], ' + // padding block
'[vP], ' // all paddings
}]
}], propDecorators: { hostClasses: [{
type: HostBinding,
args: ['class']
}], vPT: [{
type: Input
}], vPR: [{
type: Input
}], vPB: [{
type: Input
}], vPL: [{
type: Input
}], vPX: [{
type: Input
}], vPY: [{
type: Input
}], vP: [{
type: Input
}] } });
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicGFkZGluZy5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi8uLi9saWJzL25vdmEtbGliL3NyYy9saWIvcGFkZGluZy9wYWRkaW5nLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFpQkEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsS0FBSyxFQUFFLE1BQU0sZUFBZSxDQUFDOztBQWM5RCxNQUFNLE9BQU8sZ0JBQWdCO0lBQzNCLElBQ0ksV0FBVztRQUNiLE9BQU87WUFDTCxJQUFJLENBQUMsR0FBRyxJQUFJLElBQUksQ0FBQyxHQUFHLEtBQUssQ0FBQztnQkFDeEIsQ0FBQyxDQUFDLElBQUksQ0FBQyxlQUFlLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLFVBQVUsQ0FBQyxHQUFHLENBQUM7b0JBQzlDLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxHQUFHLEVBQUU7b0JBQ3BCLENBQUMsQ0FBQyxRQUFRLElBQUksQ0FBQyxHQUFHLEVBQUU7Z0JBQ3RCLENBQUMsQ0FBQyxJQUFJO1lBQ1IsSUFBSSxDQUFDLEdBQUcsSUFBSSxJQUFJLENBQUMsR0FBRyxLQUFLLENBQUM7Z0JBQ3hCLENBQUMsQ0FBQyxJQUFJLENBQUMsZUFBZSxDQUFDLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDO29CQUM5QyxDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsR0FBRyxFQUFFO29CQUNwQixDQUFDLENBQUMsUUFBUSxJQUFJLENBQUMsR0FBRyxFQUFFO2dCQUN0QixDQUFDLENBQUMsSUFBSTtZQUNSLElBQUksQ0FBQyxHQUFHLElBQUksSUFBSSxDQUFDLEdBQUcsS0FBSyxDQUFDO2dCQUN4QixDQUFDLENBQUMsSUFBSSxDQUFDLGVBQWUsQ0FBQyxJQUFJLENBQUMsR0FBRyxDQUFDLENBQUMsVUFBVSxDQUFDLEdBQUcsQ0FBQztvQkFDOUMsQ0FBQyxDQUFD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QUksQ0FBQztJQUNuQixDQUFDO0lBQ0QsSUFBSSxHQUFHLENBQUMsS0FBSztRQUNYLElBQUksQ0FBQyxJQUFJLEdBQUcsS0FBSyxDQUFDO0lBQ3BCLENBQUM7SUFHRDs7O09BR0c7SUFDSCxJQUNJLEdBQUc7UUFDTCxPQUFPLElBQUksQ0FBQyxJQUFJLENBQUM7SUFDbkIsQ0FBQztJQUNELElBQUksR0FBRyxDQUFDLEtBQUs7UUFDWCxJQUFJLENBQUMsSUFBSSxHQUFHLEtBQUssQ0FBQztJQUNwQixDQUFDO0lBR0Q7OztPQUdHO0lBQ0gsSUFDSSxFQUFFO1FBQ0osT0FBTyxJQUFJLENBQUMsR0FBRyxDQUFDO0lBQ2xCLENBQUM7SUFDRCxJQUFJLEVBQUUsQ0FBQyxLQUFLO1FBQ1YsSUFBSSxDQUFDLEdBQUcsR0FBRyxLQUFLLENBQUM7SUFDbkIsQ0FBQzsrR0F0SVUsZ0JBQWdCO21HQUFoQixnQkFBZ0I7OzRGQUFoQixnQkFBZ0I7a0JBWDVCLFNBQVM7bUJBQUM7b0JBQ1QsVUFBVSxFQUFFLElBQUk7b0JBQ2hCLFFBQVEsRUFDTixTQUFTLEdBQUcsc0JBQXNCO3dCQUNsQyxTQUFTLEdBQUcscUJBQXFCO3dCQUNqQyxTQUFTLEdBQUcsb0JBQW9CO3dCQUNoQyxTQUFTLEdBQUcsdUJBQXVCO3dCQUNuQyxTQUFTLEdBQUcsaUJBQWlCO3dCQUM3QixTQUFTLEdBQUcsZ0JBQWdCO3dCQUM1QixRQUFRLENBQUMsZUFBZTtpQkFDM0I7OEJBR0ssV0FBVztzQkFEZCxXQUFXO3VCQUFDLE9BQU87Z0JBa0RoQixHQUFHO3NCQUROLEtBQUs7Z0JBY0YsR0FBRztzQkFETixLQUFLO2dCQWNGLEdBQUc7c0JBRE4sS0FBSztnQkFjRixHQUFHO3NCQUROLEtBQUs7Z0JBY0YsR0FBRztzQkFETixLQUFLO2dCQWNGLEdBQUc7c0JBRE4sS0FBSztnQkFjRixFQUFFO3NCQURMLEtBQUsiLCJzb3VyY2VzQ29udGVudCI6WyIvKipcbiAqICAgICAgICAgICAgICDCqSAyMDI1IFZpc2FcbiAqXG4gKiBMaWNlbnNlZCB1bmRlciB0aGUgQXBhY2hlIExpY2Vuc2UsIFZlcnNpb24gMi4wICh0aGUgXCJMaWNlbnNlXCIpO1xuICogeW91IG1heSBub3QgdXNlIHRoaXMgZmlsZSBleGNlcHQgaW4gY29tcGxpYW5jZSB3aXRoIHRoZSBMaWNlbnNlLlxuICogWW91IG1heSBvYnRhaW4gYSBjb3B5IG9mIHRoZSBMaWNlbnNlIGF0XG4gKlxuICogICAgICAgICBodHRwOi8vd3d3LmFwYWNoZS5vcmcvbGljZW5zZXMvTElDRU5TRS0yLjBcbiAqXG4gKiBVbmxlc3MgcmVxdWlyZWQgYnkgYXBwbGljYWJsZSBsYXcgb3IgYWdyZWVkIHRvIGluIHdyaXRpbmcsIHNvZnR3YXJlXG4gKiBkaXN0cmlidXRlZCB1bmRlciB0aGUgTGljZW5zZSBpcyBkaXN0cmlidXRlZCBvbiBhbiBcIkFTIElTXCIgQkFTSVMsXG4gKiBXSVRIT1VUIFdBUlJBTlRJRVMgT1IgQ09ORElUSU9OUyBPRiBBTlkgS0lORCwgZWl0aGVyIGV4cHJlc3Mgb3IgaW1wbGllZC5cbiAqIFNlZSB0aGUgTGljZW5zZSBmb3IgdGhlIHNwZWNpZmljIGxhbmd1YWdlIGdvdmVybmluZyBwZXJtaXNzaW9ucyBhbmRcbiAqIGxpbWl0YXRpb25zIHVuZGVyIHRoZSBMaWNlbnNlLlxuICpcbiAqKi9cbmltcG9ydCB7IE51bWJlcklucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY2RrL2NvZXJjaW9uJztcbmltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIElucHV0IH0gZnJvbSAnQGFuZ3VsYXIvY29yZSc7XG5pbXBvcnQgeyBTcGFjaW5nUHJvcGVydGllcyB9IGZyb20gJy4uL25vdmEtbGliLmNvbnN0YW50cyc7XG5cbkBEaXJlY3RpdmUoe1xuICBzdGFuZGFsb25lOiB0cnVlLFxuICBzZWxlY3RvcjpcbiAgICAnW3ZQVF0sICcgKyAvLyBwYWRkaW5nIGJsb2NrIHN0YXJ0XG4gICAgJ1t2UFJdLCAnICsgLy8gcGFkZGluZyBpbmxpbmUgZW5kXG4gICAgJ1t2UEJdLCAnICsgLy8gcGFkZGluZyBibG9jayBlbmRcbiAgICAnW3ZQTF0sICcgKyAvLyBwYWRkaW5nIGlubGluZSBzdGFydFxuICAgICdbdlBYXSwgJyArIC8vIHBhZGRpbmcgaW5saW5lXG4gICAgJ1t2UFldLCAnICsgLy8gcGFkZGluZyBibG9ja1xuICAgICdbdlBdLCAnIC8vIGFsbCBwYWRkaW5nc1xufSlcbmV4cG9ydCBjbGFzcyBQYWRkaW5nRGlyZWN0aXZlIHtcbiAgQEhvc3RCaW5kaW5nKCdjbGFzcycpXG4gIGdldCBob3N0Q2xhc3NlcygpOiBzdHJpbmcge1xuICAgIHJldHVybiBbXG4gICAgICB0aGlzLnZQVCB8fCB0aGlzLnZQVCA9PT0gMFxuICAgICAgICA/IHRoaXMuY29udmVydFRvU3RyaW5nKHRoaXMudlBUKS5zdGFydHNXaXRoKCctJylcbiAgICAgICAgICA/IGAtdi1wdCR7dGhpcy52UFR9YFxuICAgICAgICAgIDogYHYtcHQtJHt0aGlzLnZQVH1gXG4gICAgICAgIDogbnVsbCxcbiAgICAgIHRoaXMudlBSIHx8IHRoaXMudlBSID09PSAwXG4gICAgICAgID8gdGhpcy5jb252ZXJ0VG9TdHJpbmcodGhpcy52UFIpLnN0YXJ0c1dpdGgoJy0nKVxuICAgICAgICAgID8gYC12LXByJHt0aGlzLnZQUn1gXG4gICAgICAgICAgOiBgdi1wci0ke3RoaXMudlBSfWBcbiAgICAgICAgOiBudWxsLFxuICAgICAgdGhpcy52UEIgfHwgdGhpcy52UEIgPT09IDBcbiAgICAgICAgPyB0aGlzLmNvbnZlcnRUb1N0cmluZyh0aGlzLnZQQikuc3RhcnRzV2l0aCgnLScpXG4gICAgICAgICAgPyBgLXYtcGIke3RoaXMudlBCfWBcbiAgICAgICAgICA6IGB2LXBiLSR7dGhpcy52UEJ9YFxuICAgICAgICA6IG51bGwsXG4gICAgICB0aGlzLnZQTCB8fCB0aGlzLnZQTCA9PT0gMFxuICAgICAgICA/IHRoaXMuY29udmVydFRvU3RyaW5nKHRoaXMudlBMKS5zdGFydHNXaXRoKCctJylcbiAgICAgICAgICA/IGAtdi1wbCR7dGhpcy52UEx9YFxuICAgICAgICAgIDogYHYtcGwtJHt0aGlzLnZQTH1gXG4gICAgICAgIDogbnVsbCxcbiAgICAgIHRoaXMudlBYIHx8IHRoaXMudlBYID09PSAwXG4gICAgICAgID8gdGhpcy5jb252ZXJ0VG9TdHJpbmcodGhpcy52UFgpLnN0YXJ0c1dpdGgoJy0nKVxuICAgICAgICAgID8gYC12LXB4JHt0aGlzLnZQWH1gXG4gICAgICAgICAgOiBgdi1weC0ke3RoaXMudlBYfWBcbiAgICAgICAgOiBudWxsLFxuICAgICAgdGhpcy52UFkgfHwgdGhpcy52UFkgPT09IDBcbiAgICAgICAgPyB0aGlzLmNvbnZlcnRUb1N0cmluZyh0aGlzLnZQWSkuc3RhcnRzV2l0aCgnLScpXG4gICAgICAgICAgPyBgLXYtcHkke3RoaXMudlBZfWBcbiAgICAgICAgICA6IGB2LXB5LSR7dGhpcy52UFl9YFxuICAgICAgICA6IG51bGwsXG4gICAgICB0aGlzLnZQIHx8IHRoaXMudlAgPT09IDBcbiAgICAgICAgPyB0aGlzLmNvbnZlcnRUb1N0cmluZyh0aGlzLnZQKS5zdGFydHNXaXRoKCctJylcbiAgICAgICAgICA/IGAtdi1wJHt0aGlzLnZQfWBcbiAgICAgICAgICA6IGB2LXAtJHt0aGlzLnZQfWBcbiAgICAgICAgOiBudWxsXG4gICAgXS5qb2luKCcgJyk7XG4gIH1cblxuICBwcml2YXRlIGNvbnZlcnRUb1N0cmluZyh2YWx1ZTogbnVtYmVyIHwgU3BhY2luZ1Byb3BlcnRpZXMgfCBOdW1iZXJJbnB1dCk6IHN0cmluZyB7XG4gICAgcmV0dXJuIHZhbHVlID8gdmFsdWUudG9TdHJpbmcoKSA6ICcnO1xuICB9XG5cbiAgLyoqXG4gICAqIFNldHMgcGFkZGluZy1ibG9jay1zdGFydCBwcm9wZXJ0eS4gPGJyPlxuICAgKiBBY2NlcHRzOiAwIC0gNDggb3IgPGNvZGU+U3BhY2luZ1Byb3BlcnRpZXM8L2NvZGU+LlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IHZQVCgpOiBudW1iZXIgfCBTcGFjaW5nUHJvcGVydGllcyB8IE51bWJlcklucHV0IHtcbiAgICByZXR1cm4gdGhpcy5fdlBUO1xuICB9XG4gIHNldCB2UFQodmFsdWUpIHtcbiAgICB0aGlzLl92UFQgPSB2YWx1ZTtcbiAgfVxuICBfdlBUOiBudW1iZXIgfCBTcGFjaW5nUHJvcGVydGllcyB8IE51bWJlcklucHV0O1xuXG4gIC8qKlxuICAgKiBTZXRzIHBhZGRpbmctaW5saW5lLWVuZCBwcm9wZXJ0eS4gPGJyPlxuICAgKiBBY2NlcHRzOiAwIC0gNDggb3IgPGNvZGU+U3BhY2luZ1Byb3BlcnRpZXM8L2NvZGU+LlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IHZQUigpOiBudW1iZXIgfCBTcGFjaW5nUHJvcGVydGllcyB8IE51bWJlcklucHV0IHtcbiAgICByZXR1cm4gdGhpcy5fdlBSO1xuICB9XG4gIHNldCB2UFIodmFsdWUpIHtcbiAgICB0aGlzLl92UFIgPSB2YWx1ZTtcbiAgfVxuICBfdlBSOiBudW1iZXIgfCBTcGFjaW5nUHJvcGVydGllcyB8IE51bWJlcklucHV0O1xuXG4gIC8qKlxuICAgKiBTZXRzIHBhZGRpbmctYmxvY2stZW5kIHByb3BlcnR5LiA8YnI+XG4gICAqIEFjY2VwdHM6IDAgLSA0OCBvciA8Y29kZT5TcGFjaW5nUHJvcGVydGllczwvY29kZT4uXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgdlBCKCk6IG51bWJlciB8IFNwYWNpbmdQcm9wZXJ0aWVzIHwgTnVtYmVySW5wdXQge1xuICAgIHJldHVybiB0aGlzLl92UEI7XG4gIH1cbiAgc2V0IHZQQih2YWx1ZSkge1xuICAgIHRoaXMuX3ZQQiA9IHZhbHVlO1xuICB9XG4gIF92UEI6IG51bWJlciB8IFNwYWNpbmdQcm9wZXJ0aWVzIHwgTnVtYmVySW5wdXQ7XG5cbiAgLyoqXG4gICAqIFNldHMgcGFkZGluZy1pbmxpbmUtc3RhcnQgcHJvcGVydHkuIDxicj5cbiAgICogQWNjZXB0czogMCAtIDQ4IG9yIDxjb2RlPlNwYWNpbmdQcm9wZXJ0aWVzPC9jb2RlPi5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCB2UEwoKTogbnVtYmVyIHwgU3BhY2luZ1Byb3BlcnRpZXMgfCBOdW1iZXJJbnB1dCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZQTDtcbiAgfVxuICBzZXQgdlBMKHZhbHVlKSB7XG4gICAgdGhpcy5fdlBMID0gdmFsdWU7XG4gIH1cbiAgX3ZQTDogbnVtYmVyIHwgU3BhY2luZ1Byb3BlcnRpZXMgfCBOdW1iZXJJbnB1dDtcblxuICAvKipcbiAgICogU2V0cyBwYWRkaW5nLWlubGluZSBwcm9wZXJ0eS4gPGJyPlxuICAgKiBBY2NlcHRzOiAwIC0gNDggb3IgPGNvZGU+U3BhY2luZ1Byb3BlcnRpZXM8L2NvZGU+LlxuICAgKi9cbiAgQElucHV0KClcbiAgZ2V0IHZQWCgpOiBudW1iZXIgfCBTcGFjaW5nUHJvcGVydGllcyB8IE51bWJlcklucHV0IHtcbiAgICByZXR1cm4gdGhpcy5fdlBYO1xuICB9XG4gIHNldCB2UFgodmFsdWUpIHtcbiAgICB0aGlzLl92UFggPSB2YWx1ZTtcbiAgfVxuICBfdlBYOiBudW1iZXIgfCBTcGFjaW5nUHJvcGVydGllcyB8IE51bWJlcklucHV0O1xuXG4gIC8qKlxuICAgKiBTZXRzIHBhZGRpbmctYmxvY2sgcHJvcGVydHkuIDxicj5cbiAgICogQWNjZXB0czogMCAtIDQ4IG9yIDxjb2RlPlNwYWNpbmdQcm9wZXJ0aWVzPC9jb2RlPi5cbiAgICovXG4gIEBJbnB1dCgpXG4gIGdldCB2UFkoKTogbnVtYmVyIHwgU3BhY2luZ1Byb3BlcnRpZXMgfCBOdW1iZXJJbnB1dCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZQWTtcbiAgfVxuICBzZXQgdlBZKHZhbHVlKSB7XG4gICAgdGhpcy5fdlBZID0gdmFsdWU7XG4gIH1cbiAgX3ZQWTogbnVtYmVyIHwgU3BhY2luZ1Byb3BlcnRpZXMgfCBOdW1iZXJJbnB1dDtcblxuICAvKipcbiAgICogU2V0cyBwYWRkaW5nIHByb3BlcnR5LiA8YnI+XG4gICAqIEFjY2VwdHM6IDAgLSA0OCBvciA8Y29kZT5TcGFjaW5nUHJvcGVydGllczwvY29kZT4uXG4gICAqL1xuICBASW5wdXQoKVxuICBnZXQgdlAoKTogbnVtYmVyIHwgU3BhY2luZ1Byb3BlcnRpZXMgfCBOdW1iZXJJbnB1dCB7XG4gICAgcmV0dXJuIHRoaXMuX3ZQO1xuICB9XG4gIHNldCB2UCh2YWx1ZSkge1xuICAgIHRoaXMuX3ZQID0gdmFsdWU7XG4gIH1cbiAgX3ZQOiBudW1iZXIgfCBTcGFjaW5nUHJvcGVydGllcyB8IE51bWJlcklucHV0O1xufVxuIl19