Project

General

Profile

1
/**
2
 * @license
3
 * Copyright Google Inc. All Rights Reserved.
4
 *
5
 * Use of this source code is governed by an MIT-style license that can be
6
 * found in the LICENSE file at https://angular.io/license
7
 */
8
import { DoCheck, ElementRef, IterableDiffers, KeyValueDiffers, Renderer } from '@angular/core';
9
/**
10
 * @ngModule CommonModule
11
 *
12
 * @whatItDoes Adds and removes CSS classes on an HTML element.
13
 *
14
 * @howToUse
15
 * ```
16
 *     <some-element [ngClass]="'first second'">...</some-element>
17
 *
18
 *     <some-element [ngClass]="['first', 'second']">...</some-element>
19
 *
20
 *     <some-element [ngClass]="{'first': true, 'second': true, 'third': false}">...</some-element>
21
 *
22
 *     <some-element [ngClass]="stringExp|arrayExp|objExp">...</some-element>
23
 *
24
 *     <some-element [ngClass]="{'class1 class2 class3' : true}">...</some-element>
25
 * ```
26
 *
27
 * @description
28
 *
29
 * The CSS classes are updated as follows, depending on the type of the expression evaluation:
30
 * - `string` - the CSS classes listed in the string (space delimited) are added,
31
 * - `Array` - the CSS classes declared as Array elements are added,
32
 * - `Object` - keys are CSS classes that get added when the expression given in the value
33
 *              evaluates to a truthy value, otherwise they are removed.
34
 *
35
 * @stable
36
 */
37
export declare class NgClass implements DoCheck {
38
    private _iterableDiffers;
39
    private _keyValueDiffers;
40
    private _ngEl;
41
    private _renderer;
42
    private _iterableDiffer;
43
    private _keyValueDiffer;
44
    private _initialClasses;
45
    private _rawClass;
46
    constructor(_iterableDiffers: IterableDiffers, _keyValueDiffers: KeyValueDiffers, _ngEl: ElementRef, _renderer: Renderer);
47
    klass: string;
48
    ngClass: string | string[] | Set<string> | {
49
        [klass: string]: any;
50
    };
51
    ngDoCheck(): void;
52
    private _cleanupClasses(rawClassVal);
53
    private _applyKeyValueChanges(changes);
54
    private _applyIterableChanges(changes);
55
    private _applyInitialClasses(isCleanup);
56
    private _applyClasses(rawClassVal, isCleanup);
57
    private _toggleClass(klass, enabled);
58
}
(2-2/9)