(window["webpackJsonp"] = window["webpackJsonp"] || []).push([[20],{

/***/ "../../node_modules/@blueprintjs/core/lib/esm/common/abstractComponent.js":
/*!****************************************************************************************************!*\
  !*** C:/workspace/gitfish/twii/node_modules/@blueprintjs/core/lib/esm/common/abstractComponent.js ***!
  \****************************************************************************************************/
/*! exports provided: AbstractComponent */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "AbstractComponent", function() { return AbstractComponent; });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "../../node_modules/tslib/tslib.es6.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react */ "../../node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./utils */ "../../node_modules/@blueprintjs/core/lib/esm/common/utils.js");
/*
 * Copyright 2015 Palantir Technologies, Inc. All rights reserved.
 *
 * Licensed under the terms of the LICENSE file distributed with this project.
 */



/**
 * An abstract component that Blueprint components can extend
 * in order to add some common functionality like runtime props validation.
 */
var AbstractComponent = /** @class */ (function (_super) {
    tslib__WEBPACK_IMPORTED_MODULE_0__["__extends"](AbstractComponent, _super);
    function AbstractComponent(props, context) {
        var _this = _super.call(this, props, context) || this;
        // Not bothering to remove entries when their timeouts finish because clearing invalid ID is a no-op
        _this.timeoutIds = [];
        /**
         * Clear all known timeouts.
         */
        _this.clearTimeouts = function () {
            if (_this.timeoutIds.length > 0) {
                for (var _i = 0, _a = _this.timeoutIds; _i < _a.length; _i++) {
                    var timeoutId = _a[_i];
                    window.clearTimeout(timeoutId);
                }
                _this.timeoutIds = [];
            }
        };
        if (!Object(_utils__WEBPACK_IMPORTED_MODULE_2__["isNodeEnv"])("production")) {
            _this.validateProps(_this.props);
        }
        return _this;
    }
    AbstractComponent.prototype.componentWillReceiveProps = function (nextProps) {
        if (!Object(_utils__WEBPACK_IMPORTED_MODULE_2__["isNodeEnv"])("production")) {
            this.validateProps(nextProps);
        }
    };
    AbstractComponent.prototype.componentWillUnmount = function () {
        this.clearTimeouts();
    };
    /**
     * Set a timeout and remember its ID.
     * All stored timeouts will be cleared when component unmounts.
     * @returns a "cancel" function that will clear timeout when invoked.
     */
    AbstractComponent.prototype.setTimeout = function (callback, timeout) {
        var handle = window.setTimeout(callback, timeout);
        this.timeoutIds.push(handle);
        return function () { return window.clearTimeout(handle); };
    };
    /**
     * Ensures that the props specified for a component are valid.
     * Implementations should check that props are valid and usually throw an Error if they are not.
     * Implementations should not duplicate checks that the type system already guarantees.
     *
     * This method should be used instead of React's
     * [propTypes](https://facebook.github.io/react/docs/reusable-components.html#prop-validation) feature.
     * Like propTypes, these runtime checks run only in development mode.
     */
    AbstractComponent.prototype.validateProps = function (_) {
        // implement in subclass
    };
    return AbstractComponent;
}(react__WEBPACK_IMPORTED_MODULE_1__["Component"]));



/***/ }),

/***/ "../../node_modules/@blueprintjs/core/lib/esm/common/colors.js":
/*!*****************************************************************************************!*\
  !*** C:/workspace/gitfish/twii/node_modules/@blueprintjs/core/lib/esm/common/colors.js ***!
  \*****************************************************************************************/
/*! exports provided: Colors */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Colors", function() { return Colors; });
/*
 * Copyright 2016 Palantir Technologies, Inc. All rights reserved.
 *
 * Licensed under the terms of the LICENSE file distributed with this project.
 */
var Colors = {
    BLACK: "#10161A",
    BLUE1: "#0E5A8A",
    BLUE2: "#106BA3",
    BLUE3: "#137CBD",
    BLUE4: "#2B95D6",
    BLUE5: "#48AFF0",
    COBALT1: "#1F4B99",
    COBALT2: "#2458B3",
    COBALT3: "#2965CC",
    COBALT4: "#4580E6",
    COBALT5: "#669EFF",
    DARK_GRAY1: "#182026",
    DARK_GRAY2: "#202B33",
    DARK_GRAY3: "#293742",
    DARK_GRAY4: "#30404D",
    DARK_GRAY5: "#394B59",
    FOREST1: "#1D7324",
    FOREST2: "#238C2C",
    FOREST3: "#29A634",
    FOREST4: "#43BF4D",
    FOREST5: "#62D96B",
    GOLD1: "#A67908",
    GOLD2: "#BF8C0A",
    GOLD3: "#D99E0B",
    GOLD4: "#F2B824",
    GOLD5: "#FFC940",
    GRAY1: "#5C7080",
    GRAY2: "#738694",
    GRAY3: "#8A9BA8",
    GRAY4: "#A7B6C2",
    GRAY5: "#BFCCD6",
    GREEN1: "#0A6640",
    GREEN2: "#0D8050",
    GREEN3: "#0F9960",
    GREEN4: "#15B371",
    GREEN5: "#3DCC91",
    INDIGO1: "#5642A6",
    INDIGO2: "#634DBF",
    INDIGO3: "#7157D9",
    INDIGO4: "#9179F2",
    INDIGO5: "#AD99FF",
    LIGHT_GRAY1: "#CED9E0",
    LIGHT_GRAY2: "#D8E1E8",
    LIGHT_GRAY3: "#E1E8ED",
    LIGHT_GRAY4: "#EBF1F5",
    LIGHT_GRAY5: "#F5F8FA",
    LIME1: "#728C23",
    LIME2: "#87A629",
    LIME3: "#9BBF30",
    LIME4: "#B6D94C",
    LIME5: "#D1F26D",
    ORANGE1: "#A66321",
    ORANGE2: "#BF7326",
    ORANGE3: "#D9822B",
    ORANGE4: "#F29D49",
    ORANGE5: "#FFB366",
    RED1: "#A82A2A",
    RED2: "#C23030",
    RED3: "#DB3737",
    RED4: "#F55656",
    RED5: "#FF7373",
    ROSE1: "#A82255",
    ROSE2: "#C22762",
    ROSE3: "#DB2C6F",
    ROSE4: "#F5498B",
    ROSE5: "#FF66A1",
    SEPIA1: "#63411E",
    SEPIA2: "#7D5125",
    SEPIA3: "#96622D",
    SEPIA4: "#B07B46",
    SEPIA5: "#C99765",
    TURQUOISE1: "#008075",
    TURQUOISE2: "#00998C",
    TURQUOISE3: "#00B3A4",
    TURQUOISE4: "#14CCBD",
    TURQUOISE5: "#2EE6D6",
    VERMILION1: "#9E2B0E",
    VERMILION2: "#B83211",
    VERMILION3: "#D13913",
    VERMILION4: "#EB532D",
    VERMILION5: "#FF6E4A",
    VIOLET1: "#5C255C",
    VIOLET2: "#752F75",
    VIOLET3: "#8F398F",
    VIOLET4: "#A854A8",
    VIOLET5: "#C274C2",
    WHITE: "#FFFFFF",
};


/***/ }),

/***/ "../../node_modules/@blueprintjs/core/lib/esm/common/index.js":
/*!****************************************************************************************!*\
  !*** C:/workspace/gitfish/twii/node_modules/@blueprintjs/core/lib/esm/common/index.js ***!
  \****************************************************************************************/
/*! exports provided: AbstractPureComponent, Alignment, Intent, Position, isPositionHorizontal, isPositionVertical, Classes, Keys, Utils, AbstractComponent, Colors, removeNonHTMLProps */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony import */ var _abstractComponent__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./abstractComponent */ "../../node_modules/@blueprintjs/core/lib/esm/common/abstractComponent.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "AbstractComponent", function() { return _abstractComponent__WEBPACK_IMPORTED_MODULE_0__["AbstractComponent"]; });

/* harmony import */ var _abstractPureComponent__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./abstractPureComponent */ "../../node_modules/@blueprintjs/core/lib/esm/common/abstractPureComponent.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "AbstractPureComponent", function() { return _abstractPureComponent__WEBPACK_IMPORTED_MODULE_1__["AbstractPureComponent"]; });

/* harmony import */ var _alignment__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./alignment */ "../../node_modules/@blueprintjs/core/lib/esm/common/alignment.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Alignment", function() { return _alignment__WEBPACK_IMPORTED_MODULE_2__["Alignment"]; });

/* harmony import */ var _colors__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./colors */ "../../node_modules/@blueprintjs/core/lib/esm/common/colors.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Colors", function() { return _colors__WEBPACK_IMPORTED_MODULE_3__["Colors"]; });

/* harmony import */ var _intent__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./intent */ "../../node_modules/@blueprintjs/core/lib/esm/common/intent.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Intent", function() { return _intent__WEBPACK_IMPORTED_MODULE_4__["Intent"]; });

/* harmony import */ var _position__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./position */ "../../node_modules/@blueprintjs/core/lib/esm/common/position.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "Position", function() { return _position__WEBPACK_IMPORTED_MODULE_5__["Position"]; });

/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isPositionHorizontal", function() { return _position__WEBPACK_IMPORTED_MODULE_5__["isPositionHorizontal"]; });

/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "isPositionVertical", function() { return _position__WEBPACK_IMPORTED_MODULE_5__["isPositionVertical"]; });

/* harmony import */ var _props__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ./props */ "../../node_modules/@blueprintjs/core/lib/esm/common/props.js");
/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, "removeNonHTMLProps", function() { return _props__WEBPACK_IMPORTED_MODULE_6__["removeNonHTMLProps"]; });

/* harmony import */ var _classes__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ./classes */ "../../node_modules/@blueprintjs/core/lib/esm/common/classes.js");
/* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "Classes", function() { return _classes__WEBPACK_IMPORTED_MODULE_7__; });
/* harmony import */ var _keys__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./keys */ "../../node_modules/@blueprintjs/core/lib/esm/common/keys.js");
/* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "Keys", function() { return _keys__WEBPACK_IMPORTED_MODULE_8__; });
/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! ./utils */ "../../node_modules/@blueprintjs/core/lib/esm/common/utils.js");
/* harmony reexport (module object) */ __webpack_require__.d(__webpack_exports__, "Utils", function() { return _utils__WEBPACK_IMPORTED_MODULE_9__; });
/*
 * Copyright 2016 Palantir Technologies, Inc. All rights reserved.
 *
 * Licensed under the terms of the LICENSE file distributed with this project.
 */











// NOTE: Errors is not exported in public API


/***/ }),

/***/ "../../node_modules/@blueprintjs/core/lib/esm/common/position.js":
/*!*******************************************************************************************!*\
  !*** C:/workspace/gitfish/twii/node_modules/@blueprintjs/core/lib/esm/common/position.js ***!
  \*******************************************************************************************/
/*! exports provided: Position, isPositionHorizontal, isPositionVertical */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Position", function() { return Position; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isPositionHorizontal", function() { return isPositionHorizontal; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "isPositionVertical", function() { return isPositionVertical; });
/*
 * Copyright 2015 Palantir Technologies, Inc. All rights reserved.
 *
 * Licensed under the terms of the LICENSE file distributed with this project.
 */
var Position;
(function (Position) {
    Position["TOP_LEFT"] = "top-left";
    Position["TOP"] = "top";
    Position["TOP_RIGHT"] = "top-right";
    Position["RIGHT_TOP"] = "right-top";
    Position["RIGHT"] = "right";
    Position["RIGHT_BOTTOM"] = "right-bottom";
    Position["BOTTOM_RIGHT"] = "bottom-right";
    Position["BOTTOM"] = "bottom";
    Position["BOTTOM_LEFT"] = "bottom-left";
    Position["LEFT_BOTTOM"] = "left-bottom";
    Position["LEFT"] = "left";
    Position["LEFT_TOP"] = "left-top";
})(Position || (Position = {}));
function isPositionHorizontal(position) {
    /* istanbul ignore next */
    return (position === Position.TOP ||
        position === Position.TOP_LEFT ||
        position === Position.TOP_RIGHT ||
        position === Position.BOTTOM ||
        position === Position.BOTTOM_LEFT ||
        position === Position.BOTTOM_RIGHT);
}
function isPositionVertical(position) {
    /* istanbul ignore next */
    return (position === Position.LEFT ||
        position === Position.LEFT_TOP ||
        position === Position.LEFT_BOTTOM ||
        position === Position.RIGHT ||
        position === Position.RIGHT_TOP ||
        position === Position.RIGHT_BOTTOM);
}


/***/ }),

/***/ "../../node_modules/@blueprintjs/core/lib/esm/common/props.js":
/*!****************************************************************************************!*\
  !*** C:/workspace/gitfish/twii/node_modules/@blueprintjs/core/lib/esm/common/props.js ***!
  \****************************************************************************************/
/*! exports provided: removeNonHTMLProps */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "removeNonHTMLProps", function() { return removeNonHTMLProps; });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "../../node_modules/tslib/tslib.es6.js");
/*
 * Copyright 2015 Palantir Technologies, Inc. All rights reserved.
 *
 * Licensed under the terms of the LICENSE file distributed with this project.
 */

/** A collection of curated prop keys used across our Components which are not valid HTMLElement props. */
var INVALID_PROPS = [
    "active",
    "alignText",
    "containerRef",
    "elementRef",
    "fill",
    "icon",
    "inputRef",
    "intent",
    "inline",
    "large",
    "loading",
    "leftIcon",
    "minimal",
    "onChildrenMount",
    "onRemove",
    "popoverProps",
    "rightElement",
    "rightIcon",
    "small",
    "text",
];
/**
 * Typically applied to HTMLElements to filter out blacklisted props. When applied to a Component,
 * can filter props from being passed down to the children. Can also filter by a combined list of
 * supplied prop keys and the blacklist (only appropriate for HTMLElements).
 * @param props The original props object to filter down.
 * @param {string[]} invalidProps If supplied, overwrites the default blacklist.
 * @param {boolean} shouldMerge If true, will merge supplied invalidProps and blacklist together.
 */
function removeNonHTMLProps(props, invalidProps, shouldMerge) {
    if (invalidProps === void 0) { invalidProps = INVALID_PROPS; }
    if (shouldMerge === void 0) { shouldMerge = false; }
    if (shouldMerge) {
        invalidProps = invalidProps.concat(INVALID_PROPS);
    }
    return invalidProps.reduce(function (prev, curr) {
        if (prev.hasOwnProperty(curr)) {
            delete prev[curr];
        }
        return prev;
    }, tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, props));
}


/***/ }),

/***/ "../../node_modules/@blueprintjs/core/lib/esm/components/icon/icon.js":
/*!************************************************************************************************!*\
  !*** C:/workspace/gitfish/twii/node_modules/@blueprintjs/core/lib/esm/components/icon/icon.js ***!
  \************************************************************************************************/
/*! exports provided: Icon */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Icon", function() { return Icon; });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "../../node_modules/tslib/tslib.es6.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "../../node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _blueprintjs_icons__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @blueprintjs/icons */ "../../node_modules/@blueprintjs/icons/lib/esm/index.js");
/* harmony import */ var _common__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../common */ "../../node_modules/@blueprintjs/core/lib/esm/common/index.js");
/*
 * Copyright 2017 Palantir Technologies, Inc. All rights reserved.
 *
 * Licensed under the terms of the LICENSE file distributed with this project.
 */





var Icon = /** @class */ (function (_super) {
    tslib__WEBPACK_IMPORTED_MODULE_0__["__extends"](Icon, _super);
    function Icon() {
        return _super !== null && _super.apply(this, arguments) || this;
    }
    Icon.prototype.render = function () {
        var _a = this.props, className = _a.className, color = _a.color, icon = _a.icon, _b = _a.iconSize, iconSize = _b === void 0 ? Icon.SIZE_STANDARD : _b, intent = _a.intent, _c = _a.title, title = _c === void 0 ? icon : _c, svgProps = tslib__WEBPACK_IMPORTED_MODULE_0__["__rest"](_a, ["className", "color", "icon", "iconSize", "intent", "title"]);
        if (icon == null) {
            return null;
        }
        else if (typeof icon !== "string") {
            return icon;
        }
        // choose which pixel grid is most appropriate for given icon size
        var pixelGridSize = iconSize >= Icon.SIZE_LARGE ? Icon.SIZE_LARGE : Icon.SIZE_STANDARD;
        var paths = this.renderSvgPaths(pixelGridSize, icon);
        if (paths == null) {
            return null;
        }
        var classes = classnames__WEBPACK_IMPORTED_MODULE_1___default()(_common__WEBPACK_IMPORTED_MODULE_4__["Classes"].ICON, _common__WEBPACK_IMPORTED_MODULE_4__["Classes"].intentClass(intent), className);
        var viewBox = "0 0 " + pixelGridSize + " " + pixelGridSize;
        // ".pt-icon" will apply a "fill" CSS style, so we need to inject an inline style to override it
        var _d = this.props.style, style = _d === void 0 ? {} : _d;
        if (color != null) {
            style = tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, style, { fill: color });
        }
        return (react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("svg", tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, svgProps, { className: classes, style: style, "data-icon": icon, width: iconSize, height: iconSize, viewBox: viewBox }),
            title ? react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("title", null, title) : null,
            paths));
    };
    Icon.prototype.renderSvgPaths = function (pathsSize, iconName) {
        var svgPathsRecord = pathsSize === Icon.SIZE_STANDARD ? _blueprintjs_icons__WEBPACK_IMPORTED_MODULE_3__["IconSvgPaths16"] : _blueprintjs_icons__WEBPACK_IMPORTED_MODULE_3__["IconSvgPaths20"];
        var pathStrings = svgPathsRecord[iconName];
        if (pathStrings == null) {
            return null;
        }
        return pathStrings.map(function (d, i) { return react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("path", { key: i, d: d, fillRule: "evenodd" }); });
    };
    Icon.displayName = "Blueprint2.Icon";
    Icon.SIZE_STANDARD = 16;
    Icon.SIZE_LARGE = 20;
    return Icon;
}(react__WEBPACK_IMPORTED_MODULE_2__["PureComponent"]));



/***/ }),

/***/ "../../node_modules/@blueprintjs/core/lib/esm/components/tag-input/tagInput.js":
/*!*********************************************************************************************************!*\
  !*** C:/workspace/gitfish/twii/node_modules/@blueprintjs/core/lib/esm/components/tag-input/tagInput.js ***!
  \*********************************************************************************************************/
/*! exports provided: TagInput */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TagInput", function() { return TagInput; });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "../../node_modules/tslib/tslib.es6.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "../../node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _common_abstractPureComponent__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../common/abstractPureComponent */ "../../node_modules/@blueprintjs/core/lib/esm/common/abstractPureComponent.js");
/* harmony import */ var _common_classes__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../../common/classes */ "../../node_modules/@blueprintjs/core/lib/esm/common/classes.js");
/* harmony import */ var _common_keys__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ../../common/keys */ "../../node_modules/@blueprintjs/core/lib/esm/common/keys.js");
/* harmony import */ var _common_utils__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../common/utils */ "../../node_modules/@blueprintjs/core/lib/esm/common/utils.js");
/* harmony import */ var _icon_icon__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! ../icon/icon */ "../../node_modules/@blueprintjs/core/lib/esm/components/icon/icon.js");
/* harmony import */ var _tag_tag__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ../tag/tag */ "../../node_modules/@blueprintjs/core/lib/esm/components/tag/tag.js");
/*
 * Copyright 2017 Palantir Technologies, Inc. All rights reserved.
 *
 * Licensed under the terms of the LICENSE file distributed with this project.
 */









/** special value for absence of active tag */
var NONE = -1;
var TagInput = /** @class */ (function (_super) {
    tslib__WEBPACK_IMPORTED_MODULE_0__["__extends"](TagInput, _super);
    function TagInput() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.state = {
            activeIndex: NONE,
            inputValue: _this.props.inputValue,
            isInputFocused: false,
        };
        _this.refHandlers = {
            input: function (ref) {
                _this.inputElement = ref;
                _common_utils__WEBPACK_IMPORTED_MODULE_6__["safeInvoke"](_this.props.inputRef, ref);
            },
        };
        _this.addTag = function (value) {
            var _a = _this.props, onAdd = _a.onAdd, onChange = _a.onChange, values = _a.values;
            // enter key on non-empty string invokes onAdd
            var newValues = _this.getValues(value);
            var shouldClearInput = _common_utils__WEBPACK_IMPORTED_MODULE_6__["safeInvoke"](onAdd, newValues);
            // avoid a potentially expensive computation if this prop is omitted
            if (_common_utils__WEBPACK_IMPORTED_MODULE_6__["isFunction"](onChange)) {
                shouldClearInput = shouldClearInput || onChange(values.concat(newValues));
            }
            // only explicit return false cancels text clearing
            if (shouldClearInput !== false) {
                _this.setState({ inputValue: "" });
            }
        };
        _this.maybeRenderTag = function (tag, index) {
            if (!tag) {
                return null;
            }
            var _a = _this.props, large = _a.large, tagProps = _a.tagProps;
            var props = _common_utils__WEBPACK_IMPORTED_MODULE_6__["isFunction"](tagProps) ? tagProps(tag, index) : tagProps;
            return (react__WEBPACK_IMPORTED_MODULE_2__["createElement"](_tag_tag__WEBPACK_IMPORTED_MODULE_8__["Tag"], tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({ active: index === _this.state.activeIndex, "data-tag-index": index, key: tag + "__" + index, large: large, onRemove: _this.props.disabled ? null : _this.handleRemoveTag }, props), tag));
        };
        _this.handleContainerClick = function () {
            if (_this.inputElement != null) {
                _this.inputElement.focus();
            }
        };
        _this.handleContainerBlur = function () {
            requestAnimationFrame(function () {
                // this event is attached to the container element to capture all blur events from inside.
                // we only need to "unfocus" if the blur event is leaving the container.
                // defer this check using rAF so activeElement will have updated.
                if (_this.inputElement != null && !_this.inputElement.parentElement.contains(document.activeElement)) {
                    if (_this.props.addOnBlur && _this.state.inputValue !== undefined && _this.state.inputValue.length > 0) {
                        _this.addTag(_this.state.inputValue);
                    }
                    _this.setState({ activeIndex: NONE, isInputFocused: false });
                }
            });
        };
        _this.handleInputFocus = function (event) {
            _this.setState({ isInputFocused: true });
            _common_utils__WEBPACK_IMPORTED_MODULE_6__["safeInvoke"](_this.props.inputProps.onFocus, event);
        };
        _this.handleInputChange = function (event) {
            _this.setState({ activeIndex: NONE, inputValue: event.currentTarget.value });
            _common_utils__WEBPACK_IMPORTED_MODULE_6__["safeInvoke"](_this.props.onInputChange, event);
            _common_utils__WEBPACK_IMPORTED_MODULE_6__["safeInvoke"](_this.props.inputProps.onChange, event);
        };
        _this.handleInputKeyDown = function (event) {
            var _a = event.currentTarget, selectionEnd = _a.selectionEnd, value = _a.value;
            var activeIndex = _this.state.activeIndex;
            var activeIndexToEmit = activeIndex;
            if (event.which === _common_keys__WEBPACK_IMPORTED_MODULE_5__["ENTER"] && value.length > 0) {
                _this.addTag(value);
            }
            else if (selectionEnd === 0 && _this.props.values.length > 0) {
                // cursor at beginning of input allows interaction with tags.
                // use selectionEnd to verify cursor position and no text selection.
                if (event.which === _common_keys__WEBPACK_IMPORTED_MODULE_5__["ARROW_LEFT"] || event.which === _common_keys__WEBPACK_IMPORTED_MODULE_5__["ARROW_RIGHT"]) {
                    var nextActiveIndex = _this.getNextActiveIndex(event.which === _common_keys__WEBPACK_IMPORTED_MODULE_5__["ARROW_RIGHT"] ? 1 : -1);
                    if (nextActiveIndex !== activeIndex) {
                        event.stopPropagation();
                        activeIndexToEmit = nextActiveIndex;
                        _this.setState({ activeIndex: nextActiveIndex });
                    }
                }
                else if (event.which === _common_keys__WEBPACK_IMPORTED_MODULE_5__["BACKSPACE"]) {
                    _this.handleBackspaceToRemove(event);
                }
            }
            _this.invokeKeyPressCallback("onKeyDown", event, activeIndexToEmit);
        };
        _this.handleInputKeyUp = function (event) {
            _this.invokeKeyPressCallback("onKeyUp", event, _this.state.activeIndex);
        };
        _this.handleRemoveTag = function (event) {
            // using data attribute to simplify callback logic -- one handler for all children
            var index = +event.currentTarget.parentElement.getAttribute("data-tag-index");
            _this.removeIndexFromValues(index);
        };
        return _this;
    }
    TagInput.prototype.componentWillReceiveProps = function (nextProps) {
        _super.prototype.componentWillReceiveProps.call(this, nextProps);
        if (nextProps.inputValue !== this.props.inputValue) {
            this.setState({ inputValue: nextProps.inputValue });
        }
    };
    TagInput.prototype.render = function () {
        var _a = this.props, className = _a.className, disabled = _a.disabled, fill = _a.fill, inputProps = _a.inputProps, large = _a.large, leftIcon = _a.leftIcon, placeholder = _a.placeholder, values = _a.values;
        var classes = classnames__WEBPACK_IMPORTED_MODULE_1___default()(_common_classes__WEBPACK_IMPORTED_MODULE_4__["INPUT"], _common_classes__WEBPACK_IMPORTED_MODULE_4__["TAG_INPUT"], (_b = {},
            _b[_common_classes__WEBPACK_IMPORTED_MODULE_4__["ACTIVE"]] = this.state.isInputFocused,
            _b[_common_classes__WEBPACK_IMPORTED_MODULE_4__["DISABLED"]] = disabled,
            _b[_common_classes__WEBPACK_IMPORTED_MODULE_4__["FILL"]] = fill,
            _b[_common_classes__WEBPACK_IMPORTED_MODULE_4__["LARGE"]] = large,
            _b), className);
        var isLarge = classes.indexOf(_common_classes__WEBPACK_IMPORTED_MODULE_4__["LARGE"]) > NONE;
        // use placeholder prop only if it's defined and values list is empty or contains only falsy values
        var isSomeValueDefined = values.some(function (val) { return !!val; });
        var resolvedPlaceholder = placeholder == null || isSomeValueDefined ? inputProps.placeholder : placeholder;
        return (react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("div", { className: classes, onBlur: this.handleContainerBlur, onClick: this.handleContainerClick },
            react__WEBPACK_IMPORTED_MODULE_2__["createElement"](_icon_icon__WEBPACK_IMPORTED_MODULE_7__["Icon"], { className: _common_classes__WEBPACK_IMPORTED_MODULE_4__["TAG_INPUT_ICON"], icon: leftIcon, iconSize: isLarge ? _icon_icon__WEBPACK_IMPORTED_MODULE_7__["Icon"].SIZE_LARGE : _icon_icon__WEBPACK_IMPORTED_MODULE_7__["Icon"].SIZE_STANDARD }),
            react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("div", { className: _common_classes__WEBPACK_IMPORTED_MODULE_4__["TAG_INPUT_VALUES"] },
                values.map(this.maybeRenderTag),
                this.props.children,
                react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("input", tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({ value: this.state.inputValue }, inputProps, { onFocus: this.handleInputFocus, onChange: this.handleInputChange, onKeyDown: this.handleInputKeyDown, onKeyUp: this.handleInputKeyUp, placeholder: resolvedPlaceholder, ref: this.refHandlers.input, className: classnames__WEBPACK_IMPORTED_MODULE_1___default()(_common_classes__WEBPACK_IMPORTED_MODULE_4__["INPUT_GHOST"], inputProps.className), disabled: disabled }))),
            this.props.rightElement));
        var _b;
    };
    TagInput.prototype.getNextActiveIndex = function (direction) {
        var activeIndex = this.state.activeIndex;
        if (activeIndex === NONE) {
            // nothing active & moving left: select last defined value. otherwise select nothing.
            return direction < 0 ? this.findNextIndex(this.props.values.length, -1) : NONE;
        }
        else {
            // otherwise, move in direction and clamp to bounds.
            // note that upper bound allows going one beyond last item
            // so focus can move off the right end, into the text input.
            return this.findNextIndex(activeIndex, direction);
        }
    };
    TagInput.prototype.findNextIndex = function (startIndex, direction) {
        var values = this.props.values;
        var index = startIndex + direction;
        while (index > 0 && index < values.length && !values[index]) {
            index += direction;
        }
        return _common_utils__WEBPACK_IMPORTED_MODULE_6__["clamp"](index, 0, values.length);
    };
    /**
     * Splits inputValue on separator prop,
     * trims whitespace from each new value,
     * and ignores empty values.
     */
    TagInput.prototype.getValues = function (inputValue) {
        var separator = this.props.separator;
        // NOTE: split() typings define two overrides for string and RegExp.
        // this does not play well with our union prop type, so we'll just declare it as a valid type.
        return (separator === false ? [inputValue] : inputValue.split(separator))
            .map(function (val) { return val.trim(); })
            .filter(function (val) { return val.length > 0; });
    };
    TagInput.prototype.handleBackspaceToRemove = function (event) {
        var previousActiveIndex = this.state.activeIndex;
        // always move leftward one item (this will focus last item if nothing is focused)
        this.setState({ activeIndex: this.getNextActiveIndex(-1) });
        // delete item if there was a previous valid selection (ignore first backspace to focus last item)
        if (this.isValidIndex(previousActiveIndex)) {
            event.stopPropagation();
            this.removeIndexFromValues(previousActiveIndex);
        }
    };
    /** Remove the item at the given index by invoking `onRemove` and `onChange` accordingly. */
    TagInput.prototype.removeIndexFromValues = function (index) {
        var _a = this.props, onChange = _a.onChange, onRemove = _a.onRemove, values = _a.values;
        _common_utils__WEBPACK_IMPORTED_MODULE_6__["safeInvoke"](onRemove, values[index], index);
        if (_common_utils__WEBPACK_IMPORTED_MODULE_6__["isFunction"](onChange)) {
            onChange(values.filter(function (_, i) { return i !== index; }));
        }
    };
    TagInput.prototype.invokeKeyPressCallback = function (propCallbackName, event, activeIndex) {
        _common_utils__WEBPACK_IMPORTED_MODULE_6__["safeInvoke"](this.props[propCallbackName], event, activeIndex === NONE ? undefined : activeIndex);
        _common_utils__WEBPACK_IMPORTED_MODULE_6__["safeInvoke"](this.props.inputProps[propCallbackName], event);
    };
    /** Returns whether the given index represents a valid item in `this.props.values`. */
    TagInput.prototype.isValidIndex = function (index) {
        return index !== NONE && index < this.props.values.length;
    };
    TagInput.displayName = "Blueprint2.TagInput";
    TagInput.defaultProps = {
        inputProps: {},
        separator: ",",
        tagProps: {},
    };
    return TagInput;
}(_common_abstractPureComponent__WEBPACK_IMPORTED_MODULE_3__["AbstractPureComponent"]));



/***/ }),

/***/ "../../node_modules/@blueprintjs/core/lib/esm/components/tag/tag.js":
/*!**********************************************************************************************!*\
  !*** C:/workspace/gitfish/twii/node_modules/@blueprintjs/core/lib/esm/components/tag/tag.js ***!
  \**********************************************************************************************/
/*! exports provided: Tag */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "Tag", function() { return Tag; });
/* harmony import */ var tslib__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! tslib */ "../../node_modules/tslib/tslib.es6.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! classnames */ "../../node_modules/classnames/index.js");
/* harmony import */ var classnames__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(classnames__WEBPACK_IMPORTED_MODULE_1__);
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react */ "../../node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_2__);
/* harmony import */ var _common__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ../../common */ "../../node_modules/@blueprintjs/core/lib/esm/common/index.js");
/* harmony import */ var _icon_icon__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ../icon/icon */ "../../node_modules/@blueprintjs/core/lib/esm/components/icon/icon.js");
/*
 * Copyright 2016 Palantir Technologies, Inc. All rights reserved.
 *
 * Licensed under the terms of the LICENSE file distributed with this project.
 */





var Tag = /** @class */ (function (_super) {
    tslib__WEBPACK_IMPORTED_MODULE_0__["__extends"](Tag, _super);
    function Tag() {
        var _this = _super !== null && _super.apply(this, arguments) || this;
        _this.onRemoveClick = function (e) {
            _common__WEBPACK_IMPORTED_MODULE_3__["Utils"].safeInvoke(_this.props.onRemove, e, _this.props);
        };
        return _this;
    }
    Tag.prototype.render = function () {
        var _a = this.props, active = _a.active, children = _a.children, className = _a.className, intent = _a.intent, interactive = _a.interactive, large = _a.large, minimal = _a.minimal, onRemove = _a.onRemove, round = _a.round, htmlProps = tslib__WEBPACK_IMPORTED_MODULE_0__["__rest"](_a, ["active", "children", "className", "intent", "interactive", "large", "minimal", "onRemove", "round"]);
        var isRemovable = _common__WEBPACK_IMPORTED_MODULE_3__["Utils"].isFunction(onRemove);
        var tagClasses = classnames__WEBPACK_IMPORTED_MODULE_1___default()(_common__WEBPACK_IMPORTED_MODULE_3__["Classes"].TAG, _common__WEBPACK_IMPORTED_MODULE_3__["Classes"].intentClass(intent), (_b = {},
            _b[_common__WEBPACK_IMPORTED_MODULE_3__["Classes"].TAG_REMOVABLE] = isRemovable,
            _b[_common__WEBPACK_IMPORTED_MODULE_3__["Classes"].ACTIVE] = active,
            _b[_common__WEBPACK_IMPORTED_MODULE_3__["Classes"].INTERACTIVE] = interactive,
            _b[_common__WEBPACK_IMPORTED_MODULE_3__["Classes"].LARGE] = large,
            _b[_common__WEBPACK_IMPORTED_MODULE_3__["Classes"].MINIMAL] = minimal,
            _b[_common__WEBPACK_IMPORTED_MODULE_3__["Classes"].ROUND] = round,
            _b), className);
        var isLarge = large || tagClasses.indexOf(_common__WEBPACK_IMPORTED_MODULE_3__["Classes"].LARGE) >= 0;
        var removeButton = isRemovable ? (react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("button", { type: "button", className: _common__WEBPACK_IMPORTED_MODULE_3__["Classes"].TAG_REMOVE, onClick: this.onRemoveClick },
            react__WEBPACK_IMPORTED_MODULE_2__["createElement"](_icon_icon__WEBPACK_IMPORTED_MODULE_4__["Icon"], { icon: "small-cross", iconSize: isLarge ? _icon_icon__WEBPACK_IMPORTED_MODULE_4__["Icon"].SIZE_LARGE : _icon_icon__WEBPACK_IMPORTED_MODULE_4__["Icon"].SIZE_STANDARD }))) : null;
        return (react__WEBPACK_IMPORTED_MODULE_2__["createElement"]("span", tslib__WEBPACK_IMPORTED_MODULE_0__["__assign"]({}, htmlProps, { className: tagClasses }),
            children,
            removeButton));
        var _b;
    };
    Tag.displayName = "Blueprint2.Tag";
    return Tag;
}(react__WEBPACK_IMPORTED_MODULE_2__["PureComponent"]));



/***/ }),

/***/ "../blueprint-samples/lib/component/TagInputSamples.js":
/*!*************************************************************!*\
  !*** ../blueprint-samples/lib/component/TagInputSamples.js ***!
  \*************************************************************/
/*! exports provided: TagInputSamples, default */
/***/ (function(module, __webpack_exports__, __webpack_require__) {

"use strict";
__webpack_require__.r(__webpack_exports__);
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "TagInputSamples", function() { return TagInputSamples; });
/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, "default", function() { return TagInputSamples; });
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "../../node_modules/react/index.js");
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
/* harmony import */ var _blueprintjs_core_lib_esm_components_tag_input_tagInput__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @blueprintjs/core/lib/esm/components/tag-input/tagInput */ "../../node_modules/@blueprintjs/core/lib/esm/components/tag-input/tagInput.js");
var __extends = (undefined && undefined.__extends) || (function () {
    var extendStatics = Object.setPrototypeOf ||
        ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
        function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };
    return function (d, b) {
        extendStatics(d, b);
        function __() { this.constructor = d; }
        d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
    };
})();


var TagInputSamples = /** @class */ (function (_super) {
    __extends(TagInputSamples, _super);
    function TagInputSamples(props) {
        var _this = _super.call(this, props) || this;
        _this._onChange = function (values) {
            _this.setState({ values: values });
        };
        _this.state = { values: [] };
        return _this;
    }
    TagInputSamples.prototype.render = function () {
        return (react__WEBPACK_IMPORTED_MODULE_0__["createElement"]("div", { style: { padding: 8 } },
            react__WEBPACK_IMPORTED_MODULE_0__["createElement"](_blueprintjs_core_lib_esm_components_tag_input_tagInput__WEBPACK_IMPORTED_MODULE_1__["TagInput"], { values: this.state.values, onChange: this._onChange })));
    };
    return TagInputSamples;
}(react__WEBPACK_IMPORTED_MODULE_0__["Component"]));



/***/ })

}]);
//# sourceMappingURL=20.js.map