UNPKG

@blueprintjs/core

Version:
1,234 lines (1,137 loc) 340 kB
(function webpackUniversalModuleDefinition(root, factory) { if(typeof exports === 'object' && typeof module === 'object') module.exports = factory(require("React"), require("window"), require("ReactDOM"), require("classNames"), require("Tether"), require("React.addons.CSSTransitionGroup")); else if(typeof define === 'function' && define.amd) define(["React", "window", "ReactDOM", "classNames", "Tether", "React.addons.CSSTransitionGroup"], factory); else if(typeof exports === 'object') exports["Core"] = factory(require("React"), require("window"), require("ReactDOM"), require("classNames"), require("Tether"), require("React.addons.CSSTransitionGroup")); else root["Blueprint"] = root["Blueprint"] || {}, root["Blueprint"]["Core"] = factory(root["React"], root["window"], root["ReactDOM"], root["classNames"], root["Tether"], root["React.addons.CSSTransitionGroup"]); })(this, function(__WEBPACK_EXTERNAL_MODULE_7__, __WEBPACK_EXTERNAL_MODULE_19__, __WEBPACK_EXTERNAL_MODULE_21__, __WEBPACK_EXTERNAL_MODULE_23__, __WEBPACK_EXTERNAL_MODULE_28__, __WEBPACK_EXTERNAL_MODULE_30__) { return /******/ (function(modules) { // webpackBootstrap /******/ // The module cache /******/ var installedModules = {}; /******/ /******/ // The require function /******/ function __webpack_require__(moduleId) { /******/ /******/ // Check if module is in cache /******/ if(installedModules[moduleId]) /******/ return installedModules[moduleId].exports; /******/ /******/ // Create a new module (and put it into the cache) /******/ var module = installedModules[moduleId] = { /******/ exports: {}, /******/ id: moduleId, /******/ loaded: false /******/ }; /******/ /******/ // Execute the module function /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__); /******/ /******/ // Flag the module as loaded /******/ module.loaded = true; /******/ /******/ // Return the exports of the module /******/ return module.exports; /******/ } /******/ /******/ /******/ // expose the modules object (__webpack_modules__) /******/ __webpack_require__.m = modules; /******/ /******/ // expose the module cache /******/ __webpack_require__.c = installedModules; /******/ /******/ // __webpack_public_path__ /******/ __webpack_require__.p = ""; /******/ /******/ // Load entry module and return exports /******/ return __webpack_require__(0); /******/ }) /************************************************************************/ /******/ ([ /* 0 */ /***/ function(module, exports, __webpack_require__) { /* * Copyright 2015 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; function __export(m) { for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; } Object.defineProperty(exports, "__esModule", { value: true }); __export(__webpack_require__(1)); __export(__webpack_require__(4)); __export(__webpack_require__(18)); var iconClasses_1 = __webpack_require__(82); exports.IconClasses = iconClasses_1.IconClasses; var iconStrings_1 = __webpack_require__(83); exports.IconContents = iconStrings_1.IconContents; //# sourceMappingURL=index.js.map /***/ }, /* 1 */ /***/ function(module, exports, __webpack_require__) { /* * Copyright 2016 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; function __export(m) { for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; } Object.defineProperty(exports, "__esModule", { value: true }); __export(__webpack_require__(2)); //# sourceMappingURL=index.js.map /***/ }, /* 2 */ /***/ function(module, exports, __webpack_require__) { /* * Copyright 2016 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var interactionMode_1 = __webpack_require__(3); exports.FOCUS_DISABLED_CLASS = "pt-focus-disabled"; /* istanbul ignore next */ var fakeFocusEngine = { isActive: function () { return true; }, start: function () { return true; }, stop: function () { return true; }, }; /* istanbul ignore next */ var focusEngine = typeof document !== "undefined" ? new interactionMode_1.InteractionModeEngine(document.documentElement, exports.FOCUS_DISABLED_CLASS) : fakeFocusEngine; // this is basically meaningless to unit test; it requires manual UI testing /* istanbul ignore next */ exports.FocusStyleManager = { alwaysShowFocus: function () { return focusEngine.stop(); }, isActive: function () { return focusEngine.isActive(); }, onlyShowFocusOnTabs: function () { return focusEngine.start(); }, }; //# sourceMappingURL=focusStyleManager.js.map /***/ }, /* 3 */ /***/ function(module, exports) { /* * Copyright 2016 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var TAB_KEY_CODE = 9; /* istanbul ignore next */ /** * A nifty little class that maintains event handlers to add a class to the container element * when entering "mouse mode" (on a `mousedown` event) and remove it when entering "keyboard mode" * (on a `tab` key `keydown` event). */ var InteractionModeEngine = (function () { // tslint:disable-next-line:no-constructor-vars function InteractionModeEngine(container, className) { var _this = this; this.container = container; this.className = className; this.isRunning = false; this.handleKeyDown = function (e) { if (e.which === TAB_KEY_CODE) { _this.reset(); _this.container.addEventListener("mousedown", _this.handleMouseDown); } }; this.handleMouseDown = function () { _this.reset(); _this.container.classList.add(_this.className); _this.container.addEventListener("keydown", _this.handleKeyDown); }; } /** Returns whether the engine is currently running. */ InteractionModeEngine.prototype.isActive = function () { return this.isRunning; }; /** Enable behavior which applies the given className when in mouse mode. */ InteractionModeEngine.prototype.start = function () { this.container.addEventListener("mousedown", this.handleMouseDown); this.isRunning = true; }; /** Disable interaction mode behavior and remove className from container. */ InteractionModeEngine.prototype.stop = function () { this.reset(); this.isRunning = false; }; InteractionModeEngine.prototype.reset = function () { this.container.classList.remove(this.className); this.container.removeEventListener("keydown", this.handleKeyDown); this.container.removeEventListener("mousedown", this.handleMouseDown); }; return InteractionModeEngine; }()); exports.InteractionModeEngine = InteractionModeEngine; //# sourceMappingURL=interactionMode.js.map /***/ }, /* 4 */ /***/ function(module, exports, __webpack_require__) { /* * Copyright 2016 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; function __export(m) { for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; } Object.defineProperty(exports, "__esModule", { value: true }); __export(__webpack_require__(5)); __export(__webpack_require__(11)); __export(__webpack_require__(12)); __export(__webpack_require__(13)); __export(__webpack_require__(14)); __export(__webpack_require__(15)); var classes = __webpack_require__(16); var keys = __webpack_require__(17); var utils = __webpack_require__(8); exports.Classes = classes; exports.Keys = keys; exports.Utils = utils; // NOTE: Errors is not exported in public API //# sourceMappingURL=index.js.map /***/ }, /* 5 */ /***/ function(module, exports, __webpack_require__) { /* * Copyright 2015 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = __webpack_require__(6); var React = __webpack_require__(7); var utils_1 = __webpack_require__(8); /** * An abstract component that Blueprint components can extend * in order to add some common functionality like runtime props validation. */ var AbstractComponent = (function (_super) { tslib_1.__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]; clearTimeout(timeoutId); } _this.timeoutIds = []; } }; if (!utils_1.isNodeEnv("production")) { _this.validateProps(_this.props); } return _this; } AbstractComponent.prototype.componentWillReceiveProps = function (nextProps) { if (!utils_1.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 = setTimeout(callback, timeout); this.timeoutIds.push(handle); return function () { return 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. * In contrast to propTypes, these runtime checks are _always_ run, not just in development mode. */ AbstractComponent.prototype.validateProps = function (_) { // implement in subclass }; ; return AbstractComponent; }(React.Component)); exports.AbstractComponent = AbstractComponent; //# sourceMappingURL=abstractComponent.js.map /***/ }, /* 6 */ /***/ function(module, exports, __webpack_require__) { var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/* WEBPACK VAR INJECTION */(function(global) {/*! ***************************************************************************** Copyright (c) Microsoft Corporation. All rights reserved. Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0 THIS CODE IS PROVIDED ON AN *AS IS* BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED, INCLUDING WITHOUT LIMITATION ANY IMPLIED WARRANTIES OR CONDITIONS OF TITLE, FITNESS FOR A PARTICULAR PURPOSE, MERCHANTABLITY OR NON-INFRINGEMENT. See the Apache Version 2.0 License for specific language governing permissions and limitations under the License. ***************************************************************************** */ /* global global, define, System, Reflect, Promise */ var __extends; var __assign; var __rest; var __decorate; var __param; var __metadata; var __awaiter; var __generator; var __exportStar; var __values; var __read; var __spread; var __await; var __asyncGenerator; var __asyncDelegator; var __asyncValues; (function (factory) { var root = typeof global === "object" ? global : typeof self === "object" ? self : typeof this === "object" ? this : {}; if (true) { !(__WEBPACK_AMD_DEFINE_ARRAY__ = [exports], __WEBPACK_AMD_DEFINE_RESULT__ = function (exports) { factory(createExporter(root, createExporter(exports))); }.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__), __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__)); } else if (typeof module === "object" && typeof module.exports === "object") { factory(createExporter(root, createExporter(module.exports))); } else { factory(createExporter(root)); } function createExporter(exports, previous) { return function (id, v) { return exports[id] = previous ? previous(id, v) : v; }; } }) (function (exporter) { 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]; }; __extends = function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; __assign = Object.assign || function (t) { for (var s, i = 1, n = arguments.length; i < n; i++) { s = arguments[i]; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p]; } return t; }; __rest = function (s, e) { var t = {}; for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p]; if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) if (e.indexOf(p[i]) < 0) t[p[i]] = s[p[i]]; return t; }; __decorate = function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; __param = function (paramIndex, decorator) { return function (target, key) { decorator(target, key, paramIndex); } }; __metadata = function (metadataKey, metadataValue) { if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(metadataKey, metadataValue); }; __awaiter = function (thisArg, _arguments, P, generator) { return new (P || (P = Promise))(function (resolve, reject) { function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } function step(result) { result.done ? resolve(result.value) : new P(function (resolve) { resolve(result.value); }).then(fulfilled, rejected); } step((generator = generator.apply(thisArg, _arguments || [])).next()); }); }; __generator = function (thisArg, body) { var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; function verb(n) { return function (v) { return step([n, v]); }; } function step(op) { if (f) throw new TypeError("Generator is already executing."); while (_) try { if (f = 1, y && (t = y[op[0] & 2 ? "return" : op[0] ? "throw" : "next"]) && !(t = t.call(y, op[1])).done) return t; if (y = 0, t) op = [0, t.value]; switch (op[0]) { case 0: case 1: t = op; break; case 4: _.label++; return { value: op[1], done: false }; case 5: _.label++; y = op[1]; op = [0]; continue; case 7: op = _.ops.pop(); _.trys.pop(); continue; default: if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } if (t[2]) _.ops.pop(); _.trys.pop(); continue; } op = body.call(thisArg, _); } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; } }; __exportStar = function (m, exports) { for (var p in m) if (!exports.hasOwnProperty(p)) exports[p] = m[p]; }; __values = function (o) { var m = typeof Symbol === "function" && o[Symbol.iterator], i = 0; if (m) return m.call(o); return { next: function () { if (o && i >= o.length) o = void 0; return { value: o && o[i++], done: !o }; } }; }; __read = function (o, n) { var m = typeof Symbol === "function" && o[Symbol.iterator]; if (!m) return o; var i = m.call(o), r, ar = [], e; try { while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value); } catch (error) { e = { error: error }; } finally { try { if (r && !r.done && (m = i["return"])) m.call(i); } finally { if (e) throw e.error; } } return ar; }; __spread = function () { for (var ar = [], i = 0; i < arguments.length; i++) ar = ar.concat(__read(arguments[i])); return ar; }; __await = function (v) { return this instanceof __await ? (this.v = v, this) : new __await(v); }; __asyncGenerator = function (thisArg, _arguments, generator) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var g = generator.apply(thisArg, _arguments || []), i, q = []; return i = {}, verb("next"), verb("throw"), verb("return"), i[Symbol.asyncIterator] = function () { return this; }, i; function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; } function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } } function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); } function fulfill(value) { resume("next", value); } function reject(value) { resume("throw", value); } function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); } }; __asyncDelegator = function (o) { var i, p; return i = {}, verb("next"), verb("throw", function (e) { throw e; }), verb("return"), i[Symbol.iterator] = function () { return this; }, i; function verb(n, f) { if (o[n]) i[n] = function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === "return" } : f ? f(v) : v; }; } }; __asyncValues = function (o) { if (!Symbol.asyncIterator) throw new TypeError("Symbol.asyncIterator is not defined."); var m = o[Symbol.asyncIterator]; return m ? m.call(o) : typeof __values === "function" ? __values(o) : o[Symbol.iterator](); }; exporter("__extends", __extends); exporter("__assign", __assign); exporter("__rest", __rest); exporter("__decorate", __decorate); exporter("__param", __param); exporter("__metadata", __metadata); exporter("__awaiter", __awaiter); exporter("__generator", __generator); exporter("__exportStar", __exportStar); exporter("__values", __values); exporter("__read", __read); exporter("__spread", __spread); exporter("__await", __await); exporter("__asyncGenerator", __asyncGenerator); exporter("__asyncDelegator", __asyncDelegator); exporter("__asyncValues", __asyncValues); }); /* WEBPACK VAR INJECTION */}.call(exports, (function() { return this; }()))) /***/ }, /* 7 */ /***/ function(module, exports) { module.exports = __WEBPACK_EXTERNAL_MODULE_7__; /***/ }, /* 8 */ /***/ function(module, exports, __webpack_require__) { /* WEBPACK VAR INJECTION */(function(process) {/* * Copyright 2015 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var errors_1 = __webpack_require__(10); /** Returns whether `process.env.NODE_ENV` exists and equals `env`. */ function isNodeEnv(env) { return typeof process !== "undefined" && ({"NODE_ENV":"production"}) && ("production") === env; } exports.isNodeEnv = isNodeEnv; /** Returns whether the value is a function. Acts as a type guard. */ // tslint:disable-next-line:ban-types function isFunction(value) { return typeof value === "function"; } exports.isFunction = isFunction; // tslint:disable-next-line:ban-types function safeInvoke(func) { var args = []; for (var _i = 1; _i < arguments.length; _i++) { args[_i - 1] = arguments[_i]; } if (isFunction(func)) { return func.apply(void 0, args); } } exports.safeInvoke = safeInvoke; function elementIsOrContains(element, testElement) { return element === testElement || element.contains(testElement); } exports.elementIsOrContains = elementIsOrContains; /** * Returns the difference in length between two arrays. A `null` argument is considered an empty list. * The return value will be positive if `a` is longer than `b`, negative if the opposite is true, * and zero if their lengths are equal. */ function arrayLengthCompare(a, b) { if (a === void 0) { a = []; } if (b === void 0) { b = []; } return a.length - b.length; } exports.arrayLengthCompare = arrayLengthCompare; /** * Returns true if the two numbers are within the given tolerance of each other. * This is useful to correct for floating point precision issues, less useful for integers. */ function approxEqual(a, b, tolerance) { if (tolerance === void 0) { tolerance = 0.00001; } return Math.abs(a - b) <= tolerance; } exports.approxEqual = approxEqual; /** Clamps the given number between min and max values. Returns value if within range, or closest bound. */ function clamp(val, min, max) { if (max < min) { throw new Error(errors_1.CLAMP_MIN_MAX); } return Math.min(Math.max(val, min), max); } exports.clamp = clamp; /** Returns the number of decimal places in the given number. */ function countDecimalPlaces(num) { if (typeof num !== "number" || Math.floor(num) === num) { return 0; } return num.toString().split(".")[1].length; } exports.countDecimalPlaces = countDecimalPlaces; /** * Throttle an event on an EventTarget by wrapping it in `requestAnimationFrame` call. * Returns the event handler that was bound to given eventName so you can clean up after yourself. * @see https://developer.mozilla.org/en-US/docs/Web/Events/scroll */ function throttleEvent(target, eventName, newEventName) { var running = false; /* istanbul ignore next: borrowed directly from MDN */ var func = function (event) { if (running) { return; } running = true; requestAnimationFrame(function () { target.dispatchEvent(new CustomEvent(newEventName, event)); running = false; }); }; target.addEventListener(eventName, func); return func; } exports.throttleEvent = throttleEvent; ; //# sourceMappingURL=utils.js.map /* WEBPACK VAR INJECTION */}.call(exports, __webpack_require__(9))) /***/ }, /* 9 */ /***/ function(module, exports) { // shim for using process in browser var process = module.exports = {}; // cached from whatever global is present so that test runners that stub it // don't break things. But we need to wrap it in a try catch in case it is // wrapped in strict mode code which doesn't define any globals. It's inside a // function because try/catches deoptimize in certain engines. var cachedSetTimeout; var cachedClearTimeout; function defaultSetTimout() { throw new Error('setTimeout has not been defined'); } function defaultClearTimeout () { throw new Error('clearTimeout has not been defined'); } (function () { try { if (typeof setTimeout === 'function') { cachedSetTimeout = setTimeout; } else { cachedSetTimeout = defaultSetTimout; } } catch (e) { cachedSetTimeout = defaultSetTimout; } try { if (typeof clearTimeout === 'function') { cachedClearTimeout = clearTimeout; } else { cachedClearTimeout = defaultClearTimeout; } } catch (e) { cachedClearTimeout = defaultClearTimeout; } } ()) function runTimeout(fun) { if (cachedSetTimeout === setTimeout) { //normal enviroments in sane situations return setTimeout(fun, 0); } // if setTimeout wasn't available but was latter defined if ((cachedSetTimeout === defaultSetTimout || !cachedSetTimeout) && setTimeout) { cachedSetTimeout = setTimeout; return setTimeout(fun, 0); } try { // when when somebody has screwed with setTimeout but no I.E. maddness return cachedSetTimeout(fun, 0); } catch(e){ try { // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally return cachedSetTimeout.call(null, fun, 0); } catch(e){ // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error return cachedSetTimeout.call(this, fun, 0); } } } function runClearTimeout(marker) { if (cachedClearTimeout === clearTimeout) { //normal enviroments in sane situations return clearTimeout(marker); } // if clearTimeout wasn't available but was latter defined if ((cachedClearTimeout === defaultClearTimeout || !cachedClearTimeout) && clearTimeout) { cachedClearTimeout = clearTimeout; return clearTimeout(marker); } try { // when when somebody has screwed with setTimeout but no I.E. maddness return cachedClearTimeout(marker); } catch (e){ try { // When we are in I.E. but the script has been evaled so I.E. doesn't trust the global object when called normally return cachedClearTimeout.call(null, marker); } catch (e){ // same as above but when it's a version of I.E. that must have the global object for 'this', hopfully our context correct otherwise it will throw a global error. // Some versions of I.E. have different rules for clearTimeout vs setTimeout return cachedClearTimeout.call(this, marker); } } } var queue = []; var draining = false; var currentQueue; var queueIndex = -1; function cleanUpNextTick() { if (!draining || !currentQueue) { return; } draining = false; if (currentQueue.length) { queue = currentQueue.concat(queue); } else { queueIndex = -1; } if (queue.length) { drainQueue(); } } function drainQueue() { if (draining) { return; } var timeout = runTimeout(cleanUpNextTick); draining = true; var len = queue.length; while(len) { currentQueue = queue; queue = []; while (++queueIndex < len) { if (currentQueue) { currentQueue[queueIndex].run(); } } queueIndex = -1; len = queue.length; } currentQueue = null; draining = false; runClearTimeout(timeout); } process.nextTick = function (fun) { var args = new Array(arguments.length - 1); if (arguments.length > 1) { for (var i = 1; i < arguments.length; i++) { args[i - 1] = arguments[i]; } } queue.push(new Item(fun, args)); if (queue.length === 1 && !draining) { runTimeout(drainQueue); } }; // v8 likes predictible objects function Item(fun, array) { this.fun = fun; this.array = array; } Item.prototype.run = function () { this.fun.apply(null, this.array); }; process.title = 'browser'; process.browser = true; process.env = {}; process.argv = []; process.version = ''; // empty string to avoid regexp issues process.versions = {}; function noop() {} process.on = noop; process.addListener = noop; process.once = noop; process.off = noop; process.removeListener = noop; process.removeAllListeners = noop; process.emit = noop; process.prependListener = noop; process.prependOnceListener = noop; process.listeners = function (name) { return [] } process.binding = function (name) { throw new Error('process.binding is not supported'); }; process.cwd = function () { return '/' }; process.chdir = function (dir) { throw new Error('process.chdir is not supported'); }; process.umask = function() { return 0; }; /***/ }, /* 10 */ /***/ function(module, exports) { /* * Copyright 2015 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var ns = "[Blueprint]"; var deprec = ns + " DEPRECATION:"; exports.CLAMP_MIN_MAX = ns + " clamp: max cannot be less than min"; exports.ALERT_WARN_CANCEL_PROPS = ns + " <Alert> cancelButtonText and onCancel should be set together."; exports.COLLAPSIBLE_LIST_INVALID_CHILD = ns + " <CollapsibleList> children must be <MenuItem>s"; exports.CONTEXTMENU_WARN_DECORATOR_NO_METHOD = ns + " @ContextMenuTarget-decorated class should implement renderContextMenu."; exports.HOTKEYS_HOTKEY_CHILDREN = ns + " <Hotkeys> only accepts <Hotkey> children."; exports.MENU_WARN_CHILDREN_SUBMENU_MUTEX = ns + " <MenuItem> children and submenu props are mutually exclusive, with children taking priority."; exports.NUMERIC_INPUT_MIN_MAX = ns + " <NumericInput> requires min to be strictly less than max if both are defined."; exports.NUMERIC_INPUT_MINOR_STEP_SIZE_BOUND = ns + " <NumericInput> requires minorStepSize to be strictly less than stepSize."; exports.NUMERIC_INPUT_MAJOR_STEP_SIZE_BOUND = ns + " <NumericInput> requires majorStepSize to be strictly greater than stepSize."; exports.NUMERIC_INPUT_MINOR_STEP_SIZE_NON_POSITIVE = ns + " <NumericInput> requires minorStepSize to be strictly greater than zero."; exports.NUMERIC_INPUT_MAJOR_STEP_SIZE_NON_POSITIVE = ns + " <NumericInput> requires majorStepSize to be strictly greater than zero."; exports.NUMERIC_INPUT_STEP_SIZE_NON_POSITIVE = ns + " <NumericInput> requires stepSize to be strictly greater than zero."; exports.NUMERIC_INPUT_STEP_SIZE_NULL = ns + " <NumericInput> requires stepSize to be defined."; exports.POPOVER_REQUIRES_TARGET = ns + " <Popover> requires target prop or at least one child element."; exports.POPOVER_MODAL_INTERACTION = ns + " <Popover isModal={true}> requires interactionKind={PopoverInteractionKind.CLICK}."; exports.POPOVER_WARN_TOO_MANY_CHILDREN = ns + " <Popover> supports one or two children; additional children are ignored." + " First child is the target, second child is the content. You may instead supply these two as props."; exports.POPOVER_WARN_DOUBLE_CONTENT = ns + " <Popover> with two children ignores content prop; use either prop or children."; exports.POPOVER_WARN_DOUBLE_TARGET = ns + " <Popover> with children ignores target prop; use either prop or children."; exports.POPOVER_WARN_EMPTY_CONTENT = ns + " Disabling <Popover> with empty/whitespace content..."; exports.POPOVER_WARN_MODAL_INLINE = ns + " <Popover inline={true}> ignores isModal"; exports.POPOVER_WARN_DEPRECATED_CONSTRAINTS = deprec + " <Popover> constraints and useSmartPositioning are deprecated. Use tetherOptions directly."; exports.POPOVER_WARN_INLINE_NO_TETHER = ns + " <Popover inline={true}> ignores tetherOptions, constraints, and useSmartPositioning."; exports.POPOVER_WARN_UNCONTROLLED_ONINTERACTION = ns + " <Popover> onInteraction is ignored when uncontrolled."; exports.PORTAL_CONTEXT_CLASS_NAME_STRING = ns + " <Portal> context blueprintPortalClassName must be string"; exports.RADIOGROUP_WARN_CHILDREN_OPTIONS_MUTEX = ns + " <RadioGroup> children and options prop are mutually exclusive, with options taking priority."; exports.SLIDER_ZERO_STEP = ns + " <Slider> stepSize must be greater than zero."; exports.SLIDER_ZERO_LABEL_STEP = ns + " <Slider> labelStepSize must be greater than zero."; exports.RANGESLIDER_NULL_VALUE = ns + " <RangeSlider> value prop must be an array of two non-null numbers."; exports.TABS_FIRST_CHILD = ns + " First child of <Tabs> component must be a <TabList>"; exports.TABS_MISMATCH = ns + " Number of <Tab> components must equal number of <TabPanel> components"; exports.TABS_WARN_DEPRECATED = deprec + " <Tabs> is deprecated since v1.11.0; consider upgrading to <Tabs2>." + " https://blueprintjs.com/#components.tabs.js"; exports.TOASTER_WARN_INLINE = ns + " Toaster.create() ignores inline prop as it always creates a new element."; exports.TOASTER_WARN_LEFT_RIGHT = ns + " Toaster does not support LEFT or RIGHT positions."; exports.DIALOG_WARN_NO_HEADER_ICON = ns + " <Dialog> iconName is ignored if title is omitted."; exports.DIALOG_WARN_NO_HEADER_CLOSE_BUTTON = ns + " <Dialog> isCloseButtonShown prop is ignored if title is omitted."; //# sourceMappingURL=errors.js.map /***/ }, /* 11 */ /***/ function(module, exports) { /* * Copyright 2016 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.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", }; //# sourceMappingURL=colors.js.map /***/ }, /* 12 */ /***/ function(module, exports) { /* * Copyright 2015 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); /** * The four basic intents. */ var Intent; (function (Intent) { Intent[Intent["NONE"] = -1] = "NONE"; Intent[Intent["PRIMARY"] = 0] = "PRIMARY"; Intent[Intent["SUCCESS"] = 1] = "SUCCESS"; Intent[Intent["WARNING"] = 2] = "WARNING"; Intent[Intent["DANGER"] = 3] = "DANGER"; })(Intent = exports.Intent || (exports.Intent = {})); //# sourceMappingURL=intent.js.map /***/ }, /* 13 */ /***/ function(module, exports) { /* * Copyright 2015 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var Position; (function (Position) { Position[Position["TOP_LEFT"] = 0] = "TOP_LEFT"; Position[Position["TOP"] = 1] = "TOP"; Position[Position["TOP_RIGHT"] = 2] = "TOP_RIGHT"; Position[Position["RIGHT_TOP"] = 3] = "RIGHT_TOP"; Position[Position["RIGHT"] = 4] = "RIGHT"; Position[Position["RIGHT_BOTTOM"] = 5] = "RIGHT_BOTTOM"; Position[Position["BOTTOM_RIGHT"] = 6] = "BOTTOM_RIGHT"; Position[Position["BOTTOM"] = 7] = "BOTTOM"; Position[Position["BOTTOM_LEFT"] = 8] = "BOTTOM_LEFT"; Position[Position["LEFT_BOTTOM"] = 9] = "LEFT_BOTTOM"; Position[Position["LEFT"] = 10] = "LEFT"; Position[Position["LEFT_TOP"] = 11] = "LEFT_TOP"; })(Position = exports.Position || (exports.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; } exports.isPositionHorizontal = isPositionHorizontal; 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; } exports.isPositionVertical = isPositionVertical; //# sourceMappingURL=position.js.map /***/ }, /* 14 */ /***/ function(module, exports, __webpack_require__) { /* * Copyright 2015 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = __webpack_require__(6); /** A collection of curated prop keys used across our Components which are not valid HTMLElement props. */ var INVALID_PROPS = [ "active", "containerRef", "elementRef", "iconName", "inputRef", "intent", "loading", "leftIconName", "onChildrenMount", "onRemove", "rightElement", "rightIconName", "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_1.__assign({}, props)); } exports.removeNonHTMLProps = removeNonHTMLProps; //# sourceMappingURL=props.js.map /***/ }, /* 15 */ /***/ function(module, exports, __webpack_require__) { /* * Copyright 2015 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var tslib_1 = __webpack_require__(6); var position_1 = __webpack_require__(13); // per https://github.com/HubSpot/tether/pull/204, Tether now exposes a `bodyElement` option that, // when present, gets the tethered element injected into *it* instead of into the document body. // but both approaches still cause React to freak out, because it loses its handle on the DOM // element. thus, we pass a fake HTML bodyElement to Tether, with a no-op `appendChild` function // (the only function the library uses from bodyElement). var fakeHtmlElement = { appendChild: function () { }, }; /** @internal */ function createTetherOptions(element, target, position, tetherOptions) { if (tetherOptions === void 0) { tetherOptions = {}; } return tslib_1.__assign({}, tetherOptions, { attachment: getPopoverAttachment(position), bodyElement: fakeHtmlElement, classPrefix: "pt-tether", element: element, target: target, targetAttachment: getTargetAttachment(position) }); } exports.createTetherOptions = createTetherOptions; /** @internal */ function getTargetAttachment(position) { var attachments = (_a = {}, _a[position_1.Position.TOP_LEFT] = "top left", _a[position_1.Position.TOP] = "top center", _a[position_1.Position.TOP_RIGHT] = "top right", _a[position_1.Position.RIGHT_TOP] = "top right", _a[position_1.Position.RIGHT] = "middle right", _a[position_1.Position.RIGHT_BOTTOM] = "bottom right", _a[position_1.Position.BOTTOM_RIGHT] = "bottom right", _a[position_1.Position.BOTTOM] = "bottom center", _a[position_1.Position.BOTTOM_LEFT] = "bottom left", _a[position_1.Position.LEFT_BOTTOM] = "bottom left", _a[position_1.Position.LEFT] = "middle left", _a[position_1.Position.LEFT_TOP] = "top left", _a); return attachments[position]; var _a; } exports.getTargetAttachment = getTargetAttachment; /** @internal */ function getPopoverAttachment(position) { var attachments = (_a = {}, _a[position_1.Position.TOP_LEFT] = "bottom left", _a[position_1.Position.TOP] = "bottom center", _a[position_1.Position.TOP_RIGHT] = "bottom right", _a[position_1.Position.RIGHT_TOP] = "top left", _a[position_1.Position.RIGHT] = "middle left", _a[position_1.Position.RIGHT_BOTTOM] = "bottom left", _a[position_1.Position.BOTTOM_RIGHT] = "top right", _a[position_1.Position.BOTTOM] = "top center", _a[position_1.Position.BOTTOM_LEFT] = "top left", _a[position_1.Position.LEFT_BOTTOM] = "bottom right", _a[position_1.Position.LEFT] = "middle right", _a[position_1.Position.LEFT_TOP] = "top right", _a); return attachments[position]; var _a; } exports.getPopoverAttachment = getPopoverAttachment; /** @internal */ function getAttachmentClasses(position) { // this essentially reimplements the Tether logic for attachment classes so the same styles // can be reused outside of Tether-based popovers. return expandAttachmentClasses(getPopoverAttachment(position), "pt-tether-element-attached").concat(expandAttachmentClasses(getTargetAttachment(position), "pt-tether-target-attached")); } exports.getAttachmentClasses = getAttachmentClasses; function expandAttachmentClasses(attachments, prefix) { var _a = attachments.split(" "), verticalAlign = _a[0], horizontalAlign = _a[1]; return [prefix + "-" + verticalAlign, prefix + "-" + horizontalAlign]; } //# sourceMappingURL=tetherUtils.js.map /***/ }, /* 16 */ /***/ function(module, exports, __webpack_require__) { /* * Copyright 2015 Palantir Technologies, Inc. All rights reserved. * Licensed under the BSD-3 License as modified (the “License”); you may obtain a copy * of the license at https://github.com/palantir/blueprint/blob/master/LICENSE * and https://github.com/palantir/blueprint/blob/master/PATENTS */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); var intent_1 = __webpack_require__(12); // modifiers exports.DARK = "pt-dark"; exports.ACTIVE = "pt-active"; exports.MINIMAL = "pt-minimal"; exports.DISABLED = "pt-disabled"; exports.SMALL = "pt-small"; exports.LARGE = "pt-large"; exports.LOADING = "pt-loading"; exports.INTERACTIVE = "pt-interactive"; exports.ALIGN_LEFT = "pt-align-left"; exports.ALIGN_RIGHT = "pt-align-right"; exports.INLINE = "pt-inline"; exports.FILL = "pt-fill"; exports.FIXED = "pt-fixed"; exports.FIXED_TOP = "pt-fixed-top"; exports.VERTICAL = "pt-vertical"; exports.ROUND = "pt-round"; // text utilities exports.TEXT_MUTED = "pt-text-muted"; exports.TEXT_OVERFLOW_ELLIPSIS = "pt-text-overflow-ellipsis"; exports.UI_TEXT_LARGE = "pt-ui-text-large"; // components exports.ALERT = "pt-alert"; exports.ALERT_BODY = "pt-alert-body"; exports.ALERT_CONTENTS = "pt-alert-contents"; exports.ALERT_FOOTER = "pt-alert-footer"; exports.BREADCRUMB = "pt-breadcrumb"; exports.BREADCRUMB_CURRENT = "pt-breadcrumb-current