@catull/igniteui-angular
Version:
Ignite UI for Angular is a dependency-free Angular toolkit for building modern web apps
161 lines • 12.8 kB
JavaScript
import { __decorate, __metadata } from "tslib";
import { Directive, HostBinding, NgModule, Input } from '@angular/core';
export var IgxDividerType;
(function (IgxDividerType) {
IgxDividerType["DEFAULT"] = "default";
IgxDividerType["DASHED"] = "dashed";
})(IgxDividerType || (IgxDividerType = {}));
let NEXT_ID = 0;
let IgxDividerDirective = class IgxDividerDirective {
constructor() {
/**
* Sets/gets the `id` of the divider.
* If not set, `id` will have value `"igx-divider-0"`;
* ```html
* <igx-divider id="my-divider"></igx-divider>
* ```
* ```typescript
* let dividerId = this.divider.id;
* ```
*/
this.id = `igx-divider-${NEXT_ID++}`;
/**
* An @Input property that sets the value of the `inset` attribute.
* If not provided it will be set to `'0'`.
* ```html
* <igx-divider inset="16px"></igx-divider>
* ```
*/
this._inset = '0';
/**
* An @Input property that sets the value of `role` attribute.
* If not the default value of `separator` will be used.
*/
this.role = 'separator';
/**
* Sets the type of the divider. The default value
* is `default`. The divider can also be `dashed`;
* ```html
* <igx-divider type="dashed"></igx-divider>
* ```
*/
this.type = IgxDividerType.DEFAULT;
/**
* An @Input that sets the `middle` attribute of the divider.
* If set to `true` and an `inset` value has been provided,
* the divider will start shrinking from both ends.
* ```html
* <igx-divider [middle]="true"></igx-divider>
* ```
*/
this.middle = false;
/**
* An @Input that sets the vertical attribute of the divider.
* ```html
* <igx-divider [vertical]="true"></igx-divider>
* ```
*/
this.vertical = false;
}
get isDashed() {
return this.type === IgxDividerType.DASHED;
}
/**
* A getter that returns `true` if the type of the divider is `default`;
* ```typescript
* const isDefault = this.divider.isDefault;
* ```
*/
get isDefault() {
return this.type === IgxDividerType.DEFAULT;
}
/**
* Sets the inset of the divider from the side(s).
* If the divider attribute `middle` is set to `true`,
* it will inset the divider on both sides.
* ```typescript
* this.divider.inset = '32px';
* ```
*/
set inset(value) {
this._inset = value;
}
/**
* Gets the current divider inset in terms of
* margin representation as applied to the divider.
* ```typescript
* const inset = this.divider.inset;
* ```
*/
get inset() {
const baseMargin = '0';
if (this.middle) {
if (this.vertical) {
return `${this._inset} ${baseMargin}`;
}
return `${baseMargin} ${this._inset}`;
}
else {
if (this.vertical) {
return `${this._inset} ${baseMargin} 0 ${baseMargin}`;
}
return `${baseMargin} 0 ${baseMargin} ${this._inset}`;
}
}
};
__decorate([
HostBinding('attr.id'),
Input(),
__metadata("design:type", Object)
], IgxDividerDirective.prototype, "id", void 0);
__decorate([
Input('inset'),
__metadata("design:type", Object)
], IgxDividerDirective.prototype, "_inset", void 0);
__decorate([
HostBinding('attr.role'),
Input(),
__metadata("design:type", Object)
], IgxDividerDirective.prototype, "role", void 0);
__decorate([
HostBinding('class.igx-divider'),
Input(),
__metadata("design:type", String)
], IgxDividerDirective.prototype, "type", void 0);
__decorate([
HostBinding('class.igx-divider--dashed'),
__metadata("design:type", Object),
__metadata("design:paramtypes", [])
], IgxDividerDirective.prototype, "isDashed", null);
__decorate([
HostBinding('class.igx-divider--inset'),
Input(),
__metadata("design:type", Object)
], IgxDividerDirective.prototype, "middle", void 0);
__decorate([
HostBinding('class.igx-divider--vertical'),
Input(),
__metadata("design:type", Object)
], IgxDividerDirective.prototype, "vertical", void 0);
__decorate([
HostBinding('style.margin'),
__metadata("design:type", String),
__metadata("design:paramtypes", [String])
], IgxDividerDirective.prototype, "inset", null);
IgxDividerDirective = __decorate([
Directive({
// tslint:disable-next-line:directive-selector
selector: 'igx-divider'
})
], IgxDividerDirective);
export { IgxDividerDirective };
let IgxDividerModule = class IgxDividerModule {
};
IgxDividerModule = __decorate([
NgModule({
declarations: [IgxDividerDirective],
exports: [IgxDividerDirective]
})
], IgxDividerModule);
export { IgxDividerModule };
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGl2aWRlci5kaXJlY3RpdmUuanMiLCJzb3VyY2VSb290Ijoibmc6Ly9pZ25pdGV1aS1hbmd1bGFyLyIsInNvdXJjZXMiOlsibGliL2RpcmVjdGl2ZXMvZGl2aWRlci9kaXZpZGVyLmRpcmVjdGl2ZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiO0FBQUEsT0FBTyxFQUFFLFNBQVMsRUFBRSxXQUFXLEVBQUUsUUFBUSxFQUFFLEtBQUssRUFBRSxNQUFNLGVBQWUsQ0FBQztBQUV4RSxNQUFNLENBQU4sSUFBWSxjQUdYO0FBSEQsV0FBWSxjQUFjO0lBQ3RCLHFDQUFtQixDQUFBO0lBQ25CLG1DQUFpQixDQUFBO0FBQ3JCLENBQUMsRUFIVyxjQUFjLEtBQWQsY0FBYyxRQUd6QjtBQUVELElBQUksT0FBTyxHQUFHLENBQUMsQ0FBQztBQU1oQixJQUFhLG1CQUFtQixHQUFoQyxNQUFhLG1CQUFtQjtJQUFoQztRQUNJOzs7Ozs7Ozs7V0FTRztRQUdJLE9BQUUsR0FBRyxlQUFlLE9BQU8sRUFBRSxFQUFFLENBQUM7UUFHdkM7Ozs7OztXQU1HO1FBRUssV0FBTSxHQUFHLEdBQUcsQ0FBQztRQUVyQjs7O1dBR0c7UUFHSSxTQUFJLEdBQUcsV0FBVyxDQUFDO1FBRTFCOzs7Ozs7V0FNRztRQUdJLFNBQUksR0FBNEIsY0FBYyxDQUFDLE9BQU8sQ0FBQztRQU85RDs7Ozs7OztXQU9HO1FBR0ksV0FBTSxHQUFHLEtBQUssQ0FBQztRQVl0Qjs7Ozs7V0FLRztRQUdJLGFBQVEsR0FBRyxLQUFLLENBQUM7SUFxQzVCLENBQUM7SUF2RUcsSUFBSSxRQUFRO1FBQ1IsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLGNBQWMsQ0FBQyxNQUFNLENBQUM7SUFDL0MsQ0FBQztJQWNEOzs7OztPQUtHO0lBQ0gsSUFBSSxTQUFTO1FBQ1QsT0FBTyxJQUFJLENBQUMsSUFBSSxLQUFLLGNBQWMsQ0FBQyxPQUFPLENBQUM7SUFDaEQsQ0FBQztJQVlEOzs7Ozs7O09BT0c7SUFFSCxJQUFJLEtBQUssQ0FBQyxLQUFhO1FBQ25CLElBQUksQ0FBQyxNQUFNLEdBQUcsS0FBSyxDQUFDO0lBQ3hCLENBQUM7SUFFRDs7Ozs7O09BTUc7SUFDSCxJQUFJLEtBQUs7UUFDTCxNQUFNLFVBQVUsR0FBRyxHQUFHLENBQUM7UUFFdkIsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFO1lBQ2IsSUFBSSxJQUFJLENBQUMsUUFBUSxFQUFFO2dCQUNmLE9BQU8sR0FBRyxJQUFJLENBQUMsTUFBTSxJQUFJLFVBQVUsRUFBRSxDQUFDO2FBQ3pDO1lBQ0QsT0FBTyxHQUFHLFVBQVUsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDekM7YUFBTTtZQUNILElBQUksSUFBSSxDQUFDLFFBQVEsRUFBRTtnQkFDZixPQUFPLEdBQUcsSUFBSSxDQUFDLE1BQU0sSUFBSSxVQUFVLE1BQU0sVUFBVSxFQUFFLENBQUM7YUFDekQ7WUFDRCxPQUFPLEdBQUcsVUFBVSxNQUFNLFVBQVUsSUFBSSxJQUFJLENBQUMsTUFBTSxFQUFFLENBQUM7U0FDekQ7SUFDTCxDQUFDO0NBQ0osQ0FBQTtBQXhHRztJQUZDLFdBQVcsQ0FBQyxTQUFTLENBQUM7SUFDdEIsS0FBSyxFQUFFOzsrQ0FDK0I7QUFXdkM7SUFEQyxLQUFLLENBQUMsT0FBTyxDQUFDOzttREFDTTtBQVFyQjtJQUZDLFdBQVcsQ0FBQyxXQUFXLENBQUM7SUFDeEIsS0FBSyxFQUFFOztpREFDa0I7QUFXMUI7SUFGQyxXQUFXLENBQUMsbUJBQW1CLENBQUM7SUFDaEMsS0FBSyxFQUFFOztpREFDc0Q7QUFHOUQ7SUFEQyxXQUFXLENBQUMsMkJBQTJCLENBQUM7OzttREFHeEM7QUFZRDtJQUZDLFdBQVcsQ0FBQywwQkFBMEIsQ0FBQztJQUN2QyxLQUFLLEVBQUU7O21EQUNjO0FBb0J0QjtJQUZDLFdBQVcsQ0FBQyw2QkFBNkIsQ0FBQztJQUMxQyxLQUFLLEVBQUU7O3FEQUNnQjtBQVd4QjtJQURDLFdBQVcsQ0FBQyxjQUFjLENBQUM7OztnREFHM0I7QUE3RlEsbUJBQW1CO0lBSi9CLFNBQVMsQ0FBQztRQUNQLDhDQUE4QztRQUM5QyxRQUFRLEVBQUUsYUFBYTtLQUMxQixDQUFDO0dBQ1csbUJBQW1CLENBcUgvQjtTQXJIWSxtQkFBbUI7QUEySGhDLElBQWEsZ0JBQWdCLEdBQTdCLE1BQWEsZ0JBQWdCO0NBQUksQ0FBQTtBQUFwQixnQkFBZ0I7SUFKNUIsUUFBUSxDQUFDO1FBQ04sWUFBWSxFQUFFLENBQUMsbUJBQW1CLENBQUM7UUFDbkMsT0FBTyxFQUFFLENBQUMsbUJBQW1CLENBQUM7S0FDakMsQ0FBQztHQUNXLGdCQUFnQixDQUFJO1NBQXBCLGdCQUFnQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IERpcmVjdGl2ZSwgSG9zdEJpbmRpbmcsIE5nTW9kdWxlLCBJbnB1dCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnO1xuXG5leHBvcnQgZW51bSBJZ3hEaXZpZGVyVHlwZSB7XG4gICAgREVGQVVMVCA9ICdkZWZhdWx0JyxcbiAgICBEQVNIRUQgPSAnZGFzaGVkJ1xufVxuXG5sZXQgTkVYVF9JRCA9IDA7XG5cbkBEaXJlY3RpdmUoe1xuICAgIC8vIHRzbGludDpkaXNhYmxlLW5leHQtbGluZTpkaXJlY3RpdmUtc2VsZWN0b3JcbiAgICBzZWxlY3RvcjogJ2lneC1kaXZpZGVyJ1xufSlcbmV4cG9ydCBjbGFzcyBJZ3hEaXZpZGVyRGlyZWN0aXZlIHtcbiAgICAvKipcbiAgICAgKiBTZXRzL2dldHMgdGhlIGBpZGAgb2YgdGhlIGRpdmlkZXIuXG4gICAgICogSWYgbm90IHNldCwgYGlkYCB3aWxsIGhhdmUgdmFsdWUgYFwiaWd4LWRpdmlkZXItMFwiYDtcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1kaXZpZGVyIGlkPVwibXktZGl2aWRlclwiPjwvaWd4LWRpdmlkZXI+XG4gICAgICogYGBgXG4gICAgICogYGBgdHlwZXNjcmlwdFxuICAgICAqIGxldCBkaXZpZGVySWQgPSAgdGhpcy5kaXZpZGVyLmlkO1xuICAgICAqIGBgYFxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnYXR0ci5pZCcpXG4gICAgQElucHV0KClcbiAgICBwdWJsaWMgaWQgPSBgaWd4LWRpdmlkZXItJHtORVhUX0lEKyt9YDtcblxuXG4gICAgLyoqXG4gICAgICogQW4gQElucHV0IHByb3BlcnR5IHRoYXQgc2V0cyB0aGUgdmFsdWUgb2YgdGhlIGBpbnNldGAgYXR0cmlidXRlLlxuICAgICAqIElmIG5vdCBwcm92aWRlZCBpdCB3aWxsIGJlIHNldCB0byBgJzAnYC5cbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1kaXZpZGVyIGluc2V0PVwiMTZweFwiPjwvaWd4LWRpdmlkZXI+XG4gICAgICogYGBgXG4gICAgICovXG4gICAgQElucHV0KCdpbnNldCcpXG4gICAgcHJpdmF0ZSBfaW5zZXQgPSAnMCc7XG5cbiAgICAvKipcbiAgICAgKiBBbiBASW5wdXQgcHJvcGVydHkgdGhhdCBzZXRzIHRoZSB2YWx1ZSBvZiBgcm9sZWAgYXR0cmlidXRlLlxuICAgICAqIElmIG5vdCB0aGUgZGVmYXVsdCB2YWx1ZSBvZiBgc2VwYXJhdG9yYCB3aWxsIGJlIHVzZWQuXG4gICAgICovXG4gICAgQEhvc3RCaW5kaW5nKCdhdHRyLnJvbGUnKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHJvbGUgPSAnc2VwYXJhdG9yJztcblxuICAgIC8qKlxuICAgICAqIFNldHMgdGhlIHR5cGUgb2YgdGhlIGRpdmlkZXIuIFRoZSBkZWZhdWx0IHZhbHVlXG4gICAgICogaXMgYGRlZmF1bHRgLiBUaGUgZGl2aWRlciBjYW4gYWxzbyBiZSBgZGFzaGVkYDtcbiAgICAgKiBgYGBodG1sXG4gICAgICogPGlneC1kaXZpZGVyIHR5cGU9XCJkYXNoZWRcIj48L2lneC1kaXZpZGVyPlxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWRpdmlkZXInKVxuICAgIEBJbnB1dCgpXG4gICAgcHVibGljIHR5cGU6IElneERpdmlkZXJUeXBlIHwgc3RyaW5nID0gSWd4RGl2aWRlclR5cGUuREVGQVVMVDtcblxuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWRpdmlkZXItLWRhc2hlZCcpXG4gICAgZ2V0IGlzRGFzaGVkKCkge1xuICAgICAgICByZXR1cm4gdGhpcy50eXBlID09PSBJZ3hEaXZpZGVyVHlwZS5EQVNIRUQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQW4gQElucHV0IHRoYXQgc2V0cyB0aGUgYG1pZGRsZWAgYXR0cmlidXRlIG9mIHRoZSBkaXZpZGVyLlxuICAgICAqIElmIHNldCB0byBgdHJ1ZWAgYW5kIGFuIGBpbnNldGAgdmFsdWUgaGFzIGJlZW4gcHJvdmlkZWQsXG4gICAgICogdGhlIGRpdmlkZXIgd2lsbCBzdGFydCBzaHJpbmtpbmcgZnJvbSBib3RoIGVuZHMuXG4gICAgICogYGBgaHRtbFxuICAgICAqIDxpZ3gtZGl2aWRlciBbbWlkZGxlXT1cInRydWVcIj48L2lneC1kaXZpZGVyPlxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWRpdmlkZXItLWluc2V0JylcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyBtaWRkbGUgPSBmYWxzZTtcblxuICAgIC8qKlxuICAgICAqIEEgZ2V0dGVyIHRoYXQgcmV0dXJucyBgdHJ1ZWAgaWYgdGhlIHR5cGUgb2YgdGhlIGRpdmlkZXIgaXMgYGRlZmF1bHRgO1xuICAgICAqIGBgYHR5cGVzY3JpcHRcbiAgICAgKiBjb25zdCBpc0RlZmF1bHQgPSB0aGlzLmRpdmlkZXIuaXNEZWZhdWx0O1xuICAgICAqIGBgYFxuICAgICAqL1xuICAgIGdldCBpc0RlZmF1bHQoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLnR5cGUgPT09IElneERpdmlkZXJUeXBlLkRFRkFVTFQ7XG4gICAgfVxuXG4gICAgLyoqXG4gICAgICogQW4gQElucHV0IHRoYXQgc2V0cyB0aGUgdmVydGljYWwgYXR0cmlidXRlIG9mIHRoZSBkaXZpZGVyLlxuICAgICAqIGBgYGh0bWxcbiAgICAgKiA8aWd4LWRpdmlkZXIgW3ZlcnRpY2FsXT1cInRydWVcIj48L2lneC1kaXZpZGVyPlxuICAgICAqIGBgYFxuICAgICAqL1xuICAgIEBIb3N0QmluZGluZygnY2xhc3MuaWd4LWRpdmlkZXItLXZlcnRpY2FsJylcbiAgICBASW5wdXQoKVxuICAgIHB1YmxpYyB2ZXJ0aWNhbCA9IGZhbHNlO1xuXG4gICAgLyoqXG4gICAgICogU2V0cyB0aGUgaW5zZXQgb2YgdGhlIGRpdmlkZXIgZnJvbSB0aGUgc2lkZShzKS5cbiAgICAgKiBJZiB0aGUgZGl2aWRlciBhdHRyaWJ1dGUgYG1pZGRsZWAgaXMgc2V0IHRvIGB0cnVlYCxcbiAgICAgKiBpdCB3aWxsIGluc2V0IHRoZSBkaXZpZGVyIG9uIGJvdGggc2lkZXMuXG4gICAgICogYGBgdHlwZXNjcmlwdFxuICAgICAqIHRoaXMuZGl2aWRlci5pbnNldCA9ICczMnB4JztcbiAgICAgKiBgYGBcbiAgICAgKi9cbiAgICBASG9zdEJpbmRpbmcoJ3N0eWxlLm1hcmdpbicpXG4gICAgc2V0IGluc2V0KHZhbHVlOiBzdHJpbmcpIHtcbiAgICAgICAgdGhpcy5faW5zZXQgPSB2YWx1ZTtcbiAgICB9XG5cbiAgICAvKipcbiAgICAgKiBHZXRzIHRoZSBjdXJyZW50IGRpdmlkZXIgaW5zZXQgaW4gdGVybXMgb2ZcbiAgICAgKiBtYXJnaW4gcmVwcmVzZW50YXRpb24gYXMgYXBwbGllZCB0byB0aGUgZGl2aWRlci5cbiAgICAgKiBgYGB0eXBlc2NyaXB0XG4gICAgICogY29uc3QgaW5zZXQgPSB0aGlzLmRpdmlkZXIuaW5zZXQ7XG4gICAgICogYGBgXG4gICAgICovXG4gICAgZ2V0IGluc2V0KCkge1xuICAgICAgICBjb25zdCBiYXNlTWFyZ2luID0gJzAnO1xuXG4gICAgICAgIGlmICh0aGlzLm1pZGRsZSkge1xuICAgICAgICAgICAgaWYgKHRoaXMudmVydGljYWwpIHtcbiAgICAgICAgICAgICAgICByZXR1cm4gYCR7dGhpcy5faW5zZXR9ICR7YmFzZU1hcmdpbn1gO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIGAke2Jhc2VNYXJnaW59ICR7dGhpcy5faW5zZXR9YDtcbiAgICAgICAgfSBlbHNlIHtcbiAgICAgICAgICAgIGlmICh0aGlzLnZlcnRpY2FsKSB7XG4gICAgICAgICAgICAgICAgcmV0dXJuIGAke3RoaXMuX2luc2V0fSAke2Jhc2VNYXJnaW59IDAgJHtiYXNlTWFyZ2lufWA7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4gYCR7YmFzZU1hcmdpbn0gMCAke2Jhc2VNYXJnaW59ICR7dGhpcy5faW5zZXR9YDtcbiAgICAgICAgfVxuICAgIH1cbn1cblxuQE5nTW9kdWxlKHtcbiAgICBkZWNsYXJhdGlvbnM6IFtJZ3hEaXZpZGVyRGlyZWN0aXZlXSxcbiAgICBleHBvcnRzOiBbSWd4RGl2aWRlckRpcmVjdGl2ZV1cbn0pXG5leHBvcnQgY2xhc3MgSWd4RGl2aWRlck1vZHVsZSB7IH1cbiJdfQ==