MCPcopy
hub / github.com/angular-ui/ui-grid / handleCSSClassChanges

Function handleCSSClassChanges

lib/test/angular/1.8.0/angular.js:5627–5657  ·  view source on GitHub ↗
()

Source from the content-addressed store, hash-verified

5625 }
5626
5627 function handleCSSClassChanges() {
5628 forEach(postDigestElements, function(element) {
5629 var data = postDigestQueue.get(element);
5630 if (data) {
5631 var existing = splitClasses(element.attr('class'));
5632 var toAdd = '';
5633 var toRemove = '';
5634 forEach(data, function(status, className) {
5635 var hasClass = !!existing[className];
5636 if (status !== hasClass) {
5637 if (status) {
5638 toAdd += (toAdd.length ? ' ' : '') + className;
5639 } else {
5640 toRemove += (toRemove.length ? ' ' : '') + className;
5641 }
5642 }
5643 });
5644
5645 forEach(element, function(elm) {
5646 if (toAdd) {
5647 jqLiteAddClass(elm, toAdd);
5648 }
5649 if (toRemove) {
5650 jqLiteRemoveClass(elm, toRemove);
5651 }
5652 });
5653 postDigestQueue.delete(element);
5654 }
5655 });
5656 postDigestElements.length = 0;
5657 }
5658
5659
5660 function addRemoveClassesPostDigest(element, add, remove) {

Callers

nothing calls this directly

Calls 4

forEachFunction · 0.70
splitClassesFunction · 0.70
jqLiteAddClassFunction · 0.70
jqLiteRemoveClassFunction · 0.70

Tested by

no test coverage detected