Sha256: 04f3159ed29ddb40b019a1a1f6c04dcef92d26207c1a60a10ae6c956de4a66d1

Contents?: true

Size: 838 Bytes

Versions: 22

Compression:

Stored size: 838 Bytes

Contents

'use strict';

const Mixin = require('../../utils/mixin');

class LocationInfoOpenElementStackMixin extends Mixin {
    constructor(stack, opts) {
        super(stack);

        this.onItemPop = opts.onItemPop;
    }

    _getOverriddenMethods(mxn, orig) {
        return {
            pop() {
                mxn.onItemPop(this.current);
                orig.pop.call(this);
            },

            popAllUpToHtmlElement() {
                for (let i = this.stackTop; i > 0; i--) {
                    mxn.onItemPop(this.items[i]);
                }

                orig.popAllUpToHtmlElement.call(this);
            },

            remove(element) {
                mxn.onItemPop(this.current);
                orig.remove.call(this, element);
            }
        };
    }
}

module.exports = LocationInfoOpenElementStackMixin;

Version data entries

22 entries across 22 versions & 2 rubygems

Version Path
appmap-0.72.2 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.72.1 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.72.0 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.71.0 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.70.2 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.70.1 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.70.0 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.69.0 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.68.2 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.68.1 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.68.0 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.67.1 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.67.0 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.66.2 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.66.1 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.66.0 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.65.1 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.65.0 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.64.0 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js
appmap-0.63.0 ./node_modules/parse5/lib/extensions/location-info/open-element-stack-mixin.js