]: A list of all searchable string values for the property that will be used in the dropdown component.\n // * `group` [string]: Optional identifier of a custom group that this filtering option is assigned to. Use to create additional groups below the default one. Make sure to also define labels for the group in the `customGroupsText` property.\n //\n // Notice that only one level of options nesting is supported.\n //\n // If you would like to use the built-in filtering capabilities of this component, simply provide\n // a list of all valid options here and they will be automatically filtered based on the input\n // of the user.\n // Alternatively, you can listen to the `filteringInput` or `filteringDelayedInput` event and set new options\n // on your own.\n filteringOptions: {\n type: 'array',\n itemTypes: ['TablePropertyFiltering.Option'],\n onChange: __handleChange\n },\n // Placeholder text rendered when `filteringText` is an empty string.\n placeholder: {\n type: 'string'\n },\n // An array of tokens that will be displayed to the user beneath the filtering input. These tokens represent the\n // currently selected values to be used during filtering.\n // This list will be used by the `filteringFunction` along with the `operation` to filter down the items in the underlying dataset.\n // Each token has the following properties:\n //\n // * `propertyKey` [string]: The object attribute name that corresponds to this property.\n // * `propertyLabel` [string]: A human-readable string for the property.\n // * `value` [string]: The value selected from the filtering dropdown or free text submitted from the input field. Use the `isFreeText` property to detect the origin of the value. This value will be used by the `filteringFunction` in filtering of the underlying dataset.\n // * `label` [string]: A human-readable string for the value. E.g. When the value is '' but it would be preferred to display '-'.\n // * `negated` [boolean]: A boolean value used by the `filteringFunction` in filtering of the underlying dataset to specify if this token refers to a negation of a property. *For example: `and not`*.\n // * `isFreeText` [boolean]: A boolean value that indicates that this token represents free text submitted from the input field. It is used by the `filteringFunction` in filtering of the underlying dataset.\n //\n // It should be noted that the first token should never be negated. The internal filtering function of the component will\n // therefore ignore this value only for the first token.\n tokens: {\n type: 'array',\n itemTypes: ['TablePropertyFiltering.FilteringToken'],\n onChange: __handleChange\n },\n // A function to set the aria-label for the token deselect button.\n // The function accepts one argument that describes the token that the corresponding button removes.\n // The token has the following properties:\n //\n // * `propertyKey` [string]: The object attribute name that corresponds to this property.\n // * `propertyLabel` [string]: A human-readable string for the property.\n // * `value` [string]: The value selected from the filtering dropdown.\n // * `negated` [boolean]: A boolean value that describes whether the token is negated.\n removeTokenButtonLabel: {\n type: 'function',\n functionType: 'TablePropertyFiltering.RemoveTokenButtonLabelFunction'\n },\n // Filtering operation to be applied between tokens when filtering the items.\n // Valid operations include [`and`, `or`]\n operation: {\n type: 'string',\n defaultValue: _internal__WEBPACK_IMPORTED_MODULE_4__[\"FilteringOperation\"].AND,\n valid: ['and', 'or'],\n onChange: __handleChange\n },\n // If `hideOperations` it set, the indicator of the operation\n // and the selection of operations (applied to the property and value token) are hidden from the user.\n // Only use when you have a custom `filteringFunction` which combines tokens in different way than the default one.\n // When used, ensure that operators are communicated to the user in another way.\n hideOperations: {\n type: 'boolean',\n defaultValue: false\n },\n // A human-readable, localized string to display in the filtering dropdown for the `Properties` group label.\n groupPropertiesText: {\n type: 'string',\n onChange: __handleChange\n },\n // A human-readable, localized string to display in the filtering dropdown for the `Values` group label.\n groupValuesText: {\n type: 'string',\n onChange: __handleChange\n },\n // An array of objects that contain localized, human-readable strings for the labels of custom groups within the filtering dropdown.\n // Use `group` property to associate the strings with your custom group of options.\n // Define the following values for each group:\n //\n // * `properties` [string]: The group label in the filtering dropdown that contains the list of properties from this group. *For example: Tags*.\n // * `values` [string]: The group label in the filtering dropdown that contains the list of values from this group. *For example: Tags values*.\n // * `group` [string]: The identifier of a custom group.\n customGroupsText: {\n type: 'array',\n itemTypes: ['TablePropertyFiltering.GroupText']\n },\n // A human-readable, localized string to display in the token button dropdown for the `and` option.\n operationAndText: {\n type: 'string',\n onChange: __handleChange\n },\n // A human-readable, localized string to display in the token button dropdown for the `and not` option.\n operationNotAndText: {\n type: 'string',\n onChange: __handleChange\n },\n // A human-readable, localized string to display in the token button dropdown for the `or` option.\n operationOrText: {\n type: 'string',\n onChange: __handleChange\n },\n // A human-readable, localized string to display in the token button dropdown for the `or not` option.\n operationNotOrText: {\n type: 'string',\n onChange: __handleChange\n },\n // A human-readable, localized string to display in the `Clear filters` button used to clear all tokens.\n clearFiltersText: {\n type: 'string',\n onChange: __handleChange\n },\n // If set to `true`, the input will allow free text filtering tokens to be submitted.\n allowFreeTextFiltering: {\n type: 'boolean',\n defaultValue: false\n },\n __currentProperty: {\n type: 'object'\n },\n __currentPropertyPrefix: {\n type: 'string'\n },\n __highlightText: {\n type: 'string'\n }\n },\n callbacks: {\n initialized: function () {\n var _this = this;\n\n this.__changeHandler = new _utility__WEBPACK_IMPORTED_MODULE_5__[\"ChangeHandler\"](__updateController);\n this.__dropdownHandler = new _dropdown_handler__WEBPACK_IMPORTED_MODULE_7__[\"default\"]();\n this.__tokenHandler = new _token_handler__WEBPACK_IMPORTED_MODULE_8__[\"default\"](this);\n this.node.addEventListener('awsui:__selectOption', function (event) {\n return _this.__selectOptionHandler(event);\n });\n this.__tokenSelectHandler = this.__tokenSelectHandler.bind(this);\n this.__keydownHandler = this.__keydownHandler.bind(this);\n this.__delayedInputHandler = this.__delayedInputHandler.bind(this);\n this.__filteringFocusHandler = this.__filteringFocusHandler.bind(this);\n this.__inputHandler = this.__inputHandler.bind(this);\n\n this.__openDropdown = function () {\n this.component.__openDropdown();\n };\n },\n attached: function () {\n this.__parentComponent = Object(_utility__WEBPACK_IMPORTED_MODULE_5__[\"getCollectionComponent\"])(this.node);\n this.__parentComponent.__propertyFiltering = this;\n this.__controller = this.__parentComponent.__controller;\n var autosuggest = this.node.querySelector('awsui-autosuggest');\n\n if (autosuggest) {\n autosuggest.addEventListener('click', this.__openDropdown);\n }\n },\n detached: function () {\n if (this.__parentComponent) {\n this.__parentComponent.__propertyFiltering = null;\n this.__controller = null;\n }\n\n var autosuggest = this.node.querySelector('awsui-autosuggest');\n\n if (autosuggest) {\n autosuggest.removeEventListener('click', this.__openDropdown);\n }\n }\n },\n functions: {\n __getData: function () {\n return {\n filteringText: this.filteringText,\n filteringFunction: this.filteringFunction,\n operation: this.operation,\n tokens: this.tokens,\n loading: this.__parentComponent.loading\n };\n },\n __getInputEventData: function () {\n var propertyKey = this.__currentProperty ? this.__currentProperty.propertyKey : null;\n return {\n value: this.filteringText,\n propertyKey: propertyKey\n };\n },\n __updateData: function (propertyFilteringData, fireEvent) {\n var _this = this;\n\n this.__changeHandler.prevent(function () {\n _this.filteringFunction = propertyFilteringData.filteringFunction;\n _this.operation = propertyFilteringData.operation;\n _this.tokens = propertyFilteringData.tokens;\n _this.loading = propertyFilteringData.loading;\n });\n\n if (fireEvent) {\n var eventDetail = {\n operation: this.operation,\n tokens: this.tokens\n };\n\n this.__fireEvent('propertyFilteringChange', eventDetail);\n }\n },\n __clearAllFilters: function () {\n var newData = this.__getData();\n\n newData.tokens = [];\n newData.operation = _internal__WEBPACK_IMPORTED_MODULE_4__[\"FilteringOperation\"].AND;\n\n this.__controller.processComponentChange(_internal__WEBPACK_IMPORTED_MODULE_4__[\"ComponentFeature\"].PROPERTY_FILTERING, newData, true);\n },\n __inputHandler: function (event) {\n event.stopPropagation();\n this.filteringText = event.target.component.value;\n\n if (this.__currentProperty) {\n // Clear Autosuggest text and current property if user backspaces after a property has been selected\n if (!this.filteringText || !(this.filteringText.indexOf(_utils__WEBPACK_IMPORTED_MODULE_6__[\"default\"].getPropertyPrefixFormat(this.__currentPropertyPrefix)) === 0)) {\n this.filteringText = null;\n this.__currentProperty = null;\n this.__currentPropertyPrefix = null;\n this.__highlightText = null;\n } else {\n // Highlight only the value after the property prefix\n this.__highlightText = this.filteringText.substring(_utils__WEBPACK_IMPORTED_MODULE_6__[\"default\"].getPropertyPrefixFormat(this.__currentPropertyPrefix).length);\n }\n } else {\n this.__highlightText = this.filteringText;\n }\n\n this.__fireEvent('filteringInput', this.__getInputEventData());\n },\n __delayedInputHandler: function (event) {\n event.stopPropagation();\n\n this.__fireEvent('filteringDelayedInput', this.__getInputEventData());\n },\n __filteringFocusHandler: function (event) {\n event.target.component.__openDropdown();\n },\n __selectOptionHandler: function (event) {\n event.stopPropagation();\n var selectedOption = event.detail.selectedOption;\n\n if (!selectedOption) {\n return;\n }\n\n if (selectedOption.group === 'property') {\n event.preventDefault();\n this.__currentPropertyPrefix = selectedOption.label;\n this.__currentProperty = selectedOption;\n this.__highlightText = null;\n this.filteringText = _utils__WEBPACK_IMPORTED_MODULE_6__[\"default\"].getPropertyPrefixFormat(this.__currentPropertyPrefix);\n\n this.__fireEvent('filteringInputPropertyChange', this.__getInputEventData());\n }\n },\n __clearInputState: function () {\n this.__currentPropertyPrefix = undefined;\n this.__currentProperty = undefined;\n this.__highlightText = undefined;\n this.filteringText = undefined;\n },\n __tokenSelectHandler: function (event) {\n event.stopPropagation();\n var selectedOption = event.detail.selectedOption;\n\n if (!selectedOption) {\n return;\n }\n\n if (selectedOption.group === 'value') {\n this.__clearInputState();\n\n this.__tokenHandler.addPropertyToken(selectedOption);\n }\n },\n __keydownHandler: function (event) {\n if (!this.allowFreeTextFiltering || event.detail.keyCode !== _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].enter) {\n return;\n }\n\n var value = this.filteringText;\n\n if (this.__currentPropertyPrefix) {\n value = value.slice(_utils__WEBPACK_IMPORTED_MODULE_6__[\"default\"].getPropertyPrefixFormat(this.__currentPropertyPrefix).length);\n }\n\n if (value) {\n var currentProperty = this.__currentProperty;\n\n this.__clearInputState();\n\n this.__tokenHandler.addFreeTextToken(value, currentProperty);\n }\n },\n __generateOptions: function () {\n var customGroupsText = this.customGroupsText || [];\n var filteringText = this.filteringText || '';\n return this.__dropdownHandler.generateOptions(this.filteringOptions, filteringText, this.tokens, this.__currentProperty, this.groupPropertiesText, this.groupValuesText, customGroupsText, this.disableDefaultFiltering);\n },\n __renderTokens: function (h) {\n var _this = this;\n\n var dropdownItems = [{\n id: 'and',\n operation: _internal__WEBPACK_IMPORTED_MODULE_4__[\"FilteringOperation\"].AND,\n text: this.operationAndText,\n negated: false\n }, {\n id: 'or',\n operation: _internal__WEBPACK_IMPORTED_MODULE_4__[\"FilteringOperation\"].OR,\n text: this.operationOrText,\n negated: false\n }, {\n id: 'andNot',\n operation: _internal__WEBPACK_IMPORTED_MODULE_4__[\"FilteringOperation\"].AND,\n text: this.operationNotAndText,\n negated: true\n }, {\n id: 'orNot',\n operation: _internal__WEBPACK_IMPORTED_MODULE_4__[\"FilteringOperation\"].OR,\n text: this.operationNotOrText,\n negated: true\n }];\n var filteredDropdownItems = dropdownItems.filter(function (dropdownItem) {\n return dropdownItem.operation === _this.operation;\n });\n var dropdownItemsMap = dropdownItems.reduce(function (acc, item) {\n acc[item.id] = item;\n return acc;\n }, {});\n\n var renderOperationsDropdown = function (token, index) {\n if (index <= 0 || _this.hideOperations) {\n return null;\n } // Only the 1st token contains all options. All subsequent tokens contain options based on selected operation.\n\n\n var items = index > 1 ? filteredDropdownItems : dropdownItems;\n\n var onItemClickHandler = function (event) {\n event.stopPropagation();\n\n _this.__tokenHandler.updateFilterToken(event.detail.id, token, items);\n };\n\n var selectedDropdownItem = dropdownItemsMap[\"\" + _this.operation + (token.negated ? 'Not' : '')];\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_button_src__WEBPACK_IMPORTED_MODULE_2__[\"ButtonDropdown\"], {\n text: selectedDropdownItem.text,\n items: items,\n itemClick: onItemClickHandler\n });\n };\n\n var renderToken = function (token, index) {\n var item = {\n __labelPrefix: token.propertyLabel ? _utils__WEBPACK_IMPORTED_MODULE_6__[\"default\"].getPropertyPrefixFormat(token.propertyLabel) : '',\n label: token.label,\n value: token.value,\n disabled: _this.disabled,\n dismissLabel: _this.removeTokenButtonLabel ? _this.removeTokenButtonLabel(token) : null\n };\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_token_src__WEBPACK_IMPORTED_MODULE_3__[\"TokenGroup\"], {\n items: [item],\n dismiss: function () {\n return _this.__tokenHandler.removeFilterToken(index);\n }\n });\n };\n\n var cbToken = new h.ClassBuilder(this).addComponentClass('token');\n return this.tokens.map(function (token, index) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: cbToken.toClassName()\n }, renderOperationsDropdown(token, index), renderToken(token, index));\n });\n },\n __renderClearFiltersButton: function (h) {\n var _this = this;\n\n if (!this.tokens.length) {\n return null;\n }\n\n var cbClearFilters = new h.ClassBuilder(this).addComponentClass('clear-filters');\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_button_src__WEBPACK_IMPORTED_MODULE_2__[\"Button\"], {\n className: cbClearFilters.toClassName(),\n formAction: \"none\",\n text: this.clearFiltersText,\n click: function () {\n return _this.__clearAllFilters();\n }\n });\n },\n __resultCount: function () {\n var items = this.__controller.getItems(_internal__WEBPACK_IMPORTED_MODULE_4__[\"ComponentFeature\"].SORTING);\n\n return items.length;\n },\n __shouldShowResults: function () {\n if (!this.__controller || !this.tokens.length || this.__parentComponent.loading || !this.filteringCountTextFunction) {\n return false;\n }\n\n return true;\n },\n __getResultText: function () {\n var argument = this.__resultCount();\n\n if (!this.filteringFunction) {\n argument = null;\n }\n\n return this.filteringCountTextFunction(argument);\n }\n },\n render: Object(_utility__WEBPACK_IMPORTED_MODULE_5__[\"renderSafely\"])(function (m, h) {\n var cbTokens = new h.ClassBuilder(this).addComponentClass('tokens-container');\n var cb = new h.ClassBuilder(this).addComponentClass('container').addComponentClass('full-width');\n var filteringResultsClass = 'awsui-filtering-results' + (this.__shouldShowResults() ? '' : ' awsui-filtering-results__empty');\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", null, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: cb.toClassName()\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_input_src__WEBPACK_IMPORTED_MODULE_1__[\"Autosuggest\"], {\n __highlightText: this.__highlightText,\n ariaDescribedby: null,\n disabled: this.disabled,\n disableDefaultFiltering: true,\n empty: this.filteringEmpty,\n label: this.filteringLabel,\n options: this.__generateOptions(),\n placeholder: this.placeholder,\n statusType: this.filteringStatusType,\n statusText: this.filteringStatusText,\n type: \"search\",\n value: this.filteringText,\n change: this.__tokenSelectHandler,\n delayedInput: this.__delayedInputHandler,\n focus: this.__filteringFocusHandler,\n input: this.__inputHandler,\n keydown: this.__keydownHandler\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n \"aria-live\": \"polite\",\n \"aria-atomic\": \"true\",\n className: filteringResultsClass\n }, this.__shouldShowResults() ? this.__getResultText() : '')), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: cbTokens.toClassName()\n }, this.__renderTokens(h), this.__renderClearFiltersButton(h)));\n })\n}),\n TablePropertyFiltering = _a[0],\n CardsPropertyFiltering = _a[1];\n\n //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 208 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _token__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(209);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Token\", function() { return _token__WEBPACK_IMPORTED_MODULE_0__[\"Token\"]; });\n\n/* harmony import */ var _token_group__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(211);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"TokenGroup\", function() { return _token_group__WEBPACK_IMPORTED_MODULE_1__[\"TokenGroup\"]; });\n\n\n //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 209 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Token\", function() { return Token; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _dropdown_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(147);\n/* harmony import */ var _dismiss_button__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(210);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\nvar __rest = undefined && undefined.__rest || function (s, e) {\n var t = {};\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n\n 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]];\n return t;\n};\n\n\n\n\nvar Token = function (_a) {\n var disabled = _a.disabled,\n dismissLabel = _a.dismissLabel,\n onDismiss = _a.onDismiss,\n props = __rest(_a, [\"disabled\", \"dismissLabel\", \"onDismiss\"]);\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-token\" + (disabled ? ' awsui-token-disabled' : '')\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_dropdown_src__WEBPACK_IMPORTED_MODULE_1__[\"Option\"], {\n option: __assign({}, props),\n disabled: disabled\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_dismiss_button__WEBPACK_IMPORTED_MODULE_2__[\"DismissButton\"], {\n disabled: disabled,\n dismissLabel: dismissLabel,\n onDismiss: onDismiss\n }));\n}; //# sourceMappingURL=token.js.map\n\n/***/ }),\n/* 210 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DismissButton\", function() { return DismissButton; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _icon_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(52);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\nvar DismissButton = function (_a) {\n var disabled = _a.disabled,\n dismissLabel = _a.dismissLabel,\n onDismiss = _a.onDismiss;\n var tokenAttributes = {\n tabIndex: -1,\n 'override-focus': true\n };\n\n if (dismissLabel) {\n tokenAttributes['aria-label'] = dismissLabel;\n }\n\n if (!disabled) {\n tokenAttributes.onclick = onDismiss;\n tokenAttributes.tabIndex = 0;\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"button\", __assign({\n type: \"button\",\n className: \"awsui-token-dismiss\"\n }, tokenAttributes), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_icon_src__WEBPACK_IMPORTED_MODULE_1__[\"Icon\"], {\n name: \"close\"\n }));\n}; //# sourceMappingURL=dismiss-button.js.map\n\n/***/ }),\n/* 211 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"TokenGroup\", function() { return TokenGroup; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _token__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(209);\n\n\nvar TokenGroup = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-token-group', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n properties: {\n // The direction in which tokens are aligned. It can be either horizontal or vertical.\n alignment: {\n type: 'string',\n valid: ['horizontal', 'vertical'],\n defaultValue: 'horizontal'\n },\n // An array of objects representing token items. Each token has the following properties:\n //\n // * `label` [string, mandatory]: title text of the token.\n // * `description` [string]: further explanatory guidance about the token below the label.\n // * `disabled` [boolean]: whether the token should be disabled.\n // * `labelTag` [string]: tag that provides additional guidance, shown next to the label.\n // * `tags` [string[]]: list of tags giving further guidance about the token.\n // * `dismissLabel` [string]: adds an aria-label to the dismiss button.\n // * `iconName` [string]: name of the icon, used with `awsui-icon`.\n // * `iconAlt` [string]: alternate text for the custom icon, used with `iconUrl`.\n // * `iconUrl` [string]: URL of a custom icon.\n items: {\n type: 'array',\n itemTypes: ['TokenGroup.Item']\n }\n },\n events: {\n // Fired when the user clicks on the dismiss button. The token will not be automatically removed.\n // Make sure you add a listener to this event to update your application state.\n dismiss: {\n bubbles: true,\n cancelable: false,\n detailType: 'TokenGroup.DismissDetail'\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var cb = new h.ClassBuilder(this).addClass('awsui-token-group').addComponentClass(this.alignment); // Spread can't be used to pass the item to the Token because, in GWT, the item properties are non-enumerable, and they are in their prototype\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: cb.toClassName()\n }, this.items.map(function (item, itemIndex) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_token__WEBPACK_IMPORTED_MODULE_1__[\"Token\"], {\n tags: item.tags,\n labelTag: item.labelTag,\n label: item.label,\n iconUrl: item.iconUrl,\n iconName: item.iconName,\n iconAlt: item.iconAlt,\n dismissLabel: item.dismissLabel,\n disabled: item.disabled,\n description: item.description,\n value: item.value,\n __labelPrefix: item.__labelPrefix,\n onDismiss: function () {\n return _this.__fireEvent('dismiss', {\n itemIndex: itemIndex\n });\n }\n });\n }));\n }\n}); //# sourceMappingURL=token-group.js.map\n\n/***/ }),\n/* 212 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(189);\n\n\nvar DropdownHandler =\n/** @class */\nfunction () {\n function DropdownHandler() {}\n\n DropdownHandler.prototype.__generateProperties = function (filteringOptions, groupPropertiesText) {\n return {\n label: groupPropertiesText,\n options: filteringOptions.map(function (option) {\n return {\n group: 'property',\n groupValuesLabel: option.groupValuesLabel,\n label: option.propertyLabel,\n propertyLabel: option.propertyLabel,\n propertyKey: option.propertyKey,\n value: option.propertyLabel\n };\n })\n };\n };\n\n DropdownHandler.prototype.__generateValues = function (currentProperty, filteringOptions, tokens, groupValuesText) {\n var label = currentProperty ? currentProperty.groupValuesLabel : groupValuesText;\n var tokenValueSet = tokens.reduce(function (acc, token) {\n acc[token.value] = true;\n return acc;\n }, {});\n\n var transformToAutosuggest = function (item) {\n var dedupedItemValues = item.values.filter(function (elem, pos, arr) {\n return arr.indexOf(elem) == pos;\n });\n return dedupedItemValues.map(function (value) {\n return {\n __labelPrefix: _utils__WEBPACK_IMPORTED_MODULE_0__[\"default\"].getPropertyPrefixFormat(item.propertyLabel),\n disabled: !!tokenValueSet[value],\n group: 'value',\n groupValuesLabel: item.groupValuesLabel,\n propertyLabel: item.propertyLabel,\n propertyKey: item.propertyKey,\n label: \"\" + (value || '-'),\n value: value\n };\n });\n };\n\n var valueOptions = currentProperty ? filteringOptions.filter(function (option) {\n return option.propertyKey === currentProperty.propertyKey;\n }) : filteringOptions;\n var options = valueOptions.map(transformToAutosuggest).reduce(function (acc, values) {\n return acc.concat(values);\n }, []);\n return {\n label: label,\n options: options\n };\n };\n\n DropdownHandler.prototype.__filterOptions = function (options, filteringText, currentProperty) {\n if (currentProperty) {\n var filteringTextValueWithoutProperty = filteringText.substring(_utils__WEBPACK_IMPORTED_MODULE_0__[\"default\"].getPropertyPrefixFormat(currentProperty.label).length);\n return _utils__WEBPACK_IMPORTED_MODULE_0__[\"default\"].filterOptions(options, filteringTextValueWithoutProperty);\n }\n\n return _utils__WEBPACK_IMPORTED_MODULE_0__[\"default\"].filterOptions(options, filteringText);\n };\n\n DropdownHandler.prototype.__groupOptions = function (filteringOptions, groupPropertiesText, groupValuesText, customGroupsText) {\n var defaultGroup = {\n propertiesText: groupPropertiesText,\n valuesText: groupValuesText,\n options: []\n };\n var customGroupsIndex = {};\n var groups = [defaultGroup];\n\n var _loop_1 = function (option) {\n if (option.group) {\n if (!customGroupsIndex[option.group]) {\n var groupText = customGroupsText.find(function (_a) {\n var group = _a.group;\n return group === option.group;\n }) || {};\n customGroupsIndex[option.group] = {\n propertiesText: groupText.properties,\n valuesText: groupText.values,\n options: []\n };\n groups.push(customGroupsIndex[option.group]);\n }\n\n customGroupsIndex[option.group].options.push(option);\n } else {\n defaultGroup.options.push(option);\n }\n };\n\n for (var _i = 0, filteringOptions_1 = filteringOptions; _i < filteringOptions_1.length; _i++) {\n var option = filteringOptions_1[_i];\n\n _loop_1(option);\n }\n\n return groups;\n };\n\n DropdownHandler.prototype.generateOptions = function (filteringOptions, filteringText, tokens, currentProperty, groupPropertiesText, groupValuesText, customGroupsText, disableDefaultFiltering) {\n var optionsGroups = this.__groupOptions(filteringOptions, groupPropertiesText, groupValuesText, customGroupsText);\n\n var options = [];\n\n if (!currentProperty) {\n for (var _i = 0, optionsGroups_1 = optionsGroups; _i < optionsGroups_1.length; _i++) {\n var group = optionsGroups_1[_i];\n options.push(this.__generateProperties(group.options, group.propertiesText));\n }\n }\n\n if (filteringText || currentProperty) {\n for (var _a = 0, optionsGroups_2 = optionsGroups; _a < optionsGroups_2.length; _a++) {\n var group = optionsGroups_2[_a];\n options.push(this.__generateValues(currentProperty, group.options, tokens, group.valuesText));\n }\n }\n\n if (disableDefaultFiltering) {\n return options;\n }\n\n return this.__filterOptions(options, filteringText, currentProperty);\n };\n\n return DropdownHandler;\n}();\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (DropdownHandler); //# sourceMappingURL=dropdown-handler.js.map\n\n/***/ }),\n/* 213 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(179);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\nvar TokenHandler =\n/** @class */\nfunction () {\n function TokenHandler(component) {\n this.__component = component;\n }\n\n TokenHandler.prototype.addToken = function (token) {\n var newData = this.__component.__getData();\n\n newData.tokens = newData.tokens.concat([token]);\n\n this.__component.__controller.processComponentChange(_internal__WEBPACK_IMPORTED_MODULE_0__[\"ComponentFeature\"].PROPERTY_FILTERING, newData, true);\n };\n\n TokenHandler.prototype.addPropertyToken = function (selectedOption) {\n var token = {\n propertyKey: selectedOption.propertyKey,\n propertyLabel: selectedOption.propertyLabel,\n value: selectedOption.value,\n label: selectedOption.label,\n negated: false\n };\n this.addToken(token);\n };\n\n TokenHandler.prototype.addFreeTextToken = function (value, currentProperty) {\n // just free text\n var propertyKey = null;\n var propertyLabel = null; // prop is selected but value is free text\n\n if (currentProperty) {\n propertyKey = currentProperty.propertyKey;\n propertyLabel = currentProperty.propertyLabel;\n }\n\n var token = {\n propertyKey: propertyKey,\n propertyLabel: propertyLabel,\n value: value,\n label: \"\\\"\" + value + \"\\\"\",\n negated: false,\n isFreeText: true\n };\n this.addToken(token);\n };\n\n TokenHandler.prototype.updateFilterToken = function (dropdownId, token, dropdownItems) {\n var newData = this.__component.__getData();\n\n var tokens = newData.tokens.slice();\n var tokenIndex = tokens.indexOf(token);\n var item = dropdownItems.filter(function (dropdownItem) {\n return dropdownItem.id === dropdownId;\n })[0];\n tokens[tokenIndex] = __assign({}, token, {\n negated: item.negated\n });\n newData.tokens = tokens;\n newData.operation = item.operation;\n\n this.__component.__controller.processComponentChange(_internal__WEBPACK_IMPORTED_MODULE_0__[\"ComponentFeature\"].PROPERTY_FILTERING, newData, true);\n };\n\n TokenHandler.prototype.removeFilterToken = function (itemIndex) {\n var newData = this.__component.__getData();\n\n newData.tokens = newData.tokens.slice(0, itemIndex).concat(newData.tokens.slice(itemIndex + 1));\n\n if (newData.tokens.length === 1) {\n newData.operation = _internal__WEBPACK_IMPORTED_MODULE_0__[\"FilteringOperation\"].AND;\n newData.tokens[0].negated = false;\n }\n\n this.__component.__controller.processComponentChange(_internal__WEBPACK_IMPORTED_MODULE_0__[\"ComponentFeature\"].PROPERTY_FILTERING, newData, true);\n };\n\n return TokenHandler;\n}();\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (TokenHandler); //# sourceMappingURL=token-handler.js.map\n\n/***/ }),\n/* 214 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"TableSelection\", function() { return TableSelection; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CardsSelection\", function() { return CardsSelection; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _internal__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(179);\n/* harmony import */ var _utility__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(181);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(192);\n\n\n\n\n\nvar __updateController = function (oldValue, newValue) {\n if (oldValue !== newValue && this.__controller && !this.__inhibitControllerUpdate) {\n this.__controller.processComponentChange(_internal__WEBPACK_IMPORTED_MODULE_1__[\"ComponentFeature\"].SELECTION, this.__getData(), false);\n }\n};\n\nvar __handleChange = function () {\n var args = [];\n\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n\n this.__changeHandler.apply(this, args);\n};\n\nvar _a = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponents(['awsui-table-selection', 'awsui-cards-selection'], {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n events: {\n // Fired when a user interaction triggers a change in the list of selected items.\n // The event `detail` will contain the current list of `selectedItems`.\n //\n // A selection change can also be triggered by filtering, pagination or sorting changes\n // because all selected items that are no longer visible will be automatically de-selected\n // unless you set `keepSelection` property to true - see its documentation for more details).\n selectionChange: {\n bubbles: true,\n cancelable: false,\n detailType: {\n type: 'object',\n objectType: 'TableSelection.SelectionChangeDetail',\n itemType: 'Item'\n }\n }\n },\n generics: {\n Item: {\n defaultType: 'Table.Item'\n }\n },\n properties: {\n // Type of the selection. It can be either 'single' or 'multi'.\n selectionType: {\n type: 'string',\n defaultValue: 'multi',\n optional: true,\n valid: ['single', 'multi'],\n onChange: __handleChange\n },\n // List of selected items.\n selectedItems: {\n type: 'array',\n itemTypes: ['Item'],\n optional: true,\n onChange: __handleChange\n },\n // Function to choose which items are disabled. Once an item is disabled,\n // the user can't select it.\n isItemDisabled: {\n type: 'function',\n functionType: 'TableSelection.disablingFunction',\n functionGenericType: 'Item',\n defaultValue: _utils__WEBPACK_IMPORTED_MODULE_3__[\"default\"].defaultDisableFunction,\n onChange: __handleChange\n },\n // Property inside items that uniquely identifies them.\n // It can be needed for performance reasons: it allows to recognize\n // that a certain item is still selected even if the reference of the object changes, but the\n // property specified here is the same.\n trackBy: {\n type: 'string',\n optional: true,\n onChange: __handleChange\n },\n // If set to `true`, selected items will be kept across pagination, sorting, filtering\n // and page size changes.\n keepSelection: {\n type: 'boolean',\n onChange: __handleChange\n },\n // Adds labels to the selection components (checkboxes and radio buttons):\n // * on individual items: `itemSelectionLabel` [`(SelectionState, Item) => string`]\n // * column header (Table only): `allItemsSelectionLabel` [`(SelectionState) => string`]\n // * group label: `selectionGroupLabel` [`string`]\n //\n // The first arguments of type `SelectionState` can be used to access the current selection\n // state of the component, e.g., the `selectedItems` list. The label function for individual\n // items will also receive the corresponding `Item` object. The group label can be used to\n // add a meaningful description to the whole selection.\n labels: {\n type: 'object',\n objectType: 'TableSelection.SelectionLabels',\n itemType: 'Item',\n onChange: function () {\n if (this.__controller) {\n this.__controller.updateSelectionLabels();\n }\n }\n }\n },\n callbacks: {\n initialized: function () {\n this.__changeHandler = new _utility__WEBPACK_IMPORTED_MODULE_2__[\"ChangeHandler\"](__updateController);\n },\n attached: function () {\n this.__parentComponent = Object(_utility__WEBPACK_IMPORTED_MODULE_2__[\"getCollectionComponent\"])(this.node);\n this.__parentComponent.__selection = this;\n this.__controller = this.__parentComponent.__controller;\n },\n detached: function () {\n if (this.__parentComponent) {\n this.__parentComponent.__selection = null;\n this.__controller = null;\n }\n }\n },\n functions: {\n __getData: function () {\n return {\n selectedItems: this.selectedItems,\n selectionType: this.selectionType,\n trackBy: this.trackBy,\n keepSelection: this.keepSelection,\n isItemDisabled: this.isItemDisabled\n };\n },\n __getEventData: function () {\n return {\n selectedItems: this.selectedItems\n };\n },\n __updateData: function (selectionData, fireEvent) {\n var _this = this;\n\n this.__changeHandler.prevent(function () {\n if (!Object(_utility__WEBPACK_IMPORTED_MODULE_2__[\"arrayItemsEqual\"])(_this.selectedItems, selectionData.selectedItems)) {\n // avoid useless re-rendering\n _this.selectedItems = selectionData.selectedItems;\n }\n\n _this.isItemDisabled = selectionData.isItemDisabled;\n _this.selectionType = selectionData.selectionType;\n });\n\n if (fireEvent) {\n this.__fireEvent('selectionChange', this.__getEventData());\n }\n },\n __getSelectionLabels: function () {\n var defaultLabel = function () {\n return '';\n };\n\n var labels = this.labels || {};\n return {\n itemSelectionLabel: labels.itemSelectionLabel || defaultLabel,\n allItemsSelectionLabel: labels.allItemsSelectionLabel || defaultLabel,\n selectionGroupLabel: labels.selectionGroupLabel || ''\n };\n },\n __getSelectionState: function () {\n return {\n selectedItems: this.selectedItems\n };\n }\n },\n render: function (m, h) {\n return '';\n }\n}),\n TableSelection = _a[0],\n CardsSelection = _a[1];\n\n //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 215 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"TablePreferences\", function() { return TablePreferences; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CardsPreferences\", function() { return CardsPreferences; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _button_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48);\n/* harmony import */ var _modal_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(216);\n/* harmony import */ var _controller__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(218);\n/* harmony import */ var _utility__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(181);\n/* harmony import */ var _page_size_selector_index__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(219);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"TablePageSizeSelector\", function() { return _page_size_selector_index__WEBPACK_IMPORTED_MODULE_5__[\"TablePageSizeSelector\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"CardsPageSizeSelector\", function() { return _page_size_selector_index__WEBPACK_IMPORTED_MODULE_5__[\"CardsPageSizeSelector\"]; });\n\n/* harmony import */ var _content_selector_index__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(220);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"TableContentSelector\", function() { return _content_selector_index__WEBPACK_IMPORTED_MODULE_6__[\"TableContentSelector\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"CardsContentSelector\", function() { return _content_selector_index__WEBPACK_IMPORTED_MODULE_6__[\"CardsContentSelector\"]; });\n\n/* harmony import */ var _wrap_lines_index__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(222);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"TableWrapLines\", function() { return _wrap_lines_index__WEBPACK_IMPORTED_MODULE_7__[\"TableWrapLines\"]; });\n\n\n\n\n\n\n\n\n\n\nvar _a = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponents(['awsui-table-preferences', 'awsui-cards-preferences'], {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n properties: {\n // Title of the preferences modal dialog.\n title: {\n type: 'string'\n },\n // Label of the confirm button in the modal footer.\n confirmLabel: {\n type: 'string'\n },\n // Label of the cancel button in the modal footer.\n cancelLabel: {\n type: 'string'\n },\n // If `true`, the preferences modal is disabled.\n disabled: {\n type: 'boolean',\n onChange: function () {\n if (this.disabled) {\n this.__open = false;\n }\n }\n },\n __open: {\n type: 'boolean'\n }\n },\n regions: {\n // It contains all the preferences components. If you want to add custom content you need to wrap it\n // in one element and decorate it with className `awsui-table-custom-preference` if you are using\n // the Table component or `awsui-cards-custom-preference` if you are using Cards.\n preferences: {\n isDefault: true\n }\n },\n events: {\n // Fired when the user clicks on the confirm button in the preferences dialog.\n confirm: {\n bubbles: true,\n cancelable: false\n },\n // Fired when the user clicks on the cancel button in the preferences dialog.\n cancel: {\n bubbles: true,\n cancelable: false\n }\n },\n callbacks: {\n initialized: function () {\n this.__controller = new _controller__WEBPACK_IMPORTED_MODULE_3__[\"default\"]();\n },\n attached: function () {\n this.__parentComponent = Object(_utility__WEBPACK_IMPORTED_MODULE_4__[\"getCollectionComponent\"])(this.node);\n this.__parentComponent.__preferences = this;\n },\n detached: function () {\n if (this.__parentComponent) {\n this.__parentComponent.__preferences = null;\n }\n }\n },\n render: Object(_utility__WEBPACK_IMPORTED_MODULE_4__[\"renderSafely\"])(function (m, h) {\n var _this = this;\n\n var getComponentClassName = function (suffix) {\n return new h.ClassBuilder(_this).addComponentClass(suffix).toClassName();\n };\n\n var onConfirm = function () {\n _this.__controller.confirm();\n\n _this.__fireEvent('confirm');\n\n _this.__open = false;\n };\n\n var onCancel = function () {\n _this.__controller.cancel();\n\n _this.__fireEvent('cancel');\n\n _this.__open = false;\n };\n\n var toggle = function () {\n _this.__open = !_this.__open;\n };\n\n var icon = function () {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_button_src__WEBPACK_IMPORTED_MODULE_1__[\"Button\"], {\n className: getComponentClassName('trigger'),\n disabled: _this.disabled,\n label: _this.title,\n click: toggle,\n variant: \"icon\",\n icon: \"settings\",\n formAction: \"none\"\n });\n };\n\n var modalFooter = function () {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: getComponentClassName('modal-footer')\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_button_src__WEBPACK_IMPORTED_MODULE_1__[\"Button\"], {\n className: getComponentClassName('cancel-button'),\n text: _this.cancelLabel,\n click: onCancel,\n variant: \"link\",\n formAction: \"none\"\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_button_src__WEBPACK_IMPORTED_MODULE_1__[\"Button\"], {\n className: getComponentClassName('confirm-button'),\n text: _this.confirmLabel,\n click: onConfirm,\n variant: \"primary\",\n formAction: \"none\"\n }));\n };\n\n var modal = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_modal_src__WEBPACK_IMPORTED_MODULE_2__[\"Modal\"], {\n header: this.title,\n visible: this.__open,\n dismiss: onCancel,\n closeLabel: this.cancelLabel,\n footer: modalFooter(),\n className: getComponentClassName('modal'),\n content: h.region('preferences', 'div', {\n className: getComponentClassName('region')\n }),\n size: \"large\"\n });\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", null, icon(), modal);\n })\n}),\n TablePreferences = _a[0],\n CardsPreferences = _a[1];\n\n //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 216 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Modal\", function() { return Modal; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _button_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48);\n/* harmony import */ var _BodyScroll__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(217);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\n\nvar lastGeneratedId = 0;\n\nvar nextGeneratedId = function () {\n return \"awsui-modal-\" + lastGeneratedId++;\n};\n\nvar ESC = 27;\nvar Modal = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-modal', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n callbacks: {\n initialized: function () {\n if (!this.__dialogId) {\n this.__dialogId = nextGeneratedId();\n }\n },\n attached: function () {\n if (this.visible) {\n _BodyScroll__WEBPACK_IMPORTED_MODULE_2__[\"disableBodyScrolling\"]();\n }\n },\n detached: function () {\n // Ignoring multiple modal instance case for now\n _BodyScroll__WEBPACK_IMPORTED_MODULE_2__[\"enableBodyScrolling\"]();\n this.__initiallyFocusedElement = undefined;\n }\n },\n properties: {\n // Sets the width of the modal. `max` is variable width, set to the\n // largest size allowed by the design guidelines. Other sizes\n // (`small`/`medium`/`large`) have fixed widths.\n size: {\n type: 'string',\n valid: ['small', 'medium', 'large', 'max'],\n defaultValue: 'medium'\n },\n // If `true`, the modal will be displayed on the screen. Modals are hidden by default,\n // change this property to show them.\n visible: {\n type: 'boolean',\n onChange: function (wasVisible, isVisible) {\n var attached = this.__componentState === 'attached';\n var showing = attached && isVisible;\n\n if (showing) {\n _BodyScroll__WEBPACK_IMPORTED_MODULE_2__[\"disableBodyScrolling\"]();\n } else {\n _BodyScroll__WEBPACK_IMPORTED_MODULE_2__[\"enableBodyScrolling\"]();\n }\n }\n },\n // Expands the modal to fit its content. Instead of scrolling only the\n // body of the modal, the modal will grow to show all of its content, and\n // the scrollbar will be at page-level, instead of being inside the modal.\n expandToFit: {\n type: 'boolean'\n },\n // Adds aria label to the close button, in order to enhance\n // accessibility.\n closeLabel: {\n type: 'string'\n }\n },\n events: {\n // Fired when a user closes the modal (by clicking on the close icon,\n // by clicking outside of the modal or by pressing ESC).\n // The event details contain the `reason`, which can be any of the following:\n // `['closeButton', 'overlay', 'keyboard']`.\n dismiss: {\n bubbles: true,\n cancelable: true,\n detailType: 'Modal.DismissDetail'\n }\n },\n regions: {\n // Body of the modal.\n content: {\n isDefault: true\n },\n // Title of the modal. Even if this can be empty, it's suggested\n // that your modals always have a title.\n header: {},\n // Footer of the modal. If empty, the footer is not displayed at all.\n footer: {}\n },\n render: function (m, h) {\n var _this = this;\n\n var component = this;\n\n var dismiss = function (reason) {\n _this.__fireEvent('dismiss', {\n reason: reason\n }, {\n onNotCanceled: function () {\n _this.visible = false;\n }\n });\n };\n\n function escKeyHandler(event) {\n if (event.keyCode === ESC) {\n dismiss('keyboard');\n }\n }\n\n var mousedownHandler = function (event) {\n return _this.__mousedownTarget = event.target;\n };\n\n function overflowDismissHandler(event) {\n if (event.target === this) {\n // Some DOM utilities mocking the `click` event won't trigger a\n // `mousedown` before, so `__mousedownTarget` will be empty.\n if (component.__mousedownTarget === undefined || component.__mousedownTarget === this) {\n dismiss('overlay');\n }\n }\n }\n\n function closeButtonHandler() {\n dismiss('closeButton');\n }\n\n var dialogClass = new h.ClassBuilder(this).addClass('awsui-modal-dialog').addComponentClass('expandtofit', this.expandToFit).addPropertyValueClass('size').toClassName();\n var containerClass = new h.ClassBuilder(this).addClass('awsui-modal-container').addComponentClass('expandtofit', this.expandToFit).addComponentClass('hidden', !this.visible).toClassName();\n var overlayClass = new h.ClassBuilder(this).addClass('awsui-modal-overlay').addComponentClass('hidden', !this.visible).toClassName();\n\n var tabTrap = function () {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-modal-tabtrap\",\n tabindex: _this.visible ? '0' : '-1',\n onfocus: function () {\n return setDialogFocus(_this);\n }\n });\n };\n\n var bodyClass = new h.ClassBuilder(this).addComponentClass('body').addComponentClass('expandtofit', this.expandToFit).toClassName();\n\n var adjustScrollAndFocus = function (container) {\n if (_this.visible) {\n // Set focus on dialog to allow ESC key to dismiss\n setDialogFocus(_this);\n } else {\n // Restore focus to element that had it before dialog appeared\n restoreInitialFocus(_this);\n } // When the user re-opens a modal, the scrollTop position remains the same\n // (because we reuse the element). We have to scroll back to top on open.\n\n\n var scrollableArea = _this.expandToFit ? container : container.querySelector('.awsui-modal-body');\n scrollableArea.scrollTop = 0;\n };\n\n var attributes = {\n className: containerClass,\n role: 'dialog',\n 'aria-modal': 'true',\n 'aria-labelledby': this.__dialogId\n };\n\n var container = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", __assign({\n lifecycleKey: \"awsui-modal-focus\"\n }, attributes, {\n onmousedown: mousedownHandler,\n onclick: overflowDismissHandler,\n componentDidMount: adjustScrollAndFocus,\n componentDidUpdate: adjustScrollAndFocus\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: dialogClass,\n onkeydown: escKeyHandler,\n tabindex: \"-1\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-modal-content awsui-util-container\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-modal-header awsui-util-container-header\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-modal-title\",\n id: this.__dialogId\n }, h.region('header')), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_button_src__WEBPACK_IMPORTED_MODULE_1__[\"Button\"], {\n label: this.closeLabel,\n className: \"awsui-modal-dismiss-control\",\n variant: \"icon\",\n icon: \"close\",\n formAction: \"none\",\n click: closeButtonHandler\n })), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: bodyClass\n }, h.region('content')), h.region('footer', 'div', {\n className: 'awsui-modal-footer awsui-util-container-footer'\n }))));\n\n var overlay = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: overlayClass\n });\n\n return [tabTrap(), container, overlay, tabTrap()];\n }\n});\n\nfunction setDialogFocus(component) {\n var dialog = component.node.querySelector('.awsui-modal-dialog');\n\n if (document.activeElement === dialog || dialog.contains(document.activeElement)) {\n return;\n }\n\n if (dialog && dialog.focus) {\n component.__initiallyFocusedElement = document.activeElement;\n dialog.focus();\n } else {\n component.__initiallyFocusedElement = undefined;\n }\n}\n\nfunction restoreInitialFocus(component) {\n if (component.__initiallyFocusedElement && component.__initiallyFocusedElement.focus) {\n component.__initiallyFocusedElement.focus();\n }\n\n component.__initiallyFocusedElement = undefined;\n} //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 217 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"disableBodyScrolling\", function() { return disableBodyScrolling; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"enableBodyScrolling\", function() { return enableBodyScrolling; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/*\n * Control page content scrolling\n */\n\nvar domutils = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__DomUtils;\nvar modalOpenClass = 'awsui-modal-open';\nvar initialBodyPaddingRightStyle = null;\nfunction disableBodyScrolling() {\n setBodyScrollbarPadding();\n domutils.addClass(document.body, modalOpenClass);\n}\nfunction enableBodyScrolling() {\n domutils.removeClass(document.body, modalOpenClass);\n restoreBodyScrollbarPadding();\n}\n\nfunction setBodyScrollbarPadding() {\n if (bodyHasScrollbar()) {\n initialBodyPaddingRightStyle = document.body.style.paddingRight;\n var initialBodyPaddingRight = computedBodyPaddingRightPixels();\n var scrollbarWidth = browserScrollbarWidth();\n var newBodyPaddingRight = initialBodyPaddingRight + scrollbarWidth;\n document.body.style.paddingRight = newBodyPaddingRight + 'px';\n }\n}\n\nfunction computedBodyPaddingRightPixels() {\n return parseInt(window.getComputedStyle(document.body).paddingRight, 10);\n}\n\nfunction restoreBodyScrollbarPadding() {\n if (initialBodyPaddingRightStyle) {\n document.body.style.paddingRight = initialBodyPaddingRightStyle;\n } else {\n document.body.style.removeProperty('padding-right');\n }\n\n initialBodyPaddingRightStyle = null;\n} // Technique borrowed from Bootstrap: Create an offscreen div styled to ensure a scrollbar exists,\n// then measure its dimensions to get scrollbar width.\n// https://github.com/twbs/bootstrap/blob/master/js/modal.js#L277\n\n\nfunction browserScrollbarWidth() {\n var scrollDiv = document.createElement('div');\n scrollDiv.className = 'awsui-modal-scrollbar-measure';\n document.body.appendChild(scrollDiv);\n var scrollbarWidth = scrollDiv.offsetWidth - scrollDiv.clientWidth;\n document.body.removeChild(scrollDiv);\n return scrollbarWidth;\n}\n\nfunction bodyHasScrollbar() {\n // Unfortunately this difference doesn't appear to match the scrollbar width during testing,\n // otherwise we could remove browserScrollbarWidth(). Bootstrap also doesn't use this difference\n // directly.\n return document.body.clientWidth < window.innerWidth;\n} //# sourceMappingURL=BodyScroll.js.map\n\n/***/ }),\n/* 218 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\nvar PreferencesController =\n/** @class */\nfunction () {\n function PreferencesController() {\n this.listeners = [];\n }\n\n PreferencesController.prototype.addListener = function (listener) {\n this.listeners.push(listener);\n };\n\n PreferencesController.prototype.removeListener = function (listener) {\n var index = this.listeners.indexOf(listener);\n\n if (index < 0) {\n return false;\n }\n\n this.listeners.splice(index, 1);\n return true;\n };\n\n PreferencesController.prototype.confirm = function () {\n this.callListeners('onConfirm');\n };\n\n PreferencesController.prototype.cancel = function () {\n this.callListeners('onCancel');\n };\n\n PreferencesController.prototype.callListeners = function (type) {\n this.listeners.forEach(function (listener) {\n if (listener.hasOwnProperty(type)) {\n listener[type]();\n }\n });\n };\n\n return PreferencesController;\n}();\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (PreferencesController); //# sourceMappingURL=controller.js.map\n\n/***/ }),\n/* 219 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"TablePageSizeSelector\", function() { return TablePageSizeSelector; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CardsPageSizeSelector\", function() { return CardsPageSizeSelector; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _form_field_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(138);\n/* harmony import */ var _radio_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(198);\n/* harmony import */ var _utility__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(181);\n\n\n\n\n\nvar _a = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponents(['awsui-table-page-size-selector', 'awsui-cards-page-size-selector'], {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n properties: {\n // Displayed on top of the component within preferences.\n title: {\n type: 'string'\n },\n // Array of options that the user can choose from. Example:\n // ```\n // [{\n // value: 10,\n // label: \"10 resources\"\n // }, {\n // value: 30,\n // label: \"30 resources\"\n // }]\n // ```\n options: {\n type: 'array',\n itemTypes: ['TablePageSizeSelector.Option']\n },\n // Internal property, used to maintain state between options change and confirm action.\n // Also is pupulated by main controller when pageSize is changed from pagination component.\n __pageSize: {\n type: 'integer'\n }\n },\n callbacks: {\n attached: function () {\n var _this = this; // register self with collection controller, so it will know about it when updating page size\n\n\n this.__parentComponent = Object(_utility__WEBPACK_IMPORTED_MODULE_3__[\"getCollectionComponent\"])(this.node);\n this.__parentComponent.__controller.pageSizeSelector = this;\n this.__pageSize = this.__parentComponent.__controller.getPageSize();\n this.__preferencesController = Object(_utility__WEBPACK_IMPORTED_MODULE_3__[\"getPreferencesController\"])(this.node);\n this.__preferencesListener = {\n onConfirm: function () {\n _this.__parentComponent.__controller.setPageSize(_this.__pageSize, true);\n },\n onCancel: function () {\n _this.__pageSize = _this.__parentComponent.__controller.getPageSize();\n\n _this.__update();\n }\n };\n\n this.__preferencesController.addListener(this.__preferencesListener);\n },\n detached: function () {\n if (this.__parentComponent) {\n this.__parentComponent.__controller.pageSizeSelector = null;\n }\n\n if (this.__preferencesController) {\n this.__preferencesController.removeListener(this.__preferencesListener);\n }\n }\n },\n render: Object(_utility__WEBPACK_IMPORTED_MODULE_3__[\"renderSafely\"])(function () {\n var _this = this;\n\n var radioButtons = this.options.map(function (option) {\n return {\n value: option.value.toString(),\n label: function () {\n return option.label;\n }\n };\n });\n\n var onSelectionChange = function (event) {\n _this.__pageSize = parseInt(event.target.component.value, 10);\n };\n\n var radioGroup = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_radio_src__WEBPACK_IMPORTED_MODULE_2__[\"RadioGroup\"], {\n value: this.__pageSize && this.__pageSize.toString(),\n change: onSelectionChange,\n items: radioButtons\n });\n\n return [_core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_form_field_src__WEBPACK_IMPORTED_MODULE_1__[\"FormField\"], {\n label: this.title,\n control: radioGroup,\n stretch: true\n })];\n })\n}),\n TablePageSizeSelector = _a[0],\n CardsPageSizeSelector = _a[1];\n\n //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 220 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"TableContentSelector\", function() { return TableContentSelector; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"CardsContentSelector\", function() { return CardsContentSelector; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _checkbox_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(194);\n/* harmony import */ var _form_field_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(138);\n/* harmony import */ var _utility__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(181);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(221);\n\n\n\n\n\n\nvar onOptionsChange = function (oldValue, newValue) {\n // If the options are set for the first time (in Angular), it can happen that they are all not visible.\n // In that case both arrays of selected ids are empty, but we still need to notify the table of the change\n // otherwise the table will think that no value is set on the content selection, hence display all columns\n // as opposed to displaying none\n var isSelectionEqual = !(oldValue.length === 0 && newValue.length > 0); // Then we check if the selection has actually changed\n\n isSelectionEqual = isSelectionEqual && Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"compareOptionGroups\"])(oldValue, newValue);\n\n if (!isSelectionEqual) {\n // https://issues.amazon.com/issues/AWSUI-4103\n // update optionsState only if options are really different\n // in order to not clear user modification before they are applied/discarded\n // when updating state of other parts of the component\n this.__optionsState = Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"copyOptionsGroups\"])(this.options);\n\n if (!this.__innerChange && this.__parentComponent) {\n // we need to check whether the parent controller has already been retrieved.\n // In React, properties are set before attaching the component,\n // which means that we enter this function before the preferences controller has been set\n this.__updateContentSelection(Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"fromOptionsGroupsToContentSelection\"])(this.options), false);\n }\n }\n};\n\nvar _a = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponents(['awsui-table-content-selector', 'awsui-cards-content-selector'], {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n properties: {\n // Displayed on top of the content selection component within preferences.\n title: {\n type: 'string'\n },\n // Array containing categories of content whose display can be toggled by the user.\n // Each entry has the following structure\n // ```\n // {\n // label: 'displayed as title for the category',\n // options: [{\n // id: 'it corresponds to a column id for tables and to a section id for cards',\n // label: 'Short description of the content',\n // visible: boolean // Whether the content is visible by default,\n // editable: boolean // Whether the user is able to toggle its visibility. It defaults to true.\n // }]\n // }\n // ```\n //\n // If this property is set, the visibility and order of columns/cards sections\n // will be controlled by this component.\n options: {\n type: 'array',\n onChange: onOptionsChange,\n itemTypes: ['TableContentSelector.ContentDescriptionGroup']\n }\n },\n callbacks: {\n attached: function () {\n var _this = this;\n\n var optionsHaveAlreadyBeenSet = !!this.__optionsState; // __optionsState is always bound to the different checkboxes statuses,\n // not necessarily aligned with this.options\n // Needed to keep track of user selection before confirmation\n\n this.__optionsState = this.__optionsState || []; // This flag is used to understand whether the options have been set through user interaction with preferences\n // or by setting the options attribute on the component instance.\n // In the first scenario, preferences must not be updated immediately. They will be bundled with preferences\n // coming from other components and set with one unique call by the preferences controller.\n // In the second scenario, preferences have to be updated immediately\n\n this.__innerChange = false;\n this.__parentComponent = Object(_utility__WEBPACK_IMPORTED_MODULE_3__[\"getCollectionComponent\"])(this.node);\n this.__preferencesController = Object(_utility__WEBPACK_IMPORTED_MODULE_3__[\"getPreferencesController\"])(this.node);\n\n if (optionsHaveAlreadyBeenSet) {\n // We need to make sure that as soon as the preferences controller is attached\n // we apply the content selection options that are specified as attribute\n this.__updateContentSelection(Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"fromOptionsGroupsToContentSelection\"])(this.options));\n }\n\n this.__preferencesListener = {\n onConfirm: function () {\n return _this.__onConfirm();\n },\n onCancel: function () {\n return _this.__onCancel();\n }\n };\n\n this.__preferencesController.addListener(this.__preferencesListener);\n },\n detached: function () {\n if (this.__preferencesController) {\n this.__preferencesController.removeListener(this.__preferencesListener); // Reset the contentSelection in the table component to its default value, which is undefined,\n // without changing this.options in the table-content-selector component\n\n\n this.__updateContentSelection(undefined, false);\n }\n }\n },\n functions: {\n __onConfirm: function () {\n this.__innerChange = true;\n var oldContentSelection = Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"fromOptionsGroupsToContentSelection\"])(this.options);\n var contentSelection = Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"fromOptionsGroupsToContentSelection\"])(this.__optionsState);\n this.options = Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"copyOptionsGroups\"])(this.__optionsState);\n this.__innerChange = false;\n\n if (!Object(_utility__WEBPACK_IMPORTED_MODULE_3__[\"arrayItemsEqual\"])(oldContentSelection, contentSelection)) {\n this.__updateContentSelection(contentSelection, true);\n }\n },\n __onCancel: function () {\n this.__optionsState = Object(_utils__WEBPACK_IMPORTED_MODULE_4__[\"copyOptionsGroups\"])(this.options);\n\n this.__update();\n },\n __updateContentSelection: function (contentSelection, userAction) {\n this.__parentComponent.__controller.setContentSelection(contentSelection, userAction);\n }\n },\n render: Object(_utility__WEBPACK_IMPORTED_MODULE_3__[\"renderSafely\"])(function (m, h) {\n var _this = this;\n\n var options = this.__optionsState || [];\n\n var getComponentClassName = function (suffix) {\n return new h.ClassBuilder(_this).addComponentClass(suffix).toClassName();\n };\n\n var toggleOptionVisibility = function (option) {\n return function () {\n option.visible = !option.visible;\n\n _this.__update();\n };\n };\n\n var displayOption = function (option) {\n var cb = new h.ClassBuilder(_this).addComponentClass('option');\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: cb.toClassName()\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: getComponentClassName('option-label')\n }, option.label), option.editable === false ? '' : _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_checkbox_src__WEBPACK_IMPORTED_MODULE_1__[\"Toggle\"], {\n className: getComponentClassName('toggle'),\n checked: Boolean(option.visible),\n change: toggleOptionVisibility(option),\n ariaLabel: option.label\n }));\n };\n\n var displayOptionGroup = function (group) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: getComponentClassName('options-group')\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: getComponentClassName('options-group-label')\n }, group.label), group.options.map(displayOption));\n };\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_form_field_src__WEBPACK_IMPORTED_MODULE_2__[\"FormField\"], {\n label: this.title,\n control: options.map(displayOptionGroup),\n stretch: true\n });\n })\n}),\n TableContentSelector = _a[0],\n CardsContentSelector = _a[1];\n\n //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 221 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"fromOptionsGroupsToContentSelection\", function() { return fromOptionsGroupsToContentSelection; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"copyOptionsGroups\", function() { return copyOptionsGroups; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"compareOptionGroups\", function() { return compareOptionGroups; });\nvar contentDescriptionFields = ['id', 'label', 'editable', 'visible'];\n\nvar fromOptionsToContentSelection = function (options) {\n if (options === void 0) {\n options = [];\n }\n\n var contentSelection = [];\n options.forEach(function (option) {\n if (option.visible) {\n contentSelection.push(option.id);\n }\n });\n return contentSelection;\n};\n\nvar fromOptionsGroupsToContentSelection = function (optionsGroups) {\n var contentSelection = [];\n optionsGroups.forEach(function (group) {\n contentSelection.push.apply(contentSelection, fromOptionsToContentSelection(group.options));\n });\n return contentSelection;\n};\n\nvar copyOptions = function (options) {\n if (options === void 0) {\n options = [];\n }\n\n return options.map(function (option) {\n var newOption = {};\n contentDescriptionFields.forEach(function (key) {\n newOption[key] = option[key];\n });\n return newOption;\n });\n};\n\nvar copyOptionsGroups = function (optionsGroups) {\n return optionsGroups.map(function (group) {\n var newGroup = {};\n newGroup.label = group.label;\n newGroup.options = copyOptions(group.options);\n return newGroup;\n });\n};\n\nfunction isOneMissing(a, b) {\n return Boolean(a) !== Boolean(b);\n}\n\nfunction compareOptions(option1, option2) {\n if (option1 === option2) return true;\n if (isOneMissing(option1, option1)) return false;\n return contentDescriptionFields.every(function (key) {\n return option1[key] === option2[key];\n });\n}\n\nfunction compareSingleOptionGroups(group1, group2) {\n if (group1 === group2) return true;\n if (isOneMissing(group1, group2)) return false;\n if (group1.options.length !== group2.options.length) return false;\n if (group1.label !== group2.label) return false;\n return group1.options.every(function (option, index) {\n return compareOptions(option, group2.options[index]);\n });\n}\n\nfunction compareOptionGroups(groups1, groups2) {\n if (groups1 === groups2) return true;\n if (isOneMissing(groups1, groups2)) return false;\n if (groups1.length !== groups2.length) return false;\n return groups1.every(function (optionsGroup, index) {\n return compareSingleOptionGroups(optionsGroup, groups2[index]);\n });\n} //# sourceMappingURL=utils.js.map\n\n/***/ }),\n/* 222 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"TableWrapLines\", function() { return TableWrapLines; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _checkbox_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(194);\n/* harmony import */ var _utility__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(181);\n\n\n\nvar TableWrapLines = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-table-wrap-lines', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n properties: {\n // Displayed below the checkbox on large screens. Hidden on small screens.\n description: {\n type: 'string'\n },\n // Used as label for the checkbox that allows to select the option.\n label: {\n type: 'string'\n },\n __wrapLines: {\n defaultValue: true,\n type: 'boolean'\n }\n },\n callbacks: {\n attached: function () {\n var _this = this;\n\n this.__parentComponent = Object(_utility__WEBPACK_IMPORTED_MODULE_2__[\"findParentComponent\"])(this.node, ['awsui-table']);\n this.__parentComponent.__controller.wrapLinesSelector = this;\n this.__preferencesController = Object(_utility__WEBPACK_IMPORTED_MODULE_2__[\"getPreferencesController\"])(this.node);\n this.__wrapLines = this.__parentComponent.__controller.getWrapLines();\n this.__preferencesListener = {\n onConfirm: function () {\n return _this.__parentComponent.__controller.setWrapLines(_this.__wrapLines, true);\n },\n onCancel: function () {\n _this.__wrapLines = _this.__parentComponent.__controller.getWrapLines();\n\n _this.__update();\n }\n };\n\n this.__preferencesController.addListener(this.__preferencesListener);\n },\n detached: function () {\n if (this.__preferencesController) {\n this.__parentComponent.__controller.wrapLinesSelector = null;\n\n this.__preferencesController.removeListener(this.__preferencesListener);\n }\n }\n },\n render: Object(_utility__WEBPACK_IMPORTED_MODULE_2__[\"renderSafely\"])(function (m, h) {\n var _this = this;\n\n var getComponentClassName = function (suffix) {\n return new h.ClassBuilder(_this).addComponentClass(suffix).toClassName();\n };\n\n var changeHandler = function () {\n _this.__wrapLines = !_this.__wrapLines;\n };\n\n var displayCheckbox = function () {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_checkbox_src__WEBPACK_IMPORTED_MODULE_1__[\"Checkbox\"], {\n className: getComponentClassName('checkbox'),\n checked: _this.__wrapLines,\n change: changeHandler,\n label: _this.label\n });\n };\n\n return [displayCheckbox(), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: getComponentClassName('description')\n }, this.description)];\n })\n}); //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 223 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(224);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _cards_filtering__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(225);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _cards_filtering__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 224 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 225 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"CardsFiltering\"]));\n\n/***/ }),\n/* 226 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(227);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _cards_page_size_selector__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(228);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _cards_page_size_selector__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 227 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 228 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"CardsPageSizeSelector\"]));\n\n/***/ }),\n/* 229 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(230);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _cards_pagination__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(231);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _cards_pagination__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 230 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 231 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"CardsPagination\"]));\n\n/***/ }),\n/* 232 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(233);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _cards_preferences__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(234);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _cards_preferences__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 233 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 234 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"CardsPreferences\"]));\n\n/***/ }),\n/* 235 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(236);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _cards_property_filtering__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(237);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _cards_property_filtering__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 236 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 237 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"CardsPropertyFiltering\"]));\n\n/***/ }),\n/* 238 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(239);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _cards_selection__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(240);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _cards_selection__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 239 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 240 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"CardsSelection\"]));\n\n/***/ }),\n/* 241 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(242);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _cards__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(243);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _cards__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 242 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 243 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_cards_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(244);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_cards_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Cards\"]));\n\n/***/ }),\n/* 244 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Cards\", function() { return Cards; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _spinner_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(115);\n/* harmony import */ var _table_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n/* harmony import */ var _componentsUtilities__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(245);\n/* harmony import */ var _cardsLayoutHelper__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(246);\n/* harmony import */ var _cardsStickyHandler__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(247);\n/* harmony import */ var _table_src_selection_selection_control__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(193);\n\n\n\n\n\n\n\nvar lastGeneratedName = 0;\n\nvar nextGeneratedName = function () {\n return \"awsui-cards-\" + lastGeneratedName++;\n};\n\nvar Cards = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-cards', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n events: {\n // Fired when the list of items that are visible in the cards changes upon user interaction.\n // Note that the initial render or a programmatic items change will not trigger the event.\n // If you need to cover these cases too, consider filtering and paginating items manually on your side.\n // The event `detail` contains the list of the visible items.\n visibleItemsChange: {\n bubbles: true,\n cancelable: false,\n detailType: 'Cards.VisibleItemsChangeDetail'\n },\n // Fired when user decided to change visible content in the cards.\n // Event detail contain an array of field ids that the user decided to include in the view.\n // This property comes form the content-selection component.\n contentSelectionChange: {\n bubbles: true,\n cancelable: false,\n detailType: 'Cards.ContentSelectionChangeDetail'\n },\n // Fired when updating cards properties and before the sticky header state is reset.\n // Canceling this event will prevent cards component from scrolling to then top and resetting sticky header state.\n beforeUnstick: {\n bubbles: true,\n cancelable: true\n }\n },\n elementQueries: [{\n read: {\n selector: '.awsui-cards-inner',\n properties: ['width']\n },\n apply: {\n __innerContentClass: function (_a) {\n var width = _a.width;\n var availableWidth = parseInt(width, 10);\n var cardsPerRow = Object(_cardsLayoutHelper__WEBPACK_IMPORTED_MODULE_4__[\"getCardsPerRow\"])(availableWidth, this.cardsPerRow);\n var isSmall = availableWidth <= _table_src__WEBPACK_IMPORTED_MODULE_2__[\"SMALL_BREAKPOINT\"];\n\n this.__stickyHandler.handleContainerChange();\n\n return \"grid-\" + cardsPerRow + (isSmall ? ' awsui-cards-inner-small' : '');\n }\n }\n }],\n regions: {\n // Use this region to add filtering, pagination, selection, sorting and preferences.\n tools: {\n isDefault: true\n },\n // Displayed on top of the tools region. Use it for the heading and the action stripe.\n header: {},\n // Displayed only when the list of items is empty.\n empty: {},\n // Displayed only when all available items are filtered out by the filtering component.\n noMatch: {}\n },\n properties: {\n // This property defines what to display in each card. It has the following properties:\n // * `header` [Renderable]: responsible for the display of the card header\n // * `sections` [array]: responsible for the display of the card content. Cards can have many sections in their\n // body. Each entry in the array is responsible for the display of a section. It has the following properties:\n // * `id`: [string] identifier for that section.\n // The `id` property is needed only if `awsui-cards-content-selector` component is used\n // within `awsui-cards-preferences` component.\n // * `header`: [Renderable]: responsible for the display of the header of a section\n // * `content`: [Renderable]: responsible for the display of the content of a section.\n // * `width`: [number] the width of the card section in percents. Use this to display multiple sections in\n // the same row. By default the value is 100%\n //\n // All of the above properties are optional.\n //\n // **Renderable value**\n // * **AngularJS:** Must be a string representing an Angular template. The current item is assigned to `$item` scope\n // variable.\n // Example: `'{{$item.prop}}'`.\n // * **React:** Must be a React element or a function that receives the item as an argument and returns the React element\n // to display.\n // Example: `item => {return (item.prop);}` or `static value` in jsx.\n // * **GWT:** Must be a lambda function that should return either a string, html element or GWT-widget instance.\n // Example: `() -> 'some text'` or `() -> new HTMLPanel()`.\n cardDefinition: {\n type: 'object',\n objectType: 'Cards.CardDefinition',\n onChange: Object(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"updateController\"])('cardDefinition')\n },\n // The items serve as data source for a card.\n // The display of a card is handled by the `cardDefinition` property.\n //\n // _Remark:_ if you want to change the set of items make sure you provide a new array.\n // Any modification to the same array will not be reflected in the view.\n items: {\n type: 'array',\n itemTypes: ['Table.Item'],\n onChange: Object(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"updateController\"])('items')\n },\n // Renders the cards as being in a loading state.\n // It is highly recommended to also set a `loadingText`.\n loading: {\n type: 'boolean'\n },\n // Text to be displayed when in loading state.\n loadingText: {\n type: 'string'\n },\n // List of the sub-components that will be present in the cards default region.\n // The list can contain `filtering`, `propertyFiltering`, `pagination`, `selection`.\n // Example: `['pagination', 'filtering', 'selection']`.\n //\n // **GWT, React 16:** For performance reasons, **this property is mandatory\n // if you are using GWT or React 16**. In Angular, you can leave it undefined.\n features: {\n type: 'array',\n itemTypes: ['string'],\n defaultValue: []\n },\n // This property allows you to specify the number of cards per row for any interval of container width.\n // It is an array whose entries are objects containing:\n // - `cards`: number: number of cards per row,\n // - `minWidth`: integer: it represents the minimum container width (in pixels) starting from which\n // the specified number of cards per row to be displayed.\n // The maximum container width of application is the lowest `minWidth` found in the array that is greater than this\n // one. The default value is `0`.\n //\n // For example, if set to\n // ```\n // [{\n // cards: 1\n // }, {\n // minWidth: 500,\n // cards: 2\n // }]\n // ```\n //\n // then the cards component will display:\n // * 1 card per row if `0 <= containerWidth < 500`\n // * 2 cards per row if `containerWidth >= 500`.\n //\n // The number of cards per row cannot be greater than 20.\n //\n // Default value:\n // ```\n // [{\n // cards: 1\n // }, {\n // minWidth: 768,\n // cards: 2\n // }, {\n // minWidth: 992,\n // cards: 3\n // }, {\n // minWidth: 1200,\n // cards: 4\n // }, {\n // minWidth: 1400,\n // cards: 5\n // }, {\n // minWidth: 1920,\n // cards: 6\n // }]\n // ```\n cardsPerRow: {\n type: 'array',\n itemTypes: ['Cards.CardsLayout'],\n onChange: function () {\n if (this.__componentState === 'attached') {\n _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].elementQueries.notifyChange();\n }\n }\n },\n // Set this to true if you want the cards header to remain visible when the user scrolls down\n stickyHeader: {\n type: 'boolean',\n onChange: function (oldValue, newValue) {\n this.__updateStickySetting(newValue);\n }\n },\n // calculated className based on available space\n __innerContentClass: {\n type: 'string'\n },\n // pagination component\n __pagination: {\n type: 'object',\n onChange: Object(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"getComponentSetter\"])(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"ComponentFeature\"].PAGINATION)\n },\n // filtering component\n __filtering: {\n type: 'object',\n onChange: Object(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"getComponentSetter\"])(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"ComponentFeature\"].FILTERING)\n },\n // property filtering component\n __propertyFiltering: {\n type: 'object',\n onChange: Object(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"getComponentSetter\"])(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"ComponentFeature\"].PROPERTY_FILTERING)\n },\n // selection component\n __selection: {\n type: 'object',\n onChange: Object(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"getComponentSetter\"])(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"ComponentFeature\"].SELECTION)\n },\n // preferences component\n __preferences: {\n type: 'object',\n onChange: function () {\n this.__updateToolsVisibility();\n }\n },\n // currenly visible content\n __contentSelection: {\n type: 'object'\n }\n },\n callbacks: {\n initialized: function () {\n this.__cardDefinitionReady = false;\n this.__itemsReady = false;\n this.__initializedFeatures = [];\n this.__currentCardsPerRow = null;\n this.__preferencesSettings = {};\n this.__controller = new _table_src__WEBPACK_IMPORTED_MODULE_2__[\"Controller\"](this, _componentsUtilities__WEBPACK_IMPORTED_MODULE_3__[\"default\"]);\n this.__hideTools = false;\n this.__name = nextGeneratedName();\n this.__stickyHandler = new _cardsStickyHandler__WEBPACK_IMPORTED_MODULE_5__[\"default\"](this.node);\n this.__shiftPressed = false;\n },\n attached: function () {\n this.__checkReadinessAndInitializeController();\n\n if (this.stickyHeader) {\n this.__stickyHandler.attach();\n }\n },\n detached: function () {\n if (this.stickyHeader) {\n this.__stickyHandler.detach();\n }\n }\n },\n functions: {\n __getData: function () {\n return {\n items: this.items\n };\n },\n __checkReadinessAndInitializeController: Object(_table_src__WEBPACK_IMPORTED_MODULE_2__[\"checkReadinessAndInitializeController\"])(['cardDefinition', 'items']),\n __getModifiedSections: function () {\n if (!this.cardDefinition || !this.cardDefinition.sections) {\n return [];\n }\n\n var contentSelection = this.__contentSelection;\n var sections = this.cardDefinition.sections;\n\n if (!contentSelection) {\n return sections;\n }\n\n var modifiedSections = [];\n contentSelection.forEach(function (id) {\n sections.some(function (sectionDef) {\n if (sectionDef.id === id) {\n modifiedSections.push(sectionDef);\n return true;\n }\n });\n });\n return modifiedSections;\n },\n __updateToolsVisibility: function () {\n this.__hideTools = !(this.__preferences || this.__filtering || this.__propertyFiltering || this.__pagination);\n },\n __updateSelectionLabels: function () {\n // Selection labels are in every card, so we need to re-render everything\n this.__update();\n },\n __fireContentSelectionChangeEvent: function () {\n var eventDetails = {\n contentSelection: this.__contentSelection\n };\n\n this.__fireEvent('contentSelectionChange', eventDetails);\n },\n __fireVisibleItemsChangeEvent: function () {\n var visibleItemsChangeDetail = {\n visibleItems: this.__controller.getVisibleItems()\n };\n\n this.__fireEvent('visibleItemsChange', visibleItemsChangeDetail);\n },\n __updateStickySetting: function (enabled) {\n if (this.__componentState === 'attached') {\n if (enabled) {\n this.__stickyHandler.attach();\n } else {\n this.__stickyHandler.detach();\n }\n }\n }\n },\n render: function (m, h) {\n var component = this;\n var cardDefinition = component.cardDefinition;\n\n var sections = this.__getModifiedSections();\n\n var controller = this.__controller;\n var visibleItems = controller.getVisibleItems();\n var isSelectionEnabled = !!component.__selection;\n\n function toMithril(lifecycleKey, renderer, item) {\n return component.renderToMithril(lifecycleKey, renderer, [{\n $item: item\n }]);\n }\n\n var selectionAriaLabels = function () {\n var labels = component.__selection.__getSelectionLabels();\n\n var selectionData = component.__selection.__getSelectionState();\n\n var cb = new h.ClassBuilder(component).addComponentClass('selection-aria-labels').addClass('awsui-util-hide');\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: cb.toClassName(),\n \"aria-hidden\": \"true\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n id: component.__name + \"-selection-group\"\n }, labels.selectionGroupLabel), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n id: component.__name + \"-selection-all\"\n }, labels.allItemsSelectionLabel(selectionData)), visibleItems.map(function (item, index) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n key: component.__name + \"-selection-\" + index,\n id: component.__name + \"-selection-\" + index\n }, labels.itemSelectionLabel(selectionData, item));\n }));\n };\n\n function cardDefinitionHeader(item, index) {\n if (cardDefinition.header) {\n return toMithril(\"card-header-\" + index, cardDefinition.header, item);\n }\n }\n\n function cardHeader(item, index) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-cards-card-header\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-cards-card-header-inner\",\n id: component.__name + \"-\" + index + \"-header\"\n }, cardDefinitionHeader(item, index)), isSelectionEnabled ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_table_src_selection_selection_control__WEBPACK_IMPORTED_MODULE_6__[\"default\"], {\n name: component.__name,\n wrapper: \"span\",\n baseClassName: \"awsui-cards-card\",\n itemId: \"\" + index,\n selectionType: component.__selection.selectionType,\n parentComponent: component,\n checked: controller.isItemSelected(item),\n disabled: controller.isItemDisabled(item),\n onShiftToggle: function (shiftPressed) {\n return component.__shiftPressed = shiftPressed;\n },\n onClick: function () {\n return controller.toggleItem(item, index, component.__shiftPressed);\n },\n onFocusUp: function () {\n return controller.moveFocus(index, -1);\n },\n onFocusDown: function () {\n return controller.moveFocus(index, 1);\n }\n }) : '');\n }\n\n function cardSections(item, itemIndex) {\n return sections.map(function (sectionDefinition, sectionIndex) {\n return cardSection(sectionDefinition, item, itemIndex, sectionIndex);\n });\n }\n\n function cardSection(sectionDefinition, item, itemIndex, sectionIndex) {\n var header = sectionDefinition.header,\n content = sectionDefinition.content;\n var headerOutput = header ? toMithril(\"cards-header-\" + itemIndex + \"-\" + sectionIndex, header, item) : '';\n var contentOutput = content ? toMithril(\"cards-content-\" + itemIndex + \"-\" + sectionIndex, content, item) : '';\n var width = sectionDefinition.width || 100;\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-cards-card-section\",\n style: {\n width: width + \"%\"\n }\n }, headerOutput ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-cards-card-section-header\"\n }, headerOutput) : '', contentOutput ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-cards-card-section-content\"\n }, contentOutput) : '');\n }\n\n function card(item, index) {\n var cbCard = new h.ClassBuilder(component).addComponentClass('card-container').addComponentClass('card-selectable', isSelectionEnabled).addComponentClass('card-selected', controller.isItemSelected(item));\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"li\", {\n className: cbCard.toClassName(),\n \"aria-labelledby\": component.__name + \"-\" + index + \"-header\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-cards-card-container-inner\"\n }, cardHeader(item, index), cardSections(item, index)));\n }\n\n function body() {\n var cbContainer = new h.ClassBuilder(component).addComponentClass('container');\n var cbLoading = new h.ClassBuilder(component).addComponentClass('loading');\n\n if (component.loading) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: cbContainer.toClassName() + \" \" + cbLoading.toClassName()\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-util-status-inactive\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_spinner_src__WEBPACK_IMPORTED_MODULE_1__[\"Spinner\"], null), \" \", component.loadingText));\n }\n\n if (!component.__itemsReady) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-cards-empty\"\n });\n }\n\n if (component.items.length === 0) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-cards-empty\"\n }, h.region('empty'));\n }\n\n if (visibleItems.length === 0) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-cards-empty\"\n }, h.region('noMatch'));\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"ol\", {\n className: cbContainer.toClassName()\n }, visibleItems.map(function (item, index) {\n return card(item, index);\n }));\n }\n\n var toolsCb = new h.ClassBuilder(component).addComponentClass('tools').addComponentClass('tools-hidden', component.__hideTools).addComponentClass('has-pagination', component.__pagination).addComponentClass('has-property-filter', component.__propertyFiltering);\n var isRegionsContainerEmpty = !this.header && (!this.tools || component.__hideTools);\n var regionsContainerCb = new h.ClassBuilder(component).addComponentClass('regions-container').addComponentClass('regions-container-empty', isRegionsContainerEmpty);\n var innerContainerCb = new h.ClassBuilder(component).addComponentClass('inner').addClass(this.__innerContentClass).addClass(this.__stickyHandler.getCurrentStickyClass());\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: innerContainerCb.toClassName()\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-cards-heading-strut\"\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: regionsContainerCb.toClassName()\n }, h.region('header', 'div', {\n className: 'awsui-cards-header'\n }), h.region('tools', 'div', {\n className: toolsCb.toClassName()\n }), isSelectionEnabled ? selectionAriaLabels() : null), body());\n }\n}); //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 245 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _table_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(178);\n\nvar _a = _table_src__WEBPACK_IMPORTED_MODULE_0__[\"utilities\"],\n filtering = _a.filtering,\n propertyFiltering = _a.propertyFiltering,\n pagination = _a.pagination,\n selection = _a.selection;\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n filtering: filtering,\n propertyFiltering: propertyFiltering,\n pagination: pagination,\n selection: selection\n}); //# sourceMappingURL=componentsUtilities.js.map\n\n/***/ }),\n/* 246 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"getCardsPerRow\", function() { return getCardsPerRow; });\nvar WIDTHS = [1920, 1400, 1200, 992, 768]; // Transform the array of widths into a valid cardsPerRow property that is used as default\n\nvar getDefaultCardsPerRow = function () {\n return WIDTHS.map(function (value, index, widths) {\n return {\n minWidth: value,\n cards: widths.length + 1 - index\n };\n });\n};\n\nvar defaultCardsPerRow = getDefaultCardsPerRow();\nvar getCardsPerRow = function (width, config) {\n if (config.length === 0) {\n config = defaultCardsPerRow;\n }\n\n var cardsPerRow = 1; // sort them by descending order of minWidth\n\n var sortedConfig = config.slice().map(function (value) {\n return {\n minWidth: value.minWidth || 0,\n cards: value.cards\n };\n }).sort(function (a, b) {\n return b.minWidth - a.minWidth;\n });\n sortedConfig.some(function (layout) {\n if (width >= layout.minWidth) {\n cardsPerRow = layout.cards;\n return true;\n }\n });\n return cardsPerRow;\n}; //# sourceMappingURL=cardsLayoutHelper.js.map\n\n/***/ }),\n/* 247 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"stickyVisibleClass\", function() { return stickyVisibleClass; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"stickyLeavingClass\", function() { return stickyLeavingClass; });\n/* harmony import */ var _table_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(178);\nvar __extends = undefined && undefined.__extends || function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf || {\n __proto__: []\n } instanceof Array && function (d, b) {\n d.__proto__ = b;\n } || function (d, b) {\n for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\n };\n\n return extendStatics(d, b);\n };\n\n return function (d, b) {\n extendStatics(d, b);\n\n function __() {\n this.constructor = d;\n }\n\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n}();\n\n\nvar stickyVisibleClass = 'awsui-cards-sticky';\nvar stickyLeavingClass = 'awsui-cards-sticky-leaving';\n\nvar CardsStickyHandler =\n/** @class */\nfunction (_super) {\n __extends(CardsStickyHandler, _super);\n\n function CardsStickyHandler(node) {\n var _this = _super.call(this, node) || this;\n\n _this.stickyVisibleClass = stickyVisibleClass;\n _this.stickyLeavingClass = stickyLeavingClass;\n return _this;\n }\n\n CardsStickyHandler.prototype.handleContainerChange = function () {\n this.updateLayout();\n };\n\n CardsStickyHandler.prototype.getStickyNode = function () {\n return this.node.querySelector('.awsui-cards-regions-container');\n };\n\n CardsStickyHandler.prototype.getRootElement = function () {\n return this.node.querySelector('.awsui-cards-inner');\n };\n\n CardsStickyHandler.prototype.getHeaderStrut = function () {\n return this.node.querySelector('.awsui-cards-heading-strut');\n };\n\n CardsStickyHandler.prototype.getStrutOriginal = function () {\n return this.getStickyNode();\n };\n\n return CardsStickyHandler;\n}(_table_src__WEBPACK_IMPORTED_MODULE_0__[\"StickyHandler\"]);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (CardsStickyHandler); //# sourceMappingURL=cardsStickyHandler.js.map\n\n/***/ }),\n/* 248 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(249);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _checkbox__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(250);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _checkbox__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 249 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 250 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_checkbox_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(194);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_checkbox_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Checkbox\"]));\n\n/***/ }),\n/* 251 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(252);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _column_layout__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(253);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _column_layout__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 252 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 253 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_column_layout_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(137);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_column_layout_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"ColumnLayout\"]));\n\n/***/ }),\n/* 254 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(255);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _date_picker__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(256);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _date_picker__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 255 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 256 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_date_picker_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(257);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_date_picker_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"DatePicker\"]));\n\n/***/ }),\n/* 257 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _date_picker__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(258);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"DatePicker\", function() { return _date_picker__WEBPACK_IMPORTED_MODULE_0__[\"DatePicker\"]; });\n\n //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 258 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DatePicker\", function() { return DatePicker; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _input_src_base_input__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(145);\n/* harmony import */ var _controllers_DateInputMaskController__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(259);\n/* harmony import */ var _dropdown__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(264);\n/* harmony import */ var _calendar__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(265);\n/* harmony import */ var _utils_date__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(468);\n\n\n\n\n\n\n\nfunction daysMax(value) {\n // force to first day in month, as new Date('2018-02-30') -> March 2nd 2018\n var baseDate = Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"displayToIso\"])(value).substring(0, 7);\n return Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"daysInMonth\"])(Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"parseDate\"])(baseDate));\n}\n\nvar format = {\n separator: '/',\n inputSeparators: ['-', '.', ' '],\n segments: [//prettier-ignore\n {\n min: 0,\n max: 9999,\n default: 2000,\n length: 4\n }, {\n min: 1,\n max: 12,\n length: 2\n }, {\n min: 1,\n max: daysMax,\n length: 2\n }]\n};\nvar DatePicker = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-date-picker', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n callbacks: {\n initialized: function () {\n this.__setupMaskController();\n\n this.__updateCalendarYearMonth();\n\n this.__onChangeMonth = this.__onChangeMonth.bind(this);\n this.__onFocusDate = this.__onFocusDate.bind(this);\n this.__onSelectDate = this.__onSelectDate.bind(this);\n\n if (!this.controlId) {\n this.controlId = this.__maskController.generatedId;\n }\n },\n attached: function () {\n this.__maskController.setNode(this.node);\n\n this.__maskController.addListeners();\n },\n detached: function () {\n this.__maskController.removeListeners();\n }\n },\n properties: {\n // The current input value. This should be provided in YYYY-MM-DD format.\n value: {\n type: 'string',\n defaultValue: '',\n onChange: function (oldValue, newValue) {\n if (newValue === '') {\n return;\n }\n\n var updated = newValue; // apply reformat to check for month overflow\n\n updated = Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"displayToIso\"])(this.__maskController.reformat(format, Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"isoToDisplay\"])(updated))); // validate the value\n\n updated = Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"displayToIso\"])(this.__maskController.maskedValueAttributeChangeHandler(Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"isoToDisplay\"])(oldValue), Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"isoToDisplay\"])(updated)));\n\n if (updated !== newValue) {\n this.value = updated;\n }\n\n this.__updateCalendarYearMonth();\n }\n },\n // Placeholder text rendered when the value is an empty string.\n placeholder: {\n type: 'string'\n },\n // A function that defines whether a particular date should be enabled in the calendar or not.\n // Note that disabling a date in the calendar still allows users to enter this date via keyboard.\n // We therefore recommend that you also validate these constraints client- and server-side, in the\n // same way as for other form elements.\n isDateEnabled: {\n type: 'function',\n functionType: 'DatePicker.IsDateEnabledFunction'\n },\n // The locale to be used for rendering month names and defining the starting date of the week.\n // If not provided, it will be determined from the page and browser locales.\n // Supported values and formats are as-per the\n // [JavaScript Intl API specification](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Intl#Locale_identification_and_negotiation).\n locale: {\n type: 'string'\n },\n // Starting day of the week. [0-6] maps to [Sunday-Saturday].\n // By default the starting day of the week is defined by the locale, but you can override it using this property.\n startOfWeek: {\n type: 'integer',\n nullable: true\n },\n // Used as part of the aria label for today's date in the calendar.\n todayLabel: {\n type: 'string'\n },\n // An aria label for the 'next month' button.\n nextMonthLabel: {\n type: 'string'\n },\n // An aria label for the 'previous month' button.\n previousMonthLabel: {\n type: 'string'\n },\n // The name of the control used in HTML forms.\n name: {\n type: 'string'\n },\n // Specifies that the input should be disabled, preventing the user from\n // modifying the value and preventing the value from being included in a\n // form submission. A disabled input cannot receive focus.\n //\n // **AngularJS:** Use `data-disabled` instead.\n disabled: {\n type: 'boolean'\n },\n // Specifies that the input should be readonly, preventing the user from\n // modifying the value but including it in a form submission. A readonly input can receive focus.\n //\n // Do not use readonly inputs outside of a form.\n readonly: {\n type: 'boolean'\n },\n // Overrides invalidation state. Usually invalid state comes from wrapping `awsui-form-field` component, however\n // sometimes you need to override its state when you have more than one input within single form-field.\n invalid: {\n type: 'boolean',\n nullable: true\n },\n // Allows you to indicate that the control is to be focused as\n // soon as the `load` event triggers, allowing the user to just start\n // typing without having to manually focus the input. Don't use this option\n // in pages that allow for the field to be scrolled out of the viewport.\n autofocus: {\n type: 'boolean'\n },\n // Id of the internal input. Useful for relating a label element's\n // \"for\" attribute to this control. It defaults to an automatically generated id.\n controlId: {\n type: 'string',\n announceValue: true,\n onChange: function () {\n if (!this.controlId) {\n this.controlId = this.__maskController.generatedId;\n }\n }\n },\n // Adds an aria label on the native input.\n label: {\n type: 'string'\n },\n // Adds aria-labelledby on the native input. Use this only with form fields that\n // contain multiple controls under the same label.\n // 1. Define a custom id inside the label\n // 2. Refer to that label from every single control under that label using this property\n ariaLabelledby: {\n type: 'string'\n },\n // Adds aria-describedby on the native input. Use this only with form fields that\n // contain multiple controls under the same label.\n // 1. Define custom ids inside the description, hint and error text\n // 2. Refer to these from every single control under that label using this property\n // 3. Refer to any other hint/description text that you provide\n ariaDescribedby: {\n type: 'string',\n nullable: true\n },\n // Adds aria-required on the native input\n ariaRequired: {\n type: 'boolean'\n },\n // A default suggested aria-describedby value that can be pushed down from a FormField\n __suggestedAriaDescribedby: {\n type: 'string'\n },\n __confirmedValue: {\n type: 'string',\n defaultValue: ''\n },\n __dropdownIsOpen: {\n type: 'boolean'\n },\n __calendarHasFocus: {\n type: 'boolean'\n },\n __calendarYear: {\n type: 'integer'\n },\n __calendarMonth: {\n type: 'integer'\n },\n __focusedDate: {\n type: 'string'\n }\n },\n functions: {\n // Sets input focus onto the UI control.\n focus: function () {\n this.node.querySelector('input').focus();\n },\n __setupMaskController: function () {\n var _this = this;\n\n this.__maskController = new _controllers_DateInputMaskController__WEBPACK_IMPORTED_MODULE_2__[\"default\"]({\n getValue: function () {\n return Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"isoToDisplay\"])(_this.value);\n },\n isReadOnly: function () {\n return _this.readonly;\n },\n isDisabled: function () {\n return _this.disabled;\n },\n notifyInput: function (value) {\n _this.value = Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"displayToIso\"])(value);\n\n _this.__fireEvent('input', {\n value: _this.value\n });\n\n _this.__openDropdown();\n },\n notifyChange: function (value) {\n _this.value = Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"displayToIso\"])(value);\n\n _this.__fireEvent('change', {\n value: _this.value\n });\n\n _this.__closeDropdown();\n },\n overrideValue: function (value) {\n _this.value = Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"displayToIso\"])(value);\n },\n focus: function () {\n return _this.focus();\n },\n notifyFocus: function () {\n return _this.__fireEvent('focus');\n },\n notifyBlur: function () {\n return _this.__fireEvent('blur');\n },\n notifyKeyEvent: function () {\n return null;\n }\n }, this.node);\n\n this.__maskController.setFormat(format);\n },\n __updateCalendarYearMonth: function () {\n var parts = (this.value.length >= 4 ? this.value : Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"formatDate\"])(new Date())).split('-');\n var year = parseInt(parts[0], 10);\n var month = parseInt(parts[1], 10) || 1;\n\n if (this.__calendarYear !== year) {\n this.__calendarYear = year;\n }\n\n if (this.__calendarMonth !== month) {\n this.__calendarMonth = month;\n }\n },\n __onChangeMonth: function (_a) {\n var year = _a.year,\n month = _a.month;\n this.__calendarYear = year;\n this.__calendarMonth = month;\n this.__focusedDate = null;\n },\n __onSelectDate: function (_a) {\n var date = _a.date; // Focus on the input field before changing the this.__dropdownIsOpen flag to\n // false to make sure that calling the focus method doesn't re-open the dropdown\n\n this.focus();\n\n this.__closeDropdown();\n\n this.__maskController.sendChangeIfNeeded(Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"formatDate\"])(date));\n },\n __onFocusDate: function (_a) {\n var date = _a.date;\n this.__focusedDate = date && Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"formatDate\"])(date);\n },\n __openDropdown: function () {\n if (!this.__dropdownIsOpen) {\n this.__updateCalendarYearMonth();\n\n this.__dropdownIsOpen = true;\n }\n },\n __closeDropdown: function () {\n if (this.__dropdownIsOpen) {\n this.__dropdownIsOpen = false;\n\n this.__blurCalendar();\n }\n },\n __focusCalendar: function () {\n this.__calendarHasFocus = true;\n },\n __blurCalendar: function () {\n this.__calendarHasFocus = false;\n this.__focusedDate = null;\n }\n },\n events: {\n // Fired when input focus is set onto the UI control.\n focus: {\n bubbles: true,\n cancelable: false\n },\n // Fired when input focus is removed from the UI control.\n blur: {\n bubbles: true,\n cancelable: false\n },\n // Mimics the native `change` event on inputs.\n // The event `detail` contains the current value of the field.\n change: {\n bubbles: true,\n cancelable: false,\n detailType: 'DatePicker.ChangeDetail'\n },\n // Mimics the native `input` event on inputs.\n // The event `detail` contains the current value of the field.\n input: {\n bubbles: true,\n cancelable: false,\n detailType: 'DatePicker.ChangeDetail'\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var Input = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_input_src_base_input__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n value: Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"isoToDisplay\"])(this.value),\n rightIcon: \"calendar\",\n rightIconVariant: \"subtle\",\n autocomplete: false,\n disabled: this.disabled,\n readonly: this.readonly,\n \"aria-invalid\": this.invalid,\n \"aria-required\": this.ariaRequired,\n additionalAttrs: {\n name: this.name,\n id: this.controlId || null,\n placeholder: this.placeholder,\n autofocus: this.autofocus,\n 'aria-describedby': this.ariaDescribedby || this.__suggestedAriaDescribedby || undefined,\n 'aria-label': this.label,\n 'aria-labelledby': this.ariaLabelledby\n }\n });\n\n if (this.disabled || this.readonly) {\n return Input;\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_dropdown__WEBPACK_IMPORTED_MODULE_3__[\"default\"], {\n isOpen: this.__dropdownIsOpen,\n onOpen: function () {\n return _this.__openDropdown();\n },\n onClose: function () {\n return _this.__closeDropdown();\n },\n focusContent: function () {\n return _this.__focusCalendar();\n },\n input: Input,\n content: // Our current TSX typings don't understand mithril components.\n // Something like https://github.com/andraaspar/mithril-tsx-component/blob/master/index.ts\n // could be a solution, but that requires a Class-based mithril component, which our Runtime\n // also doesn't currently handle.\n // @ts-ignore\n _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_calendar__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n year: this.__calendarYear,\n month: this.__calendarMonth,\n locale: this.locale,\n startOfWeek: this.startOfWeek,\n selectedDate: this.value.length >= 10 ? Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"memoizedDate\"])('value', this.value) : null,\n focusedDate: Object(_utils_date__WEBPACK_IMPORTED_MODULE_5__[\"memoizedDate\"])('focused', this.__focusedDate),\n isDateEnabled: this.isDateEnabled,\n todayLabel: this.todayLabel,\n nextMonthLabel: this.nextMonthLabel,\n previousMonthLabel: this.previousMonthLabel,\n hasFocus: this.__calendarHasFocus,\n onChangeMonth: this.__onChangeMonth,\n onSelectDate: this.__onSelectDate,\n onFocusDate: this.__onFocusDate\n })\n });\n }\n}); //# sourceMappingURL=date-picker.js.map\n\n/***/ }),\n/* 259 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _time_input_src_controllers_MaskedInputController__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(260);\nvar __extends = undefined && undefined.__extends || function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf || {\n __proto__: []\n } instanceof Array && function (d, b) {\n d.__proto__ = b;\n } || function (d, b) {\n for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\n };\n\n return extendStatics(d, b);\n };\n\n return function (d, b) {\n extendStatics(d, b);\n\n function __() {\n this.constructor = d;\n }\n\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n}();\n\n\n\nvar DateInputMaskController =\n/** @class */\nfunction (_super) {\n __extends(DateInputMaskController, _super);\n\n function DateInputMaskController() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n\n DateInputMaskController.prototype.setNode = function (node) {\n this.node = node;\n };\n\n DateInputMaskController.prototype.sendChangeIfNeeded = function (value) {\n this.changeListener(value);\n };\n\n return DateInputMaskController;\n}(_time_input_src_controllers_MaskedInputController__WEBPACK_IMPORTED_MODULE_0__[\"default\"]);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (DateInputMaskController); //# sourceMappingURL=DateInputMaskController.js.map\n\n/***/ }),\n/* 260 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_runtime_src_logging_logger__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(10);\n/* harmony import */ var _input_src_controllers_InputController__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(144);\n/* harmony import */ var _utils_strings__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(261);\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(5);\n/* harmony import */ var _utils_keys__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(262);\n/* harmony import */ var _utils_MaskFormat__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(263);\nvar __extends = undefined && undefined.__extends || function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf || {\n __proto__: []\n } instanceof Array && function (d, b) {\n d.__proto__ = b;\n } || function (d, b) {\n for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\n };\n\n return extendStatics(d, b);\n };\n\n return function (d, b) {\n extendStatics(d, b);\n\n function __() {\n this.constructor = d;\n }\n\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n}();\n\n\n\n\n\n\n\n\nvar MaskedInputController =\n/** @class */\nfunction (_super) {\n __extends(MaskedInputController, _super);\n\n function MaskedInputController(component, node) {\n var _this = _super.call(this, component, node) || this;\n\n _this.component = component;\n _this.node = node;\n\n _this._pasteListener = function (e) {\n return _this.pasteListener(e);\n };\n\n return _this;\n }\n\n MaskedInputController.prototype.addListeners = function () {\n _super.prototype.addListeners.call(this);\n\n this.node.addEventListener('paste', this._pasteListener);\n };\n\n MaskedInputController.prototype.removeListeners = function () {\n _super.prototype.removeListeners.call(this);\n\n this.node.removeEventListener('paste', this._pasteListener);\n };\n\n MaskedInputController.prototype.valueUpdateHandler = function (value) {\n var inputValue = this.format.tryAppendSeparator(value);\n\n if (!this.format.isValid(inputValue)) {\n inputValue = value;\n }\n\n _super.prototype.valueUpdateHandler.call(this, inputValue);\n };\n\n MaskedInputController.prototype.maskedValueAttributeChangeHandler = function (oldValue, newValue) {\n var toReturn;\n\n if (!this.format.isValid(newValue)) {\n _core_runtime_src_logging_logger__WEBPACK_IMPORTED_MODULE_0__[\"default\"].warn(\"Invalid string \\\"\" + newValue + \"\\\" provided to \" + this.node.tagName + \"#\" + this.node.id);\n toReturn = oldValue;\n } else {\n toReturn = newValue;\n }\n\n this.valueAttributeChangeHandler(toReturn);\n return toReturn;\n };\n\n MaskedInputController.prototype.setFormat = function (format) {\n this.format = new _utils_MaskFormat__WEBPACK_IMPORTED_MODULE_5__[\"default\"](format);\n };\n\n MaskedInputController.prototype.reformat = function (format, value) {\n this.setFormat(format);\n return this.format.correctMinMaxValues(value);\n };\n\n MaskedInputController.prototype.setCursorPosition = function (position) {\n this.node.querySelector('input').setSelectionRange(position, position);\n };\n\n MaskedInputController.prototype.changeListener = function (value) {\n if (value === void 0) {\n value = this.component.getValue();\n }\n\n if (value !== this.confirmedValue) {\n // Do not autocomplete if input is empty\n value = value ? this.format.autoComplete(value) : value;\n this.confirmedValue = value;\n this.component.notifyChange(value);\n }\n };\n\n MaskedInputController.prototype.keydownListener = function (event) {\n if (this.component.isReadOnly()) {\n return;\n }\n\n var inputElement = event.target;\n\n if (event.keyCode === _core_runtime_src__WEBPACK_IMPORTED_MODULE_3__[\"KeyCode\"].backspace) {\n this.backspaceHandler(event, inputElement);\n } else if (event.keyCode === _core_runtime_src__WEBPACK_IMPORTED_MODULE_3__[\"KeyCode\"].enter) {\n this.changeListener();\n } else if (Object(_utils_keys__WEBPACK_IMPORTED_MODULE_4__[\"isDigit\"])(event.key) || this.format.isSeparator(event.key)) {\n this.keyHandler(event, inputElement);\n } else if (!Object(_utils_keys__WEBPACK_IMPORTED_MODULE_4__[\"isCommand\"])(event)) {\n event.preventDefault();\n }\n };\n\n MaskedInputController.prototype.pasteListener = function (event) {\n event.preventDefault();\n\n if (this.component.isReadOnly() || this.component.isDisabled()) {\n return;\n }\n\n var pastedValue = this.formatPastedText(event);\n\n if (pastedValue !== this.component.getValue()) {\n this.valueUpdateHandler(pastedValue);\n }\n };\n\n MaskedInputController.prototype.backspaceHandler = function (event, inputElement) {\n var _this = this;\n\n var cursorStart = inputElement.selectionStart;\n var cursorEnd = inputElement.selectionEnd;\n var value = this.component.getValue();\n var length = value.length;\n\n var singleBackspaceHandler = function () {\n var deletingSeparator = _this.format.isSegmentStart(cursorStart);\n\n var atEnd = cursorStart === length;\n var deletingDigitInMiddle = !atEnd && !deletingSeparator && cursorStart > 0;\n\n if (deletingSeparator) {\n if (atEnd) {\n return {\n value: value.slice(0, cursorStart - 2),\n position: cursorStart - 2\n };\n }\n\n return _this.format.deleteSeparator(_this.component.getValue(), cursorStart);\n }\n\n if (deletingDigitInMiddle) {\n return _this.format.deleteDigit(_this.component.getValue(), cursorStart);\n }\n };\n\n var groupBackspaceHandler = function () {\n var isCursorAtEnd = cursorEnd === length;\n\n if (!isCursorAtEnd) {\n return _this.format.replaceDigitsWithZeroes(_this.component.getValue(), cursorStart, cursorEnd);\n }\n };\n\n var result = cursorStart === cursorEnd ? singleBackspaceHandler() : groupBackspaceHandler();\n\n if (result) {\n event.preventDefault();\n this.valueUpdateHandler(result.value);\n this.setCursorPosition(result.position);\n }\n };\n\n MaskedInputController.prototype.keyHandler = function (event, inputElement) {\n event.preventDefault();\n var position = inputElement.selectionStart;\n var initialValue = this.component.getValue();\n var value = initialValue;\n var length = value.length;\n var isSeparator = this.format.isSeparator(event.key); // return if no more digits can be added at the end\n\n if (position === length && length === this.format.getMaxLength()) {\n return;\n } // if range is selected to the end, remove all of that selection first\n\n\n if (position !== length && inputElement.selectionEnd === length) {\n var sliceEnd = this.format.isCursorAtSeparator(position) ? position + 1 : position;\n value = value.slice(0, sliceEnd);\n }\n\n if (this.format.isCursorAtSeparator(position)) {\n this.component.overrideValue(value);\n this.setCursorPosition(position + 1);\n return;\n }\n\n if (isSeparator) {\n var result = this.format.handleSeparatorInput(value, position);\n\n if (result) {\n value = result.value;\n position = result.position;\n }\n } else {\n var result = this.processKey(value, position, event.key);\n value = result.value;\n position = result.position;\n }\n\n value = this.format.tryAppendSeparator(value); // Move cursor in front of separator if behind after overwriting a character\n\n if (this.format.isCursorAtSeparator(position)) {\n position++;\n }\n\n if (value !== initialValue) {\n this.valueUpdateHandler(value);\n } else {\n this.component.overrideValue(value);\n }\n\n this.setCursorPosition(position);\n };\n\n MaskedInputController.prototype.formatPastedText = function (event) {\n var inputElement = event.target;\n var cursorStart = inputElement.selectionStart;\n var cursorEnd = inputElement.selectionEnd;\n var text = (event.clipboardData || window.clipboardData).getData('text');\n var keyArr = text.trim().split('');\n var position = cursorStart;\n var value = this.component.getValue(); // if a selection range captures the end of the current value\n // we replace it with the value in buffer even if the value in buffer is shorter\n\n if (cursorEnd > cursorStart && cursorEnd === value.length) {\n value = value.slice(0, cursorStart);\n }\n\n for (var _i = 0, keyArr_1 = keyArr; _i < keyArr_1.length; _i++) {\n var key = keyArr_1[_i];\n\n if (position >= this.format.getMaxLength()) {\n break;\n }\n\n if (this.format.isCursorAtSeparator(position)) {\n value = Object(_utils_strings__WEBPACK_IMPORTED_MODULE_2__[\"insertAt\"])(value, this.format.separator, position, position + 1);\n position += 1;\n\n if (this.format.isSeparator(key)) {\n continue;\n }\n }\n\n var newValue = Object(_utils_strings__WEBPACK_IMPORTED_MODULE_2__[\"insertAt\"])(value, key, position, position + 1);\n\n if (!this.format.isValid(newValue)) {\n break;\n }\n\n var result = this.processKey(value, position, key);\n value = result.value;\n position = result.position;\n }\n\n return this.format.tryAppendSeparator(value);\n };\n\n MaskedInputController.prototype.processKey = function (text, position, key) {\n var isCursorAtEnd = position === text.length;\n var segmentValue = this.format.getSegmentValueWithAddition(position, text, key);\n var segmentMaxValue = this.format.getSegmentMaxValue(text, position);\n var segmentMinValue = this.format.getSegmentMinValue(text, position);\n var firstDigitGreater = parseInt(key, 10) > parseInt(segmentMaxValue.toFixed()[0], 10);\n var isValidPosition = isCursorAtEnd || segmentValue.toFixed().length === 1;\n var exceedsMaxAtSegmentStart = this.format.isSegmentStart(position) && isValidPosition && firstDigitGreater;\n var offset = 0;\n var value = text;\n\n if (exceedsMaxAtSegmentStart) {\n // 22:| => Enter '9' => 22:09|\n // |1 => Enter '9' => 09|\n value = Object(_utils_strings__WEBPACK_IMPORTED_MODULE_2__[\"insertAt\"])(value, \"0\" + key, position, position + 2);\n offset = 2;\n } else if (segmentValue > segmentMaxValue && this.format.isSegmentStart(position)) {\n // 22:|22 => Enter '9' => 22:59|\n value = Object(_utils_strings__WEBPACK_IMPORTED_MODULE_2__[\"insertAt\"])(value, segmentMaxValue.toFixed(), position, position + segmentMaxValue.toFixed().length);\n offset = segmentMaxValue.toFixed().length;\n } else if (segmentValue > segmentMaxValue) {\n // 2|2:22 => Enter '9' => 23:|22\n value = Object(_utils_strings__WEBPACK_IMPORTED_MODULE_2__[\"insertAt\"])(value, segmentMaxValue.toFixed(), position - 1, position + 1);\n offset = 1;\n } else if (segmentValue < segmentMinValue && !this.format.isSegmentStart(position)) {\n // 0| => enter '0' => 01:\n value = Object(_utils_strings__WEBPACK_IMPORTED_MODULE_2__[\"insertAt\"])(value, segmentMinValue.toFixed(), position, position + 1);\n offset = 1;\n } else {\n // 22:| => Enter '5' => 23:5|\n value = Object(_utils_strings__WEBPACK_IMPORTED_MODULE_2__[\"insertAt\"])(value, key, position, position + 1);\n offset = 1;\n }\n\n return {\n value: value,\n position: position + offset\n };\n };\n\n return MaskedInputController;\n}(_input_src_controllers_InputController__WEBPACK_IMPORTED_MODULE_1__[\"default\"]);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (MaskedInputController); //# sourceMappingURL=MaskedInputController.js.map\n\n/***/ }),\n/* 261 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"insertAt\", function() { return insertAt; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"padLeftZeros\", function() { return padLeftZeros; });\nvar insertAt = function (text, toInsert, start, end) {\n if (end === void 0) {\n end = start;\n }\n\n return text.slice(0, start) + toInsert + text.slice(end);\n};\nvar padLeftZeros = function (value, length) {\n while (value.length < length) {\n value = \"0\" + value;\n }\n\n return value;\n}; //# sourceMappingURL=strings.js.map\n\n/***/ }),\n/* 262 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isCommand\", function() { return isCommand; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isDigit\", function() { return isDigit; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n\n\nvar isSpecialCommand = function (event) {\n var keyCode = event.keyCode;\n return keyCode > 7 && keyCode < 47 && keyCode !== _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].space;\n};\n\nvar isClipboardCommand = function (event) {\n return event.ctrlKey || event.metaKey;\n};\n\nvar isCommand = function (event) {\n return isSpecialCommand(event) || isClipboardCommand(event);\n};\nvar isDigit = function (key) {\n return !isNaN(parseInt(key, 10));\n}; //# sourceMappingURL=keys.js.map\n\n/***/ }),\n/* 263 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _strings__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(261);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\nvar MaskFormat =\n/** @class */\nfunction () {\n function MaskFormat(_a) {\n var separator = _a.separator,\n _b = _a.inputSeparators,\n inputSeparators = _b === void 0 ? [] : _b,\n segments = _a.segments;\n this.separator = separator;\n this.inputSeparators = inputSeparators.concat([separator]);\n this.enrichSegmentDefinitions(segments);\n }\n\n MaskFormat.prototype.tryAppendSeparator = function (value) {\n var withSeparator = \"\" + value + this.separator;\n return this.isValid(withSeparator) ? withSeparator : value;\n };\n\n MaskFormat.prototype.isSeparator = function (key) {\n return this.inputSeparators.indexOf(key) !== -1;\n };\n\n MaskFormat.prototype.isValid = function (value) {\n var _this = this;\n\n var inputSegments = value.split(this.separator);\n\n if (inputSegments.length > this.segments.length) {\n return false;\n }\n\n return inputSegments.every(function (segmentValue, i) {\n var segment = _this.segments[i]; // disallow empty segments\n\n if (segmentValue === '') {\n // except empty last segment (e.g. trailing separator \"12:\")\n if (i === inputSegments.length - 1) {\n return true;\n } else {\n return false;\n }\n } // only allow numerals\n\n\n if (!segmentValue.match(/^\\d+$/)) {\n return false;\n } // disallow incomplete segments, except at end\n\n\n if (segmentValue.length < segment.length && i !== inputSegments.length - 1) {\n return false;\n } // limit numerical value\n\n\n var intValue = parseInt(segmentValue, 10);\n\n if (intValue < segment.min || intValue > segment.max(value)) {\n // allow incomplete segments in final position\n if (i === inputSegments.length - 1 && segmentValue.length < segment.length) {\n return true;\n }\n\n return false;\n }\n\n return true;\n });\n };\n\n MaskFormat.prototype.autoComplete = function (value) {\n // aka [...completeSegments, lastSegment] = value.split(':')\n // but that's not valid :/\n var _a = value.split(this.separator).reverse(),\n lastSegmentValue = _a[0],\n completeSegmentValues = _a.slice(1);\n\n var lastSegment = this.segments[completeSegmentValues.length]; // if the last segment isn't complete, pad it with a preceding 0\n // e.g. 10:1 -> 10:01\n\n lastSegmentValue = this.padWithDefaultValue(lastSegmentValue, lastSegment); // recombine, and pad with extra segments for the full format\n\n var partial = completeSegmentValues.reverse().concat([lastSegmentValue]);\n\n while (partial.length < this.segments.length) {\n var nextSegment = this.segments[partial.length];\n var segmentValue = this.padWithDefaultValue('', nextSegment);\n partial.push(segmentValue);\n }\n\n value = partial.join(this.separator);\n value = this.correctMinMaxValues(value);\n return value;\n };\n\n MaskFormat.prototype.getSegmentValueWithAddition = function (position, value, enteredDigit) {\n var segment = this.positionFormats[position];\n var segmentValue = value.substr(segment.start, segment.length);\n var segmentPosition = position - segment.start;\n var newValue = Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"insertAt\"])(segmentValue, enteredDigit, segmentPosition, segmentPosition + 1);\n return parseInt(newValue, 10);\n };\n\n MaskFormat.prototype.replaceDigitsWithZeroes = function (value, cursorStart, cursorEnd) {\n var position = this.isCursorAtSeparator(cursorStart) ? cursorStart + 1 : cursorStart; // move selection forwards if it starts with a separator\n\n if (this.isCursorAtSeparator(cursorStart)) {\n cursorStart++;\n } // first, insert zeros in a partial segment at beginning of selection\n\n\n if (!this.isSegmentStart(cursorStart)) {\n var segment = this.positionFormats[cursorStart];\n value = Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"insertAt\"])(value, Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"padLeftZeros\"])('', segment.end - cursorStart), cursorStart, segment.end);\n cursorStart = segment.end + 1;\n } // then loop through remaining segments, filling with zeros\n\n\n var currentSegment;\n\n while (cursorStart < cursorEnd && (currentSegment = this.positionFormats[cursorStart + 1])) {\n var insertionEnd = Math.min(cursorEnd, currentSegment.end);\n value = Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"insertAt\"])(value, Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"padLeftZeros\"])('', insertionEnd - currentSegment.start), currentSegment.start, insertionEnd);\n cursorStart = insertionEnd + 1;\n }\n\n value = this.correctMinMaxValues(value);\n return {\n value: value,\n position: position\n };\n };\n\n MaskFormat.prototype.handleSeparatorInput = function (value, position) {\n if (position === value.length && !this.isSegmentStart(position)) {\n var segment = this.positionFormats[position];\n var segmentValue = value.substr(segment.start, segment.length);\n segmentValue = this.padWithDefaultValue(segmentValue, segment);\n value = Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"insertAt\"])(value, segmentValue, segment.start, segment.end);\n value = this.correctMinMaxValues(value);\n return {\n value: value,\n position: value.length\n };\n }\n };\n\n MaskFormat.prototype.isCursorAtSeparator = function (position) {\n return 0 < position && position < this.getMaxLength() && this.positionFormats[position] === undefined;\n };\n\n MaskFormat.prototype.isSegmentStart = function (position) {\n return position === 0 || this.isCursorAtSeparator(position - 1);\n };\n\n MaskFormat.prototype.getSegmentMaxValue = function (value, position) {\n return this.positionFormats[position].max(value);\n };\n\n MaskFormat.prototype.getSegmentMinValue = function (value, position) {\n return this.positionFormats[position].min;\n };\n\n MaskFormat.prototype.getMaxLength = function () {\n var last = this.segments[this.segments.length - 1];\n return last.start + last.length;\n };\n\n MaskFormat.prototype.deleteSeparator = function (value, position) {\n value = Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"insertAt\"])(value, '0', position - 2, position - 1);\n return {\n value: this.correctMinMaxValues(value),\n position: position - 2\n };\n };\n\n MaskFormat.prototype.deleteDigit = function (value, position) {\n value = Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"insertAt\"])(value, '0', position - 1, position); // 23:59|: => backspace => 23:5|\n\n var length = value.length;\n\n if (value.slice(length - 2) === '0:') {\n value = value.slice(0, length - 2);\n }\n\n return {\n value: this.correctMinMaxValues(value),\n position: position - 1\n };\n };\n\n MaskFormat.prototype.correctMinMaxValues = function (value) {\n var segment = this.positionFormats[0];\n\n while (segment && value.length >= segment.end) {\n var segmentValue = parseInt(value.substr(segment.start, segment.length), 10);\n var segmentMax = segment.max(value);\n\n if (segmentValue < segment.min) {\n var toInsert = segment.min.toFixed();\n toInsert = Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"padLeftZeros\"])(toInsert, segment.length);\n value = Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"insertAt\"])(value, toInsert, segment.start, segment.end);\n }\n\n if (segmentValue > segmentMax) {\n value = Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"insertAt\"])(value, segmentMax.toFixed(), segment.start, segment.end);\n }\n\n segment = this.positionFormats[segment.end + 1];\n }\n\n return value.substr(0, this.segments[this.segments.length - 1].end);\n };\n\n MaskFormat.prototype.padWithDefaultValue = function (segmentValue, segment) {\n var defaultValue = (segment.default || segment.min).toFixed();\n defaultValue = Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"padLeftZeros\"])(defaultValue, segment.length);\n return Object(_strings__WEBPACK_IMPORTED_MODULE_0__[\"insertAt\"])(defaultValue, segmentValue, segment.length - segmentValue.length, segment.length);\n };\n\n MaskFormat.prototype.enrichSegmentDefinitions = function (segments) {\n this.positionFormats = {};\n this.segments = [];\n var position = 0;\n\n var _loop_1 = function (segment) {\n var max = segment.max;\n\n var fullSegment = __assign({}, segment, {\n max: typeof max === 'number' ? function () {\n return max;\n } : max,\n start: position,\n end: position + segment.length\n });\n\n this_1.segments.push(fullSegment); // insert this format segment for every char in the max value\n\n for (var j = 0; j < fullSegment.length; j++) {\n this_1.positionFormats[position++] = fullSegment;\n } // skip a position for separator\n\n\n position++;\n };\n\n var this_1 = this;\n\n for (var _i = 0, segments_1 = segments; _i < segments_1.length; _i++) {\n var segment = segments_1[_i];\n\n _loop_1(segment);\n }\n };\n\n return MaskFormat;\n}();\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (MaskFormat); //# sourceMappingURL=MaskFormat.js.map\n\n/***/ }),\n/* 264 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n\nvar DROPDOWN_PADDING = 50;\n\nfunction fitDropdown(dropdownNode) {\n var referenceElement = dropdownNode.previousElementSibling;\n\n if (referenceElement && dropdownNode) {\n var dropdownCb = new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"]({\n __componentName: 'awsui-input-dropdown'\n }, 'dropdown');\n var windowHeight = window.innerHeight;\n var dropdownHeight = dropdownNode.scrollHeight;\n var referenceBoundingRect = referenceElement.getBoundingClientRect();\n var availableSpaceBelow = windowHeight - referenceBoundingRect.bottom - DROPDOWN_PADDING;\n var availableSpaceAbove = referenceBoundingRect.top - DROPDOWN_PADDING;\n var shouldDropUp = dropdownHeight > availableSpaceBelow && availableSpaceAbove > availableSpaceBelow;\n var inputWidth = referenceBoundingRect.right - referenceBoundingRect.left;\n var widthDifference = dropdownNode.offsetWidth - inputWidth;\n var availableSpaceRight = window.innerWidth - referenceBoundingRect.right;\n var availableSpaceLeft = referenceBoundingRect.left;\n var shouldDropLeft = availableSpaceRight < widthDifference && availableSpaceLeft > widthDifference;\n dropdownCb.modifier('dropped-up', shouldDropUp);\n dropdownCb.modifier('dropped-left', shouldDropLeft);\n\n _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__DomUtils.addClass(dropdownNode, dropdownCb.toString());\n }\n}\n\nfunction openDropdown(open, onOpen) {\n if (!open) {\n onOpen();\n }\n}\n\nfunction closeDropdown(open, onClose) {\n if (open) {\n onClose();\n }\n}\n\nfunction handleKeydown(e, open, onClose) {\n if (e.keyCode === _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].escape) {\n e.currentTarget.querySelector('.awsui-input-dropdown__input input').focus();\n closeDropdown(open, onClose);\n }\n}\n\nfunction handleInputKeydown(e, focusContent, open, onOpen) {\n if (e.keyCode === _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].down) {\n openDropdown(open, onOpen);\n focusContent();\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (function (_a) {\n var input = _a.input,\n content = _a.content,\n isOpen = _a.isOpen,\n onOpen = _a.onOpen,\n onClose = _a.onClose,\n focusContent = _a.focusContent;\n var dropdownCb = new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"]({\n __componentName: 'awsui-input-dropdown'\n }, 'dropdown');\n dropdownCb.modifier('open', isOpen);\n var isBlurPrevented = false;\n\n var preventBlur = function () {\n return isBlurPrevented = true;\n };\n\n var handleBlur = function (e) {\n if (isBlurPrevented) {\n isBlurPrevented = false;\n e.preventDefault(); // steal back focus to the blurred input\n\n e.target.focus();\n return;\n } // ignore blur if we're focussing something else in the dropdown\n\n\n if (e.relatedTarget && e.currentTarget.parentElement.contains(e.relatedTarget)) {\n return;\n }\n\n closeDropdown(isOpen, onClose);\n };\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"]({\n __componentName: 'awsui-input-dropdown'\n }, 'container').toString(),\n onkeydown: function (e) {\n return handleKeydown(e, isOpen, onClose);\n }\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"]({\n __componentName: 'awsui-input-dropdown'\n }, 'input').toString(),\n onclick: function () {\n return openDropdown(isOpen, onOpen);\n },\n onfocusin: function () {\n return openDropdown(isOpen, onOpen);\n },\n onfocusout: function (e) {\n return handleBlur(e);\n },\n onkeydown: function (e) {\n return handleInputKeydown(e, focusContent, isOpen, onOpen);\n }\n }, input), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: dropdownCb.toString(),\n lifecycleKey: \"awsui-input-dropdown\",\n onmousedown: function () {\n return preventBlur();\n },\n componentDidMount: function (element) {\n return open && fitDropdown(element);\n },\n componentDidUpdate: function (element) {\n return open && fitDropdown(element);\n }\n }, isOpen && content));\n}); //# sourceMappingURL=dropdown.js.map\n\n/***/ }),\n/* 265 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _calendar__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(266);\n/* empty/unused harmony star reexport */\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (_calendar__WEBPACK_IMPORTED_MODULE_0__[\"default\"]); //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 266 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var weekstart_full__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(267);\n/* harmony import */ var weekstart_full__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(weekstart_full__WEBPACK_IMPORTED_MODULE_1__);\n/* harmony import */ var _header__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(272);\n/* harmony import */ var _grid__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(274);\n/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(276);\n/* harmony import */ var _utils_intl__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(273);\n/* harmony import */ var _utils_locales__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(467);\n\n\n\n\n\n\n\n\nvar shallowCompare = function (obj1, obj2) {\n return Object.keys(obj1).length === Object.keys(obj2).length && Object.keys(obj1).every(function (key) {\n return obj2.hasOwnProperty(key) && obj1[key] === obj2[key];\n });\n};\n\nfunction handleSelectDate(date, handler) {\n handler({\n date: date\n });\n}\n\nfunction handleMonthChange(prev, year, month, handler) {\n month += prev ? -1 : 1;\n\n if (month < 1) {\n month = 12;\n year--;\n }\n\n if (month > 12) {\n month = 1;\n year++;\n }\n\n handler({\n year: year,\n month: month\n });\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n view: function (_a) {\n var _b = _a.attrs,\n year = _b.year,\n month = _b.month,\n nextMonthLabel = _b.nextMonthLabel,\n previousMonthLabel = _b.previousMonthLabel,\n onChangeMonth = _b.onChangeMonth,\n onSelectDate = _b.onSelectDate,\n selectedDate = _b.selectedDate,\n isDateEnabled = _b.isDateEnabled,\n hasFocus = _b.hasFocus,\n todayLabel = _b.todayLabel,\n _c = _a.state,\n keydown = _c.keydown,\n focusedDate = _c.focusedDate,\n baseDate = _c.baseDate,\n normalizedLocale = _c.normalizedLocale,\n normalizedStartOfWeek = _c.normalizedStartOfWeek,\n focusFirstButton = _c.focusFirstButton,\n focusCurrentDate = _c.focusCurrentDate;\n\n var TabTrap = function (_a) {\n var next = _a.next;\n return hasFocus ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n tabindex: \"0\",\n onfocus: function (e) {\n return next(e.target.parentNode);\n }\n }) : null;\n };\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-calendar\",\n role: \"application\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(TabTrap, {\n next: focusCurrentDate\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_header__WEBPACK_IMPORTED_MODULE_2__[\"default\"], {\n locale: normalizedLocale,\n year: year,\n month: month,\n nextMonthLabel: nextMonthLabel,\n previousMonthLabel: previousMonthLabel,\n calendarHasFocus: hasFocus,\n onChangeMonth: function (prev) {\n return handleMonthChange(prev, year, month, onChangeMonth);\n }\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n onkeydown: keydown\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_grid__WEBPACK_IMPORTED_MODULE_3__[\"default\"], {\n locale: normalizedLocale,\n isDateEnabled: isDateEnabled,\n startOfWeek: normalizedStartOfWeek,\n selectedDate: selectedDate,\n focusedDate: focusedDate,\n baseDate: baseDate,\n todayLabel: todayLabel,\n onSelectDate: function (date) {\n return handleSelectDate(date, onSelectDate);\n }\n })), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(TabTrap, {\n next: focusFirstButton\n }));\n },\n oninit: function (_a) {\n var _this = this;\n\n var attrs = _a.attrs;\n\n this.setupState = function (_a) {\n var onFocusDate = _a.onFocusDate,\n onChangeMonth = _a.onChangeMonth,\n onSelectDate = _a.onSelectDate,\n focusedDate = _a.focusedDate,\n selectedDate = _a.selectedDate,\n isDateEnabled = _a.isDateEnabled,\n hasFocus = _a.hasFocus,\n year = _a.year,\n month = _a.month,\n locale = _a.locale,\n startOfWeek = _a.startOfWeek;\n\n var handleFocusMove = function (focussed, moveFn) {\n var current = moveFn(focussed);\n\n if (!isDateEnabled) {\n return current;\n }\n\n while (!isDateEnabled(current)) {\n if (Math.abs(Object(date_fns__WEBPACK_IMPORTED_MODULE_4__[\"differenceInMonths\"])(focussed, current)) > 1) {\n // if the entire month in the requested direction has no enabled dates,\n // we return the currently focused value\n return focussed;\n }\n\n current = moveFn(current);\n }\n\n return current;\n };\n\n var isDateAvailable = function (date) {\n return date && (!isDateEnabled || isDateEnabled(date));\n };\n\n var selectFocusedDate = function (selected, baseDate) {\n if (isDateAvailable(selected) && Object(date_fns__WEBPACK_IMPORTED_MODULE_4__[\"isSameMonth\"])(selected, baseDate)) {\n return selected;\n }\n\n var today = new Date();\n\n if (isDateAvailable(today) && Object(date_fns__WEBPACK_IMPORTED_MODULE_4__[\"isSameMonth\"])(today, baseDate)) {\n return today;\n }\n\n if (isDateAvailable(baseDate)) {\n return baseDate;\n }\n\n return null;\n };\n\n _this.normalizedLocale = Object(_utils_locales__WEBPACK_IMPORTED_MODULE_6__[\"normalizeLocale\"])(locale);\n _this.normalizedStartOfWeek = typeof startOfWeek === 'number' ? startOfWeek : Object(weekstart_full__WEBPACK_IMPORTED_MODULE_1__[\"getWeekStartByLocale\"])(_this.normalizedLocale);\n _this.baseDate = Object(_utils_intl__WEBPACK_IMPORTED_MODULE_5__[\"firstDayOfMonth\"])(year, month);\n\n if (!isDateAvailable(_this.baseDate)) {\n _this.baseDate = handleFocusMove(_this.baseDate, function (date) {\n return Object(date_fns__WEBPACK_IMPORTED_MODULE_4__[\"addDays\"])(date, 1);\n });\n }\n\n _this.focusedDate = hasFocus && (focusedDate || selectFocusedDate(selectedDate, _this.baseDate));\n\n _this.keydown = function (e) {\n switch (e.keyCode) {\n default:\n return;\n\n case _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].enter:\n e.preventDefault();\n\n if (focusedDate || _this.focusedDate) {\n onFocusDate({\n date: null\n });\n onSelectDate({\n date: focusedDate || _this.focusedDate\n });\n }\n\n return;\n\n case _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].right:\n e.preventDefault();\n focusedDate = handleFocusMove(_this.focusedDate, function (date) {\n return Object(date_fns__WEBPACK_IMPORTED_MODULE_4__[\"addDays\"])(date, 1);\n });\n break;\n\n case _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].left:\n e.preventDefault();\n focusedDate = handleFocusMove(_this.focusedDate, function (date) {\n return Object(date_fns__WEBPACK_IMPORTED_MODULE_4__[\"addDays\"])(date, -1);\n });\n break;\n\n case _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].up:\n e.preventDefault();\n focusedDate = handleFocusMove(_this.focusedDate, function (date) {\n return Object(date_fns__WEBPACK_IMPORTED_MODULE_4__[\"addWeeks\"])(date, -1);\n });\n break;\n\n case _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].down:\n e.preventDefault();\n focusedDate = handleFocusMove(_this.focusedDate, function (date) {\n return Object(date_fns__WEBPACK_IMPORTED_MODULE_4__[\"addWeeks\"])(date, 1);\n });\n break;\n }\n\n if (!Object(date_fns__WEBPACK_IMPORTED_MODULE_4__[\"isSameMonth\"])(focusedDate, _this.baseDate)) {\n onChangeMonth({\n year: focusedDate.getFullYear(),\n month: focusedDate.getMonth() + 1\n });\n }\n\n onFocusDate({\n date: focusedDate\n });\n };\n\n _this.focusCurrentDate = function (container) {\n var date = container.querySelector('.awsui-calendar__date--focusable');\n\n if (date) {\n date.focus();\n }\n };\n\n _this.focusFirstButton = function (container) {\n container.querySelector('awsui-button').component.focus();\n };\n };\n\n this.setupState(attrs);\n },\n onbeforeupdate: function (_a, _b) {\n var attrs = _a.attrs;\n var oldAttrs = _b.attrs,\n oldState = _b.state;\n\n if (shallowCompare(attrs, oldAttrs) && (oldState.focusedDate || '').toString() === (this.focusedDate || '').toString() && oldState.baseDate.toString() === this.baseDate.toString()) {\n return false;\n }\n\n this.setupState(attrs);\n },\n onupdate: function (_a) {\n var dom = _a.dom,\n _b = _a.attrs,\n hasFocus = _b.hasFocus,\n focusedDate = _b.focusedDate,\n _c = _a.state,\n focusCurrentDate = _c.focusCurrentDate,\n focusFirstButton = _c.focusFirstButton,\n baseDate = _c.baseDate;\n\n if (focusedDate && Object(date_fns__WEBPACK_IMPORTED_MODULE_4__[\"isSameMonth\"])(baseDate, focusedDate)) {\n focusCurrentDate(dom);\n }\n\n if (hasFocus && !dom.contains(document.activeElement)) {\n // wait for nested components to rerender, then focus first button\n setTimeout(function () {\n focusFirstButton(dom);\n });\n }\n }\n}); //# sourceMappingURL=calendar.js.map\n\n/***/ }),\n/* 267 */\n/***/ (function(module, exports, __webpack_require__) {\n\n/* eslint-env node */\r\n\r\nmodule.exports = __webpack_require__(268);\r\n\n\n/***/ }),\n/* 268 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar api = __webpack_require__(269);\nvar langRegionMap = _interopDefault(__webpack_require__(270));\nvar regionDayMap = _interopDefault(__webpack_require__(271));\n\nfunction getWeekStartByRegion$1(regionCode) {\n return api.getWeekStartByRegion(regionCode, regionDayMap);\n}\n\nfunction getWeekStartByLocale$1(locale) {\n return api.getWeekStartByLocale(locale, langRegionMap, regionDayMap);\n}\n\nexports.getWeekStartByRegion = getWeekStartByRegion$1;\nexports.getWeekStartByLocale = getWeekStartByLocale$1;\n//# sourceMappingURL=full.js.map\n\n\n/***/ }),\n/* 269 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nfunction getWeekStartByRegion(regionCode, regionDayMap) {\n var code = regionDayMap[typeof regionCode === 'string' ? regionCode.toUpperCase() : regionCode];\n return typeof code === 'number' ? code : 1;\n}\n\nfunction getWeekStartByLocale(locale, langRegionMap, regionDayMap) {\n if (locale) {\n var data = locale.toLowerCase().split(/[-_]/);\n var language = data[0];\n var country;\n if (data[1] && data[1].length === 4) {\n language += \"_\" + (data[1]);\n country = data[2];\n } else {\n country = data[1];\n }\n if (!country) {\n country = langRegionMap[language];\n }\n if (country) {\n return getWeekStartByRegion(country.match(/^\\d+$/) ? Number(country) : country, regionDayMap);\n }\n }\n return 1;\n}\n\nexports.getWeekStartByRegion = getWeekStartByRegion;\nexports.getWeekStartByLocale = getWeekStartByLocale;\n//# sourceMappingURL=api.js.map\n\n\n/***/ }),\n/* 270 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar langRegionMap = {\n en: 'US',\n zh: 'CN',\n zh_hans: 'CN',\n hans: 'CN',\n wuu: 'CN',\n hsn: 'CN',\n hak: 'CN',\n nan: 'CN',\n gan: 'CN',\n ii: 'CN',\n ug: 'CN',\n ug_arab: 'CN',\n za: 'CN',\n mn_mong: 'CN',\n bo: 'CN',\n kk_arab: 'CN',\n lis: 'CN',\n ky_arab: 'CN',\n nxq: 'CN',\n tdd: 'CN',\n khb: 'CN',\n lcp: 'CN',\n hi: 'IN',\n te: 'IN',\n mr: 'IN',\n ta: 'IN',\n gu: 'IN',\n kn: 'IN',\n or: 'IN',\n ml: 'IN',\n pa_guru: 'IN',\n bho: 'IN',\n awa: 'IN',\n as: 'IN',\n mwr: 'IN',\n mai: 'IN',\n mag: 'IN',\n bgc: 'IN',\n hne: 'IN',\n dcc: 'IN',\n bjj: 'IN',\n sat: 'IN',\n wtm: 'IN',\n ks: 'IN',\n ks_arab: 'IN',\n kok: 'IN',\n gom: 'IN',\n swv: 'IN',\n lmn: 'IN',\n gbm: 'IN',\n gon: 'IN',\n gon_telu: 'IN',\n kfy: 'IN',\n kru: 'IN',\n doi: 'IN',\n wbq: 'IN',\n sck: 'IN',\n xnr: 'IN',\n wbr: 'IN',\n tcy: 'IN',\n khn: 'IN',\n brx: 'IN',\n noe: 'IN',\n bhb: 'IN',\n mni: 'IN',\n raj: 'IN',\n hoc: 'IN',\n mtr: 'IN',\n unr: 'IN',\n unr_beng: 'IN',\n bhi: 'IN',\n hoj: 'IN',\n kha: 'IN',\n kfr: 'IN',\n grt: 'IN',\n unx: 'IN',\n unx_beng: 'IN',\n bfy: 'IN',\n srx: 'IN',\n saz: 'IN',\n sd_deva: 'IN',\n njo: 'IN',\n bjq: 'IN',\n ria: 'IN',\n bpy: 'IN',\n bra: 'IN',\n lep: 'IN',\n sa: 'IN',\n kht: 'IN',\n kgp: 'BR',\n gub: 'BR',\n yrl: 'BR',\n xav: 'BR',\n dz: 'BT',\n tn: 'BW',\n pdt: 'CA',\n crk: 'CA',\n cr: 'CA',\n cr_cans: 'CA',\n iu: 'CA',\n iu_cans: 'CA',\n iu_latn: 'CA',\n moe: 'CA',\n crj: 'CA',\n atj: 'CA',\n crl: 'CA',\n csw: 'CA',\n crm: 'CA',\n ikt: 'CA',\n moh: 'CA',\n dgr: 'CA',\n den: 'CA',\n scs: 'CA',\n nsk: 'CA',\n chp: 'CA',\n gwi: 'CA',\n guc: 'CO',\n am: 'ET',\n om: 'ET',\n ti: 'ET',\n sid: 'ET',\n wal: 'ET',\n aa: 'ET',\n quc: 'GT',\n ch: 'GU',\n id: 'ID',\n jv: 'ID',\n su: 'ID',\n mad: 'ID',\n ms_arab: 'ID',\n min: 'ID',\n bew: 'ID',\n ban: 'ID',\n bug: 'ID',\n bjn: 'ID',\n ace: 'ID',\n sas: 'ID',\n bbc: 'ID',\n mak: 'ID',\n ljp: 'ID',\n rej: 'ID',\n gor: 'ID',\n nij: 'ID',\n kge: 'ID',\n aoz: 'ID',\n kvr: 'ID',\n lbw: 'ID',\n gay: 'ID',\n rob: 'ID',\n sxn: 'ID',\n mdr: 'ID',\n sly: 'ID',\n mwv: 'ID',\n ga: 'IE',\n he: 'IL',\n lad: 'IL',\n jam: 'JM',\n ja: 'JP',\n ryu: 'JP',\n ki: 'KE',\n luy: 'KE',\n luo: 'KE',\n kln: 'KE',\n kam: 'KE',\n guz: 'KE',\n mer: 'KE',\n ebu: 'KE',\n dav: 'KE',\n pko: 'KE',\n saq: 'KE',\n km: 'KH',\n cja: 'KH',\n ko: 'KR',\n lo: 'LA',\n kjg: 'LA',\n mh: 'MH',\n my: 'MM',\n shn: 'MM',\n kac: 'MM',\n mnw: 'MM',\n mt: 'MT',\n yua: 'MX',\n nhe: 'MX',\n nhw: 'MX',\n maz: 'MX',\n nch: 'MX',\n sei: 'MX',\n vmw: 'MZ',\n ndc: 'MZ',\n ngl: 'MZ',\n seh: 'MZ',\n mgh: 'MZ',\n rng: 'MZ',\n yao: 'MZ',\n ne: 'NP',\n 'new': 'NP',\n jml: 'NP',\n taj: 'NP',\n thl: 'NP',\n bap: 'NP',\n tdg: 'NP',\n thr: 'NP',\n mgp: 'NP',\n lif: 'NP',\n lif_deva: 'NP',\n thq: 'NP',\n mrd: 'NP',\n xsr: 'NP',\n rjs: 'NP',\n tsf: 'NP',\n ggn: 'NP',\n gvr: 'NP',\n tkt: 'NP',\n tdh: 'NP',\n unr_deva: 'NP',\n mi: 'NZ',\n qu: 'PE',\n fil: 'PH',\n ceb: 'PH',\n ilo: 'PH',\n hil: 'PH',\n bik: 'PH',\n war: 'PH',\n pam: 'PH',\n bhk: 'PH',\n pag: 'PH',\n mdh: 'PH',\n tsg: 'PH',\n cps: 'PH',\n krj: 'PH',\n bto: 'PH',\n hnn: 'PH',\n tbw: 'PH',\n bku: 'PH',\n ur: 'PK',\n pa: 'PK',\n pa_arab: 'PK',\n arab: 'PK',\n lah: 'PK',\n ps: 'PK',\n sd: 'PK',\n sd_arab: 'PK',\n skr: 'PK',\n bal: 'PK',\n brh: 'PK',\n hno: 'PK',\n bgn: 'PK',\n hnd: 'PK',\n tg_arab: 'PK',\n gju: 'PK',\n bft: 'PK',\n kvx: 'PK',\n khw: 'PK',\n mvy: 'PK',\n kxp: 'PK',\n gjk: 'PK',\n btv: 'PK',\n gn: 'PY',\n th: 'TH',\n tts: 'TH',\n nod: 'TH',\n sou: 'TH',\n mfa: 'TH',\n kxm: 'TH',\n kdt: 'TH',\n lwl: 'TH',\n aeb: 'TN',\n zh_hant: 'TW',\n hant: 'TW',\n trv: 'TW',\n nv: 'US',\n pdc: 'US',\n haw: 'US',\n frc: 'US',\n chr: 'US',\n esu: 'US',\n dak: 'US',\n cho: 'US',\n lkt: 'US',\n ik: 'US',\n mus: 'US',\n sm: 'WS',\n zu: 'ZA',\n xh: 'ZA',\n af: 'ZA',\n nso: 'ZA',\n st: 'ZA',\n ts: 'ZA',\n ss: 'ZA',\n ve: 'ZA',\n nr: 'ZA',\n sn: 'ZW',\n nd: 'ZW',\n mxc: 'ZW',\n kck: 'ZW',\n haz: 'AF',\n uz_arab: 'AF',\n arq: 'DZ',\n kab: 'DZ',\n ar: 'EG',\n arz: 'EG',\n ckb: 'IQ',\n syr: 'IQ',\n fa: 'IR',\n az_arab: 'IR',\n mzn: 'IR',\n glk: 'IR',\n sdh: 'IR',\n lrc: 'IR',\n rmt: 'IR',\n bqi: 'IR',\n luz: 'IR',\n lki: 'IR',\n prd: 'IR',\n gbz: 'IR',\n ary: 'MA',\n zgh: 'MA',\n tzm: 'MA',\n tzm_latn: 'MA',\n shi: 'MA',\n shi_latn: 'MA',\n shi_tfng: 'MA',\n tfng: 'MA',\n rif: 'MA',\n rif_latn: 'MA',\n rif_tfng: 'MA',\n bej: 'SD',\n fvr: 'SD',\n mls: 'SD',\n fia: 'SD',\n zag: 'SD',\n bn: 'BD',\n rkt: 'BD',\n syl: 'BD',\n ccp: 'BD',\n dv: 'MV'\n};\n\nmodule.exports = langRegionMap;\n//# sourceMappingURL=fullLangRegionMap.js.map\n\n\n/***/ }),\n/* 271 */\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nvar regionDayMap = {\n AG: 0,\n ATG: 0,\n 28: 0,\n AR: 0,\n ARG: 0,\n 32: 0,\n AS: 0,\n ASM: 0,\n 16: 0,\n AU: 0,\n AUS: 0,\n 36: 0,\n BR: 0,\n BRA: 0,\n 76: 0,\n BS: 0,\n BHS: 0,\n 44: 0,\n BT: 0,\n BTN: 0,\n 64: 0,\n BW: 0,\n BWA: 0,\n 72: 0,\n BZ: 0,\n BLZ: 0,\n 84: 0,\n CA: 0,\n CAN: 0,\n 124: 0,\n CN: 0,\n CHN: 0,\n 156: 0,\n CO: 0,\n COL: 0,\n 170: 0,\n DM: 0,\n DMA: 0,\n 212: 0,\n DO: 0,\n DOM: 0,\n 214: 0,\n ET: 0,\n ETH: 0,\n 231: 0,\n GT: 0,\n GTM: 0,\n 320: 0,\n GU: 0,\n GUM: 0,\n 316: 0,\n HK: 0,\n HKG: 0,\n 344: 0,\n HN: 0,\n HND: 0,\n 340: 0,\n ID: 0,\n IDN: 0,\n 360: 0,\n IE: 0,\n IRL: 0,\n 372: 0,\n IL: 0,\n ISR: 0,\n 376: 0,\n IN: 0,\n IND: 0,\n 356: 0,\n JM: 0,\n JAM: 0,\n 388: 0,\n JP: 0,\n JPN: 0,\n 392: 0,\n KE: 0,\n KEN: 0,\n 404: 0,\n KH: 0,\n KHM: 0,\n 116: 0,\n KR: 0,\n KOR: 0,\n 410: 0,\n LA: 0,\n LA0: 0,\n 418: 0,\n MH: 0,\n MHL: 0,\n 584: 0,\n MM: 0,\n MMR: 0,\n 104: 0,\n MO: 0,\n MAC: 0,\n 446: 0,\n MT: 0,\n MLT: 0,\n 470: 0,\n MX: 0,\n MEX: 0,\n 484: 0,\n MZ: 0,\n MOZ: 0,\n 508: 0,\n NI: 0,\n NIC: 0,\n 558: 0,\n NP: 0,\n NPL: 0,\n 524: 0,\n NZ: 0,\n NZL: 0,\n 554: 0,\n PA: 0,\n PAN: 0,\n 591: 0,\n PE: 0,\n PER: 0,\n 604: 0,\n PH: 0,\n PHL: 0,\n 608: 0,\n PK: 0,\n PAK: 0,\n 586: 0,\n PR: 0,\n PRI: 0,\n 630: 0,\n PY: 0,\n PRY: 0,\n 600: 0,\n SA: 0,\n SAU: 0,\n 682: 0,\n SG: 0,\n SGP: 0,\n 702: 0,\n SV: 0,\n SLV: 0,\n 222: 0,\n TH: 0,\n THA: 0,\n 764: 0,\n TN: 0,\n TUN: 0,\n 788: 0,\n TT: 0,\n TTO: 0,\n 780: 0,\n TW: 0,\n TWN: 0,\n 158: 0,\n UM: 0,\n UMI: 0,\n 581: 0,\n US: 0,\n USA: 0,\n 840: 0,\n VE: 0,\n VEN: 0,\n 862: 0,\n VI: 0,\n VIR: 0,\n 850: 0,\n WS: 0,\n WSM: 0,\n 882: 0,\n YE: 0,\n YEM: 0,\n 887: 0,\n ZA: 0,\n ZAF: 0,\n 710: 0,\n ZW: 0,\n ZWE: 0,\n 716: 0,\n AE: 6,\n ARE: 6,\n 784: 6,\n AF: 6,\n AFG: 6,\n 4: 6,\n BH: 6,\n BHR: 6,\n 48: 6,\n DJ: 6,\n DJI: 6,\n 262: 6,\n DZ: 6,\n DZA: 6,\n 12: 6,\n EG: 6,\n EGY: 6,\n 818: 6,\n IQ: 6,\n IRQ: 6,\n 368: 6,\n IR: 6,\n IRN: 6,\n 364: 6,\n JO: 6,\n JOR: 6,\n 400: 6,\n KW: 6,\n KWT: 6,\n 414: 6,\n LY: 6,\n LBY: 6,\n 434: 6,\n MA: 6,\n MAR: 6,\n 504: 6,\n OM: 6,\n OMN: 6,\n 512: 6,\n QA: 6,\n QAT: 6,\n 634: 6,\n SD: 6,\n SDN: 6,\n 729: 6,\n SY: 6,\n SYR: 6,\n 760: 6,\n BD: 5,\n BGD: 5,\n 50: 5,\n MV: 5,\n MDV: 5,\n 462: 5\n};\n\nmodule.exports = regionDayMap;\n//# sourceMappingURL=regionDayMap.js.map\n\n\n/***/ }),\n/* 272 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _button_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48);\n/* harmony import */ var _utils_intl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(273);\n\n\n\n\nvar HeaderButton = function (_a) {\n var label = _a.label,\n onChangeMonth = _a.onChangeMonth,\n isPrevious = _a.isPrevious,\n focusable = _a.focusable;\n var icon = isPrevious ? 'angle-left' : 'angle-right';\n var className = \"awsui-calendar__button awsui-calendar__button--\" + (isPrevious ? 'previous' : 'next');\n\n var click = function (e) {\n e.preventDefault();\n onChangeMonth(isPrevious);\n };\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_button_src__WEBPACK_IMPORTED_MODULE_1__[\"Button\"], {\n variant: \"icon\",\n icon: icon,\n label: label,\n click: click,\n className: className,\n __tabindex: focusable ? 0 : -1\n });\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (function (_a) {\n var year = _a.year,\n month = _a.month,\n locale = _a.locale,\n onChangeMonth = _a.onChangeMonth,\n nextMonthLabel = _a.nextMonthLabel,\n previousMonthLabel = _a.previousMonthLabel,\n calendarHasFocus = _a.calendarHasFocus;\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-calendar__header\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(HeaderButton, {\n focusable: calendarHasFocus,\n isPrevious: true,\n label: previousMonthLabel,\n onChangeMonth: onChangeMonth\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-calendar__header-month\",\n \"aria-live\": \"polite\"\n }, Object(_utils_intl__WEBPACK_IMPORTED_MODULE_2__[\"renderMonthAndYear\"])(locale, month, year)), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(HeaderButton, {\n focusable: calendarHasFocus,\n isPrevious: false,\n label: nextMonthLabel,\n onChangeMonth: onChangeMonth\n }));\n}); //# sourceMappingURL=header.js.map\n\n/***/ }),\n/* 273 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"firstDayOfMonth\", function() { return firstDayOfMonth; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"renderDayName\", function() { return renderDayName; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"renderMonthAndYear\", function() { return renderMonthAndYear; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"renderDayLabel\", function() { return renderDayLabel; });\nfunction setDayIndex(date, dayIndex) {\n var diff = dayIndex - date.getDay();\n date.setDate(date.getDate() + diff);\n}\n\nfunction firstDayOfMonth(year, month) {\n return new Date(year, month - 1, 1);\n}\nfunction renderDayName(locale, dayIndex) {\n var tempDate = new Date();\n setDayIndex(tempDate, dayIndex);\n return tempDate.toLocaleDateString(locale, {\n weekday: 'short'\n });\n}\nfunction renderMonthAndYear(locale, month, year) {\n return firstDayOfMonth(year, month).toLocaleDateString(locale, {\n year: 'numeric',\n month: 'long'\n });\n}\nfunction renderDayLabel(locale, date) {\n return date.toLocaleDateString(locale, {\n weekday: 'long',\n month: 'short',\n day: 'numeric'\n });\n} //# sourceMappingURL=intl.js.map\n\n/***/ }),\n/* 274 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _grid_date__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(275);\n/* harmony import */ var _utils_rotateDayIndexes__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(465);\n/* harmony import */ var _utils_generate_month_grid__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(466);\n/* harmony import */ var _utils_intl__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(273);\n\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (function (_a) {\n var startOfWeek = _a.startOfWeek,\n locale = _a.locale,\n selectedDate = _a.selectedDate,\n focusedDate = _a.focusedDate,\n baseDate = _a.baseDate,\n isDateEnabled = _a.isDateEnabled,\n todayLabel = _a.todayLabel,\n onSelectDate = _a.onSelectDate;\n var weeks = Object(_utils_generate_month_grid__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(baseDate, {\n firstDay: startOfWeek\n });\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", null, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-calendar__day-names\"\n }, Object(_utils_rotateDayIndexes__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(startOfWeek).map(function (i) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-calendar__day-name\"\n }, Object(_utils_intl__WEBPACK_IMPORTED_MODULE_4__[\"renderDayName\"])(locale, i));\n })), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-calendar__dates\"\n }, weeks.map(function (week) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-calendar__week\"\n }, week.map(function (date) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_grid_date__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n locale: locale,\n baseDate: baseDate,\n isDateEnabled: isDateEnabled,\n date: date,\n selectedDate: selectedDate,\n focusedDate: focusedDate,\n todayLabel: todayLabel,\n onSelectDate: onSelectDate\n });\n }));\n })));\n}); //# sourceMappingURL=grid.js.map\n\n/***/ }),\n/* 275 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(276);\n/* harmony import */ var _utils_intl__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(273);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (function (_a) {\n var locale = _a.locale,\n baseDate = _a.baseDate,\n date = _a.date,\n selectedDate = _a.selectedDate,\n focusedDate = _a.focusedDate,\n isDateEnabled = _a.isDateEnabled,\n todayLabel = _a.todayLabel,\n onSelectDate = _a.onSelectDate;\n var labels = [Object(_utils_intl__WEBPACK_IMPORTED_MODULE_2__[\"renderDayLabel\"])(locale, date)];\n var isFocusable = Object(date_fns__WEBPACK_IMPORTED_MODULE_1__[\"isSameDay\"])(date, focusedDate);\n var isSelected = !!selectedDate && Object(date_fns__WEBPACK_IMPORTED_MODULE_1__[\"isSameDay\"])(date, selectedDate);\n var isEnabled = !isDateEnabled || isDateEnabled(date);\n var classBuilder = new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"]({\n __componentName: 'awsui-calendar'\n }, 'date');\n classBuilder.modifier('current-month', Object(date_fns__WEBPACK_IMPORTED_MODULE_1__[\"isSameMonth\"])(date, baseDate));\n classBuilder.modifier('focusable', isFocusable);\n classBuilder.modifier('enabled', isEnabled);\n var args = {};\n\n if (isSelected) {\n classBuilder.modifier('selected');\n args['aria-current'] = 'date';\n }\n\n if (Object(date_fns__WEBPACK_IMPORTED_MODULE_1__[\"isSameDay\"])(date, new Date())) {\n classBuilder.modifier('today');\n labels.push(todayLabel);\n }\n\n if (isEnabled) {\n args.onclick = function () {\n return onSelectDate(date);\n };\n\n args.tabindex = -1;\n }\n\n if (isFocusable) {\n args.tabindex = 0;\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", __assign({\n className: classBuilder.toString(),\n \"aria-label\": labels.join('. '),\n role: \"button\"\n }, args), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", null, date.getDate()));\n}); //# sourceMappingURL=grid-date.js.map\n\n/***/ }),\n/* 276 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _addDays_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(277);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addDays\", function() { return _addDays_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"]; });\n\n/* harmony import */ var _addHours_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(280);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addHours\", function() { return _addHours_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* harmony import */ var _addISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(282);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addISOWeekYears\", function() { return _addISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"]; });\n\n/* harmony import */ var _addMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(281);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addMilliseconds\", function() { return _addMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"]; });\n\n/* harmony import */ var _addMinutes_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(291);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addMinutes\", function() { return _addMinutes_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"]; });\n\n/* harmony import */ var _addMonths_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(292);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addMonths\", function() { return _addMonths_index_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"]; });\n\n/* harmony import */ var _addQuarters_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(294);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addQuarters\", function() { return _addQuarters_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"]; });\n\n/* harmony import */ var _addSeconds_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(295);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addSeconds\", function() { return _addSeconds_index_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"]; });\n\n/* harmony import */ var _addWeeks_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(296);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addWeeks\", function() { return _addWeeks_index_js__WEBPACK_IMPORTED_MODULE_8__[\"default\"]; });\n\n/* harmony import */ var _addYears_index_js__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(297);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"addYears\", function() { return _addYears_index_js__WEBPACK_IMPORTED_MODULE_9__[\"default\"]; });\n\n/* harmony import */ var _areIntervalsOverlapping_index_js__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(298);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"areIntervalsOverlapping\", function() { return _areIntervalsOverlapping_index_js__WEBPACK_IMPORTED_MODULE_10__[\"default\"]; });\n\n/* harmony import */ var _closestIndexTo_index_js__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(299);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"closestIndexTo\", function() { return _closestIndexTo_index_js__WEBPACK_IMPORTED_MODULE_11__[\"default\"]; });\n\n/* harmony import */ var _closestTo_index_js__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(300);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"closestTo\", function() { return _closestTo_index_js__WEBPACK_IMPORTED_MODULE_12__[\"default\"]; });\n\n/* harmony import */ var _compareAsc_index_js__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(301);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"compareAsc\", function() { return _compareAsc_index_js__WEBPACK_IMPORTED_MODULE_13__[\"default\"]; });\n\n/* harmony import */ var _compareDesc_index_js__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(302);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"compareDesc\", function() { return _compareDesc_index_js__WEBPACK_IMPORTED_MODULE_14__[\"default\"]; });\n\n/* harmony import */ var _differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(288);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInCalendarDays\", function() { return _differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_15__[\"default\"]; });\n\n/* harmony import */ var _differenceInCalendarISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(303);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInCalendarISOWeekYears\", function() { return _differenceInCalendarISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_16__[\"default\"]; });\n\n/* harmony import */ var _differenceInCalendarISOWeeks_index_js__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(304);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInCalendarISOWeeks\", function() { return _differenceInCalendarISOWeeks_index_js__WEBPACK_IMPORTED_MODULE_17__[\"default\"]; });\n\n/* harmony import */ var _differenceInCalendarMonths_index_js__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(305);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInCalendarMonths\", function() { return _differenceInCalendarMonths_index_js__WEBPACK_IMPORTED_MODULE_18__[\"default\"]; });\n\n/* harmony import */ var _differenceInCalendarQuarters_index_js__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(306);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInCalendarQuarters\", function() { return _differenceInCalendarQuarters_index_js__WEBPACK_IMPORTED_MODULE_19__[\"default\"]; });\n\n/* harmony import */ var _differenceInCalendarWeeks_index_js__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(308);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInCalendarWeeks\", function() { return _differenceInCalendarWeeks_index_js__WEBPACK_IMPORTED_MODULE_20__[\"default\"]; });\n\n/* harmony import */ var _differenceInCalendarYears_index_js__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(309);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInCalendarYears\", function() { return _differenceInCalendarYears_index_js__WEBPACK_IMPORTED_MODULE_21__[\"default\"]; });\n\n/* harmony import */ var _differenceInDays_index_js__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(310);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInDays\", function() { return _differenceInDays_index_js__WEBPACK_IMPORTED_MODULE_22__[\"default\"]; });\n\n/* harmony import */ var _differenceInHours_index_js__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(311);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInHours\", function() { return _differenceInHours_index_js__WEBPACK_IMPORTED_MODULE_23__[\"default\"]; });\n\n/* harmony import */ var _differenceInISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(313);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInISOWeekYears\", function() { return _differenceInISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_24__[\"default\"]; });\n\n/* harmony import */ var _differenceInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(312);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInMilliseconds\", function() { return _differenceInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_25__[\"default\"]; });\n\n/* harmony import */ var _differenceInMinutes_index_js__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(315);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInMinutes\", function() { return _differenceInMinutes_index_js__WEBPACK_IMPORTED_MODULE_26__[\"default\"]; });\n\n/* harmony import */ var _differenceInMonths_index_js__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(316);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInMonths\", function() { return _differenceInMonths_index_js__WEBPACK_IMPORTED_MODULE_27__[\"default\"]; });\n\n/* harmony import */ var _differenceInQuarters_index_js__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(317);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInQuarters\", function() { return _differenceInQuarters_index_js__WEBPACK_IMPORTED_MODULE_28__[\"default\"]; });\n\n/* harmony import */ var _differenceInSeconds_index_js__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(318);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInSeconds\", function() { return _differenceInSeconds_index_js__WEBPACK_IMPORTED_MODULE_29__[\"default\"]; });\n\n/* harmony import */ var _differenceInWeeks_index_js__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(319);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInWeeks\", function() { return _differenceInWeeks_index_js__WEBPACK_IMPORTED_MODULE_30__[\"default\"]; });\n\n/* harmony import */ var _differenceInYears_index_js__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(320);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"differenceInYears\", function() { return _differenceInYears_index_js__WEBPACK_IMPORTED_MODULE_31__[\"default\"]; });\n\n/* harmony import */ var _eachDayOfInterval_index_js__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(321);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"eachDayOfInterval\", function() { return _eachDayOfInterval_index_js__WEBPACK_IMPORTED_MODULE_32__[\"default\"]; });\n\n/* harmony import */ var _eachWeekOfInterval_index_js__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(322);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"eachWeekOfInterval\", function() { return _eachWeekOfInterval_index_js__WEBPACK_IMPORTED_MODULE_33__[\"default\"]; });\n\n/* harmony import */ var _eachWeekendOfInterval_index_js__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(323);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"eachWeekendOfInterval\", function() { return _eachWeekendOfInterval_index_js__WEBPACK_IMPORTED_MODULE_34__[\"default\"]; });\n\n/* harmony import */ var _eachWeekendOfMonth_index_js__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(326);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"eachWeekendOfMonth\", function() { return _eachWeekendOfMonth_index_js__WEBPACK_IMPORTED_MODULE_35__[\"default\"]; });\n\n/* harmony import */ var _eachWeekendOfYear_index_js__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(329);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"eachWeekendOfYear\", function() { return _eachWeekendOfYear_index_js__WEBPACK_IMPORTED_MODULE_36__[\"default\"]; });\n\n/* harmony import */ var _endOfDay_index_js__WEBPACK_IMPORTED_MODULE_37__ = __webpack_require__(332);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfDay\", function() { return _endOfDay_index_js__WEBPACK_IMPORTED_MODULE_37__[\"default\"]; });\n\n/* harmony import */ var _endOfDecade_index_js__WEBPACK_IMPORTED_MODULE_38__ = __webpack_require__(333);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfDecade\", function() { return _endOfDecade_index_js__WEBPACK_IMPORTED_MODULE_38__[\"default\"]; });\n\n/* harmony import */ var _endOfHour_index_js__WEBPACK_IMPORTED_MODULE_39__ = __webpack_require__(334);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfHour\", function() { return _endOfHour_index_js__WEBPACK_IMPORTED_MODULE_39__[\"default\"]; });\n\n/* harmony import */ var _endOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_40__ = __webpack_require__(335);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfISOWeek\", function() { return _endOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_40__[\"default\"]; });\n\n/* harmony import */ var _endOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_41__ = __webpack_require__(337);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfISOWeekYear\", function() { return _endOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_41__[\"default\"]; });\n\n/* harmony import */ var _endOfMinute_index_js__WEBPACK_IMPORTED_MODULE_42__ = __webpack_require__(338);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfMinute\", function() { return _endOfMinute_index_js__WEBPACK_IMPORTED_MODULE_42__[\"default\"]; });\n\n/* harmony import */ var _endOfMonth_index_js__WEBPACK_IMPORTED_MODULE_43__ = __webpack_require__(328);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfMonth\", function() { return _endOfMonth_index_js__WEBPACK_IMPORTED_MODULE_43__[\"default\"]; });\n\n/* harmony import */ var _endOfQuarter_index_js__WEBPACK_IMPORTED_MODULE_44__ = __webpack_require__(339);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfQuarter\", function() { return _endOfQuarter_index_js__WEBPACK_IMPORTED_MODULE_44__[\"default\"]; });\n\n/* harmony import */ var _endOfSecond_index_js__WEBPACK_IMPORTED_MODULE_45__ = __webpack_require__(340);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfSecond\", function() { return _endOfSecond_index_js__WEBPACK_IMPORTED_MODULE_45__[\"default\"]; });\n\n/* harmony import */ var _endOfWeek_index_js__WEBPACK_IMPORTED_MODULE_46__ = __webpack_require__(336);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfWeek\", function() { return _endOfWeek_index_js__WEBPACK_IMPORTED_MODULE_46__[\"default\"]; });\n\n/* harmony import */ var _endOfYear_index_js__WEBPACK_IMPORTED_MODULE_47__ = __webpack_require__(331);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"endOfYear\", function() { return _endOfYear_index_js__WEBPACK_IMPORTED_MODULE_47__[\"default\"]; });\n\n/* harmony import */ var _format_index_js__WEBPACK_IMPORTED_MODULE_48__ = __webpack_require__(341);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"format\", function() { return _format_index_js__WEBPACK_IMPORTED_MODULE_48__[\"default\"]; });\n\n/* harmony import */ var _formatDistance_index_js__WEBPACK_IMPORTED_MODULE_49__ = __webpack_require__(368);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"formatDistance\", function() { return _formatDistance_index_js__WEBPACK_IMPORTED_MODULE_49__[\"default\"]; });\n\n/* harmony import */ var _formatDistanceStrict_index_js__WEBPACK_IMPORTED_MODULE_50__ = __webpack_require__(371);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"formatDistanceStrict\", function() { return _formatDistanceStrict_index_js__WEBPACK_IMPORTED_MODULE_50__[\"default\"]; });\n\n/* harmony import */ var _formatRelative_index_js__WEBPACK_IMPORTED_MODULE_51__ = __webpack_require__(372);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"formatRelative\", function() { return _formatRelative_index_js__WEBPACK_IMPORTED_MODULE_51__[\"default\"]; });\n\n/* harmony import */ var _fromUnixTime_index_js__WEBPACK_IMPORTED_MODULE_52__ = __webpack_require__(373);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"fromUnixTime\", function() { return _fromUnixTime_index_js__WEBPACK_IMPORTED_MODULE_52__[\"default\"]; });\n\n/* harmony import */ var _getDate_index_js__WEBPACK_IMPORTED_MODULE_53__ = __webpack_require__(374);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getDate\", function() { return _getDate_index_js__WEBPACK_IMPORTED_MODULE_53__[\"default\"]; });\n\n/* harmony import */ var _getDay_index_js__WEBPACK_IMPORTED_MODULE_54__ = __webpack_require__(375);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getDay\", function() { return _getDay_index_js__WEBPACK_IMPORTED_MODULE_54__[\"default\"]; });\n\n/* harmony import */ var _getDayOfYear_index_js__WEBPACK_IMPORTED_MODULE_55__ = __webpack_require__(376);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getDayOfYear\", function() { return _getDayOfYear_index_js__WEBPACK_IMPORTED_MODULE_55__[\"default\"]; });\n\n/* harmony import */ var _getDaysInMonth_index_js__WEBPACK_IMPORTED_MODULE_56__ = __webpack_require__(293);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getDaysInMonth\", function() { return _getDaysInMonth_index_js__WEBPACK_IMPORTED_MODULE_56__[\"default\"]; });\n\n/* harmony import */ var _getDaysInYear_index_js__WEBPACK_IMPORTED_MODULE_57__ = __webpack_require__(377);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getDaysInYear\", function() { return _getDaysInYear_index_js__WEBPACK_IMPORTED_MODULE_57__[\"default\"]; });\n\n/* harmony import */ var _getDecade_index_js__WEBPACK_IMPORTED_MODULE_58__ = __webpack_require__(379);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getDecade\", function() { return _getDecade_index_js__WEBPACK_IMPORTED_MODULE_58__[\"default\"]; });\n\n/* harmony import */ var _getHours_index_js__WEBPACK_IMPORTED_MODULE_59__ = __webpack_require__(380);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getHours\", function() { return _getHours_index_js__WEBPACK_IMPORTED_MODULE_59__[\"default\"]; });\n\n/* harmony import */ var _getISODay_index_js__WEBPACK_IMPORTED_MODULE_60__ = __webpack_require__(381);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getISODay\", function() { return _getISODay_index_js__WEBPACK_IMPORTED_MODULE_60__[\"default\"]; });\n\n/* harmony import */ var _getISOWeek_index_js__WEBPACK_IMPORTED_MODULE_61__ = __webpack_require__(382);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getISOWeek\", function() { return _getISOWeek_index_js__WEBPACK_IMPORTED_MODULE_61__[\"default\"]; });\n\n/* harmony import */ var _getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_62__ = __webpack_require__(283);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getISOWeekYear\", function() { return _getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_62__[\"default\"]; });\n\n/* harmony import */ var _getISOWeeksInYear_index_js__WEBPACK_IMPORTED_MODULE_63__ = __webpack_require__(383);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getISOWeeksInYear\", function() { return _getISOWeeksInYear_index_js__WEBPACK_IMPORTED_MODULE_63__[\"default\"]; });\n\n/* harmony import */ var _getMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_64__ = __webpack_require__(384);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getMilliseconds\", function() { return _getMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_64__[\"default\"]; });\n\n/* harmony import */ var _getMinutes_index_js__WEBPACK_IMPORTED_MODULE_65__ = __webpack_require__(385);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getMinutes\", function() { return _getMinutes_index_js__WEBPACK_IMPORTED_MODULE_65__[\"default\"]; });\n\n/* harmony import */ var _getMonth_index_js__WEBPACK_IMPORTED_MODULE_66__ = __webpack_require__(386);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getMonth\", function() { return _getMonth_index_js__WEBPACK_IMPORTED_MODULE_66__[\"default\"]; });\n\n/* harmony import */ var _getOverlappingDaysInIntervals_index_js__WEBPACK_IMPORTED_MODULE_67__ = __webpack_require__(387);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getOverlappingDaysInIntervals\", function() { return _getOverlappingDaysInIntervals_index_js__WEBPACK_IMPORTED_MODULE_67__[\"default\"]; });\n\n/* harmony import */ var _getQuarter_index_js__WEBPACK_IMPORTED_MODULE_68__ = __webpack_require__(307);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getQuarter\", function() { return _getQuarter_index_js__WEBPACK_IMPORTED_MODULE_68__[\"default\"]; });\n\n/* harmony import */ var _getSeconds_index_js__WEBPACK_IMPORTED_MODULE_69__ = __webpack_require__(388);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getSeconds\", function() { return _getSeconds_index_js__WEBPACK_IMPORTED_MODULE_69__[\"default\"]; });\n\n/* harmony import */ var _getTime_index_js__WEBPACK_IMPORTED_MODULE_70__ = __webpack_require__(389);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getTime\", function() { return _getTime_index_js__WEBPACK_IMPORTED_MODULE_70__[\"default\"]; });\n\n/* harmony import */ var _getUnixTime_index_js__WEBPACK_IMPORTED_MODULE_71__ = __webpack_require__(390);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getUnixTime\", function() { return _getUnixTime_index_js__WEBPACK_IMPORTED_MODULE_71__[\"default\"]; });\n\n/* harmony import */ var _getWeek_index_js__WEBPACK_IMPORTED_MODULE_72__ = __webpack_require__(391);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getWeek\", function() { return _getWeek_index_js__WEBPACK_IMPORTED_MODULE_72__[\"default\"]; });\n\n/* harmony import */ var _getWeekOfMonth_index_js__WEBPACK_IMPORTED_MODULE_73__ = __webpack_require__(394);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getWeekOfMonth\", function() { return _getWeekOfMonth_index_js__WEBPACK_IMPORTED_MODULE_73__[\"default\"]; });\n\n/* harmony import */ var _getWeekYear_index_js__WEBPACK_IMPORTED_MODULE_74__ = __webpack_require__(393);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getWeekYear\", function() { return _getWeekYear_index_js__WEBPACK_IMPORTED_MODULE_74__[\"default\"]; });\n\n/* harmony import */ var _getWeeksInMonth_index_js__WEBPACK_IMPORTED_MODULE_75__ = __webpack_require__(395);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getWeeksInMonth\", function() { return _getWeeksInMonth_index_js__WEBPACK_IMPORTED_MODULE_75__[\"default\"]; });\n\n/* harmony import */ var _getYear_index_js__WEBPACK_IMPORTED_MODULE_76__ = __webpack_require__(397);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"getYear\", function() { return _getYear_index_js__WEBPACK_IMPORTED_MODULE_76__[\"default\"]; });\n\n/* harmony import */ var _isAfter_index_js__WEBPACK_IMPORTED_MODULE_77__ = __webpack_require__(398);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isAfter\", function() { return _isAfter_index_js__WEBPACK_IMPORTED_MODULE_77__[\"default\"]; });\n\n/* harmony import */ var _isBefore_index_js__WEBPACK_IMPORTED_MODULE_78__ = __webpack_require__(399);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isBefore\", function() { return _isBefore_index_js__WEBPACK_IMPORTED_MODULE_78__[\"default\"]; });\n\n/* harmony import */ var _isDate_index_js__WEBPACK_IMPORTED_MODULE_79__ = __webpack_require__(400);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isDate\", function() { return _isDate_index_js__WEBPACK_IMPORTED_MODULE_79__[\"default\"]; });\n\n/* harmony import */ var _isEqual_index_js__WEBPACK_IMPORTED_MODULE_80__ = __webpack_require__(401);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isEqual\", function() { return _isEqual_index_js__WEBPACK_IMPORTED_MODULE_80__[\"default\"]; });\n\n/* harmony import */ var _isFirstDayOfMonth_index_js__WEBPACK_IMPORTED_MODULE_81__ = __webpack_require__(402);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isFirstDayOfMonth\", function() { return _isFirstDayOfMonth_index_js__WEBPACK_IMPORTED_MODULE_81__[\"default\"]; });\n\n/* harmony import */ var _isFriday_index_js__WEBPACK_IMPORTED_MODULE_82__ = __webpack_require__(403);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isFriday\", function() { return _isFriday_index_js__WEBPACK_IMPORTED_MODULE_82__[\"default\"]; });\n\n/* harmony import */ var _isLastDayOfMonth_index_js__WEBPACK_IMPORTED_MODULE_83__ = __webpack_require__(404);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isLastDayOfMonth\", function() { return _isLastDayOfMonth_index_js__WEBPACK_IMPORTED_MODULE_83__[\"default\"]; });\n\n/* harmony import */ var _isLeapYear_index_js__WEBPACK_IMPORTED_MODULE_84__ = __webpack_require__(378);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isLeapYear\", function() { return _isLeapYear_index_js__WEBPACK_IMPORTED_MODULE_84__[\"default\"]; });\n\n/* harmony import */ var _isMonday_index_js__WEBPACK_IMPORTED_MODULE_85__ = __webpack_require__(405);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isMonday\", function() { return _isMonday_index_js__WEBPACK_IMPORTED_MODULE_85__[\"default\"]; });\n\n/* harmony import */ var _isSameDay_index_js__WEBPACK_IMPORTED_MODULE_86__ = __webpack_require__(406);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSameDay\", function() { return _isSameDay_index_js__WEBPACK_IMPORTED_MODULE_86__[\"default\"]; });\n\n/* harmony import */ var _isSameHour_index_js__WEBPACK_IMPORTED_MODULE_87__ = __webpack_require__(407);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSameHour\", function() { return _isSameHour_index_js__WEBPACK_IMPORTED_MODULE_87__[\"default\"]; });\n\n/* harmony import */ var _isSameISOWeek_index_js__WEBPACK_IMPORTED_MODULE_88__ = __webpack_require__(409);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSameISOWeek\", function() { return _isSameISOWeek_index_js__WEBPACK_IMPORTED_MODULE_88__[\"default\"]; });\n\n/* harmony import */ var _isSameISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_89__ = __webpack_require__(411);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSameISOWeekYear\", function() { return _isSameISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_89__[\"default\"]; });\n\n/* harmony import */ var _isSameMinute_index_js__WEBPACK_IMPORTED_MODULE_90__ = __webpack_require__(412);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSameMinute\", function() { return _isSameMinute_index_js__WEBPACK_IMPORTED_MODULE_90__[\"default\"]; });\n\n/* harmony import */ var _isSameMonth_index_js__WEBPACK_IMPORTED_MODULE_91__ = __webpack_require__(414);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSameMonth\", function() { return _isSameMonth_index_js__WEBPACK_IMPORTED_MODULE_91__[\"default\"]; });\n\n/* harmony import */ var _isSameQuarter_index_js__WEBPACK_IMPORTED_MODULE_92__ = __webpack_require__(415);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSameQuarter\", function() { return _isSameQuarter_index_js__WEBPACK_IMPORTED_MODULE_92__[\"default\"]; });\n\n/* harmony import */ var _isSameSecond_index_js__WEBPACK_IMPORTED_MODULE_93__ = __webpack_require__(417);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSameSecond\", function() { return _isSameSecond_index_js__WEBPACK_IMPORTED_MODULE_93__[\"default\"]; });\n\n/* harmony import */ var _isSameWeek_index_js__WEBPACK_IMPORTED_MODULE_94__ = __webpack_require__(410);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSameWeek\", function() { return _isSameWeek_index_js__WEBPACK_IMPORTED_MODULE_94__[\"default\"]; });\n\n/* harmony import */ var _isSameYear_index_js__WEBPACK_IMPORTED_MODULE_95__ = __webpack_require__(419);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSameYear\", function() { return _isSameYear_index_js__WEBPACK_IMPORTED_MODULE_95__[\"default\"]; });\n\n/* harmony import */ var _isSaturday_index_js__WEBPACK_IMPORTED_MODULE_96__ = __webpack_require__(420);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSaturday\", function() { return _isSaturday_index_js__WEBPACK_IMPORTED_MODULE_96__[\"default\"]; });\n\n/* harmony import */ var _isSunday_index_js__WEBPACK_IMPORTED_MODULE_97__ = __webpack_require__(324);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isSunday\", function() { return _isSunday_index_js__WEBPACK_IMPORTED_MODULE_97__[\"default\"]; });\n\n/* harmony import */ var _isThursday_index_js__WEBPACK_IMPORTED_MODULE_98__ = __webpack_require__(421);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isThursday\", function() { return _isThursday_index_js__WEBPACK_IMPORTED_MODULE_98__[\"default\"]; });\n\n/* harmony import */ var _isTuesday_index_js__WEBPACK_IMPORTED_MODULE_99__ = __webpack_require__(422);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isTuesday\", function() { return _isTuesday_index_js__WEBPACK_IMPORTED_MODULE_99__[\"default\"]; });\n\n/* harmony import */ var _isValid_index_js__WEBPACK_IMPORTED_MODULE_100__ = __webpack_require__(342);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isValid\", function() { return _isValid_index_js__WEBPACK_IMPORTED_MODULE_100__[\"default\"]; });\n\n/* harmony import */ var _isWednesday_index_js__WEBPACK_IMPORTED_MODULE_101__ = __webpack_require__(423);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isWednesday\", function() { return _isWednesday_index_js__WEBPACK_IMPORTED_MODULE_101__[\"default\"]; });\n\n/* harmony import */ var _isWeekend_index_js__WEBPACK_IMPORTED_MODULE_102__ = __webpack_require__(325);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isWeekend\", function() { return _isWeekend_index_js__WEBPACK_IMPORTED_MODULE_102__[\"default\"]; });\n\n/* harmony import */ var _isWithinInterval_index_js__WEBPACK_IMPORTED_MODULE_103__ = __webpack_require__(424);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"isWithinInterval\", function() { return _isWithinInterval_index_js__WEBPACK_IMPORTED_MODULE_103__[\"default\"]; });\n\n/* harmony import */ var _lastDayOfDecade_index_js__WEBPACK_IMPORTED_MODULE_104__ = __webpack_require__(425);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"lastDayOfDecade\", function() { return _lastDayOfDecade_index_js__WEBPACK_IMPORTED_MODULE_104__[\"default\"]; });\n\n/* harmony import */ var _lastDayOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_105__ = __webpack_require__(426);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"lastDayOfISOWeek\", function() { return _lastDayOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_105__[\"default\"]; });\n\n/* harmony import */ var _lastDayOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_106__ = __webpack_require__(428);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"lastDayOfISOWeekYear\", function() { return _lastDayOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_106__[\"default\"]; });\n\n/* harmony import */ var _lastDayOfMonth_index_js__WEBPACK_IMPORTED_MODULE_107__ = __webpack_require__(396);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"lastDayOfMonth\", function() { return _lastDayOfMonth_index_js__WEBPACK_IMPORTED_MODULE_107__[\"default\"]; });\n\n/* harmony import */ var _lastDayOfQuarter_index_js__WEBPACK_IMPORTED_MODULE_108__ = __webpack_require__(429);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"lastDayOfQuarter\", function() { return _lastDayOfQuarter_index_js__WEBPACK_IMPORTED_MODULE_108__[\"default\"]; });\n\n/* harmony import */ var _lastDayOfWeek_index_js__WEBPACK_IMPORTED_MODULE_109__ = __webpack_require__(427);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"lastDayOfWeek\", function() { return _lastDayOfWeek_index_js__WEBPACK_IMPORTED_MODULE_109__[\"default\"]; });\n\n/* harmony import */ var _lastDayOfYear_index_js__WEBPACK_IMPORTED_MODULE_110__ = __webpack_require__(430);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"lastDayOfYear\", function() { return _lastDayOfYear_index_js__WEBPACK_IMPORTED_MODULE_110__[\"default\"]; });\n\n/* harmony import */ var _lightFormat_index_js__WEBPACK_IMPORTED_MODULE_111__ = __webpack_require__(431);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"lightFormat\", function() { return _lightFormat_index_js__WEBPACK_IMPORTED_MODULE_111__[\"default\"]; });\n\n/* harmony import */ var _max_index_js__WEBPACK_IMPORTED_MODULE_112__ = __webpack_require__(432);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"max\", function() { return _max_index_js__WEBPACK_IMPORTED_MODULE_112__[\"default\"]; });\n\n/* harmony import */ var _min_index_js__WEBPACK_IMPORTED_MODULE_113__ = __webpack_require__(433);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"min\", function() { return _min_index_js__WEBPACK_IMPORTED_MODULE_113__[\"default\"]; });\n\n/* harmony import */ var _parse_index_js__WEBPACK_IMPORTED_MODULE_114__ = __webpack_require__(434);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"parse\", function() { return _parse_index_js__WEBPACK_IMPORTED_MODULE_114__[\"default\"]; });\n\n/* harmony import */ var _parseISO_index_js__WEBPACK_IMPORTED_MODULE_115__ = __webpack_require__(440);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"parseISO\", function() { return _parseISO_index_js__WEBPACK_IMPORTED_MODULE_115__[\"default\"]; });\n\n/* harmony import */ var _roundToNearestMinutes_index_js__WEBPACK_IMPORTED_MODULE_116__ = __webpack_require__(441);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"roundToNearestMinutes\", function() { return _roundToNearestMinutes_index_js__WEBPACK_IMPORTED_MODULE_116__[\"default\"]; });\n\n/* harmony import */ var _setDate_index_js__WEBPACK_IMPORTED_MODULE_117__ = __webpack_require__(442);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setDate\", function() { return _setDate_index_js__WEBPACK_IMPORTED_MODULE_117__[\"default\"]; });\n\n/* harmony import */ var _setDay_index_js__WEBPACK_IMPORTED_MODULE_118__ = __webpack_require__(443);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setDay\", function() { return _setDay_index_js__WEBPACK_IMPORTED_MODULE_118__[\"default\"]; });\n\n/* harmony import */ var _setDayOfYear_index_js__WEBPACK_IMPORTED_MODULE_119__ = __webpack_require__(444);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setDayOfYear\", function() { return _setDayOfYear_index_js__WEBPACK_IMPORTED_MODULE_119__[\"default\"]; });\n\n/* harmony import */ var _setHours_index_js__WEBPACK_IMPORTED_MODULE_120__ = __webpack_require__(445);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setHours\", function() { return _setHours_index_js__WEBPACK_IMPORTED_MODULE_120__[\"default\"]; });\n\n/* harmony import */ var _setISODay_index_js__WEBPACK_IMPORTED_MODULE_121__ = __webpack_require__(446);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setISODay\", function() { return _setISODay_index_js__WEBPACK_IMPORTED_MODULE_121__[\"default\"]; });\n\n/* harmony import */ var _setISOWeek_index_js__WEBPACK_IMPORTED_MODULE_122__ = __webpack_require__(447);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setISOWeek\", function() { return _setISOWeek_index_js__WEBPACK_IMPORTED_MODULE_122__[\"default\"]; });\n\n/* harmony import */ var _setISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_123__ = __webpack_require__(286);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setISOWeekYear\", function() { return _setISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_123__[\"default\"]; });\n\n/* harmony import */ var _setMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_124__ = __webpack_require__(448);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setMilliseconds\", function() { return _setMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_124__[\"default\"]; });\n\n/* harmony import */ var _setMinutes_index_js__WEBPACK_IMPORTED_MODULE_125__ = __webpack_require__(449);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setMinutes\", function() { return _setMinutes_index_js__WEBPACK_IMPORTED_MODULE_125__[\"default\"]; });\n\n/* harmony import */ var _setMonth_index_js__WEBPACK_IMPORTED_MODULE_126__ = __webpack_require__(450);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setMonth\", function() { return _setMonth_index_js__WEBPACK_IMPORTED_MODULE_126__[\"default\"]; });\n\n/* harmony import */ var _setQuarter_index_js__WEBPACK_IMPORTED_MODULE_127__ = __webpack_require__(451);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setQuarter\", function() { return _setQuarter_index_js__WEBPACK_IMPORTED_MODULE_127__[\"default\"]; });\n\n/* harmony import */ var _setSeconds_index_js__WEBPACK_IMPORTED_MODULE_128__ = __webpack_require__(452);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setSeconds\", function() { return _setSeconds_index_js__WEBPACK_IMPORTED_MODULE_128__[\"default\"]; });\n\n/* harmony import */ var _setWeek_index_js__WEBPACK_IMPORTED_MODULE_129__ = __webpack_require__(453);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setWeek\", function() { return _setWeek_index_js__WEBPACK_IMPORTED_MODULE_129__[\"default\"]; });\n\n/* harmony import */ var _setWeekYear_index_js__WEBPACK_IMPORTED_MODULE_130__ = __webpack_require__(454);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setWeekYear\", function() { return _setWeekYear_index_js__WEBPACK_IMPORTED_MODULE_130__[\"default\"]; });\n\n/* harmony import */ var _setYear_index_js__WEBPACK_IMPORTED_MODULE_131__ = __webpack_require__(455);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"setYear\", function() { return _setYear_index_js__WEBPACK_IMPORTED_MODULE_131__[\"default\"]; });\n\n/* harmony import */ var _startOfDay_index_js__WEBPACK_IMPORTED_MODULE_132__ = __webpack_require__(290);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfDay\", function() { return _startOfDay_index_js__WEBPACK_IMPORTED_MODULE_132__[\"default\"]; });\n\n/* harmony import */ var _startOfDecade_index_js__WEBPACK_IMPORTED_MODULE_133__ = __webpack_require__(456);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfDecade\", function() { return _startOfDecade_index_js__WEBPACK_IMPORTED_MODULE_133__[\"default\"]; });\n\n/* harmony import */ var _startOfHour_index_js__WEBPACK_IMPORTED_MODULE_134__ = __webpack_require__(408);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfHour\", function() { return _startOfHour_index_js__WEBPACK_IMPORTED_MODULE_134__[\"default\"]; });\n\n/* harmony import */ var _startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_135__ = __webpack_require__(284);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfISOWeek\", function() { return _startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_135__[\"default\"]; });\n\n/* harmony import */ var _startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_136__ = __webpack_require__(287);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfISOWeekYear\", function() { return _startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_136__[\"default\"]; });\n\n/* harmony import */ var _startOfMinute_index_js__WEBPACK_IMPORTED_MODULE_137__ = __webpack_require__(413);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfMinute\", function() { return _startOfMinute_index_js__WEBPACK_IMPORTED_MODULE_137__[\"default\"]; });\n\n/* harmony import */ var _startOfMonth_index_js__WEBPACK_IMPORTED_MODULE_138__ = __webpack_require__(327);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfMonth\", function() { return _startOfMonth_index_js__WEBPACK_IMPORTED_MODULE_138__[\"default\"]; });\n\n/* harmony import */ var _startOfQuarter_index_js__WEBPACK_IMPORTED_MODULE_139__ = __webpack_require__(416);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfQuarter\", function() { return _startOfQuarter_index_js__WEBPACK_IMPORTED_MODULE_139__[\"default\"]; });\n\n/* harmony import */ var _startOfSecond_index_js__WEBPACK_IMPORTED_MODULE_140__ = __webpack_require__(418);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfSecond\", function() { return _startOfSecond_index_js__WEBPACK_IMPORTED_MODULE_140__[\"default\"]; });\n\n/* harmony import */ var _startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_141__ = __webpack_require__(285);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfWeek\", function() { return _startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_141__[\"default\"]; });\n\n/* harmony import */ var _startOfWeekYear_index_js__WEBPACK_IMPORTED_MODULE_142__ = __webpack_require__(392);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfWeekYear\", function() { return _startOfWeekYear_index_js__WEBPACK_IMPORTED_MODULE_142__[\"default\"]; });\n\n/* harmony import */ var _startOfYear_index_js__WEBPACK_IMPORTED_MODULE_143__ = __webpack_require__(330);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"startOfYear\", function() { return _startOfYear_index_js__WEBPACK_IMPORTED_MODULE_143__[\"default\"]; });\n\n/* harmony import */ var _subDays_index_js__WEBPACK_IMPORTED_MODULE_144__ = __webpack_require__(457);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"subDays\", function() { return _subDays_index_js__WEBPACK_IMPORTED_MODULE_144__[\"default\"]; });\n\n/* harmony import */ var _subHours_index_js__WEBPACK_IMPORTED_MODULE_145__ = __webpack_require__(458);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"subHours\", function() { return _subHours_index_js__WEBPACK_IMPORTED_MODULE_145__[\"default\"]; });\n\n/* harmony import */ var _subISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_146__ = __webpack_require__(314);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"subISOWeekYears\", function() { return _subISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_146__[\"default\"]; });\n\n/* harmony import */ var _subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_147__ = __webpack_require__(366);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"subMilliseconds\", function() { return _subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_147__[\"default\"]; });\n\n/* harmony import */ var _subMinutes_index_js__WEBPACK_IMPORTED_MODULE_148__ = __webpack_require__(459);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"subMinutes\", function() { return _subMinutes_index_js__WEBPACK_IMPORTED_MODULE_148__[\"default\"]; });\n\n/* harmony import */ var _subMonths_index_js__WEBPACK_IMPORTED_MODULE_149__ = __webpack_require__(460);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"subMonths\", function() { return _subMonths_index_js__WEBPACK_IMPORTED_MODULE_149__[\"default\"]; });\n\n/* harmony import */ var _subQuarters_index_js__WEBPACK_IMPORTED_MODULE_150__ = __webpack_require__(461);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"subQuarters\", function() { return _subQuarters_index_js__WEBPACK_IMPORTED_MODULE_150__[\"default\"]; });\n\n/* harmony import */ var _subSeconds_index_js__WEBPACK_IMPORTED_MODULE_151__ = __webpack_require__(462);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"subSeconds\", function() { return _subSeconds_index_js__WEBPACK_IMPORTED_MODULE_151__[\"default\"]; });\n\n/* harmony import */ var _subWeeks_index_js__WEBPACK_IMPORTED_MODULE_152__ = __webpack_require__(463);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"subWeeks\", function() { return _subWeeks_index_js__WEBPACK_IMPORTED_MODULE_152__[\"default\"]; });\n\n/* harmony import */ var _subYears_index_js__WEBPACK_IMPORTED_MODULE_153__ = __webpack_require__(464);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"subYears\", function() { return _subYears_index_js__WEBPACK_IMPORTED_MODULE_153__[\"default\"]; });\n\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_154__ = __webpack_require__(279);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"toDate\", function() { return _toDate_index_js__WEBPACK_IMPORTED_MODULE_154__[\"default\"]; });\n\n// This file is generated automatically by `scripts/build/indices.js`. Please, don't change it.\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n/***/ }),\n/* 277 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addDays; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name addDays\n * @category Day Helpers\n * @summary Add the specified number of days to the given date.\n *\n * @description\n * Add the specified number of days to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of days to be added\n * @returns {Date} the new date with the days added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 10 days to 1 September 2014:\n * var result = addDays(new Date(2014, 8, 1), 10)\n * //=> Thu Sep 11 2014 00:00:00\n */\nfunction addDays(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n date.setDate(date.getDate() + amount)\n return date\n}\n\n\n/***/ }),\n/* 278 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return toInteger; });\nfunction toInteger (dirtyNumber) {\n if (dirtyNumber === null || dirtyNumber === true || dirtyNumber === false) {\n return NaN\n }\n\n var number = Number(dirtyNumber)\n\n if (isNaN(number)) {\n return number\n }\n\n return number < 0 ? Math.ceil(number) : Math.floor(number)\n}\n\n\n/***/ }),\n/* 279 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return toDate; });\n/**\n * @name toDate\n * @category Common Helpers\n * @summary Convert the given argument to an instance of Date.\n *\n * @description\n * Convert the given argument to an instance of Date.\n *\n * If the argument is an instance of Date, the function returns its clone.\n *\n * If the argument is a number, it is treated as a timestamp.\n *\n * If the argument is none of the above, the function returns Invalid Date.\n *\n * **Note**: *all* Date arguments passed to any *date-fns* function is processed by `toDate`.\n *\n * @param {Date|Number} argument - the value to convert\n * @returns {Date} the parsed date in the local time zone\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Clone the date:\n * var result = toDate(new Date(2014, 1, 11, 11, 30, 30))\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert the timestamp to date:\n * var result = toDate(1392098430000)\n * //=> Tue Feb 11 2014 11:30:30\n */\nfunction toDate(argument) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var argStr = Object.prototype.toString.call(argument)\n\n // Clone the date\n if (\n argument instanceof Date ||\n (typeof argument === 'object' && argStr === '[object Date]')\n ) {\n // Prevent the date to lose the milliseconds when passed to new Date() in IE10\n return new Date(argument.getTime())\n } else if (typeof argument === 'number' || argStr === '[object Number]') {\n return new Date(argument)\n } else {\n if (\n (typeof argument === 'string' || argStr === '[object String]') &&\n typeof console !== 'undefined'\n ) {\n console.warn(\n \"Starting with v2.0.0-beta.1 date-fns doesn't accept strings as arguments. Please use `parseISO` to parse strings. See: https://git.io/fpAk2\"\n )\n console.warn(new Error().stack)\n }\n return new Date(NaN)\n }\n}\n\n\n/***/ }),\n/* 280 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addHours; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(281);\n\n\n\nvar MILLISECONDS_IN_HOUR = 3600000\n\n/**\n * @name addHours\n * @category Hour Helpers\n * @summary Add the specified number of hours to the given date.\n *\n * @description\n * Add the specified number of hours to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of hours to be added\n * @returns {Date} the new date with the hours added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 2 hours to 10 July 2014 23:00:00:\n * var result = addHours(new Date(2014, 6, 10, 23, 0), 2)\n * //=> Fri Jul 11 2014 01:00:00\n */\nfunction addHours(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, amount * MILLISECONDS_IN_HOUR)\n}\n\n\n/***/ }),\n/* 281 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addMilliseconds; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name addMilliseconds\n * @category Millisecond Helpers\n * @summary Add the specified number of milliseconds to the given date.\n *\n * @description\n * Add the specified number of milliseconds to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of milliseconds to be added\n * @returns {Date} the new date with the milliseconds added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 750 milliseconds to 10 July 2014 12:45:30.000:\n * var result = addMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)\n * //=> Thu Jul 10 2014 12:45:30.750\n */\nfunction addMilliseconds(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var timestamp = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate).getTime()\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return new Date(timestamp + amount)\n}\n\n\n/***/ }),\n/* 282 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addISOWeekYears; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(283);\n/* harmony import */ var _setISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(286);\n\n\n\n\n/**\n * @name addISOWeekYears\n * @category ISO Week-Numbering Year Helpers\n * @summary Add the specified number of ISO week-numbering years to the given date.\n *\n * @description\n * Add the specified number of ISO week-numbering years to the given date.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `addISOYears` to `addISOWeekYears`.\n * \"ISO week year\" is short for [ISO week-numbering year](https://en.wikipedia.org/wiki/ISO_week_date).\n * This change makes the name consistent with\n * locale-dependent week-numbering year helpers, e.g., `addWeekYears`.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of ISO week-numbering years to be added\n * @returns {Date} the new date with the ISO week-numbering years added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 5 ISO week-numbering years to 2 July 2010:\n * var result = addISOWeekYears(new Date(2010, 6, 2), 5)\n * //=> Fri Jun 26 2015 00:00:00\n */\nfunction addISOWeekYears(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_setISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyDate, Object(_getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate) + amount)\n}\n\n\n/***/ }),\n/* 283 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getISOWeekYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(284);\n\n\n\n/**\n * @name getISOWeekYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Get the ISO week-numbering year of the given date.\n *\n * @description\n * Get the ISO week-numbering year of the given date,\n * which always starts 3 days before the year's first Thursday.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `getISOYear` to `getISOWeekYear`.\n * \"ISO week year\" is short for [ISO week-numbering year](https://en.wikipedia.org/wiki/ISO_week_date).\n * This change makes the name consistent with\n * locale-dependent week-numbering year helpers, e.g., `getWeekYear`.\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the ISO week-numbering year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which ISO-week numbering year is 2 January 2005?\n * var result = getISOWeekYear(new Date(2005, 0, 2))\n * //=> 2004\n */\nfunction getISOWeekYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n\n var fourthOfJanuaryOfNextYear = new Date(0)\n fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4)\n fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0)\n var startOfNextYear = Object(_startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(fourthOfJanuaryOfNextYear)\n\n var fourthOfJanuaryOfThisYear = new Date(0)\n fourthOfJanuaryOfThisYear.setFullYear(year, 0, 4)\n fourthOfJanuaryOfThisYear.setHours(0, 0, 0, 0)\n var startOfThisYear = Object(_startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(fourthOfJanuaryOfThisYear)\n\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year\n } else {\n return year - 1\n }\n}\n\n\n/***/ }),\n/* 284 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfISOWeek; });\n/* harmony import */ var _startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(285);\n\n\n/**\n * @name startOfISOWeek\n * @category ISO Week Helpers\n * @summary Return the start of an ISO week for the given date.\n *\n * @description\n * Return the start of an ISO week for the given date.\n * The result will be in the local timezone.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of an ISO week\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of an ISO week for 2 September 2014 11:55:00:\n * var result = startOfISOWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Mon Sep 01 2014 00:00:00\n */\nfunction startOfISOWeek(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate, { weekStartsOn: 1 })\n}\n\n\n/***/ }),\n/* 285 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfWeek; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name startOfWeek\n * @category Week Helpers\n * @summary Return the start of a week for the given date.\n *\n * @description\n * Return the start of a week for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {Date} the start of a week\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // The start of a week for 2 September 2014 11:55:00:\n * var result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the start of the week for 2 September 2014 11:55:00:\n * var result = startOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Mon Sep 01 2014 00:00:00\n */\nfunction startOfWeek(dirtyDate, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeWeekStartsOn =\n locale && locale.options && locale.options.weekStartsOn\n var defaultWeekStartsOn =\n localeWeekStartsOn == null ? 0 : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeWeekStartsOn)\n var weekStartsOn =\n options.weekStartsOn == null\n ? defaultWeekStartsOn\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.weekStartsOn)\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively')\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var day = date.getDay()\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn\n\n date.setDate(date.getDate() - diff)\n date.setHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 286 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setISOWeekYear; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(287);\n/* harmony import */ var _differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(288);\n\n\n\n\n\n/**\n * @name setISOWeekYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Set the ISO week-numbering year to the given date.\n *\n * @description\n * Set the ISO week-numbering year to the given date,\n * saving the week number and the weekday number.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `setISOYear` to `setISOWeekYear`.\n * \"ISO week year\" is short for [ISO week-numbering year](https://en.wikipedia.org/wiki/ISO_week_date).\n * This change makes the name consistent with\n * locale-dependent week-numbering year helpers, e.g., `setWeekYear`.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} isoWeekYear - the ISO week-numbering year of the new date\n * @returns {Date} the new date with the ISO week-numbering year set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set ISO week-numbering year 2007 to 29 December 2008:\n * var result = setISOWeekYear(new Date(2008, 11, 29), 2007)\n * //=> Mon Jan 01 2007 00:00:00\n */\nfunction setISOWeekYear(dirtyDate, dirtyISOWeekYear) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var isoWeekYear = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyISOWeekYear)\n var diff = Object(_differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(date, Object(_startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date))\n var fourthOfJanuary = new Date(0)\n fourthOfJanuary.setFullYear(isoWeekYear, 0, 4)\n fourthOfJanuary.setHours(0, 0, 0, 0)\n date = Object(_startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(fourthOfJanuary)\n date.setDate(date.getDate() + diff)\n return date\n}\n\n\n/***/ }),\n/* 287 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfISOWeekYear; });\n/* harmony import */ var _getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(283);\n/* harmony import */ var _startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(284);\n\n\n\n/**\n * @name startOfISOWeekYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Return the start of an ISO week-numbering year for the given date.\n *\n * @description\n * Return the start of an ISO week-numbering year,\n * which always starts 3 days before the year's first Thursday.\n * The result will be in the local timezone.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of an ISO week-numbering year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of an ISO week-numbering year for 2 July 2005:\n * var result = startOfISOWeekYear(new Date(2005, 6, 2))\n * //=> Mon Jan 03 2005 00:00:00\n */\nfunction startOfISOWeekYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var year = Object(_getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var fourthOfJanuary = new Date(0)\n fourthOfJanuary.setFullYear(year, 0, 4)\n fourthOfJanuary.setHours(0, 0, 0, 0)\n var date = Object(_startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(fourthOfJanuary)\n return date\n}\n\n\n/***/ }),\n/* 288 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInCalendarDays; });\n/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(289);\n/* harmony import */ var _startOfDay_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(290);\n\n\n\nvar MILLISECONDS_IN_DAY = 86400000\n\n/**\n * @name differenceInCalendarDays\n * @category Day Helpers\n * @summary Get the number of calendar days between the given dates.\n *\n * @description\n * Get the number of calendar days between the given dates. This means that the times are removed\n * from the dates and then the difference in days is calculated.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar days\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar days are between\n * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00?\n * var result = differenceInCalendarDays(\n * new Date(2012, 6, 2, 0, 0),\n * new Date(2011, 6, 2, 23, 0)\n * )\n * //=> 366\n * // How many calendar days are between\n * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00?\n * var result = differenceInCalendarDays(\n * new Date(2011, 6, 2, 0, 1),\n * new Date(2011, 6, 2, 23, 59)\n * )\n * //=> 1\n */\nfunction differenceInCalendarDays(\n dirtyDateLeft,\n dirtyDateRight\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var startOfDayLeft = Object(_startOfDay_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDateLeft)\n var startOfDayRight = Object(_startOfDay_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDateRight)\n\n var timestampLeft =\n startOfDayLeft.getTime() - Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(startOfDayLeft)\n var timestampRight =\n startOfDayRight.getTime() - Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(startOfDayRight)\n\n // Round the number of days to the nearest integer\n // because the number of milliseconds in a day is not constant\n // (e.g. it's different in the day of the daylight saving time clock shift)\n return Math.round((timestampLeft - timestampRight) / MILLISECONDS_IN_DAY)\n}\n\n\n/***/ }),\n/* 289 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getTimezoneOffsetInMilliseconds; });\nvar MILLISECONDS_IN_MINUTE = 60000\n\n/**\n * Google Chrome as of 67.0.3396.87 introduced timezones with offset that includes seconds.\n * They usually appear for dates that denote time before the timezones were introduced\n * (e.g. for 'Europe/Prague' timezone the offset is GMT+00:57:44 before 1 October 1891\n * and GMT+01:00:00 after that date)\n *\n * Date#getTimezoneOffset returns the offset in minutes and would return 57 for the example above,\n * which would lead to incorrect calculations.\n *\n * This function returns the timezone offset in milliseconds that takes seconds in account.\n */\nfunction getTimezoneOffsetInMilliseconds (dirtyDate) {\n var date = new Date(dirtyDate.getTime())\n var baseTimezoneOffset = date.getTimezoneOffset()\n date.setSeconds(0, 0)\n var millisecondsPartOfTimezoneOffset = date.getTime() % MILLISECONDS_IN_MINUTE\n\n return baseTimezoneOffset * MILLISECONDS_IN_MINUTE + millisecondsPartOfTimezoneOffset\n}\n\n\n/***/ }),\n/* 290 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfDay; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name startOfDay\n * @category Day Helpers\n * @summary Return the start of a day for the given date.\n *\n * @description\n * Return the start of a day for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a day\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a day for 2 September 2014 11:55:00:\n * var result = startOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 00:00:00\n */\nfunction startOfDay(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n date.setHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 291 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addMinutes; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(281);\n\n\n\nvar MILLISECONDS_IN_MINUTE = 60000\n\n/**\n * @name addMinutes\n * @category Minute Helpers\n * @summary Add the specified number of minutes to the given date.\n *\n * @description\n * Add the specified number of minutes to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of minutes to be added\n * @returns {Date} the new date with the minutes added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 30 minutes to 10 July 2014 12:00:00:\n * var result = addMinutes(new Date(2014, 6, 10, 12, 0), 30)\n * //=> Thu Jul 10 2014 12:30:00\n */\nfunction addMinutes(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, amount * MILLISECONDS_IN_MINUTE)\n}\n\n\n/***/ }),\n/* 292 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addMonths; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _getDaysInMonth_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(293);\n\n\n\n\n/**\n * @name addMonths\n * @category Month Helpers\n * @summary Add the specified number of months to the given date.\n *\n * @description\n * Add the specified number of months to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of months to be added\n * @returns {Date} the new date with the months added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 5 months to 1 September 2014:\n * var result = addMonths(new Date(2014, 8, 1), 5)\n * //=> Sun Feb 01 2015 00:00:00\n */\nfunction addMonths(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n var desiredMonth = date.getMonth() + amount\n var dateWithDesiredMonth = new Date(0)\n dateWithDesiredMonth.setFullYear(date.getFullYear(), desiredMonth, 1)\n dateWithDesiredMonth.setHours(0, 0, 0, 0)\n var daysInMonth = Object(_getDaysInMonth_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dateWithDesiredMonth)\n // Set the last day of the new month\n // if the original date was the last day of the longer month\n date.setMonth(desiredMonth, Math.min(daysInMonth, date.getDate()))\n return date\n}\n\n\n/***/ }),\n/* 293 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getDaysInMonth; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getDaysInMonth\n * @category Month Helpers\n * @summary Get the number of days in a month of the given date.\n *\n * @description\n * Get the number of days in a month of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the number of days in a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // How many days are in February 2000?\n * var result = getDaysInMonth(new Date(2000, 1))\n * //=> 29\n */\nfunction getDaysInMonth(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n var monthIndex = date.getMonth()\n var lastDayOfMonth = new Date(0)\n lastDayOfMonth.setFullYear(year, monthIndex + 1, 0)\n lastDayOfMonth.setHours(0, 0, 0, 0)\n return lastDayOfMonth.getDate()\n}\n\n\n/***/ }),\n/* 294 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addQuarters; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addMonths_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(292);\n\n\n\n/**\n * @name addQuarters\n * @category Quarter Helpers\n * @summary Add the specified number of year quarters to the given date.\n *\n * @description\n * Add the specified number of year quarters to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of quarters to be added\n * @returns {Date} the new date with the quarters added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 1 quarter to 1 September 2014:\n * var result = addQuarters(new Date(2014, 8, 1), 1)\n * //=> Mon Dec 01 2014 00:00:00\n */\nfunction addQuarters(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n var months = amount * 3\n return Object(_addMonths_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, months)\n}\n\n\n/***/ }),\n/* 295 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addSeconds; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(281);\n\n\n\n/**\n * @name addSeconds\n * @category Second Helpers\n * @summary Add the specified number of seconds to the given date.\n *\n * @description\n * Add the specified number of seconds to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of seconds to be added\n * @returns {Date} the new date with the seconds added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 30 seconds to 10 July 2014 12:45:00:\n * var result = addSeconds(new Date(2014, 6, 10, 12, 45, 0), 30)\n * //=> Thu Jul 10 2014 12:45:30\n */\nfunction addSeconds(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, amount * 1000)\n}\n\n\n/***/ }),\n/* 296 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addWeeks; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addDays_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(277);\n\n\n\n/**\n * @name addWeeks\n * @category Week Helpers\n * @summary Add the specified number of weeks to the given date.\n *\n * @description\n * Add the specified number of week to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of weeks to be added\n * @returns {Date} the new date with the weeks added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 4 weeks to 1 September 2014:\n * var result = addWeeks(new Date(2014, 8, 1), 4)\n * //=> Mon Sep 29 2014 00:00:00\n */\nfunction addWeeks(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n var days = amount * 7\n return Object(_addDays_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, days)\n}\n\n\n/***/ }),\n/* 297 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addYears; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addMonths_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(292);\n\n\n\n/**\n * @name addYears\n * @category Year Helpers\n * @summary Add the specified number of years to the given date.\n *\n * @description\n * Add the specified number of years to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of years to be added\n * @returns {Date} the new date with the years added\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Add 5 years to 1 September 2014:\n * var result = addYears(new Date(2014, 8, 1), 5)\n * //=> Sun Sep 01 2019 00:00:00\n */\nfunction addYears(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addMonths_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, amount * 12)\n}\n\n\n/***/ }),\n/* 298 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return areIntervalsOverlapping; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name areIntervalsOverlapping\n * @category Interval Helpers\n * @summary Is the given time interval overlapping with another time interval?\n *\n * @description\n * Is the given time interval overlapping with another time interval?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `areRangesOverlapping` to `areIntervalsOverlapping`.\n * This change was made to mirror the use of the word \"interval\" in standard ISO 8601:2004 terminology:\n *\n * ```\n * 2.1.3\n * time interval\n * part of the time axis limited by two instants\n * ```\n *\n * Also, this function now accepts an object with `start` and `end` properties\n * instead of two arguments as an interval.\n * This function now throws `RangeError` if the start of the interval is after its end\n * or if any date in the interval is `Invalid Date`.\n *\n * ```javascript\n * // Before v2.0.0\n *\n * areRangesOverlapping(\n * new Date(2014, 0, 10), new Date(2014, 0, 20),\n * new Date(2014, 0, 17), new Date(2014, 0, 21)\n * )\n *\n * // v2.0.0 onward\n *\n * areIntervalsOverlapping(\n * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },\n * { start: new Date(2014, 0, 17), end: new Date(2014, 0, 21) }\n * )\n * ```\n *\n * @param {Interval} intervalLeft - the first interval to compare. See [Interval]{@link docs/types/Interval}\n * @param {Interval} intervalRight - the second interval to compare. See [Interval]{@link docs/types/Interval}\n * @returns {Boolean} whether the time intervals are overlapping\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} The start of an interval cannot be after its end\n * @throws {RangeError} Date in interval cannot be `Invalid Date`\n *\n * @example\n * // For overlapping time intervals:\n * areIntervalsOverlapping(\n * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },\n * { start: new Date(2014, 0, 17), end: new Date(2014, 0, 21) }\n * )\n * //=> true\n *\n * @example\n * // For non-overlapping time intervals:\n * areIntervalsOverlapping(\n * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },\n * { start: new Date(2014, 0, 21), end: new Date(2014, 0, 22) }\n * )\n * //=> false\n */\nfunction areIntervalsOverlapping(\n dirtyIntervalLeft,\n dirtyIntervalRight\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var intervalLeft = dirtyIntervalLeft || {}\n var intervalRight = dirtyIntervalRight || {}\n var leftStartTime = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(intervalLeft.start).getTime()\n var leftEndTime = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(intervalLeft.end).getTime()\n var rightStartTime = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(intervalRight.start).getTime()\n var rightEndTime = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(intervalRight.end).getTime()\n\n // Throw an exception if start date is after end date or if any date is `Invalid Date`\n if (!(leftStartTime <= leftEndTime && rightStartTime <= rightEndTime)) {\n throw new RangeError('Invalid interval')\n }\n\n return leftStartTime < rightEndTime && rightStartTime < leftEndTime\n}\n\n\n/***/ }),\n/* 299 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return closestIndexTo; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name closestIndexTo\n * @category Common Helpers\n * @summary Return an index of the closest date from the array comparing to the given date.\n *\n * @description\n * Return an index of the closest date from the array comparing to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - Now, `closestIndexTo` doesn't throw an exception\n * when the second argument is not an array, and returns Invalid Date instead.\n *\n * @param {Date|Number} dateToCompare - the date to compare with\n * @param {Date[]|Number[]} datesArray - the array to search\n * @returns {Number} an index of the date closest to the given date\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Which date is closer to 6 September 2015?\n * var dateToCompare = new Date(2015, 8, 6)\n * var datesArray = [\n * new Date(2015, 0, 1),\n * new Date(2016, 0, 1),\n * new Date(2017, 0, 1)\n * ]\n * var result = closestIndexTo(dateToCompare, datesArray)\n * //=> 1\n */\nfunction closestIndexTo(dirtyDateToCompare, dirtyDatesArray) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateToCompare = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateToCompare)\n\n if (isNaN(dateToCompare)) {\n return NaN\n }\n\n var timeToCompare = dateToCompare.getTime()\n\n var datesArray\n // `dirtyDatesArray` is undefined or null\n if (dirtyDatesArray == null) {\n datesArray = []\n\n // `dirtyDatesArray` is Array, Set or Map, or object with custom `forEach` method\n } else if (typeof dirtyDatesArray.forEach === 'function') {\n datesArray = dirtyDatesArray\n\n // If `dirtyDatesArray` is Array-like Object, convert to Array. Otherwise, make it empty Array\n } else {\n datesArray = Array.prototype.slice.call(dirtyDatesArray)\n }\n\n var result\n var minDistance\n datesArray.forEach(function(dirtyDate, index) {\n var currentDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n\n if (isNaN(currentDate)) {\n result = NaN\n minDistance = NaN\n return\n }\n\n var distance = Math.abs(timeToCompare - currentDate.getTime())\n if (result == null || distance < minDistance) {\n result = index\n minDistance = distance\n }\n })\n\n return result\n}\n\n\n/***/ }),\n/* 300 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return closestTo; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name closestTo\n * @category Common Helpers\n * @summary Return a date from the array closest to the given date.\n *\n * @description\n * Return a date from the array closest to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - Now, `closestTo` doesn't throw an exception\n * when the second argument is not an array, and returns Invalid Date instead.\n *\n * @param {Date|Number} dateToCompare - the date to compare with\n * @param {Date[]|Number[]} datesArray - the array to search\n * @returns {Date} the date from the array closest to the given date\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Which date is closer to 6 September 2015: 1 January 2000 or 1 January 2030?\n * var dateToCompare = new Date(2015, 8, 6)\n * var result = closestTo(dateToCompare, [\n * new Date(2000, 0, 1),\n * new Date(2030, 0, 1)\n * ])\n * //=> Tue Jan 01 2030 00:00:00\n */\nfunction closestTo(dirtyDateToCompare, dirtyDatesArray) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateToCompare = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateToCompare)\n\n if (isNaN(dateToCompare)) {\n return new Date(NaN)\n }\n\n var timeToCompare = dateToCompare.getTime()\n\n var datesArray\n // `dirtyDatesArray` is undefined or null\n if (dirtyDatesArray == null) {\n datesArray = []\n\n // `dirtyDatesArray` is Array, Set or Map, or object with custom `forEach` method\n } else if (typeof dirtyDatesArray.forEach === 'function') {\n datesArray = dirtyDatesArray\n\n // If `dirtyDatesArray` is Array-like Object, convert to Array. Otherwise, make it empty Array\n } else {\n datesArray = Array.prototype.slice.call(dirtyDatesArray)\n }\n\n var result\n var minDistance\n datesArray.forEach(function(dirtyDate) {\n var currentDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n\n if (isNaN(currentDate)) {\n result = new Date(NaN)\n minDistance = NaN\n return\n }\n\n var distance = Math.abs(timeToCompare - currentDate.getTime())\n if (result == null || distance < minDistance) {\n result = currentDate\n minDistance = distance\n }\n })\n\n return result\n}\n\n\n/***/ }),\n/* 301 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return compareAsc; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name compareAsc\n * @category Common Helpers\n * @summary Compare the two dates and return -1, 0 or 1.\n *\n * @description\n * Compare the two dates and return 1 if the first date is after the second,\n * -1 if the first date is before the second or 0 if dates are equal.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to compare\n * @param {Date|Number} dateRight - the second date to compare\n * @returns {Number} the result of the comparison\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Compare 11 February 1987 and 10 July 1989:\n * var result = compareAsc(new Date(1987, 1, 11), new Date(1989, 6, 10))\n * //=> -1\n *\n * @example\n * // Sort the array of dates:\n * var result = [\n * new Date(1995, 6, 2),\n * new Date(1987, 1, 11),\n * new Date(1989, 6, 10)\n * ].sort(compareAsc)\n * //=> [\n * // Wed Feb 11 1987 00:00:00,\n * // Mon Jul 10 1989 00:00:00,\n * // Sun Jul 02 1995 00:00:00\n * // ]\n */\nfunction compareAsc(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n var diff = dateLeft.getTime() - dateRight.getTime()\n\n if (diff < 0) {\n return -1\n } else if (diff > 0) {\n return 1\n // Return 0 if diff is 0; return NaN if diff is NaN\n } else {\n return diff\n }\n}\n\n\n/***/ }),\n/* 302 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return compareDesc; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name compareDesc\n * @category Common Helpers\n * @summary Compare the two dates reverse chronologically and return -1, 0 or 1.\n *\n * @description\n * Compare the two dates and return -1 if the first date is after the second,\n * 1 if the first date is before the second or 0 if dates are equal.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to compare\n * @param {Date|Number} dateRight - the second date to compare\n * @returns {Number} the result of the comparison\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Compare 11 February 1987 and 10 July 1989 reverse chronologically:\n * var result = compareDesc(new Date(1987, 1, 11), new Date(1989, 6, 10))\n * //=> 1\n *\n * @example\n * // Sort the array of dates in reverse chronological order:\n * var result = [\n * new Date(1995, 6, 2),\n * new Date(1987, 1, 11),\n * new Date(1989, 6, 10)\n * ].sort(compareDesc)\n * //=> [\n * // Sun Jul 02 1995 00:00:00,\n * // Mon Jul 10 1989 00:00:00,\n * // Wed Feb 11 1987 00:00:00\n * // ]\n */\nfunction compareDesc(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n var diff = dateLeft.getTime() - dateRight.getTime()\n\n if (diff > 0) {\n return -1\n } else if (diff < 0) {\n return 1\n // Return 0 if diff is 0; return NaN if diff is NaN\n } else {\n return diff\n }\n}\n\n\n/***/ }),\n/* 303 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInCalendarISOWeekYears; });\n/* harmony import */ var _getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(283);\n\n\n/**\n * @name differenceInCalendarISOWeekYears\n * @category ISO Week-Numbering Year Helpers\n * @summary Get the number of calendar ISO week-numbering years between the given dates.\n *\n * @description\n * Get the number of calendar ISO week-numbering years between the given dates.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `differenceInCalendarISOYears` to `differenceInCalendarISOWeekYears`.\n * \"ISO week year\" is short for [ISO week-numbering year](https://en.wikipedia.org/wiki/ISO_week_date).\n * This change makes the name consistent with\n * locale-dependent week-numbering year helpers, e.g., `addWeekYears`.\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar ISO week-numbering years\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar ISO week-numbering years are 1 January 2010 and 1 January 2012?\n * var result = differenceInCalendarISOWeekYears(\n * new Date(2012, 0, 1),\n * new Date(2010, 0, 1)\n * )\n * //=> 2\n */\nfunction differenceInCalendarISOWeekYears(\n dirtyDateLeft,\n dirtyDateRight\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft) - Object(_getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n}\n\n\n/***/ }),\n/* 304 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInCalendarISOWeeks; });\n/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(289);\n/* harmony import */ var _startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(284);\n\n\n\nvar MILLISECONDS_IN_WEEK = 604800000\n\n/**\n * @name differenceInCalendarISOWeeks\n * @category ISO Week Helpers\n * @summary Get the number of calendar ISO weeks between the given dates.\n *\n * @description\n * Get the number of calendar ISO weeks between the given dates.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar ISO weeks\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar ISO weeks are between 6 July 2014 and 21 July 2014?\n * var result = differenceInCalendarISOWeeks(\n * new Date(2014, 6, 21),\n * new Date(2014, 6, 6)\n * )\n * //=> 3\n */\nfunction differenceInCalendarISOWeeks(\n dirtyDateLeft,\n dirtyDateRight\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var startOfISOWeekLeft = Object(_startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDateLeft)\n var startOfISOWeekRight = Object(_startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDateRight)\n\n var timestampLeft =\n startOfISOWeekLeft.getTime() -\n Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(startOfISOWeekLeft)\n var timestampRight =\n startOfISOWeekRight.getTime() -\n Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(startOfISOWeekRight)\n\n // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n return Math.round((timestampLeft - timestampRight) / MILLISECONDS_IN_WEEK)\n}\n\n\n/***/ }),\n/* 305 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInCalendarMonths; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name differenceInCalendarMonths\n * @category Month Helpers\n * @summary Get the number of calendar months between the given dates.\n *\n * @description\n * Get the number of calendar months between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar months\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar months are between 31 January 2014 and 1 September 2014?\n * var result = differenceInCalendarMonths(\n * new Date(2014, 8, 1),\n * new Date(2014, 0, 31)\n * )\n * //=> 8\n */\nfunction differenceInCalendarMonths(\n dirtyDateLeft,\n dirtyDateRight\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n var yearDiff = dateLeft.getFullYear() - dateRight.getFullYear()\n var monthDiff = dateLeft.getMonth() - dateRight.getMonth()\n\n return yearDiff * 12 + monthDiff\n}\n\n\n/***/ }),\n/* 306 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInCalendarQuarters; });\n/* harmony import */ var _getQuarter_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(307);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name differenceInCalendarQuarters\n * @category Quarter Helpers\n * @summary Get the number of calendar quarters between the given dates.\n *\n * @description\n * Get the number of calendar quarters between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar quarters\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar quarters are between 31 December 2013 and 2 July 2014?\n * var result = differenceInCalendarQuarters(\n * new Date(2014, 6, 2),\n * new Date(2013, 11, 31)\n * )\n * //=> 3\n */\nfunction differenceInCalendarQuarters(\n dirtyDateLeft,\n dirtyDateRight\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDateRight)\n\n var yearDiff = dateLeft.getFullYear() - dateRight.getFullYear()\n var quarterDiff = Object(_getQuarter_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dateLeft) - Object(_getQuarter_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dateRight)\n\n return yearDiff * 4 + quarterDiff\n}\n\n\n/***/ }),\n/* 307 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getQuarter; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getQuarter\n * @category Quarter Helpers\n * @summary Get the year quarter of the given date.\n *\n * @description\n * Get the year quarter of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the quarter\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which quarter is 2 July 2014?\n * var result = getQuarter(new Date(2014, 6, 2))\n * //=> 3\n */\nfunction getQuarter(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var quarter = Math.floor(date.getMonth() / 3) + 1\n return quarter\n}\n\n\n/***/ }),\n/* 308 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInCalendarWeeks; });\n/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(289);\n/* harmony import */ var _startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(285);\n\n\n\nvar MILLISECONDS_IN_WEEK = 604800000\n\n/**\n * @name differenceInCalendarWeeks\n * @category Week Helpers\n * @summary Get the number of calendar weeks between the given dates.\n *\n * @description\n * Get the number of calendar weeks between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {Number} the number of calendar weeks\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // How many calendar weeks are between 5 July 2014 and 20 July 2014?\n * var result = differenceInCalendarWeeks(\n * new Date(2014, 6, 20),\n * new Date(2014, 6, 5)\n * )\n * //=> 3\n *\n * @example\n * // If the week starts on Monday,\n * // how many calendar weeks are between 5 July 2014 and 20 July 2014?\n * var result = differenceInCalendarWeeks(\n * new Date(2014, 6, 20),\n * new Date(2014, 6, 5),\n * { weekStartsOn: 1 }\n * )\n * //=> 2\n */\nfunction differenceInCalendarWeeks(\n dirtyDateLeft,\n dirtyDateRight,\n dirtyOptions\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var startOfWeekLeft = Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDateLeft, dirtyOptions)\n var startOfWeekRight = Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDateRight, dirtyOptions)\n\n var timestampLeft =\n startOfWeekLeft.getTime() - Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(startOfWeekLeft)\n var timestampRight =\n startOfWeekRight.getTime() -\n Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(startOfWeekRight)\n\n // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n return Math.round((timestampLeft - timestampRight) / MILLISECONDS_IN_WEEK)\n}\n\n\n/***/ }),\n/* 309 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInCalendarYears; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name differenceInCalendarYears\n * @category Year Helpers\n * @summary Get the number of calendar years between the given dates.\n *\n * @description\n * Get the number of calendar years between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of calendar years\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many calendar years are between 31 December 2013 and 11 February 2015?\n * var result = differenceInCalendarYears(\n * new Date(2015, 1, 11),\n * new Date(2013, 11, 31)\n * )\n * //=> 2\n */\nfunction differenceInCalendarYears(\n dirtyDateLeft,\n dirtyDateRight\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n return dateLeft.getFullYear() - dateRight.getFullYear()\n}\n\n\n/***/ }),\n/* 310 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInDays; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(288);\n/* harmony import */ var _compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(301);\n\n\n\n\n/**\n * @name differenceInDays\n * @category Day Helpers\n * @summary Get the number of full days between the given dates.\n *\n * @description\n * Get the number of full day periods between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of full days\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many full days are between\n * // 2 July 2011 23:00:00 and 2 July 2012 00:00:00?\n * var result = differenceInDays(\n * new Date(2012, 6, 2, 0, 0),\n * new Date(2011, 6, 2, 23, 0)\n * )\n * //=> 365\n * // How many days are between\n * // 2 July 2011 23:59:00 and 3 July 2011 00:01:00?\n * var result = differenceInDays(\n * new Date(2011, 6, 2, 0, 1),\n * new Date(2011, 6, 2, 23, 59)\n * )\n * //=> 0\n */\nfunction differenceInDays(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n var sign = Object(_compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dateLeft, dateRight)\n var difference = Math.abs(Object(_differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dateLeft, dateRight))\n\n dateLeft.setDate(dateLeft.getDate() - sign * difference)\n\n // Math.abs(diff in full days - diff in calendar days) === 1 if last calendar day is not full\n // If so, result must be decreased by 1 in absolute value\n var isLastDayNotFull = Object(_compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dateLeft, dateRight) === -sign\n var result = sign * (difference - isLastDayNotFull)\n // Prevent negative zero\n return result === 0 ? 0 : result\n}\n\n\n/***/ }),\n/* 311 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInHours; });\n/* harmony import */ var _differenceInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(312);\n\n\nvar MILLISECONDS_IN_HOUR = 3600000\n\n/**\n * @name differenceInHours\n * @category Hour Helpers\n * @summary Get the number of hours between the given dates.\n *\n * @description\n * Get the number of hours between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of hours\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many hours are between 2 July 2014 06:50:00 and 2 July 2014 19:00:00?\n * var result = differenceInHours(\n * new Date(2014, 6, 2, 19, 0),\n * new Date(2014, 6, 2, 6, 50)\n * )\n * //=> 12\n */\nfunction differenceInHours(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var diff =\n Object(_differenceInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft, dirtyDateRight) /\n MILLISECONDS_IN_HOUR\n return diff > 0 ? Math.floor(diff) : Math.ceil(diff)\n}\n\n\n/***/ }),\n/* 312 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInMilliseconds; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name differenceInMilliseconds\n * @category Millisecond Helpers\n * @summary Get the number of milliseconds between the given dates.\n *\n * @description\n * Get the number of milliseconds between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of milliseconds\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many milliseconds are between\n * // 2 July 2014 12:30:20.600 and 2 July 2014 12:30:21.700?\n * var result = differenceInMilliseconds(\n * new Date(2014, 6, 2, 12, 30, 21, 700),\n * new Date(2014, 6, 2, 12, 30, 20, 600)\n * )\n * //=> 1100\n */\nfunction differenceInMilliseconds(\n dirtyDateLeft,\n dirtyDateRight\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n return dateLeft.getTime() - dateRight.getTime()\n}\n\n\n/***/ }),\n/* 313 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInISOWeekYears; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _differenceInCalendarISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(303);\n/* harmony import */ var _compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(301);\n/* harmony import */ var _subISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(314);\n\n\n\n\n\n/**\n * @name differenceInISOWeekYears\n * @category ISO Week-Numbering Year Helpers\n * @summary Get the number of full ISO week-numbering years between the given dates.\n *\n * @description\n * Get the number of full ISO week-numbering years between the given dates.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `differenceInISOYears` to `differenceInISOWeekYears`.\n * \"ISO week year\" is short for [ISO week-numbering year](https://en.wikipedia.org/wiki/ISO_week_date).\n * This change makes the name consistent with\n * locale-dependent week-numbering year helpers, e.g., `addWeekYears`.\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of full ISO week-numbering years\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many full ISO week-numbering years are between 1 January 2010 and 1 January 2012?\n * var result = differenceInISOWeekYears(\n * new Date(2012, 0, 1),\n * new Date(2010, 0, 1)\n * )\n * //=> 1\n */\nfunction differenceInISOWeekYears(\n dirtyDateLeft,\n dirtyDateRight\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n var sign = Object(_compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dateLeft, dateRight)\n var difference = Math.abs(\n Object(_differenceInCalendarISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dateLeft, dateRight)\n )\n dateLeft = Object(_subISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(dateLeft, sign * difference)\n\n // Math.abs(diff in full ISO years - diff in calendar ISO years) === 1\n // if last calendar ISO year is not full\n // If so, result must be decreased by 1 in absolute value\n var isLastISOWeekYearNotFull = Object(_compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dateLeft, dateRight) === -sign\n var result = sign * (difference - isLastISOWeekYearNotFull)\n // Prevent negative zero\n return result === 0 ? 0 : result\n}\n\n\n/***/ }),\n/* 314 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return subISOWeekYears; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(282);\n\n\n\n/**\n * @name subISOWeekYears\n * @category ISO Week-Numbering Year Helpers\n * @summary Subtract the specified number of ISO week-numbering years from the given date.\n *\n * @description\n * Subtract the specified number of ISO week-numbering years from the given date.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `subISOYears` to `subISOWeekYears`.\n * \"ISO week year\" is short for [ISO week-numbering year](https://en.wikipedia.org/wiki/ISO_week_date).\n * This change makes the name consistent with\n * locale-dependent week-numbering year helpers, e.g., `setWeekYear`.\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of ISO week-numbering years to be subtracted\n * @returns {Date} the new date with the ISO week-numbering years subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 5 ISO week-numbering years from 1 September 2014:\n * var result = subISOWeekYears(new Date(2014, 8, 1), 5)\n * //=> Mon Aug 31 2009 00:00:00\n */\nfunction subISOWeekYears(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addISOWeekYears_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, -amount)\n}\n\n\n/***/ }),\n/* 315 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInMinutes; });\n/* harmony import */ var _differenceInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(312);\n\n\nvar MILLISECONDS_IN_MINUTE = 60000\n\n/**\n * @name differenceInMinutes\n * @category Minute Helpers\n * @summary Get the number of minutes between the given dates.\n *\n * @description\n * Get the number of minutes between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of minutes\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many minutes are between 2 July 2014 12:07:59 and 2 July 2014 12:20:00?\n * var result = differenceInMinutes(\n * new Date(2014, 6, 2, 12, 20, 0),\n * new Date(2014, 6, 2, 12, 7, 59)\n * )\n * //=> 12\n */\nfunction differenceInMinutes(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var diff =\n Object(_differenceInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft, dirtyDateRight) /\n MILLISECONDS_IN_MINUTE\n return diff > 0 ? Math.floor(diff) : Math.ceil(diff)\n}\n\n\n/***/ }),\n/* 316 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInMonths; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _differenceInCalendarMonths_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(305);\n/* harmony import */ var _compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(301);\n\n\n\n\n/**\n * @name differenceInMonths\n * @category Month Helpers\n * @summary Get the number of full months between the given dates.\n *\n * @description\n * Get the number of full months between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of full months\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many full months are between 31 January 2014 and 1 September 2014?\n * var result = differenceInMonths(new Date(2014, 8, 1), new Date(2014, 0, 31))\n * //=> 7\n */\nfunction differenceInMonths(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n var sign = Object(_compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dateLeft, dateRight)\n var difference = Math.abs(Object(_differenceInCalendarMonths_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dateLeft, dateRight))\n dateLeft.setMonth(dateLeft.getMonth() - sign * difference)\n\n // Math.abs(diff in full months - diff in calendar months) === 1 if last calendar month is not full\n // If so, result must be decreased by 1 in absolute value\n var isLastMonthNotFull = Object(_compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dateLeft, dateRight) === -sign\n var result = sign * (difference - isLastMonthNotFull)\n // Prevent negative zero\n return result === 0 ? 0 : result\n}\n\n\n/***/ }),\n/* 317 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInQuarters; });\n/* harmony import */ var _differenceInMonths_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(316);\n\n\n/**\n * @name differenceInQuarters\n * @category Quarter Helpers\n * @summary Get the number of full quarters between the given dates.\n *\n * @description\n * Get the number of full quarters between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of full quarters\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many full quarters are between 31 December 2013 and 2 July 2014?\n * var result = differenceInQuarters(new Date(2014, 6, 2), new Date(2013, 11, 31))\n * //=> 2\n */\nfunction differenceInQuarters(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var diff = Object(_differenceInMonths_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft, dirtyDateRight) / 3\n return diff > 0 ? Math.floor(diff) : Math.ceil(diff)\n}\n\n\n/***/ }),\n/* 318 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInSeconds; });\n/* harmony import */ var _differenceInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(312);\n\n\n/**\n * @name differenceInSeconds\n * @category Second Helpers\n * @summary Get the number of seconds between the given dates.\n *\n * @description\n * Get the number of seconds between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of seconds\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many seconds are between\n * // 2 July 2014 12:30:07.999 and 2 July 2014 12:30:20.000?\n * var result = differenceInSeconds(\n * new Date(2014, 6, 2, 12, 30, 20, 0),\n * new Date(2014, 6, 2, 12, 30, 7, 999)\n * )\n * //=> 12\n */\nfunction differenceInSeconds(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var diff = Object(_differenceInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft, dirtyDateRight) / 1000\n return diff > 0 ? Math.floor(diff) : Math.ceil(diff)\n}\n\n\n/***/ }),\n/* 319 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInWeeks; });\n/* harmony import */ var _differenceInDays_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(310);\n\n\n/**\n * @name differenceInWeeks\n * @category Week Helpers\n * @summary Get the number of full weeks between the given dates.\n *\n * @description\n * Get the number of full weeks between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of full weeks\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many full weeks are between 5 July 2014 and 20 July 2014?\n * var result = differenceInWeeks(new Date(2014, 6, 20), new Date(2014, 6, 5))\n * //=> 2\n */\nfunction differenceInWeeks(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var diff = Object(_differenceInDays_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft, dirtyDateRight) / 7\n return diff > 0 ? Math.floor(diff) : Math.ceil(diff)\n}\n\n\n/***/ }),\n/* 320 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return differenceInYears; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _differenceInCalendarYears_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(309);\n/* harmony import */ var _compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(301);\n\n\n\n\n/**\n * @name differenceInYears\n * @category Year Helpers\n * @summary Get the number of full years between the given dates.\n *\n * @description\n * Get the number of full years between the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the later date\n * @param {Date|Number} dateRight - the earlier date\n * @returns {Number} the number of full years\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // How many full years are between 31 December 2013 and 11 February 2015?\n * var result = differenceInYears(new Date(2015, 1, 11), new Date(2013, 11, 31))\n * //=> 1\n */\nfunction differenceInYears(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n var sign = Object(_compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dateLeft, dateRight)\n var difference = Math.abs(Object(_differenceInCalendarYears_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dateLeft, dateRight))\n dateLeft.setFullYear(dateLeft.getFullYear() - sign * difference)\n\n // Math.abs(diff in full years - diff in calendar years) === 1 if last calendar year is not full\n // If so, result must be decreased by 1 in absolute value\n var isLastYearNotFull = Object(_compareAsc_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dateLeft, dateRight) === -sign\n var result = sign * (difference - isLastYearNotFull)\n // Prevent negative zero\n return result === 0 ? 0 : result\n}\n\n\n/***/ }),\n/* 321 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return eachDayOfInterval; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name eachDayOfInterval\n * @category Interval Helpers\n * @summary Return the array of dates within the specified time interval.\n *\n * @description\n * Return the array of dates within the specified time interval.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `eachDay` to `eachDayOfInterval`.\n * This change was made to mirror the use of the word \"interval\" in standard ISO 8601:2004 terminology:\n *\n * ```\n * 2.1.3\n * time interval\n * part of the time axis limited by two instants\n * ```\n *\n * Also, this function now accepts an object with `start` and `end` properties\n * instead of two arguments as an interval.\n * This function now throws `RangeError` if the start of the interval is after its end\n * or if any date in the interval is `Invalid Date`.\n *\n * ```javascript\n * // Before v2.0.0\n *\n * eachDay(new Date(2014, 0, 10), new Date(2014, 0, 20))\n *\n * // v2.0.0 onward\n *\n * eachDayOfInterval(\n * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) }\n * )\n * ```\n *\n * @param {Interval} interval - the interval. See [Interval]{@link docs/types/Interval}\n * @param {Object} [options] - an object with options.\n * @param {Number} [options.step=1] - the step to increment by. The value should be more than 1.\n * @returns {Date[]} the array with starts of days from the day of the interval start to the day of the interval end\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.step` must be a number greater than 1\n * @throws {RangeError} The start of an interval cannot be after its end\n * @throws {RangeError} Date in interval cannot be `Invalid Date`\n *\n * @example\n * // Each day between 6 October 2014 and 10 October 2014:\n * var result = eachDayOfInterval({\n * start: new Date(2014, 9, 6),\n * end: new Date(2014, 9, 10)\n * })\n * //=> [\n * // Mon Oct 06 2014 00:00:00,\n * // Tue Oct 07 2014 00:00:00,\n * // Wed Oct 08 2014 00:00:00,\n * // Thu Oct 09 2014 00:00:00,\n * // Fri Oct 10 2014 00:00:00\n * // ]\n */\nfunction eachDayOfInterval(dirtyInterval, options) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var interval = dirtyInterval || {}\n var startDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(interval.start)\n var endDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(interval.end)\n\n var endTime = endDate.getTime()\n\n // Throw an exception if start date is after end date or if any date is `Invalid Date`\n if (!(startDate.getTime() <= endTime)) {\n throw new RangeError('Invalid interval')\n }\n\n var dates = []\n\n var currentDate = startDate\n currentDate.setHours(0, 0, 0, 0)\n\n var step = options && 'step' in options ? Number(options.step) : 1\n if (step < 1 || isNaN(step))\n throw new RangeError('`options.step` must be a number greater than 1')\n\n while (currentDate.getTime() <= endTime) {\n dates.push(Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(currentDate))\n currentDate.setDate(currentDate.getDate() + step)\n currentDate.setHours(0, 0, 0, 0)\n }\n\n return dates\n}\n\n\n/***/ }),\n/* 322 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return eachWeekOfInterval; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(285);\n/* harmony import */ var _addWeeks_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(296);\n\n\n\n\n/**\n * @name eachWeekOfInterval\n * @category Interval Helpers\n * @summary Return the array of weeks within the specified time interval.\n *\n * @description\n * Return the array of weeks within the specified time interval.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Interval} interval - the interval. See [Interval]{@link docs/types/Interval}\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @returns {Date[]} the array with starts of weeks from the week of the interval start to the week of the interval end\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be 0, 1, ..., 6\n * @throws {RangeError} The start of an interval cannot be after its end\n * @throws {RangeError} Date in interval cannot be `Invalid Date`\n *\n * @example\n * // Each week within interval 6 October 2014 - 23 November 2014:\n * var result = eachWeekOfInterval({\n * start: new Date(2014, 9, 6),\n * end: new Date(2014, 10, 23)\n * })\n * //=> [\n * // Sun Oct 05 2014 00:00:00,\n * // Sun Oct 12 2014 00:00:00,\n * // Sun Oct 19 2014 00:00:00,\n * // Sun Oct 26 2014 00:00:00,\n * // Sun Nov 02 2014 00:00:00,\n * // Sun Nov 09 2014 00:00:00,\n * // Sun Nov 16 2014 00:00:00,\n * // Sun Nov 23 2014 00:00:00\n * // ]\n */\nfunction eachWeekOfInterval(dirtyInterval, options) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var interval = dirtyInterval || {}\n var startDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(interval.start)\n var endDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(interval.end)\n\n var endTime = endDate.getTime()\n\n // Throw an exception if start date is after end date or if any date is `Invalid Date`\n if (!(startDate.getTime() <= endTime)) {\n throw new RangeError('Invalid interval')\n }\n\n var startDateWeek = Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(startDate, options)\n var endDateWeek = Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(endDate, options)\n\n // Some timezones switch DST at midnight, making start of day unreliable in these timezones, 3pm is a safe bet\n startDateWeek.setHours(15)\n endDateWeek.setHours(15)\n\n endTime = endDateWeek.getTime()\n\n var weeks = []\n\n var currentWeek = startDateWeek\n\n while (currentWeek.getTime() <= endTime) {\n currentWeek.setHours(0)\n weeks.push(Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(currentWeek))\n currentWeek = Object(_addWeeks_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(currentWeek, 1)\n currentWeek.setHours(15)\n }\n\n return weeks\n}\n\n\n/***/ }),\n/* 323 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return eachWeekendOfInterval; });\n/* harmony import */ var _eachDayOfInterval_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(321);\n/* harmony import */ var _isSunday_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(324);\n/* harmony import */ var _isWeekend_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(325);\n\n\n\n\n/**\n * @name eachWeekendOfInterval\n * @category Interval Helpers\n * @summary List all the Saturdays and Sundays in the given date interval.\n *\n * @description\n * Get all the Saturdays and Sundays in the given date interval.\n *\n * @param {Interval} interval - the given interval. See [Interval]{@link docs/types/Interval}\n * @returns {Date[]} an array containing all the Saturdays and Sundays\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} The start of an interval cannot be after its end\n * @throws {RangeError} Date in interval cannot be `Invalid Date`\n *\n * @example\n * // Lists all Saturdays and Sundays in the given date interval\n * var result = eachWeekendOfInterval({\n * start: new Date(2018, 8, 17),\n * end: new Date(2018, 8, 30)\n * })\n * //=> [\n * // Sat Sep 22 2018 00:00:00,\n * // Sun Sep 23 2018 00:00:00,\n * // Sat Sep 29 2018 00:00:00,\n * // Sun Sep 30 2018 00:00:00\n * // ]\n */\nfunction eachWeekendOfInterval(interval) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateInterval = Object(_eachDayOfInterval_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(interval)\n var weekends = []\n var index = 0\n while (index++ < dateInterval.length) {\n var date = dateInterval[index]\n if (Object(_isWeekend_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date)) {\n weekends.push(date)\n if (Object(_isSunday_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date)) index = index + 5\n }\n }\n return weekends\n}\n\n\n/***/ }),\n/* 324 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSunday; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isSunday\n * @category Weekday Helpers\n * @summary Is the given date Sunday?\n *\n * @description\n * Is the given date Sunday?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is Sunday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 21 September 2014 Sunday?\n * var result = isSunday(new Date(2014, 8, 21))\n * //=> true\n */\nfunction isSunday(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate).getDay() === 0\n}\n\n\n/***/ }),\n/* 325 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isWeekend; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isWeekend\n * @category Weekday Helpers\n * @summary Does the given date fall on a weekend?\n *\n * @description\n * Does the given date fall on a weekend?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date falls on a weekend\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Does 5 October 2014 fall on a weekend?\n * var result = isWeekend(new Date(2014, 9, 5))\n * //=> true\n */\nfunction isWeekend(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var day = date.getDay()\n return day === 0 || day === 6\n}\n\n\n/***/ }),\n/* 326 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return eachWeekendOfMonth; });\n/* harmony import */ var _eachWeekendOfInterval_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(323);\n/* harmony import */ var _startOfMonth_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(327);\n/* harmony import */ var _endOfMonth_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(328);\n\n\n\n\n/**\n * @name eachWeekendOfMonth\n * @category Month Helpers\n * @summary List all the Saturdays and Sundays in the given month.\n *\n * @description\n * Get all the Saturdays and Sundays in the given month.\n *\n * @param {Date|Number} date - the given month\n * @returns {Date[]} an array containing all the Saturdays and Sundays\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} The passed date is invalid\n *\n * @example\n * // Lists all Saturdays and Sundays in the given month\n * var result = eachWeekendOfMonth(new Date(2022, 1, 1))\n * //=> [\n * // Sat Feb 05 2022 00:00:00,\n * // Sun Feb 06 2022 00:00:00,\n * // Sat Feb 12 2022 00:00:00,\n * // Sun Feb 13 2022 00:00:00,\n * // Sat Feb 19 2022 00:00:00,\n * // Sun Feb 20 2022 00:00:00,\n * // Sat Feb 26 2022 00:00:00,\n * // Sun Feb 27 2022 00:00:00\n * // ]\n */\nfunction eachWeekendOfMonth(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var startDate = Object(_startOfMonth_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n if (isNaN(startDate)) throw new RangeError('The passed date is invalid')\n\n var endDate = Object(_endOfMonth_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyDate)\n return Object(_eachWeekendOfInterval_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({ start: startDate, end: endDate })\n}\n\n\n/***/ }),\n/* 327 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfMonth; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name startOfMonth\n * @category Month Helpers\n * @summary Return the start of a month for the given date.\n *\n * @description\n * Return the start of a month for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a month for 2 September 2014 11:55:00:\n * var result = startOfMonth(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Mon Sep 01 2014 00:00:00\n */\nfunction startOfMonth(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n date.setDate(1)\n date.setHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 328 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfMonth; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name endOfMonth\n * @category Month Helpers\n * @summary Return the end of a month for the given date.\n *\n * @description\n * Return the end of a month for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a month for 2 September 2014 11:55:00:\n * var result = endOfMonth(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 30 2014 23:59:59.999\n */\nfunction endOfMonth(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var month = date.getMonth()\n date.setFullYear(date.getFullYear(), month + 1, 0)\n date.setHours(23, 59, 59, 999)\n return date\n}\n\n\n/***/ }),\n/* 329 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return eachWeekendOfYear; });\n/* harmony import */ var _eachWeekendOfInterval_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(323);\n/* harmony import */ var _startOfYear_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(330);\n/* harmony import */ var _endOfYear_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(331);\n\n\n\n\n/**\n * @name eachWeekendOfYear\n * @category Year Helpers\n * @summary List all the Saturdays and Sundays in the year.\n *\n * @description\n * Get all the Saturdays and Sundays in the year.\n *\n * @param {Date|Number} date - the given year\n * @returns {Date[]} an array containing all the Saturdays and Sundays\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} The passed date is invalid\n *\n * @example\n * // Lists all Saturdays and Sundays in the year\n * var result = eachWeekendOfYear(new Date(2020, 1, 1))\n * //=> [\n * // Sat Jan 03 2020 00:00:00,\n * // Sun Jan 04 2020 00:00:00,\n * // ...\n * // Sun Dec 27 2020 00:00:00\n * // ]\n * ]\n */\nfunction eachWeekendOfYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var startDate = Object(_startOfYear_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n if (isNaN(startDate)) throw new RangeError('The passed date is invalid')\n\n var endDate = Object(_endOfYear_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyDate)\n return Object(_eachWeekendOfInterval_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({ start: startDate, end: endDate })\n}\n\n\n/***/ }),\n/* 330 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name startOfYear\n * @category Year Helpers\n * @summary Return the start of a year for the given date.\n *\n * @description\n * Return the start of a year for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a year for 2 September 2014 11:55:00:\n * var result = startOfYear(new Date(2014, 8, 2, 11, 55, 00))\n * //=> Wed Jan 01 2014 00:00:00\n */\nfunction startOfYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var cleanDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var date = new Date(0)\n date.setFullYear(cleanDate.getFullYear(), 0, 1)\n date.setHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 331 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name endOfYear\n * @category Year Helpers\n * @summary Return the end of a year for the given date.\n *\n * @description\n * Return the end of a year for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of a year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a year for 2 September 2014 11:55:00:\n * var result = endOfYear(new Date(2014, 8, 2, 11, 55, 00))\n * //=> Wed Dec 31 2014 23:59:59.999\n */\nfunction endOfYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n date.setFullYear(year + 1, 0, 0)\n date.setHours(23, 59, 59, 999)\n return date\n}\n\n\n/***/ }),\n/* 332 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfDay; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name endOfDay\n * @category Day Helpers\n * @summary Return the end of a day for the given date.\n *\n * @description\n * Return the end of a day for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of a day\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a day for 2 September 2014 11:55:00:\n * var result = endOfDay(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 02 2014 23:59:59.999\n */\nfunction endOfDay(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n date.setHours(23, 59, 59, 999)\n return date\n}\n\n\n/***/ }),\n/* 333 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfDecade; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name endOfDecade\n * @category Decade Helpers\n * @summary Return the end of a decade for the given date.\n *\n * @description\n * Return the end of a decade for the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of a decade\n * @param {Object} [options] - an object with options.\n * @param {0|1|2} [options.additionalDigits=2] - passed to `toDate`. See [toDate]{@link https://date-fns.org/docs/toDate}\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.additionalDigits` must be 0, 1 or 2\n *\n * @example\n * // The end of a decade for 12 May 1984 00:00:00:\n * var result = endOfDecade(new Date(1984, 4, 12, 00, 00, 00))\n * //=> Dec 31 1989 23:59:59.999\n */\nfunction endOfDecade(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n var decade = 9 + Math.floor(year / 10) * 10\n date.setFullYear(decade, 11, 31)\n date.setHours(23, 59, 59, 999)\n return date\n}\n\n\n/***/ }),\n/* 334 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfHour; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name endOfHour\n * @category Hour Helpers\n * @summary Return the end of an hour for the given date.\n *\n * @description\n * Return the end of an hour for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of an hour\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of an hour for 2 September 2014 11:55:00:\n * var result = endOfHour(new Date(2014, 8, 2, 11, 55))\n * //=> Tue Sep 02 2014 11:59:59.999\n */\nfunction endOfHour(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n date.setMinutes(59, 59, 999)\n return date\n}\n\n\n/***/ }),\n/* 335 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfISOWeek; });\n/* harmony import */ var _endOfWeek_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(336);\n\n\n/**\n * @name endOfISOWeek\n * @category ISO Week Helpers\n * @summary Return the end of an ISO week for the given date.\n *\n * @description\n * Return the end of an ISO week for the given date.\n * The result will be in the local timezone.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of an ISO week\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of an ISO week for 2 September 2014 11:55:00:\n * var result = endOfISOWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Sep 07 2014 23:59:59.999\n */\nfunction endOfISOWeek(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_endOfWeek_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate, { weekStartsOn: 1 })\n}\n\n\n/***/ }),\n/* 336 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfWeek; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name endOfWeek\n * @category Week Helpers\n * @summary Return the end of a week for the given date.\n *\n * @description\n * Return the end of a week for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {Date} the end of a week\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // The end of a week for 2 September 2014 11:55:00:\n * var result = endOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sat Sep 06 2014 23:59:59.999\n *\n * @example\n * // If the week starts on Monday, the end of the week for 2 September 2014 11:55:00:\n * var result = endOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Sun Sep 07 2014 23:59:59.999\n */\nfunction endOfWeek(dirtyDate, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n\n var locale = options.locale\n var localeWeekStartsOn =\n locale && locale.options && locale.options.weekStartsOn\n var defaultWeekStartsOn =\n localeWeekStartsOn == null ? 0 : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeWeekStartsOn)\n var weekStartsOn =\n options.weekStartsOn == null\n ? defaultWeekStartsOn\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.weekStartsOn)\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively')\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var day = date.getDay()\n var diff = (day < weekStartsOn ? -7 : 0) + 6 - (day - weekStartsOn)\n\n date.setDate(date.getDate() + diff)\n date.setHours(23, 59, 59, 999)\n return date\n}\n\n\n/***/ }),\n/* 337 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfISOWeekYear; });\n/* harmony import */ var _getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(283);\n/* harmony import */ var _startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(284);\n\n\n\n/**\n * @name endOfISOWeekYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Return the end of an ISO week-numbering year for the given date.\n *\n * @description\n * Return the end of an ISO week-numbering year,\n * which always starts 3 days before the year's first Thursday.\n * The result will be in the local timezone.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `endOfISOYear` to `endOfISOWeekYear`.\n * \"ISO week year\" is short for [ISO week-numbering year](https://en.wikipedia.org/wiki/ISO_week_date).\n * This change makes the name consistent with\n * locale-dependent week-numbering year helpers, e.g., `addWeekYears`.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of an ISO week-numbering year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of an ISO week-numbering year for 2 July 2005:\n * var result = endOfISOWeekYear(new Date(2005, 6, 2))\n * //=> Sun Jan 01 2006 23:59:59.999\n */\nfunction endOfISOWeekYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var year = Object(_getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var fourthOfJanuaryOfNextYear = new Date(0)\n fourthOfJanuaryOfNextYear.setFullYear(year + 1, 0, 4)\n fourthOfJanuaryOfNextYear.setHours(0, 0, 0, 0)\n var date = Object(_startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(fourthOfJanuaryOfNextYear)\n date.setMilliseconds(date.getMilliseconds() - 1)\n return date\n}\n\n\n/***/ }),\n/* 338 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfMinute; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name endOfMinute\n * @category Minute Helpers\n * @summary Return the end of a minute for the given date.\n *\n * @description\n * Return the end of a minute for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of a minute\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a minute for 1 December 2014 22:15:45.400:\n * var result = endOfMinute(new Date(2014, 11, 1, 22, 15, 45, 400))\n * //=> Mon Dec 01 2014 22:15:59.999\n */\nfunction endOfMinute(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n date.setSeconds(59, 999)\n return date\n}\n\n\n/***/ }),\n/* 339 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfQuarter; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name endOfQuarter\n * @category Quarter Helpers\n * @summary Return the end of a year quarter for the given date.\n *\n * @description\n * Return the end of a year quarter for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of a quarter\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a quarter for 2 September 2014 11:55:00:\n * var result = endOfQuarter(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 30 2014 23:59:59.999\n */\nfunction endOfQuarter(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var currentMonth = date.getMonth()\n var month = currentMonth - (currentMonth % 3) + 3\n date.setMonth(month, 0)\n date.setHours(23, 59, 59, 999)\n return date\n}\n\n\n/***/ }),\n/* 340 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return endOfSecond; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name endOfSecond\n * @category Second Helpers\n * @summary Return the end of a second for the given date.\n *\n * @description\n * Return the end of a second for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of a second\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The end of a second for 1 December 2014 22:15:45.400:\n * var result = endOfSecond(new Date(2014, 11, 1, 22, 15, 45, 400))\n * //=> Mon Dec 01 2014 22:15:45.999\n */\nfunction endOfSecond(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n date.setMilliseconds(999)\n return date\n}\n\n\n/***/ }),\n/* 341 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return format; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(289);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(279);\n/* harmony import */ var _isValid_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(342);\n/* harmony import */ var _locale_en_US_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(343);\n/* harmony import */ var _lib_format_formatters_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(353);\n/* harmony import */ var _lib_format_longFormatters_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(365);\n/* harmony import */ var _subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(366);\n/* harmony import */ var _lib_protectedTokens_index_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(367);\n\n\n\n\n\n\n\n\n\n\n// This RegExp consists of three parts separated by `|`:\n// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token\n// (one of the certain letters followed by `o`)\n// - (\\w)\\1* matches any sequences of the same letter\n// - '' matches two quote characters in a row\n// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),\n// except a single quote symbol, which ends the sequence.\n// Two quote characters do not end the sequence.\n// If there is no matching single quote\n// then the sequence will continue until the end of the string.\n// - . matches any single character unmatched by previous parts of the RegExps\nvar formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\\w)\\1*|''|'(''|[^'])+('|$)|./g\n\n// This RegExp catches symbols escaped by quotes, and also\n// sequences of symbols P, p, and the combinations like `PPPPPPPppppp`\nvar longFormattingTokensRegExp = /P+p+|P+|p+|''|'(''|[^'])+('|$)|./g\n\nvar escapedStringRegExp = /^'(.*?)'?$/\nvar doubleQuoteRegExp = /''/g\n\n/**\n * @name format\n * @category Common Helpers\n * @summary Format the date.\n *\n * @description\n * Return the formatted date string in the given format. The result may vary by locale.\n *\n * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries.\n * > See: https://git.io/fxCyr\n *\n * The characters wrapped between two single quotes characters (') are escaped.\n * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.\n * (see the last example)\n *\n * Format of the string is based on Unicode Technical Standard #35:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * with a few additions (see note 7 below the table).\n *\n * Accepted patterns:\n * | Unit | Pattern | Result examples | Notes |\n * |---------------------------------|---------|-----------------------------------|-------|\n * | Era | G..GGG | AD, BC | |\n * | | GGGG | Anno Domini, Before Christ | 2 |\n * | | GGGGG | A, B | |\n * | Calendar year | y | 44, 1, 1900, 2017 | 5 |\n * | | yo | 44th, 1st, 0th, 17th | 5,7 |\n * | | yy | 44, 01, 00, 17 | 5 |\n * | | yyy | 044, 001, 1900, 2017 | 5 |\n * | | yyyy | 0044, 0001, 1900, 2017 | 5 |\n * | | yyyyy | ... | 3,5 |\n * | Local week-numbering year | Y | 44, 1, 1900, 2017 | 5 |\n * | | Yo | 44th, 1st, 1900th, 2017th | 5,7 |\n * | | YY | 44, 01, 00, 17 | 5,8 |\n * | | YYY | 044, 001, 1900, 2017 | 5 |\n * | | YYYY | 0044, 0001, 1900, 2017 | 5,8 |\n * | | YYYYY | ... | 3,5 |\n * | ISO week-numbering year | R | -43, 0, 1, 1900, 2017 | 5,7 |\n * | | RR | -43, 00, 01, 1900, 2017 | 5,7 |\n * | | RRR | -043, 000, 001, 1900, 2017 | 5,7 |\n * | | RRRR | -0043, 0000, 0001, 1900, 2017 | 5,7 |\n * | | RRRRR | ... | 3,5,7 |\n * | Extended year | u | -43, 0, 1, 1900, 2017 | 5 |\n * | | uu | -43, 01, 1900, 2017 | 5 |\n * | | uuu | -043, 001, 1900, 2017 | 5 |\n * | | uuuu | -0043, 0001, 1900, 2017 | 5 |\n * | | uuuuu | ... | 3,5 |\n * | Quarter (formatting) | Q | 1, 2, 3, 4 | |\n * | | Qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | QQ | 01, 02, 03, 04 | |\n * | | QQQ | Q1, Q2, Q3, Q4 | |\n * | | QQQQ | 1st quarter, 2nd quarter, ... | 2 |\n * | | QQQQQ | 1, 2, 3, 4 | 4 |\n * | Quarter (stand-alone) | q | 1, 2, 3, 4 | |\n * | | qo | 1st, 2nd, 3rd, 4th | 7 |\n * | | qq | 01, 02, 03, 04 | |\n * | | qqq | Q1, Q2, Q3, Q4 | |\n * | | qqqq | 1st quarter, 2nd quarter, ... | 2 |\n * | | qqqqq | 1, 2, 3, 4 | 4 |\n * | Month (formatting) | M | 1, 2, ..., 12 | |\n * | | Mo | 1st, 2nd, ..., 12th | 7 |\n * | | MM | 01, 02, ..., 12 | |\n * | | MMM | Jan, Feb, ..., Dec | |\n * | | MMMM | January, February, ..., December | 2 |\n * | | MMMMM | J, F, ..., D | |\n * | Month (stand-alone) | L | 1, 2, ..., 12 | |\n * | | Lo | 1st, 2nd, ..., 12th | 7 |\n * | | LL | 01, 02, ..., 12 | |\n * | | LLL | Jan, Feb, ..., Dec | |\n * | | LLLL | January, February, ..., December | 2 |\n * | | LLLLL | J, F, ..., D | |\n * | Local week of year | w | 1, 2, ..., 53 | |\n * | | wo | 1st, 2nd, ..., 53th | 7 |\n * | | ww | 01, 02, ..., 53 | |\n * | ISO week of year | I | 1, 2, ..., 53 | 7 |\n * | | Io | 1st, 2nd, ..., 53th | 7 |\n * | | II | 01, 02, ..., 53 | 7 |\n * | Day of month | d | 1, 2, ..., 31 | |\n * | | do | 1st, 2nd, ..., 31st | 7 |\n * | | dd | 01, 02, ..., 31 | |\n * | Day of year | D | 1, 2, ..., 365, 366 | 8 |\n * | | Do | 1st, 2nd, ..., 365th, 366th | 7 |\n * | | DD | 01, 02, ..., 365, 366 | 8 |\n * | | DDD | 001, 002, ..., 365, 366 | |\n * | | DDDD | ... | 3 |\n * | Day of week (formatting) | E..EEE | Mon, Tue, Wed, ..., Su | |\n * | | EEEE | Monday, Tuesday, ..., Sunday | 2 |\n * | | EEEEE | M, T, W, T, F, S, S | |\n * | | EEEEEE | Mo, Tu, We, Th, Fr, Su, Sa | |\n * | ISO day of week (formatting) | i | 1, 2, 3, ..., 7 | 7 |\n * | | io | 1st, 2nd, ..., 7th | 7 |\n * | | ii | 01, 02, ..., 07 | 7 |\n * | | iii | Mon, Tue, Wed, ..., Su | 7 |\n * | | iiii | Monday, Tuesday, ..., Sunday | 2,7 |\n * | | iiiii | M, T, W, T, F, S, S | 7 |\n * | | iiiiii | Mo, Tu, We, Th, Fr, Su, Sa | 7 |\n * | Local day of week (formatting) | e | 2, 3, 4, ..., 1 | |\n * | | eo | 2nd, 3rd, ..., 1st | 7 |\n * | | ee | 02, 03, ..., 01 | |\n * | | eee | Mon, Tue, Wed, ..., Su | |\n * | | eeee | Monday, Tuesday, ..., Sunday | 2 |\n * | | eeeee | M, T, W, T, F, S, S | |\n * | | eeeeee | Mo, Tu, We, Th, Fr, Su, Sa | |\n * | Local day of week (stand-alone) | c | 2, 3, 4, ..., 1 | |\n * | | co | 2nd, 3rd, ..., 1st | 7 |\n * | | cc | 02, 03, ..., 01 | |\n * | | ccc | Mon, Tue, Wed, ..., Su | |\n * | | cccc | Monday, Tuesday, ..., Sunday | 2 |\n * | | ccccc | M, T, W, T, F, S, S | |\n * | | cccccc | Mo, Tu, We, Th, Fr, Su, Sa | |\n * | AM, PM | a..aaa | AM, PM | |\n * | | aaaa | a.m., p.m. | 2 |\n * | | aaaaa | a, p | |\n * | AM, PM, noon, midnight | b..bbb | AM, PM, noon, midnight | |\n * | | bbbb | a.m., p.m., noon, midnight | 2 |\n * | | bbbbb | a, p, n, mi | |\n * | Flexible day period | B..BBB | at night, in the morning, ... | |\n * | | BBBB | at night, in the morning, ... | 2 |\n * | | BBBBB | at night, in the morning, ... | |\n * | Hour [1-12] | h | 1, 2, ..., 11, 12 | |\n * | | ho | 1st, 2nd, ..., 11th, 12th | 7 |\n * | | hh | 01, 02, ..., 11, 12 | |\n * | Hour [0-23] | H | 0, 1, 2, ..., 23 | |\n * | | Ho | 0th, 1st, 2nd, ..., 23rd | 7 |\n * | | HH | 00, 01, 02, ..., 23 | |\n * | Hour [0-11] | K | 1, 2, ..., 11, 0 | |\n * | | Ko | 1st, 2nd, ..., 11th, 0th | 7 |\n * | | KK | 1, 2, ..., 11, 0 | |\n * | Hour [1-24] | k | 24, 1, 2, ..., 23 | |\n * | | ko | 24th, 1st, 2nd, ..., 23rd | 7 |\n * | | kk | 24, 01, 02, ..., 23 | |\n * | Minute | m | 0, 1, ..., 59 | |\n * | | mo | 0th, 1st, ..., 59th | 7 |\n * | | mm | 00, 01, ..., 59 | |\n * | Second | s | 0, 1, ..., 59 | |\n * | | so | 0th, 1st, ..., 59th | 7 |\n * | | ss | 00, 01, ..., 59 | |\n * | Fraction of second | S | 0, 1, ..., 9 | |\n * | | SS | 00, 01, ..., 99 | |\n * | | SSS | 000, 0001, ..., 999 | |\n * | | SSSS | ... | 3 |\n * | Timezone (ISO-8601 w/ Z) | X | -08, +0530, Z | |\n * | | XX | -0800, +0530, Z | |\n * | | XXX | -08:00, +05:30, Z | |\n * | | XXXX | -0800, +0530, Z, +123456 | 2 |\n * | | XXXXX | -08:00, +05:30, Z, +12:34:56 | |\n * | Timezone (ISO-8601 w/o Z) | x | -08, +0530, +00 | |\n * | | xx | -0800, +0530, +0000 | |\n * | | xxx | -08:00, +05:30, +00:00 | 2 |\n * | | xxxx | -0800, +0530, +0000, +123456 | |\n * | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | |\n * | Timezone (GMT) | O...OOO | GMT-8, GMT+5:30, GMT+0 | |\n * | | OOOO | GMT-08:00, GMT+05:30, GMT+00:00 | 2 |\n * | Timezone (specific non-locat.) | z...zzz | GMT-8, GMT+5:30, GMT+0 | 6 |\n * | | zzzz | GMT-08:00, GMT+05:30, GMT+00:00 | 2,6 |\n * | Seconds timestamp | t | 512969520 | 7 |\n * | | tt | ... | 3,7 |\n * | Milliseconds timestamp | T | 512969520900 | 7 |\n * | | TT | ... | 3,7 |\n * | Long localized date | P | 05/29/1453 | 7 |\n * | | PP | May 29, 1453 | 7 |\n * | | PPP | May 29th, 1453 | 7 |\n * | | PPPP | Sunday, May 29th, 1453 | 2,7 |\n * | Long localized time | p | 12:00 AM | 7 |\n * | | pp | 12:00:00 AM | 7 |\n * | | ppp | 12:00:00 AM GMT+2 | 7 |\n * | | pppp | 12:00:00 AM GMT+02:00 | 2,7 |\n * | Combination of date and time | Pp | 05/29/1453, 12:00 AM | 7 |\n * | | PPpp | May 29, 1453, 12:00:00 AM | 7 |\n * | | PPPppp | May 29th, 1453 at ... | 7 |\n * | | PPPPpppp| Sunday, May 29th, 1453 at ... | 2,7 |\n * Notes:\n * 1. \"Formatting\" units (e.g. formatting quarter) in the default en-US locale\n * are the same as \"stand-alone\" units, but are different in some languages.\n * \"Formatting\" units are declined according to the rules of the language\n * in the context of a date. \"Stand-alone\" units are always nominative singular:\n *\n * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`\n *\n * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`\n *\n * 2. Any sequence of the identical letters is a pattern, unless it is escaped by\n * the single quote characters (see below).\n * If the sequence is longer than listed in table (e.g. `EEEEEEEEEEE`)\n * the output will be the same as default pattern for this unit, usually\n * the longest one (in case of ISO weekdays, `EEEE`). Default patterns for units\n * are marked with \"2\" in the last column of the table.\n *\n * `format(new Date(2017, 10, 6), 'MMM') //=> 'Nov'`\n *\n * `format(new Date(2017, 10, 6), 'MMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMM') //=> 'N'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMM') //=> 'November'`\n *\n * `format(new Date(2017, 10, 6), 'MMMMMMM') //=> 'November'`\n *\n * 3. Some patterns could be unlimited length (such as `yyyyyyyy`).\n * The output will be padded with zeros to match the length of the pattern.\n *\n * `format(new Date(2017, 10, 6), 'yyyyyyyy') //=> '00002017'`\n *\n * 4. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.\n * These tokens represent the shortest form of the quarter.\n *\n * 5. The main difference between `y` and `u` patterns are B.C. years:\n *\n * | Year | `y` | `u` |\n * |------|-----|-----|\n * | AC 1 | 1 | 1 |\n * | BC 1 | 1 | 0 |\n * | BC 2 | 2 | -1 |\n *\n * Also `yy` always returns the last two digits of a year,\n * while `uu` pads single digit years to 2 characters and returns other years unchanged:\n *\n * | Year | `yy` | `uu` |\n * |------|------|------|\n * | 1 | 01 | 01 |\n * | 14 | 14 | 14 |\n * | 376 | 76 | 376 |\n * | 1453 | 53 | 1453 |\n *\n * The same difference is true for local and ISO week-numbering years (`Y` and `R`),\n * except local week-numbering years are dependent on `options.weekStartsOn`\n * and `options.firstWeekContainsDate` (compare [getISOWeekYear]{@link https://date-fns.org/docs/getISOWeekYear}\n * and [getWeekYear]{@link https://date-fns.org/docs/getWeekYear}).\n *\n * 6. Specific non-location timezones are currently unavailable in `date-fns`,\n * so right now these tokens fall back to GMT timezones.\n *\n * 7. These patterns are not in the Unicode Technical Standard #35:\n * - `i`: ISO day of week\n * - `I`: ISO week of year\n * - `R`: ISO week-numbering year\n * - `t`: seconds timestamp\n * - `T`: milliseconds timestamp\n * - `o`: ordinal number modifier\n * - `P`: long localized date\n * - `p`: long localized time\n *\n * 8. These tokens are often confused with others. See: https://git.io/fxCyr\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The second argument is now required for the sake of explicitness.\n *\n * ```javascript\n * // Before v2.0.0\n * format(new Date(2016, 0, 1))\n *\n * // v2.0.0 onward\n * format(new Date(2016, 0, 1), \"yyyy-MM-dd'T'HH:mm:ss.SSSxxx\")\n * ```\n *\n * - New format string API for `format` function\n * which is based on [Unicode Technical Standard #35](https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table).\n * See [this post](https://blog.date-fns.org/post/unicode-tokens-in-date-fns-v2-sreatyki91jg) for more details.\n *\n * - Characters are now escaped using single quote symbols (`'`) instead of square brackets.\n *\n * @param {Date|Number} date - the original date\n * @param {String} format - the string of tokens\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Number} [options.firstWeekContainsDate=1] - the day of January, which is\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {Boolean} [options.awareOfUnicodeTokens=false] - if true, allows usage of Unicode tokens causes confusion:\n * - Some of the day of year tokens (`D`, `DD`) that are confused with the day of month tokens (`d`, `dd`).\n * - Some of the local week-numbering year tokens (`YY`, `YYYY`) that are confused with the calendar year tokens (`yy`, `yyyy`).\n * See: https://git.io/fxCyr\n * @returns {String} the formatted date string\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.locale` must contain `localize` property\n * @throws {RangeError} `options.locale` must contain `formatLong` property\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n * @throws {RangeError} `options.awareOfUnicodeTokens` must be set to `true` to use `XX` token; see: https://git.io/fxCyr\n *\n * @example\n * // Represent 11 February 2014 in middle-endian format:\n * var result = format(new Date(2014, 1, 11), 'MM/dd/yyyy')\n * //=> '02/11/2014'\n *\n * @example\n * // Represent 2 July 2014 in Esperanto:\n * import { eoLocale } from 'date-fns/locale/eo'\n * var result = format(new Date(2014, 6, 2), \"do 'de' MMMM yyyy\", {\n * locale: eoLocale\n * })\n * //=> '2-a de julio 2014'\n *\n * @example\n * // Escape string by single quote characters:\n * var result = format(new Date(2014, 6, 2, 15), \"h 'o''clock'\")\n * //=> \"3 o'clock\"\n */\nfunction format(dirtyDate, dirtyFormatStr, dirtyOptions) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var formatStr = String(dirtyFormatStr)\n var options = dirtyOptions || {}\n\n var locale = options.locale || _locale_en_US_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"]\n\n var localeFirstWeekContainsDate =\n locale.options && locale.options.firstWeekContainsDate\n var defaultFirstWeekContainsDate =\n localeFirstWeekContainsDate == null\n ? 1\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeFirstWeekContainsDate)\n var firstWeekContainsDate =\n options.firstWeekContainsDate == null\n ? defaultFirstWeekContainsDate\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.firstWeekContainsDate)\n\n // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError(\n 'firstWeekContainsDate must be between 1 and 7 inclusively'\n )\n }\n\n var localeWeekStartsOn = locale.options && locale.options.weekStartsOn\n var defaultWeekStartsOn =\n localeWeekStartsOn == null ? 0 : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeWeekStartsOn)\n var weekStartsOn =\n options.weekStartsOn == null\n ? defaultWeekStartsOn\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.weekStartsOn)\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively')\n }\n\n if (!locale.localize) {\n throw new RangeError('locale must contain localize property')\n }\n\n if (!locale.formatLong) {\n throw new RangeError('locale must contain formatLong property')\n }\n\n var originalDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyDate)\n\n if (!Object(_isValid_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(originalDate)) {\n throw new RangeError('Invalid time value')\n }\n\n // Convert the date in system timezone to the same date in UTC+00:00 timezone.\n // This ensures that when UTC functions will be implemented, locales will be compatible with them.\n // See an issue about UTC functions: https://github.com/date-fns/date-fns/issues/376\n var timezoneOffset = Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(originalDate)\n var utcDate = Object(_subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_7__[\"default\"])(originalDate, timezoneOffset)\n\n var formatterOptions = {\n firstWeekContainsDate: firstWeekContainsDate,\n weekStartsOn: weekStartsOn,\n locale: locale,\n _originalDate: originalDate\n }\n\n var result = formatStr\n .match(longFormattingTokensRegExp)\n .map(function(substring) {\n var firstCharacter = substring[0]\n if (firstCharacter === 'p' || firstCharacter === 'P') {\n var longFormatter = _lib_format_longFormatters_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"][firstCharacter]\n return longFormatter(substring, locale.formatLong, formatterOptions)\n }\n return substring\n })\n .join('')\n .match(formattingTokensRegExp)\n .map(function(substring) {\n // Replace two single quote characters with one single quote character\n if (substring === \"''\") {\n return \"'\"\n }\n\n var firstCharacter = substring[0]\n if (firstCharacter === \"'\") {\n return cleanEscapedString(substring)\n }\n\n var formatter = _lib_format_formatters_index_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"][firstCharacter]\n if (formatter) {\n if (!options.awareOfUnicodeTokens && Object(_lib_protectedTokens_index_js__WEBPACK_IMPORTED_MODULE_8__[\"isProtectedToken\"])(substring)) {\n Object(_lib_protectedTokens_index_js__WEBPACK_IMPORTED_MODULE_8__[\"throwProtectedError\"])(substring)\n }\n return formatter(utcDate, substring, locale.localize, formatterOptions)\n }\n\n return substring\n })\n .join('')\n\n return result\n}\n\nfunction cleanEscapedString(input) {\n return input.match(escapedStringRegExp)[1].replace(doubleQuoteRegExp, \"'\")\n}\n\n\n/***/ }),\n/* 342 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isValid; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isValid\n * @category Common Helpers\n * @summary Is the given date valid?\n *\n * @description\n * Returns false if argument is Invalid Date and true otherwise.\n * Argument is converted to Date using `toDate`. See [toDate]{@link https://date-fns.org/docs/toDate}\n * Invalid Date is a Date, whose time value is NaN.\n *\n * Time value of Date: http://es5.github.io/#x15.9.1.1\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - Now `isValid` doesn't throw an exception\n * if the first argument is not an instance of Date.\n * Instead, argument is converted beforehand using `toDate`.\n *\n * Examples:\n *\n * | `isValid` argument | Before v2.0.0 | v2.0.0 onward |\n * |---------------------------|---------------|---------------|\n * | `new Date()` | `true` | `true` |\n * | `new Date('2016-01-01')` | `true` | `true` |\n * | `new Date('')` | `false` | `false` |\n * | `new Date(1488370835081)` | `true` | `true` |\n * | `new Date(NaN)` | `false` | `false` |\n * | `'2016-01-01'` | `TypeError` | `true` |\n * | `''` | `TypeError` | `false` |\n * | `1488370835081` | `TypeError` | `true` |\n * | `NaN` | `TypeError` | `false` |\n *\n * We introduce this change to make *date-fns* consistent with ECMAScript behavior\n * that try to coerce arguments to the expected type\n * (which is also the case with other *date-fns* functions).\n *\n * @param {*} date - the date to check\n * @returns {Boolean} the date is valid\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // For the valid date:\n * var result = isValid(new Date(2014, 1, 31))\n * //=> true\n *\n * @example\n * // For the value, convertable into a date:\n * var result = isValid(1393804800000)\n * //=> true\n *\n * @example\n * // For the invalid date:\n * var result = isValid(new Date(''))\n * //=> false\n */\nfunction isValid(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n return !isNaN(date)\n}\n\n\n/***/ }),\n/* 343 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _lib_formatDistance_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(344);\n/* harmony import */ var _lib_formatLong_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(345);\n/* harmony import */ var _lib_formatRelative_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(347);\n/* harmony import */ var _lib_localize_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(348);\n/* harmony import */ var _lib_match_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(350);\n\n\n\n\n\n\n/**\n * @type {Locale}\n * @category Locales\n * @summary English locale (United States).\n * @language English\n * @iso-639-2 eng\n * @author Sasha Koss [@kossnocorp]{@link https://github.com/kossnocorp}\n * @author Lesha Koss [@leshakoss]{@link https://github.com/leshakoss}\n */\nvar locale = {\n formatDistance: _lib_formatDistance_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"],\n formatLong: _lib_formatLong_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n formatRelative: _lib_formatRelative_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"],\n localize: _lib_localize_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"],\n match: _lib_match_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"],\n options: {\n weekStartsOn: 0 /* Sunday */,\n firstWeekContainsDate: 1\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (locale);\n\n\n/***/ }),\n/* 344 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return formatDistance; });\nvar formatDistanceLocale = {\n lessThanXSeconds: {\n one: 'less than a second',\n other: 'less than {{count}} seconds'\n },\n\n xSeconds: {\n one: '1 second',\n other: '{{count}} seconds'\n },\n\n halfAMinute: 'half a minute',\n\n lessThanXMinutes: {\n one: 'less than a minute',\n other: 'less than {{count}} minutes'\n },\n\n xMinutes: {\n one: '1 minute',\n other: '{{count}} minutes'\n },\n\n aboutXHours: {\n one: 'about 1 hour',\n other: 'about {{count}} hours'\n },\n\n xHours: {\n one: '1 hour',\n other: '{{count}} hours'\n },\n\n xDays: {\n one: '1 day',\n other: '{{count}} days'\n },\n\n aboutXMonths: {\n one: 'about 1 month',\n other: 'about {{count}} months'\n },\n\n xMonths: {\n one: '1 month',\n other: '{{count}} months'\n },\n\n aboutXYears: {\n one: 'about 1 year',\n other: 'about {{count}} years'\n },\n\n xYears: {\n one: '1 year',\n other: '{{count}} years'\n },\n\n overXYears: {\n one: 'over 1 year',\n other: 'over {{count}} years'\n },\n\n almostXYears: {\n one: 'almost 1 year',\n other: 'almost {{count}} years'\n }\n}\n\nfunction formatDistance (token, count, options) {\n options = options || {}\n\n var result\n if (typeof formatDistanceLocale[token] === 'string') {\n result = formatDistanceLocale[token]\n } else if (count === 1) {\n result = formatDistanceLocale[token].one\n } else {\n result = formatDistanceLocale[token].other.replace('{{count}}', count)\n }\n\n if (options.addSuffix) {\n if (options.comparison > 0) {\n return 'in ' + result\n } else {\n return result + ' ago'\n }\n }\n\n return result\n}\n\n\n/***/ }),\n/* 345 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _lib_buildFormatLongFn_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(346);\n\n\nvar dateFormats = {\n full: 'EEEE, MMMM do, y',\n long: 'MMMM do, y',\n medium: 'MMM d, y',\n short: 'MM/dd/yyyy'\n}\n\nvar timeFormats = {\n full: 'h:mm:ss a zzzz',\n long: 'h:mm:ss a z',\n medium: 'h:mm:ss a',\n short: 'h:mm a'\n}\n\nvar dateTimeFormats = {\n full: \"{{date}} 'at' {{time}}\",\n long: \"{{date}} 'at' {{time}}\",\n medium: '{{date}}, {{time}}',\n short: '{{date}}, {{time}}'\n}\n\nvar formatLong = {\n date: Object(_lib_buildFormatLongFn_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n formats: dateFormats,\n defaultWidth: 'full'\n }),\n\n time: Object(_lib_buildFormatLongFn_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n formats: timeFormats,\n defaultWidth: 'full'\n }),\n\n dateTime: Object(_lib_buildFormatLongFn_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n formats: dateTimeFormats,\n defaultWidth: 'full'\n })\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (formatLong);\n\n\n/***/ }),\n/* 346 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return buildFormatLongFn; });\nfunction buildFormatLongFn (args) {\n return function (dirtyOptions) {\n var options = dirtyOptions || {}\n var width = options.width ? String(options.width) : args.defaultWidth\n var format = args.formats[width] || args.formats[args.defaultWidth]\n return format\n }\n}\n\n\n/***/ }),\n/* 347 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return formatRelative; });\nvar formatRelativeLocale = {\n lastWeek: \"'last' eeee 'at' p\",\n yesterday: \"'yesterday at' p\",\n today: \"'today at' p\",\n tomorrow: \"'tomorrow at' p\",\n nextWeek: \"eeee 'at' p\",\n other: 'P'\n}\n\nfunction formatRelative (token, date, baseDate, options) {\n return formatRelativeLocale[token]\n}\n\n\n/***/ }),\n/* 348 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _lib_buildLocalizeFn_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(349);\n\n\nvar eraValues = {\n narrow: ['B', 'A'],\n abbreviated: ['BC', 'AD'],\n wide: ['Before Christ', 'Anno Domini']\n}\n\nvar quarterValues = {\n narrow: ['1', '2', '3', '4'],\n abbreviated: ['Q1', 'Q2', 'Q3', 'Q4'],\n wide: ['1st quarter', '2nd quarter', '3rd quarter', '4th quarter']\n}\n\n// Note: in English, the names of days of the week and months are capitalized.\n// If you are making a new locale based on this one, check if the same is true for the language you're working on.\n// Generally, formatted dates should look like they are in the middle of a sentence,\n// e.g. in Spanish language the weekdays and months should be in the lowercase.\nvar monthValues = {\n narrow: ['J', 'F', 'M', 'A', 'M', 'J', 'J', 'A', 'S', 'O', 'N', 'D'],\n abbreviated: ['Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'],\n wide: ['January', 'February', 'March', 'April', 'May', 'June', 'July', 'August', 'September', 'October', 'November', 'December']\n}\n\nvar dayValues = {\n narrow: ['S', 'M', 'T', 'W', 'T', 'F', 'S'],\n short: ['Su', 'Mo', 'Tu', 'We', 'Th', 'Fr', 'Sa'],\n abbreviated: ['Sun', 'Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat'],\n wide: ['Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday']\n}\n\nvar dayPeriodValues = {\n narrow: {\n am: 'a',\n pm: 'p',\n midnight: 'mi',\n noon: 'n',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n },\n abbreviated: {\n am: 'AM',\n pm: 'PM',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n },\n wide: {\n am: 'a.m.',\n pm: 'p.m.',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n }\n}\nvar formattingDayPeriodValues = {\n narrow: {\n am: 'a',\n pm: 'p',\n midnight: 'mi',\n noon: 'n',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n },\n abbreviated: {\n am: 'AM',\n pm: 'PM',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n },\n wide: {\n am: 'a.m.',\n pm: 'p.m.',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'in the morning',\n afternoon: 'in the afternoon',\n evening: 'in the evening',\n night: 'at night'\n }\n}\n\nfunction ordinalNumber (dirtyNumber, dirtyOptions) {\n var number = Number(dirtyNumber)\n\n // If ordinal numbers depend on context, for example,\n // if they are different for different grammatical genders,\n // use `options.unit`:\n //\n // var options = dirtyOptions || {}\n // var unit = String(options.unit)\n //\n // where `unit` can be 'year', 'quarter', 'month', 'week', 'date', 'dayOfYear',\n // 'day', 'hour', 'minute', 'second'\n\n var rem100 = number % 100\n if (rem100 > 20 || rem100 < 10) {\n switch (rem100 % 10) {\n case 1:\n return number + 'st'\n case 2:\n return number + 'nd'\n case 3:\n return number + 'rd'\n }\n }\n return number + 'th'\n}\n\nvar localize = {\n ordinalNumber: ordinalNumber,\n\n era: Object(_lib_buildLocalizeFn_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n values: eraValues,\n defaultWidth: 'wide'\n }),\n\n quarter: Object(_lib_buildLocalizeFn_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n values: quarterValues,\n defaultWidth: 'wide',\n argumentCallback: function (quarter) {\n return Number(quarter) - 1\n }\n }),\n\n month: Object(_lib_buildLocalizeFn_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n values: monthValues,\n defaultWidth: 'wide'\n }),\n\n day: Object(_lib_buildLocalizeFn_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n values: dayValues,\n defaultWidth: 'wide'\n }),\n\n dayPeriod: Object(_lib_buildLocalizeFn_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n values: dayPeriodValues,\n defaultWidth: 'wide',\n formattingValues: formattingDayPeriodValues,\n defaultFormattingWidth: 'wide'\n })\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (localize);\n\n\n/***/ }),\n/* 349 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return buildLocalizeFn; });\nfunction buildLocalizeFn (args) {\n return function (dirtyIndex, dirtyOptions) {\n var options = dirtyOptions || {}\n var width = options.width ? String(options.width) : args.defaultWidth\n var context = options.context ? String(options.context) : 'standalone'\n\n var valuesArray\n if (context === 'formatting' && args.formattingValues) {\n valuesArray = args.formattingValues[width] || args.formattingValues[args.defaultFormattingWidth]\n } else {\n valuesArray = args.values[width] || args.values[args.defaultWidth]\n }\n var index = args.argumentCallback ? args.argumentCallback(dirtyIndex) : dirtyIndex\n return valuesArray[index]\n }\n}\n\n\n/***/ }),\n/* 350 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _lib_buildMatchPatternFn_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(351);\n/* harmony import */ var _lib_buildMatchFn_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(352);\n\n\n\nvar matchOrdinalNumberPattern = /^(\\d+)(th|st|nd|rd)?/i\nvar parseOrdinalNumberPattern = /\\d+/i\n\nvar matchEraPatterns = {\n narrow: /^(b|a)/i,\n abbreviated: /^(b\\.?\\s?c\\.?|b\\.?\\s?c\\.?\\s?e\\.?|a\\.?\\s?d\\.?|c\\.?\\s?e\\.?)/i,\n wide: /^(before christ|before common era|anno domini|common era)/i\n}\nvar parseEraPatterns = {\n any: [/^b/i, /^(a|c)/i]\n}\n\nvar matchQuarterPatterns = {\n narrow: /^[1234]/i,\n abbreviated: /^q[1234]/i,\n wide: /^[1234](th|st|nd|rd)? quarter/i\n}\nvar parseQuarterPatterns = {\n any: [/1/i, /2/i, /3/i, /4/i]\n}\n\nvar matchMonthPatterns = {\n narrow: /^[jfmasond]/i,\n abbreviated: /^(jan|feb|mar|apr|may|jun|jul|aug|sep|oct|nov|dec)/i,\n wide: /^(january|february|march|april|may|june|july|august|september|october|november|december)/i\n}\nvar parseMonthPatterns = {\n narrow: [/^j/i, /^f/i, /^m/i, /^a/i, /^m/i, /^j/i, /^j/i, /^a/i, /^s/i, /^o/i, /^n/i, /^d/i],\n any: [/^ja/i, /^f/i, /^mar/i, /^ap/i, /^may/i, /^jun/i, /^jul/i, /^au/i, /^s/i, /^o/i, /^n/i, /^d/i]\n}\n\nvar matchDayPatterns = {\n narrow: /^[smtwf]/i,\n short: /^(su|mo|tu|we|th|fr|sa)/i,\n abbreviated: /^(sun|mon|tue|wed|thu|fri|sat)/i,\n wide: /^(sunday|monday|tuesday|wednesday|thursday|friday|saturday)/i\n}\nvar parseDayPatterns = {\n narrow: [/^s/i, /^m/i, /^t/i, /^w/i, /^t/i, /^f/i, /^s/i],\n any: [/^su/i, /^m/i, /^tu/i, /^w/i, /^th/i, /^f/i, /^sa/i]\n}\n\nvar matchDayPeriodPatterns = {\n narrow: /^(a|p|mi|n|(in the|at) (morning|afternoon|evening|night))/i,\n any: /^([ap]\\.?\\s?m\\.?|midnight|noon|(in the|at) (morning|afternoon|evening|night))/i\n}\nvar parseDayPeriodPatterns = {\n any: {\n am: /^a/i,\n pm: /^p/i,\n midnight: /^mi/i,\n noon: /^no/i,\n morning: /morning/i,\n afternoon: /afternoon/i,\n evening: /evening/i,\n night: /night/i\n }\n}\n\nvar match = {\n ordinalNumber: Object(_lib_buildMatchPatternFn_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({\n matchPattern: matchOrdinalNumberPattern,\n parsePattern: parseOrdinalNumberPattern,\n valueCallback: function (value) {\n return parseInt(value, 10)\n }\n }),\n\n era: Object(_lib_buildMatchFn_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({\n matchPatterns: matchEraPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseEraPatterns,\n defaultParseWidth: 'any'\n }),\n\n quarter: Object(_lib_buildMatchFn_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({\n matchPatterns: matchQuarterPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseQuarterPatterns,\n defaultParseWidth: 'any',\n valueCallback: function (index) {\n return index + 1\n }\n }),\n\n month: Object(_lib_buildMatchFn_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({\n matchPatterns: matchMonthPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseMonthPatterns,\n defaultParseWidth: 'any'\n }),\n\n day: Object(_lib_buildMatchFn_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({\n matchPatterns: matchDayPatterns,\n defaultMatchWidth: 'wide',\n parsePatterns: parseDayPatterns,\n defaultParseWidth: 'any'\n }),\n\n dayPeriod: Object(_lib_buildMatchFn_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])({\n matchPatterns: matchDayPeriodPatterns,\n defaultMatchWidth: 'any',\n parsePatterns: parseDayPeriodPatterns,\n defaultParseWidth: 'any'\n })\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (match);\n\n\n/***/ }),\n/* 351 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return buildMatchPatternFn; });\nfunction buildMatchPatternFn (args) {\n return function (dirtyString, dirtyOptions) {\n var string = String(dirtyString)\n var options = dirtyOptions || {}\n\n var matchResult = string.match(args.matchPattern)\n if (!matchResult) {\n return null\n }\n var matchedString = matchResult[0]\n\n var parseResult = string.match(args.parsePattern)\n if (!parseResult) {\n return null\n }\n var value = args.valueCallback ? args.valueCallback(parseResult[0]) : parseResult[0]\n value = options.valueCallback ? options.valueCallback(value) : value\n\n return {\n value: value,\n rest: string.slice(matchedString.length)\n }\n }\n}\n\n\n/***/ }),\n/* 352 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return buildMatchFn; });\nfunction buildMatchFn (args) {\n return function (dirtyString, dirtyOptions) {\n var string = String(dirtyString)\n var options = dirtyOptions || {}\n var width = options.width\n\n var matchPattern = (width && args.matchPatterns[width]) || args.matchPatterns[args.defaultMatchWidth]\n var matchResult = string.match(matchPattern)\n\n if (!matchResult) {\n return null\n }\n var matchedString = matchResult[0]\n\n var parsePatterns = (width && args.parsePatterns[width]) || args.parsePatterns[args.defaultParseWidth]\n\n var value\n if (Object.prototype.toString.call(parsePatterns) === '[object Array]') {\n value = parsePatterns.findIndex(function (pattern) {\n return pattern.test(string)\n })\n } else {\n value = findKey(parsePatterns, function (pattern) {\n return pattern.test(string)\n })\n }\n\n value = args.valueCallback ? args.valueCallback(value) : value\n value = options.valueCallback ? options.valueCallback(value) : value\n\n return {\n value: value,\n rest: string.slice(matchedString.length)\n }\n }\n}\n\nfunction findKey (object, predicate) {\n for (var key in object) {\n if (object.hasOwnProperty(key) && predicate(object[key])) {\n return key\n }\n }\n}\n\n\n/***/ }),\n/* 353 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _lightFormatters_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(354);\n/* harmony import */ var _lib_getUTCDayOfYear_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(356);\n/* harmony import */ var _lib_getUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(357);\n/* harmony import */ var _lib_getUTCISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(360);\n/* harmony import */ var _lib_getUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(361);\n/* harmony import */ var _lib_getUTCWeekYear_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(364);\n/* harmony import */ var _addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(355);\n\n\n\n\n\n\n\n\nvar dayPeriodEnum = {\n am: 'am',\n pm: 'pm',\n midnight: 'midnight',\n noon: 'noon',\n morning: 'morning',\n afternoon: 'afternoon',\n evening: 'evening',\n night: 'night'\n}\n\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | Milliseconds in day |\n * | b | AM, PM, noon, midnight | B | Flexible day period |\n * | c | Stand-alone local day of week | C* | Localized hour w/ day period |\n * | d | Day of month | D | Day of year |\n * | e | Local day of week | E | Day of week |\n * | f | | F* | Day of week in month |\n * | g* | Modified Julian day | G | Era |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | i! | ISO day of week | I! | ISO week of year |\n * | j* | Localized hour w/ day period | J* | Localized hour w/o day period |\n * | k | Hour [1-24] | K | Hour [0-11] |\n * | l* | (deprecated) | L | Stand-alone month |\n * | m | Minute | M | Month |\n * | n | | N | |\n * | o! | Ordinal number modifier | O | Timezone (GMT) |\n * | p! | Long localized time | P! | Long localized date |\n * | q | Stand-alone quarter | Q | Quarter |\n * | r* | Related Gregorian year | R! | ISO week-numbering year |\n * | s | Second | S | Fraction of second |\n * | t! | Seconds timestamp | T! | Milliseconds timestamp |\n * | u | Extended year | U* | Cyclic year |\n * | v* | Timezone (generic non-locat.) | V* | Timezone (location) |\n * | w | Local week of year | W* | Week of month |\n * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) |\n * | y | Year (abs) | Y | Local week-numbering year |\n * | z | Timezone (specific non-locat.) | Z* | Timezone (aliases) |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n *\n * Letters marked by ! are non-standard, but implemented by date-fns:\n * - `o` modifies the previous token to turn it into an ordinal (see `format` docs)\n * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,\n * i.e. 7 for Sunday, 1 for Monday, etc.\n * - `I` is ISO week of year, as opposed to `w` which is local week of year.\n * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.\n * `R` is supposed to be used in conjunction with `I` and `i`\n * for universal ISO week-numbering date, whereas\n * `Y` is supposed to be used in conjunction with `w` and `e`\n * for week-numbering date specific to the locale.\n * - `P` is long localized date format\n * - `p` is long localized time format\n */\n\nvar formatters = {\n // Era\n G: function(date, token, localize) {\n var era = date.getUTCFullYear() > 0 ? 1 : 0\n switch (token) {\n // AD, BC\n case 'G':\n case 'GG':\n case 'GGG':\n return localize.era(era, { width: 'abbreviated' })\n // A, B\n case 'GGGGG':\n return localize.era(era, { width: 'narrow' })\n // Anno Domini, Before Christ\n case 'GGGG':\n default:\n return localize.era(era, { width: 'wide' })\n }\n },\n\n // Year\n y: function(date, token, localize) {\n // Ordinal number\n if (token === 'yo') {\n var signedYear = date.getUTCFullYear()\n // Returns 1 for 1 BC (which is year 0 in JavaScript)\n var year = signedYear > 0 ? signedYear : 1 - signedYear\n return localize.ordinalNumber(year, { unit: 'year' })\n }\n\n return _lightFormatters_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].y(date, token)\n },\n\n // Local week-numbering year\n Y: function(date, token, localize, options) {\n var signedWeekYear = Object(_lib_getUTCWeekYear_index_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(date, options)\n // Returns 1 for 1 BC (which is year 0 in JavaScript)\n var weekYear = signedWeekYear > 0 ? signedWeekYear : 1 - signedWeekYear\n\n // Two digit year\n if (token === 'YY') {\n var twoDigitYear = weekYear % 100\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(twoDigitYear, 2)\n }\n\n // Ordinal number\n if (token === 'Yo') {\n return localize.ordinalNumber(weekYear, { unit: 'year' })\n }\n\n // Padding\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(weekYear, token.length)\n },\n\n // ISO week-numbering year\n R: function(date, token) {\n var isoWeekYear = Object(_lib_getUTCISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(date)\n\n // Padding\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(isoWeekYear, token.length)\n },\n\n // Extended year. This is a single number designating the year of this calendar system.\n // The main difference between `y` and `u` localizers are B.C. years:\n // | Year | `y` | `u` |\n // |------|-----|-----|\n // | AC 1 | 1 | 1 |\n // | BC 1 | 1 | 0 |\n // | BC 2 | 2 | -1 |\n // Also `yy` always returns the last two digits of a year,\n // while `uu` pads single digit years to 2 characters and returns other years unchanged.\n u: function(date, token) {\n var year = date.getUTCFullYear()\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(year, token.length)\n },\n\n // Quarter\n Q: function(date, token, localize) {\n var quarter = Math.ceil((date.getUTCMonth() + 1) / 3)\n switch (token) {\n // 1, 2, 3, 4\n case 'Q':\n return String(quarter)\n // 01, 02, 03, 04\n case 'QQ':\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(quarter, 2)\n // 1st, 2nd, 3rd, 4th\n case 'Qo':\n return localize.ordinalNumber(quarter, { unit: 'quarter' })\n // Q1, Q2, Q3, Q4\n case 'QQQ':\n return localize.quarter(quarter, {\n width: 'abbreviated',\n context: 'formatting'\n })\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n case 'QQQQQ':\n return localize.quarter(quarter, {\n width: 'narrow',\n context: 'formatting'\n })\n // 1st quarter, 2nd quarter, ...\n case 'QQQQ':\n default:\n return localize.quarter(quarter, {\n width: 'wide',\n context: 'formatting'\n })\n }\n },\n\n // Stand-alone quarter\n q: function(date, token, localize) {\n var quarter = Math.ceil((date.getUTCMonth() + 1) / 3)\n switch (token) {\n // 1, 2, 3, 4\n case 'q':\n return String(quarter)\n // 01, 02, 03, 04\n case 'qq':\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(quarter, 2)\n // 1st, 2nd, 3rd, 4th\n case 'qo':\n return localize.ordinalNumber(quarter, { unit: 'quarter' })\n // Q1, Q2, Q3, Q4\n case 'qqq':\n return localize.quarter(quarter, {\n width: 'abbreviated',\n context: 'standalone'\n })\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n case 'qqqqq':\n return localize.quarter(quarter, {\n width: 'narrow',\n context: 'standalone'\n })\n // 1st quarter, 2nd quarter, ...\n case 'qqqq':\n default:\n return localize.quarter(quarter, {\n width: 'wide',\n context: 'standalone'\n })\n }\n },\n\n // Month\n M: function(date, token, localize) {\n var month = date.getUTCMonth()\n switch (token) {\n case 'M':\n case 'MM':\n return _lightFormatters_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].M(date, token)\n // 1st, 2nd, ..., 12th\n case 'Mo':\n return localize.ordinalNumber(month + 1, { unit: 'month' })\n // Jan, Feb, ..., Dec\n case 'MMM':\n return localize.month(month, {\n width: 'abbreviated',\n context: 'formatting'\n })\n // J, F, ..., D\n case 'MMMMM':\n return localize.month(month, { width: 'narrow', context: 'formatting' })\n // January, February, ..., December\n case 'MMMM':\n default:\n return localize.month(month, { width: 'wide', context: 'formatting' })\n }\n },\n\n // Stand-alone month\n L: function(date, token, localize) {\n var month = date.getUTCMonth()\n switch (token) {\n // 1, 2, ..., 12\n case 'L':\n return String(month + 1)\n // 01, 02, ..., 12\n case 'LL':\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(month + 1, 2)\n // 1st, 2nd, ..., 12th\n case 'Lo':\n return localize.ordinalNumber(month + 1, { unit: 'month' })\n // Jan, Feb, ..., Dec\n case 'LLL':\n return localize.month(month, {\n width: 'abbreviated',\n context: 'standalone'\n })\n // J, F, ..., D\n case 'LLLLL':\n return localize.month(month, { width: 'narrow', context: 'standalone' })\n // January, February, ..., December\n case 'LLLL':\n default:\n return localize.month(month, { width: 'wide', context: 'standalone' })\n }\n },\n\n // Local week of year\n w: function(date, token, localize, options) {\n var week = Object(_lib_getUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(date, options)\n\n if (token === 'wo') {\n return localize.ordinalNumber(week, { unit: 'week' })\n }\n\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(week, token.length)\n },\n\n // ISO week of year\n I: function(date, token, localize) {\n var isoWeek = Object(_lib_getUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date)\n\n if (token === 'Io') {\n return localize.ordinalNumber(isoWeek, { unit: 'week' })\n }\n\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(isoWeek, token.length)\n },\n\n // Day of the month\n d: function(date, token, localize) {\n if (token === 'do') {\n return localize.ordinalNumber(date.getUTCDate(), { unit: 'date' })\n }\n\n return _lightFormatters_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].d(date, token)\n },\n\n // Day of year\n D: function(date, token, localize) {\n var dayOfYear = Object(_lib_getUTCDayOfYear_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date)\n\n if (token === 'Do') {\n return localize.ordinalNumber(dayOfYear, { unit: 'dayOfYear' })\n }\n\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(dayOfYear, token.length)\n },\n\n // Day of week\n E: function(date, token, localize) {\n var dayOfWeek = date.getUTCDay()\n switch (token) {\n // Tue\n case 'E':\n case 'EE':\n case 'EEE':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n })\n // T\n case 'EEEEE':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n })\n // Tu\n case 'EEEEEE':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n })\n // Tuesday\n case 'EEEE':\n default:\n return localize.day(dayOfWeek, { width: 'wide', context: 'formatting' })\n }\n },\n\n // Local day of week\n e: function(date, token, localize, options) {\n var dayOfWeek = date.getUTCDay()\n var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7\n switch (token) {\n // Numerical value (Nth day of week with current locale or weekStartsOn)\n case 'e':\n return String(localDayOfWeek)\n // Padded numerical value\n case 'ee':\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(localDayOfWeek, 2)\n // 1st, 2nd, ..., 7th\n case 'eo':\n return localize.ordinalNumber(localDayOfWeek, { unit: 'day' })\n case 'eee':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n })\n // T\n case 'eeeee':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n })\n // Tu\n case 'eeeeee':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n })\n // Tuesday\n case 'eeee':\n default:\n return localize.day(dayOfWeek, { width: 'wide', context: 'formatting' })\n }\n },\n\n // Stand-alone local day of week\n c: function(date, token, localize, options) {\n var dayOfWeek = date.getUTCDay()\n var localDayOfWeek = (dayOfWeek - options.weekStartsOn + 8) % 7 || 7\n switch (token) {\n // Numerical value (same as in `e`)\n case 'c':\n return String(localDayOfWeek)\n // Padded numerical value\n case 'cc':\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(localDayOfWeek, token.length)\n // 1st, 2nd, ..., 7th\n case 'co':\n return localize.ordinalNumber(localDayOfWeek, { unit: 'day' })\n case 'ccc':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'standalone'\n })\n // T\n case 'ccccc':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'standalone'\n })\n // Tu\n case 'cccccc':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'standalone'\n })\n // Tuesday\n case 'cccc':\n default:\n return localize.day(dayOfWeek, { width: 'wide', context: 'standalone' })\n }\n },\n\n // ISO day of week\n i: function(date, token, localize) {\n var dayOfWeek = date.getUTCDay()\n var isoDayOfWeek = dayOfWeek === 0 ? 7 : dayOfWeek\n switch (token) {\n // 2\n case 'i':\n return String(isoDayOfWeek)\n // 02\n case 'ii':\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(isoDayOfWeek, token.length)\n // 2nd\n case 'io':\n return localize.ordinalNumber(isoDayOfWeek, { unit: 'day' })\n // Tue\n case 'iii':\n return localize.day(dayOfWeek, {\n width: 'abbreviated',\n context: 'formatting'\n })\n // T\n case 'iiiii':\n return localize.day(dayOfWeek, {\n width: 'narrow',\n context: 'formatting'\n })\n // Tu\n case 'iiiiii':\n return localize.day(dayOfWeek, {\n width: 'short',\n context: 'formatting'\n })\n // Tuesday\n case 'iiii':\n default:\n return localize.day(dayOfWeek, { width: 'wide', context: 'formatting' })\n }\n },\n\n // AM or PM\n a: function(date, token, localize) {\n var hours = date.getUTCHours()\n var dayPeriodEnumValue = hours / 12 >= 1 ? 'pm' : 'am'\n\n switch (token) {\n case 'a':\n case 'aa':\n case 'aaa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n })\n case 'aaaaa':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n })\n case 'aaaa':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n })\n }\n },\n\n // AM, PM, midnight, noon\n b: function(date, token, localize) {\n var hours = date.getUTCHours()\n var dayPeriodEnumValue\n if (hours === 12) {\n dayPeriodEnumValue = dayPeriodEnum.noon\n } else if (hours === 0) {\n dayPeriodEnumValue = dayPeriodEnum.midnight\n } else {\n dayPeriodEnumValue = hours / 12 >= 1 ? 'pm' : 'am'\n }\n\n switch (token) {\n case 'b':\n case 'bb':\n case 'bbb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n })\n case 'bbbbb':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n })\n case 'bbbb':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n })\n }\n },\n\n // in the morning, in the afternoon, in the evening, at night\n B: function(date, token, localize) {\n var hours = date.getUTCHours()\n var dayPeriodEnumValue\n if (hours >= 17) {\n dayPeriodEnumValue = dayPeriodEnum.evening\n } else if (hours >= 12) {\n dayPeriodEnumValue = dayPeriodEnum.afternoon\n } else if (hours >= 4) {\n dayPeriodEnumValue = dayPeriodEnum.morning\n } else {\n dayPeriodEnumValue = dayPeriodEnum.night\n }\n\n switch (token) {\n case 'B':\n case 'BB':\n case 'BBB':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'abbreviated',\n context: 'formatting'\n })\n case 'BBBBB':\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'narrow',\n context: 'formatting'\n })\n case 'BBBB':\n default:\n return localize.dayPeriod(dayPeriodEnumValue, {\n width: 'wide',\n context: 'formatting'\n })\n }\n },\n\n // Hour [1-12]\n h: function(date, token, localize) {\n if (token === 'ho') {\n var hours = date.getUTCHours() % 12\n if (hours === 0) hours = 12\n return localize.ordinalNumber(hours, { unit: 'hour' })\n }\n\n return _lightFormatters_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].h(date, token)\n },\n\n // Hour [0-23]\n H: function(date, token, localize) {\n if (token === 'Ho') {\n return localize.ordinalNumber(date.getUTCHours(), { unit: 'hour' })\n }\n\n return _lightFormatters_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].H(date, token)\n },\n\n // Hour [0-11]\n K: function(date, token, localize) {\n var hours = date.getUTCHours() % 12\n\n if (token === 'Ko') {\n return localize.ordinalNumber(hours, { unit: 'hour' })\n }\n\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(hours, token.length)\n },\n\n // Hour [1-24]\n k: function(date, token, localize) {\n var hours = date.getUTCHours()\n if (hours === 0) hours = 24\n\n if (token === 'ko') {\n return localize.ordinalNumber(hours, { unit: 'hour' })\n }\n\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(hours, token.length)\n },\n\n // Minute\n m: function(date, token, localize) {\n if (token === 'mo') {\n return localize.ordinalNumber(date.getUTCMinutes(), { unit: 'minute' })\n }\n\n return _lightFormatters_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].m(date, token)\n },\n\n // Second\n s: function(date, token, localize) {\n if (token === 'so') {\n return localize.ordinalNumber(date.getUTCSeconds(), { unit: 'second' })\n }\n\n return _lightFormatters_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"].s(date, token)\n },\n\n // Fraction of second\n S: function(date, token) {\n var numberOfDigits = token.length\n var milliseconds = date.getUTCMilliseconds()\n var fractionalSeconds = Math.floor(\n milliseconds * Math.pow(10, numberOfDigits - 3)\n )\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(fractionalSeconds, numberOfDigits)\n },\n\n // Timezone (ISO-8601. If offset is 0, output is always `'Z'`)\n X: function(date, token, _localize, options) {\n var originalDate = options._originalDate || date\n var timezoneOffset = originalDate.getTimezoneOffset()\n\n if (timezoneOffset === 0) {\n return 'Z'\n }\n\n switch (token) {\n // Hours and optional minutes\n case 'X':\n return formatTimezoneWithOptionalMinutes(timezoneOffset)\n\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XX`\n case 'XXXX':\n case 'XX': // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset)\n\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `XXX`\n case 'XXXXX':\n case 'XXX': // Hours and minutes with `:` delimiter\n default:\n return formatTimezone(timezoneOffset, ':')\n }\n },\n\n // Timezone (ISO-8601. If offset is 0, output is `'+00:00'` or equivalent)\n x: function(date, token, _localize, options) {\n var originalDate = options._originalDate || date\n var timezoneOffset = originalDate.getTimezoneOffset()\n\n switch (token) {\n // Hours and optional minutes\n case 'x':\n return formatTimezoneWithOptionalMinutes(timezoneOffset)\n\n // Hours, minutes and optional seconds without `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xx`\n case 'xxxx':\n case 'xx': // Hours and minutes without `:` delimiter\n return formatTimezone(timezoneOffset)\n\n // Hours, minutes and optional seconds with `:` delimiter\n // Note: neither ISO-8601 nor JavaScript supports seconds in timezone offsets\n // so this token always has the same output as `xxx`\n case 'xxxxx':\n case 'xxx': // Hours and minutes with `:` delimiter\n default:\n return formatTimezone(timezoneOffset, ':')\n }\n },\n\n // Timezone (GMT)\n O: function(date, token, _localize, options) {\n var originalDate = options._originalDate || date\n var timezoneOffset = originalDate.getTimezoneOffset()\n\n switch (token) {\n // Short\n case 'O':\n case 'OO':\n case 'OOO':\n return 'GMT' + formatTimezoneShort(timezoneOffset, ':')\n // Long\n case 'OOOO':\n default:\n return 'GMT' + formatTimezone(timezoneOffset, ':')\n }\n },\n\n // Timezone (specific non-location)\n z: function(date, token, _localize, options) {\n var originalDate = options._originalDate || date\n var timezoneOffset = originalDate.getTimezoneOffset()\n\n switch (token) {\n // Short\n case 'z':\n case 'zz':\n case 'zzz':\n return 'GMT' + formatTimezoneShort(timezoneOffset, ':')\n // Long\n case 'zzzz':\n default:\n return 'GMT' + formatTimezone(timezoneOffset, ':')\n }\n },\n\n // Seconds timestamp\n t: function(date, token, _localize, options) {\n var originalDate = options._originalDate || date\n var timestamp = Math.floor(originalDate.getTime() / 1000)\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(timestamp, token.length)\n },\n\n // Milliseconds timestamp\n T: function(date, token, _localize, options) {\n var originalDate = options._originalDate || date\n var timestamp = originalDate.getTime()\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(timestamp, token.length)\n }\n}\n\nfunction formatTimezoneShort(offset, dirtyDelimiter) {\n var sign = offset > 0 ? '-' : '+'\n var absOffset = Math.abs(offset)\n var hours = Math.floor(absOffset / 60)\n var minutes = absOffset % 60\n if (minutes === 0) {\n return sign + String(hours)\n }\n var delimiter = dirtyDelimiter || ''\n return sign + String(hours) + delimiter + Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(minutes, 2)\n}\n\nfunction formatTimezoneWithOptionalMinutes(offset, dirtyDelimiter) {\n if (offset % 60 === 0) {\n var sign = offset > 0 ? '-' : '+'\n return sign + Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(Math.abs(offset) / 60, 2)\n }\n return formatTimezone(offset, dirtyDelimiter)\n}\n\nfunction formatTimezone(offset, dirtyDelimiter) {\n var delimiter = dirtyDelimiter || ''\n var sign = offset > 0 ? '-' : '+'\n var absOffset = Math.abs(offset)\n var hours = Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(Math.floor(absOffset / 60), 2)\n var minutes = Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(absOffset % 60, 2)\n return sign + hours + delimiter + minutes\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (formatters);\n\n\n/***/ }),\n/* 354 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(355);\n\n\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | Milliseconds in day |\n * | c | Stand-alone local day of week | C* | Localized hour w/ day period |\n * | d | Day of month | D | Day of year |\n * | e | Local day of week | E | Day of week |\n * | f | | F* | Day of week in month |\n * | g* | Modified Julian day | G | Era |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | i! | ISO day of week | I! | ISO week of year |\n * | j* | Localized hour w/ day period | J* | Localized hour w/o day period |\n * | k | Hour [1-24] | K | Hour [0-11] |\n * | l* | (deprecated) | L | Stand-alone month |\n * | m | Minute | M | Month |\n * | n | | N | |\n * | o! | Ordinal number modifier | O | Timezone (GMT) |\n * | p! | Long localized time | P! | Long localized date |\n * | q | Stand-alone quarter | Q | Quarter |\n * | r* | Related Gregorian year | R! | ISO week-numbering year |\n * | s | Second | S | Fraction of second |\n * | t! | Seconds timestamp | T! | Milliseconds timestamp |\n * | u | Extended year | U* | Cyclic year |\n * | v* | Timezone (generic non-locat.) | V* | Timezone (location) |\n * | w | Local week of year | W* | Week of month |\n * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) |\n * | y | Year (abs) | Y | Local week-numbering year |\n * | z | Timezone (specific non-locat.) | Z* | Timezone (aliases) |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n *\n * Letters marked by ! are non-standard, but implemented by date-fns:\n * - `o` modifies the previous token to turn it into an ordinal (see `format` docs)\n * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,\n * i.e. 7 for Sunday, 1 for Monday, etc.\n * - `I` is ISO week of year, as opposed to `w` which is local week of year.\n * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.\n * `R` is supposed to be used in conjunction with `I` and `i`\n * for universal ISO week-numbering date, whereas\n * `Y` is supposed to be used in conjunction with `w` and `e`\n * for week-numbering date specific to the locale.\n * - `P` is long localized date format\n * - `p` is long localized time format\n */\n\nvar formatters = {\n // Year\n y: function(date, token) {\n // From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_tokens\n // | Year | y | yy | yyy | yyyy | yyyyy |\n // |----------|-------|----|-------|-------|-------|\n // | AD 1 | 1 | 01 | 001 | 0001 | 00001 |\n // | AD 12 | 12 | 12 | 012 | 0012 | 00012 |\n // | AD 123 | 123 | 23 | 123 | 0123 | 00123 |\n // | AD 1234 | 1234 | 34 | 1234 | 1234 | 01234 |\n // | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 |\n\n var signedYear = date.getUTCFullYear()\n // Returns 1 for 1 BC (which is year 0 in JavaScript)\n var year = signedYear > 0 ? signedYear : 1 - signedYear\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(token === 'yy' ? year % 100 : year, token.length)\n },\n\n // Month\n M: function(date, token) {\n var month = date.getUTCMonth()\n return token === 'M' ? String(month + 1) : Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(month + 1, 2)\n },\n\n // Day of the month\n d: function(date, token) {\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(date.getUTCDate(), token.length)\n },\n\n // AM or PM\n a: function(date, token) {\n var dayPeriodEnumValue = date.getUTCHours() / 12 >= 1 ? 'pm' : 'am'\n\n switch (token) {\n case 'a':\n case 'aa':\n case 'aaa':\n return dayPeriodEnumValue.toUpperCase()\n case 'aaaaa':\n return dayPeriodEnumValue[0]\n case 'aaaa':\n default:\n return dayPeriodEnumValue === 'am' ? 'a.m.' : 'p.m.'\n }\n },\n\n // Hour [1-12]\n h: function(date, token) {\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(date.getUTCHours() % 12 || 12, token.length)\n },\n\n // Hour [0-23]\n H: function(date, token) {\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(date.getUTCHours(), token.length)\n },\n\n // Minute\n m: function(date, token) {\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(date.getUTCMinutes(), token.length)\n },\n\n // Second\n s: function(date, token) {\n return Object(_addLeadingZeros_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(date.getUTCSeconds(), token.length)\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (formatters);\n\n\n/***/ }),\n/* 355 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return addLeadingZeros; });\nfunction addLeadingZeros(number, targetLength) {\n var sign = number < 0 ? '-' : ''\n var output = Math.abs(number).toString()\n while (output.length < targetLength) {\n output = '0' + output\n }\n return sign + output\n}\n\n\n/***/ }),\n/* 356 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getUTCDayOfYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\nvar MILLISECONDS_IN_DAY = 86400000\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction getUTCDayOfYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var timestamp = date.getTime()\n date.setUTCMonth(0, 1)\n date.setUTCHours(0, 0, 0, 0)\n var startOfYearTimestamp = date.getTime()\n var difference = timestamp - startOfYearTimestamp\n return Math.floor(difference / MILLISECONDS_IN_DAY) + 1\n}\n\n\n/***/ }),\n/* 357 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getUTCISOWeek; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _startOfUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(358);\n/* harmony import */ var _startOfUTCISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(359);\n\n\n\n\nvar MILLISECONDS_IN_WEEK = 604800000\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction getUTCISOWeek(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var diff =\n Object(_startOfUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date).getTime() - Object(_startOfUTCISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date).getTime()\n\n // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1\n}\n\n\n/***/ }),\n/* 358 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfUTCISOWeek; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction startOfUTCISOWeek(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var weekStartsOn = 1\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var day = date.getUTCDay()\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn\n\n date.setUTCDate(date.getUTCDate() - diff)\n date.setUTCHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 359 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfUTCISOWeekYear; });\n/* harmony import */ var _getUTCISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(360);\n/* harmony import */ var _startOfUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(358);\n\n\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction startOfUTCISOWeekYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var year = Object(_getUTCISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var fourthOfJanuary = new Date(0)\n fourthOfJanuary.setUTCFullYear(year, 0, 4)\n fourthOfJanuary.setUTCHours(0, 0, 0, 0)\n var date = Object(_startOfUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(fourthOfJanuary)\n return date\n}\n\n\n/***/ }),\n/* 360 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getUTCISOWeekYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _startOfUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(358);\n\n\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction getUTCISOWeekYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getUTCFullYear()\n\n var fourthOfJanuaryOfNextYear = new Date(0)\n fourthOfJanuaryOfNextYear.setUTCFullYear(year + 1, 0, 4)\n fourthOfJanuaryOfNextYear.setUTCHours(0, 0, 0, 0)\n var startOfNextYear = Object(_startOfUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(fourthOfJanuaryOfNextYear)\n\n var fourthOfJanuaryOfThisYear = new Date(0)\n fourthOfJanuaryOfThisYear.setUTCFullYear(year, 0, 4)\n fourthOfJanuaryOfThisYear.setUTCHours(0, 0, 0, 0)\n var startOfThisYear = Object(_startOfUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(fourthOfJanuaryOfThisYear)\n\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year\n } else {\n return year - 1\n }\n}\n\n\n/***/ }),\n/* 361 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getUTCWeek; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(362);\n/* harmony import */ var _startOfUTCWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(363);\n\n\n\n\nvar MILLISECONDS_IN_WEEK = 604800000\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction getUTCWeek(dirtyDate, options) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var diff =\n Object(_startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date, options).getTime() -\n Object(_startOfUTCWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, options).getTime()\n\n // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1\n}\n\n\n/***/ }),\n/* 362 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfUTCWeek; });\n/* harmony import */ var _toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction startOfUTCWeek(dirtyDate, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeWeekStartsOn =\n locale && locale.options && locale.options.weekStartsOn\n var defaultWeekStartsOn =\n localeWeekStartsOn == null ? 0 : Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeWeekStartsOn)\n var weekStartsOn =\n options.weekStartsOn == null\n ? defaultWeekStartsOn\n : Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.weekStartsOn)\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively')\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var day = date.getUTCDay()\n var diff = (day < weekStartsOn ? 7 : 0) + day - weekStartsOn\n\n date.setUTCDate(date.getUTCDate() - diff)\n date.setUTCHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 363 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfUTCWeekYear; });\n/* harmony import */ var _toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _getUTCWeekYear_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(364);\n/* harmony import */ var _startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(362);\n\n\n\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction startOfUTCWeekYear (dirtyDate, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError('1 argument required, but only ' + arguments.length + ' present')\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeFirstWeekContainsDate = locale &&\n locale.options &&\n locale.options.firstWeekContainsDate\n var defaultFirstWeekContainsDate =\n localeFirstWeekContainsDate == null\n ? 1\n : Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeFirstWeekContainsDate)\n var firstWeekContainsDate =\n options.firstWeekContainsDate == null\n ? defaultFirstWeekContainsDate\n : Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.firstWeekContainsDate)\n\n var year = Object(_getUTCWeekYear_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, dirtyOptions)\n var firstWeek = new Date(0)\n firstWeek.setUTCFullYear(year, 0, firstWeekContainsDate)\n firstWeek.setUTCHours(0, 0, 0, 0)\n var date = Object(_startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(firstWeek, dirtyOptions)\n return date\n}\n\n\n/***/ }),\n/* 364 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getUTCWeekYear; });\n/* harmony import */ var _toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(362);\n\n\n\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction getUTCWeekYear (dirtyDate, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError('1 argument required, but only ' + arguments.length + ' present')\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, dirtyOptions)\n var year = date.getUTCFullYear()\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeFirstWeekContainsDate = locale &&\n locale.options &&\n locale.options.firstWeekContainsDate\n var defaultFirstWeekContainsDate =\n localeFirstWeekContainsDate == null\n ? 1\n : Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeFirstWeekContainsDate)\n var firstWeekContainsDate =\n options.firstWeekContainsDate == null\n ? defaultFirstWeekContainsDate\n : Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.firstWeekContainsDate)\n\n // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError('firstWeekContainsDate must be between 1 and 7 inclusively')\n }\n\n var firstWeekOfNextYear = new Date(0)\n firstWeekOfNextYear.setUTCFullYear(year + 1, 0, firstWeekContainsDate)\n firstWeekOfNextYear.setUTCHours(0, 0, 0, 0)\n var startOfNextYear = Object(_startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(firstWeekOfNextYear, dirtyOptions)\n\n var firstWeekOfThisYear = new Date(0)\n firstWeekOfThisYear.setUTCFullYear(year, 0, firstWeekContainsDate)\n firstWeekOfThisYear.setUTCHours(0, 0, 0, 0)\n var startOfThisYear = Object(_startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(firstWeekOfThisYear, dirtyOptions)\n\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year\n } else {\n return year - 1\n }\n}\n\n\n/***/ }),\n/* 365 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\nfunction dateLongFormatter(pattern, formatLong) {\n switch (pattern) {\n case 'P':\n return formatLong.date({ width: 'short' })\n case 'PP':\n return formatLong.date({ width: 'medium' })\n case 'PPP':\n return formatLong.date({ width: 'long' })\n case 'PPPP':\n default:\n return formatLong.date({ width: 'full' })\n }\n}\n\nfunction timeLongFormatter(pattern, formatLong) {\n switch (pattern) {\n case 'p':\n return formatLong.time({ width: 'short' })\n case 'pp':\n return formatLong.time({ width: 'medium' })\n case 'ppp':\n return formatLong.time({ width: 'long' })\n case 'pppp':\n default:\n return formatLong.time({ width: 'full' })\n }\n}\n\nfunction dateTimeLongFormatter(pattern, formatLong) {\n var matchResult = pattern.match(/(P+)(p+)?/)\n var datePattern = matchResult[1]\n var timePattern = matchResult[2]\n\n if (!timePattern) {\n return dateLongFormatter(pattern, formatLong)\n }\n\n var dateTimeFormat\n\n switch (datePattern) {\n case 'P':\n dateTimeFormat = formatLong.dateTime({ width: 'short' })\n break\n case 'PP':\n dateTimeFormat = formatLong.dateTime({ width: 'medium' })\n break\n case 'PPP':\n dateTimeFormat = formatLong.dateTime({ width: 'long' })\n break\n case 'PPPP':\n default:\n dateTimeFormat = formatLong.dateTime({ width: 'full' })\n break\n }\n\n return dateTimeFormat\n .replace('{{date}}', dateLongFormatter(datePattern, formatLong))\n .replace('{{time}}', timeLongFormatter(timePattern, formatLong))\n}\n\nvar longFormatters = {\n p: timeLongFormatter,\n P: dateTimeLongFormatter\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (longFormatters);\n\n\n/***/ }),\n/* 366 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return subMilliseconds; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(281);\n\n\n\n/**\n * @name subMilliseconds\n * @category Millisecond Helpers\n * @summary Subtract the specified number of milliseconds from the given date.\n *\n * @description\n * Subtract the specified number of milliseconds from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of milliseconds to be subtracted\n * @returns {Date} the new date with the milliseconds subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 750 milliseconds from 10 July 2014 12:45:30.000:\n * var result = subMilliseconds(new Date(2014, 6, 10, 12, 45, 30, 0), 750)\n * //=> Thu Jul 10 2014 12:45:29.250\n */\nfunction subMilliseconds(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, -amount)\n}\n\n\n/***/ }),\n/* 367 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"protectedTokens\", function() { return protectedTokens; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isProtectedToken\", function() { return isProtectedToken; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"throwProtectedError\", function() { return throwProtectedError; });\nvar protectedTokens = ['D', 'DD', 'YY', 'YYYY']\n\nfunction isProtectedToken(token) {\n return protectedTokens.indexOf(token) !== -1\n}\n\nfunction throwProtectedError(token) {\n throw new RangeError(\n '`options.awareOfUnicodeTokens` must be set to `true` to use `' +\n token +\n '` token; see: https://git.io/fxCyr'\n )\n}\n\n\n/***/ }),\n/* 368 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return formatDistance; });\n/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(289);\n/* harmony import */ var _compareAsc_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(301);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(279);\n/* harmony import */ var _differenceInSeconds_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(318);\n/* harmony import */ var _differenceInMonths_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(316);\n/* harmony import */ var _lib_cloneObject_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(369);\n/* harmony import */ var _locale_en_US_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(343);\n\n\n\n\n\n\n\n\nvar MINUTES_IN_DAY = 1440\nvar MINUTES_IN_ALMOST_TWO_DAYS = 2520\nvar MINUTES_IN_MONTH = 43200\nvar MINUTES_IN_TWO_MONTHS = 86400\n\n/**\n * @name formatDistance\n * @category Common Helpers\n * @summary Return the distance between the given dates in words.\n *\n * @description\n * Return the distance between the given dates in words.\n *\n * | Distance between dates | Result |\n * |-------------------------------------------------------------------|---------------------|\n * | 0 ... 30 secs | less than a minute |\n * | 30 secs ... 1 min 30 secs | 1 minute |\n * | 1 min 30 secs ... 44 mins 30 secs | [2..44] minutes |\n * | 44 mins ... 30 secs ... 89 mins 30 secs | about 1 hour |\n * | 89 mins 30 secs ... 23 hrs 59 mins 30 secs | about [2..24] hours |\n * | 23 hrs 59 mins 30 secs ... 41 hrs 59 mins 30 secs | 1 day |\n * | 41 hrs 59 mins 30 secs ... 29 days 23 hrs 59 mins 30 secs | [2..30] days |\n * | 29 days 23 hrs 59 mins 30 secs ... 44 days 23 hrs 59 mins 30 secs | about 1 month |\n * | 44 days 23 hrs 59 mins 30 secs ... 59 days 23 hrs 59 mins 30 secs | about 2 months |\n * | 59 days 23 hrs 59 mins 30 secs ... 1 yr | [2..12] months |\n * | 1 yr ... 1 yr 3 months | about 1 year |\n * | 1 yr 3 months ... 1 yr 9 month s | over 1 year |\n * | 1 yr 9 months ... 2 yrs | almost 2 years |\n * | N yrs ... N yrs 3 months | about N years |\n * | N yrs 3 months ... N yrs 9 months | over N years |\n * | N yrs 9 months ... N+1 yrs | almost N+1 years |\n *\n * With `options.includeSeconds == true`:\n * | Distance between dates | Result |\n * |------------------------|----------------------|\n * | 0 secs ... 5 secs | less than 5 seconds |\n * | 5 secs ... 10 secs | less than 10 seconds |\n * | 10 secs ... 20 secs | less than 20 seconds |\n * | 20 secs ... 40 secs | half a minute |\n * | 40 secs ... 60 secs | less than a minute |\n * | 60 secs ... 90 secs | 1 minute |\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `distanceInWords ` to `formatDistance `\n * to make its name consistent with `format` and `formatRelative`.\n *\n * - The order of arguments is swapped to make the function\n * consistent with `differenceIn...` functions.\n *\n * ```javascript\n * // Before v2.0.0\n *\n * distanceInWords(\n * new Date(1986, 3, 4, 10, 32, 0),\n * new Date(1986, 3, 4, 11, 32, 0),\n * { addSuffix: true }\n * ) //=> 'in about 1 hour'\n *\n * // v2.0.0 onward\n *\n * formatDistance(\n * new Date(1986, 3, 4, 11, 32, 0),\n * new Date(1986, 3, 4, 10, 32, 0),\n * { addSuffix: true }\n * ) //=> 'in about 1 hour'\n * ```\n *\n * @param {Date|Number} date - the date\n * @param {Date|Number} baseDate - the date to compare with\n * @param {Object} [options] - an object with options.\n * @param {Boolean} [options.includeSeconds=false] - distances less than a minute are more detailed\n * @param {Boolean} [options.addSuffix=false] - result indicates if the second date is earlier or later than the first\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {String} the distance in words\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.locale` must contain `formatDistance` property\n *\n * @example\n * // What is the distance between 2 July 2014 and 1 January 2015?\n * var result = formatDistance(new Date(2014, 6, 2), new Date(2015, 0, 1))\n * //=> '6 months'\n *\n * @example\n * // What is the distance between 1 January 2015 00:00:15\n * // and 1 January 2015 00:00:00, including seconds?\n * var result = formatDistance(\n * new Date(2015, 0, 1, 0, 0, 15),\n * new Date(2015, 0, 1, 0, 0, 0),\n * { includeSeconds: true }\n * )\n * //=> 'less than 20 seconds'\n *\n * @example\n * // What is the distance from 1 January 2016\n * // to 1 January 2015, with a suffix?\n * var result = formatDistance(new Date(2015, 0, 1), new Date(2016, 0, 1), {\n * addSuffix: true\n * })\n * //=> 'about 1 year ago'\n *\n * @example\n * // What is the distance between 1 August 2016 and 1 January 2015 in Esperanto?\n * import { eoLocale } from 'date-fns/locale/eo'\n * var result = formatDistance(new Date(2016, 7, 1), new Date(2015, 0, 1), {\n * locale: eoLocale\n * })\n * //=> 'pli ol 1 jaro'\n */\nfunction formatDistance(dirtyDate, dirtyBaseDate, dirtyOptions) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale || _locale_en_US_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"]\n\n if (!locale.formatDistance) {\n throw new RangeError('locale must contain formatDistance property')\n }\n\n var comparison = Object(_compareAsc_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, dirtyBaseDate)\n\n if (isNaN(comparison)) {\n throw new RangeError('Invalid time value')\n }\n\n var localizeOptions = Object(_lib_cloneObject_index_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(options)\n localizeOptions.addSuffix = Boolean(options.addSuffix)\n localizeOptions.comparison = comparison\n\n var dateLeft\n var dateRight\n if (comparison > 0) {\n dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyBaseDate)\n dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyDate)\n } else {\n dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyDate)\n dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyBaseDate)\n }\n\n var seconds = Object(_differenceInSeconds_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(dateRight, dateLeft)\n var offsetInSeconds =\n (Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dateRight) -\n Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dateLeft)) /\n 1000\n var minutes = Math.round((seconds - offsetInSeconds) / 60)\n var months\n\n // 0 up to 2 mins\n if (minutes < 2) {\n if (options.includeSeconds) {\n if (seconds < 5) {\n return locale.formatDistance('lessThanXSeconds', 5, localizeOptions)\n } else if (seconds < 10) {\n return locale.formatDistance('lessThanXSeconds', 10, localizeOptions)\n } else if (seconds < 20) {\n return locale.formatDistance('lessThanXSeconds', 20, localizeOptions)\n } else if (seconds < 40) {\n return locale.formatDistance('halfAMinute', null, localizeOptions)\n } else if (seconds < 60) {\n return locale.formatDistance('lessThanXMinutes', 1, localizeOptions)\n } else {\n return locale.formatDistance('xMinutes', 1, localizeOptions)\n }\n } else {\n if (minutes === 0) {\n return locale.formatDistance('lessThanXMinutes', 1, localizeOptions)\n } else {\n return locale.formatDistance('xMinutes', minutes, localizeOptions)\n }\n }\n\n // 2 mins up to 0.75 hrs\n } else if (minutes < 45) {\n return locale.formatDistance('xMinutes', minutes, localizeOptions)\n\n // 0.75 hrs up to 1.5 hrs\n } else if (minutes < 90) {\n return locale.formatDistance('aboutXHours', 1, localizeOptions)\n\n // 1.5 hrs up to 24 hrs\n } else if (minutes < MINUTES_IN_DAY) {\n var hours = Math.round(minutes / 60)\n return locale.formatDistance('aboutXHours', hours, localizeOptions)\n\n // 1 day up to 1.75 days\n } else if (minutes < MINUTES_IN_ALMOST_TWO_DAYS) {\n return locale.formatDistance('xDays', 1, localizeOptions)\n\n // 1.75 days up to 30 days\n } else if (minutes < MINUTES_IN_MONTH) {\n var days = Math.round(minutes / MINUTES_IN_DAY)\n return locale.formatDistance('xDays', days, localizeOptions)\n\n // 1 month up to 2 months\n } else if (minutes < MINUTES_IN_TWO_MONTHS) {\n months = Math.round(minutes / MINUTES_IN_MONTH)\n return locale.formatDistance('aboutXMonths', months, localizeOptions)\n }\n\n months = Object(_differenceInMonths_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(dateRight, dateLeft)\n\n // 2 months up to 12 months\n if (months < 12) {\n var nearestMonth = Math.round(minutes / MINUTES_IN_MONTH)\n return locale.formatDistance('xMonths', nearestMonth, localizeOptions)\n\n // 1 year up to max Date\n } else {\n var monthsSinceStartOfYear = months % 12\n var years = Math.floor(months / 12)\n\n // N years up to 1 years 3 months\n if (monthsSinceStartOfYear < 3) {\n return locale.formatDistance('aboutXYears', years, localizeOptions)\n\n // N years 3 months up to N years 9 months\n } else if (monthsSinceStartOfYear < 9) {\n return locale.formatDistance('overXYears', years, localizeOptions)\n\n // N years 9 months up to N year 12 months\n } else {\n return locale.formatDistance('almostXYears', years + 1, localizeOptions)\n }\n }\n}\n\n\n/***/ }),\n/* 369 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return cloneObject; });\n/* harmony import */ var _assign_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(370);\n\n\nfunction cloneObject(dirtyObject) {\n return Object(_assign_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])({}, dirtyObject)\n}\n\n\n/***/ }),\n/* 370 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return assign; });\nfunction assign(target, dirtyObject) {\n if (target == null) {\n throw new TypeError(\n 'assign requires that input parameter not be null or undefined'\n )\n }\n\n dirtyObject = dirtyObject || {}\n\n for (var property in dirtyObject) {\n if (dirtyObject.hasOwnProperty(property)) {\n target[property] = dirtyObject[property]\n }\n }\n\n return target\n}\n\n\n/***/ }),\n/* 371 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return formatDistanceStrict; });\n/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(289);\n/* harmony import */ var _compareAsc_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(301);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(279);\n/* harmony import */ var _differenceInSeconds_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(318);\n/* harmony import */ var _lib_cloneObject_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(369);\n/* harmony import */ var _locale_en_US_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(343);\n\n\n\n\n\n\n\nvar MINUTES_IN_DAY = 1440\nvar MINUTES_IN_MONTH = 43200\nvar MINUTES_IN_YEAR = 525600\n\n/**\n * @name formatDistanceStrict\n * @category Common Helpers\n * @summary Return the distance between the given dates in words.\n *\n * @description\n * Return the distance between the given dates in words, using strict units.\n * This is like `formatDistance`, but does not use helpers like 'almost', 'over',\n * 'less than' and the like.\n *\n * | Distance between dates | Result |\n * |------------------------|---------------------|\n * | 0 ... 59 secs | [0..59] seconds |\n * | 1 ... 59 mins | [1..59] minutes |\n * | 1 ... 23 hrs | [1..23] hours |\n * | 1 ... 29 days | [1..29] days |\n * | 1 ... 11 months | [1..11] months |\n * | 1 ... N years | [1..N] years |\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `distanceInWordsStrict` to `formatDistanceStrict`\n * to make its name consistent with `format` and `formatRelative`.\n *\n * - The order of arguments is swapped to make the function\n * consistent with `differenceIn...` functions.\n *\n * ```javascript\n * // Before v2.0.0\n *\n * distanceInWordsStrict(\n * new Date(2015, 0, 2),\n * new Date(2014, 6, 2)\n * ) //=> '6 months'\n *\n * // v2.0.0 onward\n *\n * formatDistanceStrict(\n * new Date(2014, 6, 2),\n * new Date(2015, 0, 2)\n * ) //=> '6 months'\n * ```\n *\n * - `partialMethod` option is renamed to `roundingMethod`.\n *\n * ```javascript\n * // Before v2.0.0\n *\n * distanceInWordsStrict(\n * new Date(1986, 3, 4, 10, 32, 0),\n * new Date(1986, 3, 4, 10, 33, 1),\n * { partialMethod: 'ceil' }\n * ) //=> '2 minutes'\n *\n * // v2.0.0 onward\n *\n * formatDistanceStrict(\n * new Date(1986, 3, 4, 10, 33, 1),\n * new Date(1986, 3, 4, 10, 32, 0),\n * { roundingMethod: 'ceil' }\n * ) //=> '2 minutes'\n * ```\n *\n * - If `roundingMethod` is not specified, it now defaults to `round` instead of `floor`.\n *\n * - `unit` option now accepts one of the strings:\n * 'second', 'minute', 'hour', 'day', 'month' or 'year' instead of 's', 'm', 'h', 'd', 'M' or 'Y'\n *\n * ```javascript\n * // Before v2.0.0\n *\n * distanceInWordsStrict(\n * new Date(1986, 3, 4, 10, 32, 0),\n * new Date(1986, 3, 4, 10, 33, 1),\n * { unit: 'm' }\n * )\n *\n * // v2.0.0 onward\n *\n * formatDistanceStrict(\n * new Date(1986, 3, 4, 10, 33, 1),\n * new Date(1986, 3, 4, 10, 32, 0),\n * { unit: 'minute' }\n * )\n * ```\n *\n * @param {Date|Number} date - the date\n * @param {Date|Number} baseDate - the date to compare with\n * @param {Object} [options] - an object with options.\n * @param {Boolean} [options.addSuffix=false] - result indicates if the second date is earlier or later than the first\n * @param {'second'|'minute'|'hour'|'day'|'month'|'year'} [options.unit] - if specified, will force a unit\n * @param {'floor'|'ceil'|'round'} [options.roundingMethod='round'] - which way to round partial units\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {String} the distance in words\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.roundingMethod` must be 'floor', 'ceil' or 'round'\n * @throws {RangeError} `options.unit` must be 'second', 'minute', 'hour', 'day', 'month' or 'year'\n * @throws {RangeError} `options.locale` must contain `formatDistance` property\n *\n * @example\n * // What is the distance between 2 July 2014 and 1 January 2015?\n * var result = formatDistanceStrict(new Date(2014, 6, 2), new Date(2015, 0, 2))\n * //=> '6 months'\n *\n * @example\n * // What is the distance between 1 January 2015 00:00:15\n * // and 1 January 2015 00:00:00?\n * var result = formatDistanceStrict(\n * new Date(2015, 0, 1, 0, 0, 15),\n * new Date(2015, 0, 1, 0, 0, 0)\n * )\n * //=> '15 seconds'\n *\n * @example\n * // What is the distance from 1 January 2016\n * // to 1 January 2015, with a suffix?\n * var result = formatDistanceStrict(new Date(2015, 0, 1), new Date(2016, 0, 1), {\n * addSuffix: true\n * })\n * //=> '1 year ago'\n *\n * @example\n * // What is the distance from 1 January 2016\n * // to 1 January 2015, in minutes?\n * var result = formatDistanceStrict(new Date(2016, 0, 1), new Date(2015, 0, 1), {\n * unit: 'minute'\n * })\n * //=> '525600 minutes'\n *\n * @example\n * // What is the distance from 1 January 2016\n * // to 28 January 2015, in months, rounded up?\n * var result = formatDistanceStrict(new Date(2015, 0, 28), new Date(2015, 0, 1), {\n * unit: 'month',\n * roundingMethod: 'ceil'\n * })\n * //=> '1 month'\n *\n * @example\n * // What is the distance between 1 August 2016 and 1 January 2015 in Esperanto?\n * import { eoLocale } from 'date-fns/locale/eo'\n * var result = formatDistanceStrict(new Date(2016, 7, 1), new Date(2015, 0, 1), {\n * locale: eoLocale\n * })\n * //=> '1 jaro'\n */\nfunction formatDistanceStrict(\n dirtyDate,\n dirtyBaseDate,\n dirtyOptions\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale || _locale_en_US_index_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"]\n\n if (!locale.formatDistance) {\n throw new RangeError('locale must contain localize.formatDistance property')\n }\n\n var comparison = Object(_compareAsc_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, dirtyBaseDate)\n\n if (isNaN(comparison)) {\n throw new RangeError('Invalid time value')\n }\n\n var localizeOptions = Object(_lib_cloneObject_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(options)\n localizeOptions.addSuffix = Boolean(options.addSuffix)\n localizeOptions.comparison = comparison\n\n var dateLeft\n var dateRight\n if (comparison > 0) {\n dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyBaseDate)\n dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyDate)\n } else {\n dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyDate)\n dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dirtyBaseDate)\n }\n\n var roundingMethod =\n options.roundingMethod == null ? 'round' : String(options.roundingMethod)\n var roundingMethodFn\n\n if (roundingMethod === 'floor') {\n roundingMethodFn = Math.floor\n } else if (roundingMethod === 'ceil') {\n roundingMethodFn = Math.ceil\n } else if (roundingMethod === 'round') {\n roundingMethodFn = Math.round\n } else {\n throw new RangeError(\"roundingMethod must be 'floor', 'ceil' or 'round'\")\n }\n\n var seconds = Object(_differenceInSeconds_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(dateRight, dateLeft)\n var offsetInSeconds =\n (Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dateRight) -\n Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dateLeft)) /\n 1000\n var minutes = roundingMethodFn((seconds - offsetInSeconds) / 60)\n\n var unit\n if (options.unit == null) {\n if (minutes < 1) {\n unit = 'second'\n } else if (minutes < 60) {\n unit = 'minute'\n } else if (minutes < MINUTES_IN_DAY) {\n unit = 'hour'\n } else if (minutes < MINUTES_IN_MONTH) {\n unit = 'day'\n } else if (minutes < MINUTES_IN_YEAR) {\n unit = 'month'\n } else {\n unit = 'year'\n }\n } else {\n unit = String(options.unit)\n }\n\n // 0 up to 60 seconds\n if (unit === 'second') {\n return locale.formatDistance('xSeconds', seconds, localizeOptions)\n\n // 1 up to 60 mins\n } else if (unit === 'minute') {\n return locale.formatDistance('xMinutes', minutes, localizeOptions)\n\n // 1 up to 24 hours\n } else if (unit === 'hour') {\n var hours = roundingMethodFn(minutes / 60)\n return locale.formatDistance('xHours', hours, localizeOptions)\n\n // 1 up to 30 days\n } else if (unit === 'day') {\n var days = roundingMethodFn(minutes / MINUTES_IN_DAY)\n return locale.formatDistance('xDays', days, localizeOptions)\n\n // 1 up to 12 months\n } else if (unit === 'month') {\n var months = roundingMethodFn(minutes / MINUTES_IN_MONTH)\n return locale.formatDistance('xMonths', months, localizeOptions)\n\n // 1 year up to max Date\n } else if (unit === 'year') {\n var years = roundingMethodFn(minutes / MINUTES_IN_YEAR)\n return locale.formatDistance('xYears', years, localizeOptions)\n }\n\n throw new RangeError(\n \"unit must be 'second', 'minute', 'hour', 'day', 'month' or 'year'\"\n )\n}\n\n\n/***/ }),\n/* 372 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return formatRelative; });\n/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(289);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _format_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(341);\n/* harmony import */ var _differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(288);\n/* harmony import */ var _locale_en_US_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(343);\n/* harmony import */ var _subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(366);\n\n\n\n\n\n\n\n/**\n * @name formatRelative\n * @category Common Helpers\n * @summary Represent the date in words relative to the given base date.\n *\n * @description\n * Represent the date in words relative to the given base date.\n *\n * | Distance to the base date | Result |\n * |---------------------------|---------------------------|\n * | Previous 6 days | last Sunday at 04:30 AM |\n * | Last day | yesterday at 04:30 AM |\n * | Same day | today at 04:30 AM |\n * | Next day | tomorrow at 04:30 AM |\n * | Next 6 days | Sunday at 04:30 AM |\n * | Other | 12/31/2017 |\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to format\n * @param {Date|Number} baseDate - the date to compare with\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {String} the date in words\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.locale` must contain `localize` property\n * @throws {RangeError} `options.locale` must contain `formatLong` property\n * @throws {RangeError} `options.locale` must contain `formatRelative` property\n */\nfunction formatRelative(dirtyDate, dirtyBaseDate, dirtyOptions) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var baseDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyBaseDate)\n\n var options = dirtyOptions || {}\n var locale = options.locale || _locale_en_US_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"]\n\n if (!locale.localize) {\n throw new RangeError('locale must contain localize property')\n }\n\n if (!locale.formatLong) {\n throw new RangeError('locale must contain formatLong property')\n }\n\n if (!locale.formatRelative) {\n throw new RangeError('locale must contain formatRelative property')\n }\n\n var diff = Object(_differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(date, baseDate)\n\n if (isNaN(diff)) {\n throw new RangeError('Invalid time value')\n }\n\n var token\n if (diff < -6) {\n token = 'other'\n } else if (diff < -1) {\n token = 'lastWeek'\n } else if (diff < 0) {\n token = 'yesterday'\n } else if (diff < 1) {\n token = 'today'\n } else if (diff < 2) {\n token = 'tomorrow'\n } else if (diff < 7) {\n token = 'nextWeek'\n } else {\n token = 'other'\n }\n\n var utcDate = Object(_subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(date, Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(date))\n var utcBaseDate = Object(_subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(\n baseDate,\n Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(baseDate)\n )\n var formatStr = locale.formatRelative(token, utcDate, utcBaseDate, options)\n return Object(_format_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, formatStr, options)\n}\n\n\n/***/ }),\n/* 373 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return fromUnixTime; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(278);\n\n\n\n/**\n * @name fromUnixTime\n * @category Timestamp Helpers\n * @summary Create a date from a Unix timestamp.\n *\n * @description\n * Create a date from a Unix timestamp.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Number} unixTime - the given Unix timestamp\n * @returns {Date} the date\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Create the date 29 February 2012 11:45:05:\n * var result = fromUnixTime(1330515905)\n * //=> Wed Feb 29 2012 11:45:05\n */\nfunction fromUnixTime(dirtyUnixTime) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var unixTime = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyUnixTime)\n\n return Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(unixTime * 1000)\n}\n\n\n/***/ }),\n/* 374 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getDate; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getDate\n * @category Day Helpers\n * @summary Get the day of the month of the given date.\n *\n * @description\n * Get the day of the month of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the day of month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which day of the month is 29 February 2012?\n * var result = getDate(new Date(2012, 1, 29))\n * //=> 29\n */\nfunction getDate(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var dayOfMonth = date.getDate()\n return dayOfMonth\n}\n\n\n/***/ }),\n/* 375 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getDay; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getDay\n * @category Weekday Helpers\n * @summary Get the day of the week of the given date.\n *\n * @description\n * Get the day of the week of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the day of week\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which day of the week is 29 February 2012?\n * var result = getDay(new Date(2012, 1, 29))\n * //=> 3\n */\nfunction getDay(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var day = date.getDay()\n return day\n}\n\n\n/***/ }),\n/* 376 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getDayOfYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _startOfYear_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(330);\n/* harmony import */ var _differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(288);\n\n\n\n\n/**\n * @name getDayOfYear\n * @category Day Helpers\n * @summary Get the day of the year of the given date.\n *\n * @description\n * Get the day of the year of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the day of year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which day of the year is 2 July 2014?\n * var result = getDayOfYear(new Date(2014, 6, 2))\n * //=> 183\n */\nfunction getDayOfYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var diff = Object(_differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, Object(_startOfYear_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date))\n var dayOfYear = diff + 1\n return dayOfYear\n}\n\n\n/***/ }),\n/* 377 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getDaysInYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _isLeapYear_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(378);\n\n\n\n/**\n * @name getDaysInYear\n * @category Year Helpers\n * @summary Get the number of days in a year of the given date.\n *\n * @description\n * Get the number of days in a year of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the number of days in a year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // How many days are in 2012?\n * var result = getDaysInYear(new Date(2012, 0, 1))\n * //=> 366\n */\nfunction getDaysInYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n\n if (isNaN(date)) {\n return NaN\n }\n\n return Object(_isLeapYear_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date) ? 366 : 365\n}\n\n\n/***/ }),\n/* 378 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isLeapYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isLeapYear\n * @category Year Helpers\n * @summary Is the given date in the leap year?\n *\n * @description\n * Is the given date in the leap year?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is in the leap year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 1 September 2012 in the leap year?\n * var result = isLeapYear(new Date(2012, 8, 1))\n * //=> true\n */\nfunction isLeapYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0)\n}\n\n\n/***/ }),\n/* 379 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getDecade; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getDecade\n * @category Decade Helpers\n * @summary Get the decade of the given date.\n *\n * @description\n * Get the decade of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the year of decade\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which decade belongs 27 November 1942?\n * var result = getDecade(new Date(1942, 10, 27))\n * //=> 1940\n */\nfunction getDecade(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n var decade = Math.floor(year / 10) * 10\n return decade\n}\n\n\n/***/ }),\n/* 380 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getHours; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getHours\n * @category Hour Helpers\n * @summary Get the hours of the given date.\n *\n * @description\n * Get the hours of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the hours\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Get the hours of 29 February 2012 11:45:00:\n * var result = getHours(new Date(2012, 1, 29, 11, 45))\n * //=> 11\n */\nfunction getHours(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var hours = date.getHours()\n return hours\n}\n\n\n/***/ }),\n/* 381 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getISODay; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getISODay\n * @category Weekday Helpers\n * @summary Get the day of the ISO week of the given date.\n *\n * @description\n * Get the day of the ISO week of the given date,\n * which is 7 for Sunday, 1 for Monday etc.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the day of ISO week\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which day of the ISO week is 26 February 2012?\n * var result = getISODay(new Date(2012, 1, 26))\n * //=> 7\n */\nfunction getISODay(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var day = date.getDay()\n\n if (day === 0) {\n day = 7\n }\n\n return day\n}\n\n\n/***/ }),\n/* 382 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getISOWeek; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(284);\n/* harmony import */ var _startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(287);\n\n\n\n\nvar MILLISECONDS_IN_WEEK = 604800000\n\n/**\n * @name getISOWeek\n * @category ISO Week Helpers\n * @summary Get the ISO week of the given date.\n *\n * @description\n * Get the ISO week of the given date.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the ISO week\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which week of the ISO-week numbering year is 2 January 2005?\n * var result = getISOWeek(new Date(2005, 0, 2))\n * //=> 53\n */\nfunction getISOWeek(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var diff = Object(_startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date).getTime() - Object(_startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date).getTime()\n\n // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1\n}\n\n\n/***/ }),\n/* 383 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getISOWeeksInYear; });\n/* harmony import */ var _startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(287);\n/* harmony import */ var _addWeeks_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(296);\n\n\n\nvar MILLISECONDS_IN_WEEK = 604800000\n\n/**\n * @name getISOWeeksInYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Get the number of weeks in an ISO week-numbering year of the given date.\n *\n * @description\n * Get the number of weeks in an ISO week-numbering year of the given date.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the number of ISO weeks in a year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // How many weeks are in ISO week-numbering year 2015?\n * var result = getISOWeeksInYear(new Date(2015, 1, 11))\n * //=> 53\n */\nfunction getISOWeeksInYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var thisYear = Object(_startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var nextYear = Object(_startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(Object(_addWeeks_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(thisYear, 60))\n var diff = nextYear.valueOf() - thisYear.valueOf()\n // Round the number of weeks to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n return Math.round(diff / MILLISECONDS_IN_WEEK)\n}\n\n\n/***/ }),\n/* 384 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getMilliseconds; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getMilliseconds\n * @category Millisecond Helpers\n * @summary Get the milliseconds of the given date.\n *\n * @description\n * Get the milliseconds of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the milliseconds\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Get the milliseconds of 29 February 2012 11:45:05.123:\n * var result = getMilliseconds(new Date(2012, 1, 29, 11, 45, 5, 123))\n * //=> 123\n */\nfunction getMilliseconds(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var milliseconds = date.getMilliseconds()\n return milliseconds\n}\n\n\n/***/ }),\n/* 385 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getMinutes; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getMinutes\n * @category Minute Helpers\n * @summary Get the minutes of the given date.\n *\n * @description\n * Get the minutes of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the minutes\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Get the minutes of 29 February 2012 11:45:05:\n * var result = getMinutes(new Date(2012, 1, 29, 11, 45, 5))\n * //=> 45\n */\nfunction getMinutes(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var minutes = date.getMinutes()\n return minutes\n}\n\n\n/***/ }),\n/* 386 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getMonth; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getMonth\n * @category Month Helpers\n * @summary Get the month of the given date.\n *\n * @description\n * Get the month of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which month is 29 February 2012?\n * var result = getMonth(new Date(2012, 1, 29))\n * //=> 1\n */\nfunction getMonth(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var month = date.getMonth()\n return month\n}\n\n\n/***/ }),\n/* 387 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getOverlappingDaysInIntervals; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\nvar MILLISECONDS_IN_DAY = 24 * 60 * 60 * 1000\n\n/**\n * @name getOverlappingDaysInIntervals\n * @category Interval Helpers\n * @summary Get the number of days that overlap in two time intervals\n *\n * @description\n * Get the number of days that overlap in two time intervals\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `getOverlappingDaysInRanges` to `getOverlappingDaysInIntervals`.\n * This change was made to mirror the use of the word \"interval\" in standard ISO 8601:2004 terminology:\n *\n * ```\n * 2.1.3\n * time interval\n * part of the time axis limited by two instants\n * ```\n *\n * Also, this function now accepts an object with `start` and `end` properties\n * instead of two arguments as an interval.\n * This function now throws `RangeError` if the start of the interval is after its end\n * or if any date in the interval is `Invalid Date`.\n *\n * ```javascript\n * // Before v2.0.0\n *\n * getOverlappingDaysInRanges(\n * new Date(2014, 0, 10), new Date(2014, 0, 20),\n * new Date(2014, 0, 17), new Date(2014, 0, 21)\n * )\n *\n * // v2.0.0 onward\n *\n * getOverlappingDaysInIntervals(\n * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },\n * { start: new Date(2014, 0, 17), end: new Date(2014, 0, 21) }\n * )\n * ```\n *\n * @param {Interval} intervalLeft - the first interval to compare. See [Interval]{@link docs/Interval}\n * @param {Interval} intervalRight - the second interval to compare. See [Interval]{@link docs/Interval}\n * @returns {Number} the number of days that overlap in two time intervals\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} The start of an interval cannot be after its end\n * @throws {RangeError} Date in interval cannot be `Invalid Date`\n *\n * @example\n * // For overlapping time intervals adds 1 for each started overlapping day:\n * getOverlappingDaysInIntervals(\n * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },\n * { start: new Date(2014, 0, 17), end: new Date(2014, 0, 21) }\n * )\n * //=> 3\n *\n * @example\n * // For non-overlapping time intervals returns 0:\n * getOverlappingDaysInIntervals(\n * { start: new Date(2014, 0, 10), end: new Date(2014, 0, 20) },\n * { start: new Date(2014, 0, 21), end: new Date(2014, 0, 22) }\n * )\n * //=> 0\n */\nfunction getOverlappingDaysInIntervals(\n dirtyIntervalLeft,\n dirtyIntervalRight\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var intervalLeft = dirtyIntervalLeft || {}\n var intervalRight = dirtyIntervalRight || {}\n var leftStartTime = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(intervalLeft.start).getTime()\n var leftEndTime = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(intervalLeft.end).getTime()\n var rightStartTime = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(intervalRight.start).getTime()\n var rightEndTime = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(intervalRight.end).getTime()\n\n // Throw an exception if start date is after end date or if any date is `Invalid Date`\n if (!(leftStartTime <= leftEndTime && rightStartTime <= rightEndTime)) {\n throw new RangeError('Invalid interval')\n }\n\n var isOverlapping =\n leftStartTime < rightEndTime && rightStartTime < leftEndTime\n\n if (!isOverlapping) {\n return 0\n }\n\n var overlapStartDate =\n rightStartTime < leftStartTime ? leftStartTime : rightStartTime\n\n var overlapEndDate = rightEndTime > leftEndTime ? leftEndTime : rightEndTime\n\n var differenceInMs = overlapEndDate - overlapStartDate\n\n return Math.ceil(differenceInMs / MILLISECONDS_IN_DAY)\n}\n\n\n/***/ }),\n/* 388 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getSeconds; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getSeconds\n * @category Second Helpers\n * @summary Get the seconds of the given date.\n *\n * @description\n * Get the seconds of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the seconds\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Get the seconds of 29 February 2012 11:45:05.123:\n * var result = getSeconds(new Date(2012, 1, 29, 11, 45, 5, 123))\n * //=> 5\n */\nfunction getSeconds(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var seconds = date.getSeconds()\n return seconds\n}\n\n\n/***/ }),\n/* 389 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getTime; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getTime\n * @category Timestamp Helpers\n * @summary Get the milliseconds timestamp of the given date.\n *\n * @description\n * Get the milliseconds timestamp of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the timestamp\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Get the timestamp of 29 February 2012 11:45:05.123:\n * var result = getTime(new Date(2012, 1, 29, 11, 45, 5, 123))\n * //=> 1330515905123\n */\nfunction getTime(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var timestamp = date.getTime()\n return timestamp\n}\n\n\n/***/ }),\n/* 390 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getUnixTime; });\n/* harmony import */ var _getTime_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(389);\n\n\n/**\n * @name getUnixTime\n * @category Timestamp Helpers\n * @summary Get the seconds timestamp of the given date.\n *\n * @description\n * Get the seconds timestamp of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the timestamp\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Get the timestamp of 29 February 2012 11:45:05 CET:\n * var result = getUnixTime(new Date(2012, 1, 29, 11, 45, 5))\n * //=> 1330512305\n */\nfunction getUnixTime(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Math.floor(Object(_getTime_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate) / 1000)\n}\n\n\n/***/ }),\n/* 391 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getWeek; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(285);\n/* harmony import */ var _startOfWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(392);\n\n\n\n\nvar MILLISECONDS_IN_WEEK = 604800000\n\n/**\n * @name getWeek\n * @category Week Helpers\n * @summary Get the local week index of the given date.\n *\n * @description\n * Get the local week index of the given date.\n * The exact calculation depends on the values of\n * `options.weekStartsOn` (which is the index of the first day of the week)\n * and `options.firstWeekContainsDate` (which is the day of January, which is always in\n * the first week of the week-numbering year)\n *\n * Week numbering: https://en.wikipedia.org/wiki/Week#Week_numbering\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {1|2|3|4|5|6|7} [options.firstWeekContainsDate=1] - the day of January, which is always in the first week of the year\n * @returns {Number} the week\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n *\n * @example\n * // Which week of the local week numbering year is 2 January 2005 with default options?\n * var result = getISOWeek(new Date(2005, 0, 2))\n * //=> 2\n *\n * // Which week of the local week numbering year is 2 January 2005,\n * // if Monday is the first day of the week,\n * // and the first week of the year always contains 4 January?\n * var result = getISOWeek(new Date(2005, 0, 2), {\n * weekStartsOn: 1,\n * firstWeekContainsDate: 4\n * })\n * //=> 53\n */\n\nfunction getWeek(dirtyDate, options) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var diff =\n Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date, options).getTime() -\n Object(_startOfWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, options).getTime()\n\n // Round the number of days to the nearest integer\n // because the number of milliseconds in a week is not constant\n // (e.g. it's different in the week of the daylight saving time clock shift)\n return Math.round(diff / MILLISECONDS_IN_WEEK) + 1\n}\n\n\n/***/ }),\n/* 392 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfWeekYear; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _getWeekYear_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(393);\n/* harmony import */ var _startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(285);\n\n\n\n\n/**\n * @name startOfWeekYear\n * @category Week-Numbering Year Helpers\n * @summary Return the start of a local week-numbering year for the given date.\n *\n * @description\n * Return the start of a local week-numbering year.\n * The exact calculation depends on the values of\n * `options.weekStartsOn` (which is the index of the first day of the week)\n * and `options.firstWeekContainsDate` (which is the day of January, which is always in\n * the first week of the week-numbering year)\n *\n * Week numbering: https://en.wikipedia.org/wiki/Week#Week_numbering\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {1|2|3|4|5|6|7} [options.firstWeekContainsDate=1] - the day of January, which is always in the first week of the year\n * @returns {Date} the start of a week-numbering year\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n *\n * @example\n * // The start of an a week-numbering year for 2 July 2005 with default settings:\n * var result = startOfWeekYear(new Date(2005, 6, 2))\n * //=> Sun Dec 26 2004 00:00:00\n *\n * @example\n * // The start of a week-numbering year for 2 July 2005\n * // if Monday is the first day of week\n * // and 4 January is always in the first week of the year:\n * var result = startOfWeekYear(new Date(2005, 6, 2), {\n * weekStartsOn: 1,\n * firstWeekContainsDate: 4\n * })\n * //=> Mon Jan 03 2005 00:00:00\n */\nfunction startOfWeekYear(dirtyDate, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeFirstWeekContainsDate =\n locale && locale.options && locale.options.firstWeekContainsDate\n var defaultFirstWeekContainsDate =\n localeFirstWeekContainsDate == null\n ? 1\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeFirstWeekContainsDate)\n var firstWeekContainsDate =\n options.firstWeekContainsDate == null\n ? defaultFirstWeekContainsDate\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.firstWeekContainsDate)\n\n var year = Object(_getWeekYear_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, dirtyOptions)\n var firstWeek = new Date(0)\n firstWeek.setFullYear(year, 0, firstWeekContainsDate)\n firstWeek.setHours(0, 0, 0, 0)\n var date = Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(firstWeek, dirtyOptions)\n return date\n}\n\n\n/***/ }),\n/* 393 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getWeekYear; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(285);\n\n\n\n\n/**\n * @name getWeekYear\n * @category Week-Numbering Year Helpers\n * @summary Get the local week-numbering year of the given date.\n *\n * @description\n * Get the local week-numbering year of the given date.\n * The exact calculation depends on the values of\n * `options.weekStartsOn` (which is the index of the first day of the week)\n * and `options.firstWeekContainsDate` (which is the day of January, which is always in\n * the first week of the week-numbering year)\n *\n * Week numbering: https://en.wikipedia.org/wiki/Week#Week_numbering\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {1|2|3|4|5|6|7} [options.firstWeekContainsDate=1] - the day of January, which is always in the first week of the year\n * @returns {Number} the local week-numbering year\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n *\n * @example\n * // Which week numbering year is 26 December 2004 with the default settings?\n * var result = getWeekYear(new Date(2004, 11, 26))\n * //=> 2005\n *\n * @example\n * // Which week numbering year is 26 December 2004 if week starts on Saturday?\n * var result = getWeekYear(new Date(2004, 11, 26), { weekStartsOn: 6 })\n * //=> 2004\n *\n * @example\n * // Which week numbering year is 26 December 2004 if the first week contains 4 January?\n * var result = getWeekYear(new Date(2004, 11, 26), { firstWeekContainsDate: 4 })\n * //=> 2004\n */\nfunction getWeekYear(dirtyDate, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeFirstWeekContainsDate =\n locale && locale.options && locale.options.firstWeekContainsDate\n var defaultFirstWeekContainsDate =\n localeFirstWeekContainsDate == null\n ? 1\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeFirstWeekContainsDate)\n var firstWeekContainsDate =\n options.firstWeekContainsDate == null\n ? defaultFirstWeekContainsDate\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.firstWeekContainsDate)\n\n // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError(\n 'firstWeekContainsDate must be between 1 and 7 inclusively'\n )\n }\n\n var firstWeekOfNextYear = new Date(0)\n firstWeekOfNextYear.setFullYear(year + 1, 0, firstWeekContainsDate)\n firstWeekOfNextYear.setHours(0, 0, 0, 0)\n var startOfNextYear = Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(firstWeekOfNextYear, dirtyOptions)\n\n var firstWeekOfThisYear = new Date(0)\n firstWeekOfThisYear.setFullYear(year, 0, firstWeekContainsDate)\n firstWeekOfThisYear.setHours(0, 0, 0, 0)\n var startOfThisYear = Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(firstWeekOfThisYear, dirtyOptions)\n\n if (date.getTime() >= startOfNextYear.getTime()) {\n return year + 1\n } else if (date.getTime() >= startOfThisYear.getTime()) {\n return year\n } else {\n return year - 1\n }\n}\n\n\n/***/ }),\n/* 394 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getWeekOfMonth; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _getDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(374);\n/* harmony import */ var _startOfMonth_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(327);\n/* harmony import */ var _getDay_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(375);\n\n\n\n\n\n/**\n * @name getWeekOfMonth\n * @category Week Helpers\n * @summary Get the week of the month of the given date.\n *\n * @description\n * Get the week of the month of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @returns {Number} the week of month\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // Which week of the month is 9 November 2017?\n * var result = getWeekOfMonth(new Date(2017, 10, 9))\n * //=> 2\n */\nfunction getWeekOfMonth(date, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeWeekStartsOn =\n locale && locale.options && locale.options.weekStartsOn\n var defaultWeekStartsOn =\n localeWeekStartsOn == null ? 0 : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeWeekStartsOn)\n var weekStartsOn =\n options.weekStartsOn == null\n ? defaultWeekStartsOn\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.weekStartsOn)\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively')\n }\n\n var startWeekDay = Object(_getDay_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(Object(_startOfMonth_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date))\n var currentWeekDay = Object(_getDay_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(date)\n\n var startWeekDayWithOptions =\n startWeekDay < weekStartsOn ? 7 - weekStartsOn : startWeekDay\n var diff = startWeekDayWithOptions > currentWeekDay ? 7 - weekStartsOn : 0\n\n return Math.ceil((Object(_getDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date) + diff) / 7)\n}\n\n\n/***/ }),\n/* 395 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getWeeksInMonth; });\n/* harmony import */ var _differenceInCalendarWeeks_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(308);\n/* harmony import */ var _lastDayOfMonth_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(396);\n/* harmony import */ var _startOfMonth_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(327);\n\n\n\n\n/**\n * @name getWeeksInMonth\n * @category Week Helpers\n * @summary Get the number of calendar weeks a month spans.\n *\n * @description\n * Get the number of calendar weeks the month in the given date spans.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {Number} the number of calendar weeks\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // How many calendar weeks does February 2015 span?\n * var result = getWeeksInMonth(new Date(2015, 1, 8))\n * //=> 4\n *\n * @example\n * // If the week starts on Monday,\n * // how many calendar weeks does July 2017 span?\n * var result = getWeeksInMonth(new Date(2017, 6, 5), { weekStartsOn: 1 })\n * //=> 6\n */\nfunction getWeeksInMonth(date, options) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return (\n Object(_differenceInCalendarWeeks_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(\n Object(_lastDayOfMonth_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date),\n Object(_startOfMonth_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date),\n options\n ) + 1\n )\n}\n\n\n/***/ }),\n/* 396 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return lastDayOfMonth; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name lastDayOfMonth\n * @category Month Helpers\n * @summary Return the last day of a month for the given date.\n *\n * @description\n * Return the last day of a month for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the last day of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The last day of a month for 2 September 2014 11:55:00:\n * var result = lastDayOfMonth(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 30 2014 00:00:00\n */\nfunction lastDayOfMonth(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var month = date.getMonth()\n date.setFullYear(date.getFullYear(), month + 1, 0)\n date.setHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 397 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return getYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name getYear\n * @category Year Helpers\n * @summary Get the year of the given date.\n *\n * @description\n * Get the year of the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the given date\n * @returns {Number} the year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which year is 2 July 2014?\n * var result = getYear(new Date(2014, 6, 2))\n * //=> 2014\n */\nfunction getYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n return year\n}\n\n\n/***/ }),\n/* 398 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isAfter; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isAfter\n * @category Common Helpers\n * @summary Is the first date after the second one?\n *\n * @description\n * Is the first date after the second one?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date that should be after the other one to return true\n * @param {Date|Number} dateToCompare - the date to compare with\n * @returns {Boolean} the first date is after the second date\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Is 10 July 1989 after 11 February 1987?\n * var result = isAfter(new Date(1989, 6, 10), new Date(1987, 1, 11))\n * //=> true\n */\nfunction isAfter(dirtyDate, dirtyDateToCompare) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var dateToCompare = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateToCompare)\n return date.getTime() > dateToCompare.getTime()\n}\n\n\n/***/ }),\n/* 399 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isBefore; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isBefore\n * @category Common Helpers\n * @summary Is the first date before the second one?\n *\n * @description\n * Is the first date before the second one?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date that should be before the other one to return true\n * @param {Date|Number} dateToCompare - the date to compare with\n * @returns {Boolean} the first date is before the second date\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Is 10 July 1989 before 11 February 1987?\n * var result = isBefore(new Date(1989, 6, 10), new Date(1987, 1, 11))\n * //=> false\n */\nfunction isBefore(dirtyDate, dirtyDateToCompare) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var dateToCompare = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateToCompare)\n return date.getTime() < dateToCompare.getTime()\n}\n\n\n/***/ }),\n/* 400 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isDate; });\n/**\n * @name isDate\n * @category Common Helpers\n * @summary Is the given value a date?\n *\n * @description\n * Returns true if the given value is an instance of Date. The function works for dates transferred across iframes.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {*} value - the value to check\n * @returns {boolean} true if the given value is a date\n * @throws {TypeError} 1 arguments required\n *\n * @example\n * // For a valid date:\n * var result = isDate(new Date())\n * //=> true\n *\n * @example\n * // For an invalid date:\n * var result = isDate(new Date(NaN))\n * //=> true\n *\n * @example\n * // For some value:\n * var result = isDate('2014-02-31')\n * //=> false\n *\n * @example\n * // For an object:\n * var result = isDate({})\n * //=> false\n */\nfunction isDate(value) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return (\n value instanceof Date ||\n (typeof value === 'object' &&\n Object.prototype.toString.call(value) === '[object Date]')\n )\n}\n\n\n/***/ }),\n/* 401 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isEqual; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isEqual\n * @category Common Helpers\n * @summary Are the given dates equal?\n *\n * @description\n * Are the given dates equal?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to compare\n * @param {Date|Number} dateRight - the second date to compare\n * @returns {Boolean} the dates are equal\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 July 2014 06:30:45.000 and 2 July 2014 06:30:45.500 equal?\n * var result = isEqual(\n * new Date(2014, 6, 2, 6, 30, 45, 0),\n * new Date(2014, 6, 2, 6, 30, 45, 500)\n * )\n * //=> false\n */\nfunction isEqual(dirtyLeftDate, dirtyRightDate) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyLeftDate)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyRightDate)\n return dateLeft.getTime() === dateRight.getTime()\n}\n\n\n/***/ }),\n/* 402 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isFirstDayOfMonth; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isFirstDayOfMonth\n * @category Month Helpers\n * @summary Is the given date the first day of a month?\n *\n * @description\n * Is the given date the first day of a month?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is the first day of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 1 September 2014 the first day of a month?\n * var result = isFirstDayOfMonth(new Date(2014, 8, 1))\n * //=> true\n */\nfunction isFirstDayOfMonth(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate).getDate() === 1\n}\n\n\n/***/ }),\n/* 403 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isFriday; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isFriday\n * @category Weekday Helpers\n * @summary Is the given date Friday?\n *\n * @description\n * Is the given date Friday?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is Friday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 26 September 2014 Friday?\n * var result = isFriday(new Date(2014, 8, 26))\n * //=> true\n */\nfunction isFriday(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate).getDay() === 5\n}\n\n\n/***/ }),\n/* 404 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isLastDayOfMonth; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _endOfDay_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(332);\n/* harmony import */ var _endOfMonth_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(328);\n\n\n\n\n/**\n * @name isLastDayOfMonth\n * @category Month Helpers\n * @summary Is the given date the last day of a month?\n *\n * @description\n * Is the given date the last day of a month?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is the last day of a month\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 28 February 2014 the last day of a month?\n * var result = isLastDayOfMonth(new Date(2014, 1, 28))\n * //=> true\n */\nfunction isLastDayOfMonth(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n return Object(_endOfDay_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date).getTime() === Object(_endOfMonth_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date).getTime()\n}\n\n\n/***/ }),\n/* 405 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isMonday; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isMonday\n * @category Weekday Helpers\n * @summary Is the given date Monday?\n *\n * @description\n * Is the given date Monday?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is Monday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 22 September 2014 Monday?\n * var result = isMonday(new Date(2014, 8, 22))\n * //=> true\n */\nfunction isMonday(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate).getDay() === 1\n}\n\n\n/***/ }),\n/* 406 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSameDay; });\n/* harmony import */ var _startOfDay_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(290);\n\n\n/**\n * @name isSameDay\n * @category Day Helpers\n * @summary Are the given dates in the same day?\n *\n * @description\n * Are the given dates in the same day?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same day\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 4 September 06:00:00 and 4 September 18:00:00 in the same day?\n * var result = isSameDay(new Date(2014, 8, 4, 6, 0), new Date(2014, 8, 4, 18, 0))\n * //=> true\n */\nfunction isSameDay(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeftStartOfDay = Object(_startOfDay_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRightStartOfDay = Object(_startOfDay_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n return dateLeftStartOfDay.getTime() === dateRightStartOfDay.getTime()\n}\n\n\n/***/ }),\n/* 407 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSameHour; });\n/* harmony import */ var _startOfHour_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(408);\n\n\n/**\n * @name isSameHour\n * @category Hour Helpers\n * @summary Are the given dates in the same hour?\n *\n * @description\n * Are the given dates in the same hour?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same hour\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 4 September 2014 06:00:00 and 4 September 06:30:00 in the same hour?\n * var result = isSameHour(new Date(2014, 8, 4, 6, 0), new Date(2014, 8, 4, 6, 30))\n * //=> true\n */\nfunction isSameHour(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeftStartOfHour = Object(_startOfHour_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRightStartOfHour = Object(_startOfHour_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n return dateLeftStartOfHour.getTime() === dateRightStartOfHour.getTime()\n}\n\n\n/***/ }),\n/* 408 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfHour; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name startOfHour\n * @category Hour Helpers\n * @summary Return the start of an hour for the given date.\n *\n * @description\n * Return the start of an hour for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of an hour\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of an hour for 2 September 2014 11:55:00:\n * var result = startOfHour(new Date(2014, 8, 2, 11, 55))\n * //=> Tue Sep 02 2014 11:00:00\n */\nfunction startOfHour(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n date.setMinutes(0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 409 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSameISOWeek; });\n/* harmony import */ var _isSameWeek_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(410);\n\n\n/**\n * @name isSameISOWeek\n * @category ISO Week Helpers\n * @summary Are the given dates in the same ISO week?\n *\n * @description\n * Are the given dates in the same ISO week?\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same ISO week\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 1 September 2014 and 7 September 2014 in the same ISO week?\n * var result = isSameISOWeek(new Date(2014, 8, 1), new Date(2014, 8, 7))\n * //=> true\n */\nfunction isSameISOWeek(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_isSameWeek_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft, dirtyDateRight, { weekStartsOn: 1 })\n}\n\n\n/***/ }),\n/* 410 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSameWeek; });\n/* harmony import */ var _startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(285);\n\n\n/**\n * @name isSameWeek\n * @category Week Helpers\n * @summary Are the given dates in the same week?\n *\n * @description\n * Are the given dates in the same week?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {Boolean} the dates are in the same week\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // Are 31 August 2014 and 4 September 2014 in the same week?\n * var result = isSameWeek(new Date(2014, 7, 31), new Date(2014, 8, 4))\n * //=> true\n *\n * @example\n * // If week starts with Monday,\n * // are 31 August 2014 and 4 September 2014 in the same week?\n * var result = isSameWeek(new Date(2014, 7, 31), new Date(2014, 8, 4), {\n * weekStartsOn: 1\n * })\n * //=> false\n */\nfunction isSameWeek(\n dirtyDateLeft,\n dirtyDateRight,\n dirtyOptions\n) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeftStartOfWeek = Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft, dirtyOptions)\n var dateRightStartOfWeek = Object(_startOfWeek_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight, dirtyOptions)\n\n return dateLeftStartOfWeek.getTime() === dateRightStartOfWeek.getTime()\n}\n\n\n/***/ }),\n/* 411 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSameISOWeekYear; });\n/* harmony import */ var _startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(287);\n\n\n/**\n * @name isSameISOWeekYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Are the given dates in the same ISO week-numbering year?\n *\n * @description\n * Are the given dates in the same ISO week-numbering year?\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `isSameISOYear` to `isSameISOWeekYear`.\n * \"ISO week year\" is short for [ISO week-numbering year](https://en.wikipedia.org/wiki/ISO_week_date).\n * This change makes the name consistent with\n * locale-dependent week-numbering year helpers, e.g., `getWeekYear`.\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same ISO week-numbering year\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 29 December 2003 and 2 January 2005 in the same ISO week-numbering year?\n * var result = isSameISOWeekYear(new Date(2003, 11, 29), new Date(2005, 0, 2))\n * //=> true\n */\nfunction isSameISOWeekYear(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeftStartOfYear = Object(_startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRightStartOfYear = Object(_startOfISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n return dateLeftStartOfYear.getTime() === dateRightStartOfYear.getTime()\n}\n\n\n/***/ }),\n/* 412 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSameMinute; });\n/* harmony import */ var _startOfMinute_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(413);\n\n\n/**\n * @name isSameMinute\n * @category Minute Helpers\n * @summary Are the given dates in the same minute?\n *\n * @description\n * Are the given dates in the same minute?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same minute\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 4 September 2014 06:30:00 and 4 September 2014 06:30:15\n * // in the same minute?\n * var result = isSameMinute(\n * new Date(2014, 8, 4, 6, 30),\n * new Date(2014, 8, 4, 6, 30, 15)\n * )\n * //=> true\n */\nfunction isSameMinute(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeftStartOfMinute = Object(_startOfMinute_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRightStartOfMinute = Object(_startOfMinute_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n return dateLeftStartOfMinute.getTime() === dateRightStartOfMinute.getTime()\n}\n\n\n/***/ }),\n/* 413 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfMinute; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name startOfMinute\n * @category Minute Helpers\n * @summary Return the start of a minute for the given date.\n *\n * @description\n * Return the start of a minute for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a minute\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a minute for 1 December 2014 22:15:45.400:\n * var result = startOfMinute(new Date(2014, 11, 1, 22, 15, 45, 400))\n * //=> Mon Dec 01 2014 22:15:00\n */\nfunction startOfMinute(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n date.setSeconds(0, 0)\n return date\n}\n\n\n/***/ }),\n/* 414 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSameMonth; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isSameMonth\n * @category Month Helpers\n * @summary Are the given dates in the same month?\n *\n * @description\n * Are the given dates in the same month?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same month\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 September 2014 and 25 September 2014 in the same month?\n * var result = isSameMonth(new Date(2014, 8, 2), new Date(2014, 8, 25))\n * //=> true\n */\nfunction isSameMonth(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n return (\n dateLeft.getFullYear() === dateRight.getFullYear() &&\n dateLeft.getMonth() === dateRight.getMonth()\n )\n}\n\n\n/***/ }),\n/* 415 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSameQuarter; });\n/* harmony import */ var _startOfQuarter_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(416);\n\n\n/**\n * @name isSameQuarter\n * @category Quarter Helpers\n * @summary Are the given dates in the same year quarter?\n *\n * @description\n * Are the given dates in the same year quarter?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same quarter\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 1 January 2014 and 8 March 2014 in the same quarter?\n * var result = isSameQuarter(new Date(2014, 0, 1), new Date(2014, 2, 8))\n * //=> true\n */\nfunction isSameQuarter(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeftStartOfQuarter = Object(_startOfQuarter_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRightStartOfQuarter = Object(_startOfQuarter_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n return dateLeftStartOfQuarter.getTime() === dateRightStartOfQuarter.getTime()\n}\n\n\n/***/ }),\n/* 416 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfQuarter; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name startOfQuarter\n * @category Quarter Helpers\n * @summary Return the start of a year quarter for the given date.\n *\n * @description\n * Return the start of a year quarter for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a quarter\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a quarter for 2 September 2014 11:55:00:\n * var result = startOfQuarter(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Jul 01 2014 00:00:00\n */\nfunction startOfQuarter(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var currentMonth = date.getMonth()\n var month = currentMonth - (currentMonth % 3)\n date.setMonth(month, 1)\n date.setHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 417 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSameSecond; });\n/* harmony import */ var _startOfSecond_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(418);\n\n\n/**\n * @name isSameSecond\n * @category Second Helpers\n * @summary Are the given dates in the same second?\n *\n * @description\n * Are the given dates in the same second?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same second\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 4 September 2014 06:30:15.000 and 4 September 2014 06:30.15.500\n * // in the same second?\n * var result = isSameSecond(\n * new Date(2014, 8, 4, 6, 30, 15),\n * new Date(2014, 8, 4, 6, 30, 15, 500)\n * )\n * //=> true\n */\nfunction isSameSecond(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeftStartOfSecond = Object(_startOfSecond_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRightStartOfSecond = Object(_startOfSecond_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n\n return dateLeftStartOfSecond.getTime() === dateRightStartOfSecond.getTime()\n}\n\n\n/***/ }),\n/* 418 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfSecond; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name startOfSecond\n * @category Second Helpers\n * @summary Return the start of a second for the given date.\n *\n * @description\n * Return the start of a second for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a second\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a second for 1 December 2014 22:15:45.400:\n * var result = startOfSecond(new Date(2014, 11, 1, 22, 15, 45, 400))\n * //=> Mon Dec 01 2014 22:15:45.000\n */\nfunction startOfSecond(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n date.setMilliseconds(0)\n return date\n}\n\n\n/***/ }),\n/* 419 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSameYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isSameYear\n * @category Year Helpers\n * @summary Are the given dates in the same year?\n *\n * @description\n * Are the given dates in the same year?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} dateLeft - the first date to check\n * @param {Date|Number} dateRight - the second date to check\n * @returns {Boolean} the dates are in the same year\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Are 2 September 2014 and 25 September 2014 in the same year?\n * var result = isSameYear(new Date(2014, 8, 2), new Date(2014, 8, 25))\n * //=> true\n */\nfunction isSameYear(dirtyDateLeft, dirtyDateRight) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateLeft = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateLeft)\n var dateRight = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDateRight)\n return dateLeft.getFullYear() === dateRight.getFullYear()\n}\n\n\n/***/ }),\n/* 420 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isSaturday; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isSaturday\n * @category Weekday Helpers\n * @summary Is the given date Saturday?\n *\n * @description\n * Is the given date Saturday?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is Saturday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 27 September 2014 Saturday?\n * var result = isSaturday(new Date(2014, 8, 27))\n * //=> true\n */\nfunction isSaturday(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate).getDay() === 6\n}\n\n\n/***/ }),\n/* 421 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isThursday; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isThursday\n * @category Weekday Helpers\n * @summary Is the given date Thursday?\n *\n * @description\n * Is the given date Thursday?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is Thursday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 25 September 2014 Thursday?\n * var result = isThursday(new Date(2014, 8, 25))\n * //=> true\n */\nfunction isThursday(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate).getDay() === 4\n}\n\n\n/***/ }),\n/* 422 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isTuesday; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isTuesday\n * @category Weekday Helpers\n * @summary Is the given date Tuesday?\n *\n * @description\n * Is the given date Tuesday?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is Tuesday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 23 September 2014 Tuesday?\n * var result = isTuesday(new Date(2014, 8, 23))\n * //=> true\n */\nfunction isTuesday(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate).getDay() === 2\n}\n\n\n/***/ }),\n/* 423 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isWednesday; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isWednesday\n * @category Weekday Helpers\n * @summary Is the given date Wednesday?\n *\n * @description\n * Is the given date Wednesday?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to check\n * @returns {Boolean} the date is Wednesday\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Is 24 September 2014 Wednesday?\n * var result = isWednesday(new Date(2014, 8, 24))\n * //=> true\n */\nfunction isWednesday(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate).getDay() === 3\n}\n\n\n/***/ }),\n/* 424 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return isWithinInterval; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name isWithinInterval\n * @category Interval Helpers\n * @summary Is the given date within the interval?\n *\n * @description\n * Is the given date within the interval?\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `isWithinRange` to `isWithinInterval`.\n * This change was made to mirror the use of the word \"interval\" in standard ISO 8601:2004 terminology:\n *\n * ```\n * 2.1.3\n * time interval\n * part of the time axis limited by two instants\n * ```\n *\n * Also, this function now accepts an object with `start` and `end` properties\n * instead of two arguments as an interval.\n * This function now throws `RangeError` if the start of the interval is after its end\n * or if any date in the interval is `Invalid Date`.\n *\n * ```javascript\n * // Before v2.0.0\n *\n * isWithinRange(\n * new Date(2014, 0, 3),\n * new Date(2014, 0, 1), new Date(2014, 0, 7)\n * )\n *\n * // v2.0.0 onward\n *\n * isWithinInterval(\n * new Date(2014, 0, 3),\n * { start: new Date(2014, 0, 1), end: new Date(2014, 0, 7) }\n * )\n * ```\n *\n * @param {Date|Number} date - the date to check\n * @param {Interval} interval - the interval to check\n * @returns {Boolean} the date is within the interval\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} The start of an interval cannot be after its end\n * @throws {RangeError} Date in interval cannot be `Invalid Date`\n *\n * @example\n * // For the date within the interval:\n * isWithinInterval(new Date(2014, 0, 3), {\n * start: new Date(2014, 0, 1),\n * end: new Date(2014, 0, 7)\n * })\n * //=> true\n *\n * @example\n * // For the date outside of the interval:\n * isWithinInterval(new Date(2014, 0, 10), {\n * start: new Date(2014, 0, 1),\n * end: new Date(2014, 0, 7)\n * })\n * //=> false\n */\nfunction isWithinInterval(dirtyDate, dirtyInterval) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var interval = dirtyInterval || {}\n var time = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate).getTime()\n var startTime = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(interval.start).getTime()\n var endTime = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(interval.end).getTime()\n\n // Throw an exception if start date is after end date or if any date is `Invalid Date`\n if (!(startTime <= endTime)) {\n throw new RangeError('Invalid interval')\n }\n\n return time >= startTime && time <= endTime\n}\n\n\n/***/ }),\n/* 425 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return lastDayOfDecade; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name lastDayOfDecade\n * @category Decade Helpers\n * @summary Return the last day of a decade for the given date.\n *\n * @description\n * Return the last day of a decade for the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the last day of a decade\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The last day of a decade for 21 December 2012 21:12:00:\n * var result = lastDayOfDecade(new Date(2012, 11, 21, 21, 12, 00))\n * //=> Wed Dec 31 2019 00:00:00\n */\nfunction lastDayOfDecade(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n var decade = 9 + Math.floor(year / 10) * 10\n date.setFullYear(decade + 1, 0, 0)\n date.setHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 426 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return lastDayOfISOWeek; });\n/* harmony import */ var _lastDayOfWeek_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(427);\n\n\n/**\n * @name lastDayOfISOWeek\n * @category ISO Week Helpers\n * @summary Return the last day of an ISO week for the given date.\n *\n * @description\n * Return the last day of an ISO week for the given date.\n * The result will be in the local timezone.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the last day of an ISO week\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The last day of an ISO week for 2 September 2014 11:55:00:\n * var result = lastDayOfISOWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sun Sep 07 2014 00:00:00\n */\nfunction lastDayOfISOWeek(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n return Object(_lastDayOfWeek_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate, { weekStartsOn: 1 })\n}\n\n\n/***/ }),\n/* 427 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return lastDayOfWeek; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name lastDayOfWeek\n * @category Week Helpers\n * @summary Return the last day of a week for the given date.\n *\n * @description\n * Return the last day of a week for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {Date} the last day of a week\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // The last day of a week for 2 September 2014 11:55:00:\n * var result = lastDayOfWeek(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Sat Sep 06 2014 00:00:00\n *\n * @example\n * // If the week starts on Monday, the last day of the week for 2 September 2014 11:55:00:\n * var result = lastDayOfWeek(new Date(2014, 8, 2, 11, 55, 0), { weekStartsOn: 1 })\n * //=> Sun Sep 07 2014 00:00:00\n */\nfunction lastDayOfWeek(dirtyDate, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeWeekStartsOn =\n locale && locale.options && locale.options.weekStartsOn\n var defaultWeekStartsOn =\n localeWeekStartsOn == null ? 0 : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeWeekStartsOn)\n var weekStartsOn =\n options.weekStartsOn == null\n ? defaultWeekStartsOn\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.weekStartsOn)\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6')\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var day = date.getDay()\n var diff = (day < weekStartsOn ? -7 : 0) + 6 - (day - weekStartsOn)\n\n date.setHours(0, 0, 0, 0)\n date.setDate(date.getDate() + diff)\n return date\n}\n\n\n/***/ }),\n/* 428 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return lastDayOfISOWeekYear; });\n/* harmony import */ var _getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(283);\n/* harmony import */ var _startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(284);\n\n\n\n/**\n * @name lastDayOfISOWeekYear\n * @category ISO Week-Numbering Year Helpers\n * @summary Return the last day of an ISO week-numbering year for the given date.\n *\n * @description\n * Return the last day of an ISO week-numbering year,\n * which always starts 3 days before the year's first Thursday.\n * The result will be in the local timezone.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The function was renamed from `lastDayOfISOYear` to `lastDayOfISOWeekYear`.\n * \"ISO week year\" is short for [ISO week-numbering year](https://en.wikipedia.org/wiki/ISO_week_date).\n * This change makes the name consistent with\n * locale-dependent week-numbering year helpers, e.g., `getWeekYear`.\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the end of an ISO week-numbering year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The last day of an ISO week-numbering year for 2 July 2005:\n * var result = lastDayOfISOWeekYear(new Date(2005, 6, 2))\n * //=> Sun Jan 01 2006 00:00:00\n */\nfunction lastDayOfISOWeekYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var year = Object(_getISOWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var fourthOfJanuary = new Date(0)\n fourthOfJanuary.setFullYear(year + 1, 0, 4)\n fourthOfJanuary.setHours(0, 0, 0, 0)\n var date = Object(_startOfISOWeek_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(fourthOfJanuary)\n date.setDate(date.getDate() - 1)\n return date\n}\n\n\n/***/ }),\n/* 429 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return lastDayOfQuarter; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name lastDayOfQuarter\n * @category Quarter Helpers\n * @summary Return the last day of a year quarter for the given date.\n *\n * @description\n * Return the last day of a year quarter for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2} [options.additionalDigits=2] - passed to `toDate`. See [toDate]{@link https://date-fns.org/docs/toDate}\n * @returns {Date} the last day of a quarter\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.additionalDigits` must be 0, 1 or 2\n *\n * @example\n * // The last day of a quarter for 2 September 2014 11:55:00:\n * var result = lastDayOfQuarter(new Date(2014, 8, 2, 11, 55, 0))\n * //=> Tue Sep 30 2014 00:00:00\n */\nfunction lastDayOfQuarter(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var currentMonth = date.getMonth()\n var month = currentMonth - (currentMonth % 3) + 3\n date.setMonth(month, 0)\n date.setHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 430 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return lastDayOfYear; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name lastDayOfYear\n * @category Year Helpers\n * @summary Return the last day of a year for the given date.\n *\n * @description\n * Return the last day of a year for the given date.\n * The result will be in the local timezone.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the last day of a year\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The last day of a year for 2 September 2014 11:55:00:\n * var result = lastDayOfYear(new Date(2014, 8, 2, 11, 55, 00))\n * //=> Wed Dec 31 2014 00:00:00\n */\nfunction lastDayOfYear(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n date.setFullYear(year + 1, 0, 0)\n date.setHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 431 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return lightFormat; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _lib_format_lightFormatters_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(354);\n/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(289);\n/* harmony import */ var _isValid_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(342);\n/* harmony import */ var _subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(366);\n\n\n\n\n\n\n// This RegExp consists of three parts separated by `|`:\n// - (\\w)\\1* matches any sequences of the same letter\n// - '' matches two quote characters in a row\n// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),\n// except a single quote symbol, which ends the sequence.\n// Two quote characters do not end the sequence.\n// If there is no matching single quote\n// then the sequence will continue until the end of the string.\n// - . matches any single character unmatched by previous parts of the RegExps\nvar formattingTokensRegExp = /(\\w)\\1*|''|'(''|[^'])+('|$)|./g\n\nvar escapedStringRegExp = /^'(.*?)'?$/\nvar doubleQuoteRegExp = /''/g\n\n/**\n * @name lightFormat\n * @category Common Helpers\n * @summary Format the date.\n *\n * @description\n * Return the formatted date string in the given format. Unlike `format`,\n * `lightFormat` doesn't use locales and outputs date using the most popular tokens.\n *\n * > ⚠️ Please note that the `lightFormat` tokens differ from Moment.js and other libraries.\n * > See: https://git.io/fxCyr\n *\n * The characters wrapped between two single quotes characters (') are escaped.\n * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.\n * (see the last example)\n *\n * Format of the string is based on Unicode Technical Standard #35:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * with a few additions (see note 7 below the table).\n *\n * Accepted patterns:\n * | Unit | Pattern | Result examples |\n * |---------------------------------|---------|-----------------------------------|\n * | AM, PM | a..aaa | AM, PM |\n * | | aaaa | a.m., p.m. |\n * | | aaaaa | a, p |\n * | Calendar year | y | 44, 1, 1900, 2017 |\n * | | yy | 44, 01, 00, 17 |\n * | | yyy | 044, 001, 000, 017 |\n * | | yyyy | 0044, 0001, 1900, 2017 |\n * | Month (formatting) | M | 1, 2, ..., 12 |\n * | | MM | 01, 02, ..., 12 |\n * | Day of month | d | 1, 2, ..., 31 |\n * | | dd | 01, 02, ..., 31 |\n * | Hour [1-12] | h | 1, 2, ..., 11, 12 |\n * | | hh | 01, 02, ..., 11, 12 |\n * | Hour [0-23] | H | 0, 1, 2, ..., 23 |\n * | | HH | 00, 01, 02, ..., 23 |\n * | Minute | m | 0, 1, ..., 59 |\n * | | mm | 00, 01, ..., 59 |\n * | Second | s | 0, 1, ..., 59 |\n * | | ss | 00, 01, ..., 59 |\n * | Timezone (ISO-8601 w/ Z) | X | -08, +0530, Z |\n * | | XX | -0800, +0530, Z |\n * | | XXX | -08:00, +05:30, Z |\n * | | XXXX | -0800, +0530, Z, +123456 |\n * | | XXXXX | -08:00, +05:30, Z, +12:34:56 |\n * | Timezone (ISO-8601 w/o Z) | x | -08, +0530, +00 |\n * | | xx | -0800, +0530, +0000 |\n * | | xxx | -08:00, +05:30, +00:00 |\n * | | xxxx | -0800, +0530, +0000, +123456 |\n * | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 |\n *\n * @param {Date|Number} date - the original date\n * @param {String} format - the string of tokens\n * @returns {String} the formatted date string\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * var result = format(new Date(2014, 1, 11), 'yyyy-MM-dd')\n * //=> '1987-02-11'\n */\nfunction lightFormat(dirtyDate, dirtyFormatStr) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var formatStr = String(dirtyFormatStr)\n\n var originalDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n\n if (!Object(_isValid_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(originalDate)) {\n throw new RangeError('Invalid time value')\n }\n\n // Convert the date in system timezone to the same date in UTC+00:00 timezone.\n // This ensures that when UTC functions will be implemented, locales will be compatible with them.\n // See an issue about UTC functions: https://github.com/date-fns/date-fns/issues/376\n var timezoneOffset = Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(originalDate)\n var utcDate = Object(_subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(originalDate, timezoneOffset)\n\n var result = formatStr\n .match(formattingTokensRegExp)\n .map(function(substring) {\n // Replace two single quote characters with one single quote character\n if (substring === \"''\") {\n return \"'\"\n }\n\n var firstCharacter = substring[0]\n if (firstCharacter === \"'\") {\n return cleanEscapedString(substring)\n }\n\n var formatter = _lib_format_lightFormatters_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"][firstCharacter]\n if (formatter) {\n return formatter(utcDate, substring, null, {})\n }\n\n return substring\n })\n .join('')\n\n return result\n}\n\nfunction cleanEscapedString(input) {\n return input.match(escapedStringRegExp)[1].replace(doubleQuoteRegExp, \"'\")\n}\n\n\n/***/ }),\n/* 432 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return max; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name max\n * @category Common Helpers\n * @summary Return the latest of the given dates.\n *\n * @description\n * Return the latest of the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - `max` function now accepts an array of dates rather than spread arguments.\n *\n * ```javascript\n * // Before v2.0.0\n * var date1 = new Date(1989, 6, 10)\n * var date2 = new Date(1987, 1, 11)\n * var maxDate = max(date1, date2)\n *\n * // v2.0.0 onward:\n * var dates = [new Date(1989, 6, 10), new Date(1987, 1, 11)]\n * var maxDate = max(dates)\n * ```\n *\n * @param {Date[]|Number[]} datesArray - the dates to compare\n * @returns {Date} the latest of the dates\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which of these dates is the latest?\n * var result = max([\n * new Date(1989, 6, 10),\n * new Date(1987, 1, 11),\n * new Date(1995, 6, 2),\n * new Date(1990, 0, 1)\n * ])\n * //=> Sun Jul 02 1995 00:00:00\n */\nfunction max(dirtyDatesArray) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var datesArray\n // `dirtyDatesArray` is undefined or null\n if (dirtyDatesArray == null) {\n datesArray = []\n\n // `dirtyDatesArray` is Array, Set or Map, or object with custom `forEach` method\n } else if (typeof dirtyDatesArray.forEach === 'function') {\n datesArray = dirtyDatesArray\n\n // If `dirtyDatesArray` is Array-like Object, convert to Array. Otherwise, make it empty Array\n } else {\n datesArray = Array.prototype.slice.call(dirtyDatesArray)\n }\n\n var result\n datesArray.forEach(function(dirtyDate) {\n var currentDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n\n if (result === undefined || result < currentDate || isNaN(currentDate)) {\n result = currentDate\n }\n })\n\n return result\n}\n\n\n/***/ }),\n/* 433 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return min; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name min\n * @category Common Helpers\n * @summary Return the earliest of the given dates.\n *\n * @description\n * Return the earliest of the given dates.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - `min` function now accepts an array of dates rather than spread arguments.\n *\n * ```javascript\n * // Before v2.0.0\n * var date1 = new Date(1989, 6, 10)\n * var date2 = new Date(1987, 1, 11)\n * var minDate = min(date1, date2)\n *\n * // v2.0.0 onward:\n * var dates = [new Date(1989, 6, 10), new Date(1987, 1, 11)]\n * var minDate = min(dates)\n * ```\n *\n * @param {Date[]|Number[]} datesArray - the dates to compare\n * @returns {Date} the earliest of the dates\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // Which of these dates is the earliest?\n * var result = min([\n * new Date(1989, 6, 10),\n * new Date(1987, 1, 11),\n * new Date(1995, 6, 2),\n * new Date(1990, 0, 1)\n * ])\n * //=> Wed Feb 11 1987 00:00:00\n */\nfunction min(dirtyDatesArray) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var datesArray\n // `dirtyDatesArray` is undefined or null\n if (dirtyDatesArray == null) {\n datesArray = []\n\n // `dirtyDatesArray` is Array, Set or Map, or object with custom `forEach` method\n } else if (typeof dirtyDatesArray.forEach === 'function') {\n datesArray = dirtyDatesArray\n\n // If `dirtyDatesArray` is Array-like Object, convert to Array. Otherwise, make it empty Array\n } else {\n datesArray = Array.prototype.slice.call(dirtyDatesArray)\n }\n\n var result\n datesArray.forEach(function(dirtyDate) {\n var currentDate = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n\n if (result === undefined || result > currentDate || isNaN(currentDate)) {\n result = currentDate\n }\n })\n\n return result\n}\n\n\n/***/ }),\n/* 434 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return parse; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _lib_assign_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(370);\n/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(289);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(279);\n/* harmony import */ var _subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(366);\n/* harmony import */ var _locale_en_US_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(343);\n/* harmony import */ var _lib_parsers_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(435);\n/* harmony import */ var _lib_protectedTokens_index_js__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(367);\n\n\n\n\n\n\n\n\n\nvar TIMEZONE_UNIT_PRIORITY = 10\n\n// This RegExp consists of three parts separated by `|`:\n// - [yYQqMLwIdDecihHKkms]o matches any available ordinal number token\n// (one of the certain letters followed by `o`)\n// - (\\w)\\1* matches any sequences of the same letter\n// - '' matches two quote characters in a row\n// - '(''|[^'])+('|$) matches anything surrounded by two quote characters ('),\n// except a single quote symbol, which ends the sequence.\n// Two quote characters do not end the sequence.\n// If there is no matching single quote\n// then the sequence will continue until the end of the string.\n// - . matches any single character unmatched by previous parts of the RegExps\nvar formattingTokensRegExp = /[yYQqMLwIdDecihHKkms]o|(\\w)\\1*|''|'(''|[^'])+('|$)|./g\n\nvar escapedStringRegExp = /^'(.*?)'?$/\nvar doubleQuoteRegExp = /''/g\n\nvar notWhitespaceRegExp = /\\S/\n\n/**\n * @name parse\n * @category Common Helpers\n * @summary Parse the date.\n *\n * @description\n * Return the date parsed from string using the given format string.\n *\n * > ⚠️ Please note that the `format` tokens differ from Moment.js and other libraries.\n * > See: https://git.io/fxCyr\n *\n * The characters in the format string wrapped between two single quotes characters (') are escaped.\n * Two single quotes in a row, whether inside or outside a quoted sequence, represent a 'real' single quote.\n *\n * Format of the format string is based on Unicode Technical Standard #35:\n * https://www.unicode.org/reports/tr35/tr35-dates.html#Date_Field_Symbol_Table\n * with a few additions (see note 5 below the table).\n *\n * Accepted format string patterns:\n * | Unit |Prior| Pattern | Result examples | Notes |\n * |---------------------------------|-----|---------|-----------------------------------|-------|\n * | Era | 140 | G..GGG | AD, BC | |\n * | | | GGGG | Anno Domini, Before Christ | 2 |\n * | | | GGGGG | A, B | |\n * | Calendar year | 130 | y | 44, 1, 1900, 2017, 9999 | 4 |\n * | | | yo | 44th, 1st, 1900th, 9999999th | 4,5 |\n * | | | yy | 44, 01, 00, 17 | 4 |\n * | | | yyy | 044, 001, 123, 999 | 4 |\n * | | | yyyy | 0044, 0001, 1900, 2017 | 4 |\n * | | | yyyyy | ... | 2,4 |\n * | Local week-numbering year | 130 | Y | 44, 1, 1900, 2017, 9000 | 4 |\n * | | | Yo | 44th, 1st, 1900th, 9999999th | 4,5 |\n * | | | YY | 44, 01, 00, 17 | 4,6 |\n * | | | YYY | 044, 001, 123, 999 | 4 |\n * | | | YYYY | 0044, 0001, 1900, 2017 | 4,6 |\n * | | | YYYYY | ... | 2,4 |\n * | ISO week-numbering year | 130 | R | -43, 1, 1900, 2017, 9999, -9999 | 4,5 |\n * | | | RR | -43, 01, 00, 17 | 4,5 |\n * | | | RRR | -043, 001, 123, 999, -999 | 4,5 |\n * | | | RRRR | -0043, 0001, 2017, 9999, -9999 | 4,5 |\n * | | | RRRRR | ... | 2,4,5 |\n * | Extended year | 130 | u | -43, 1, 1900, 2017, 9999, -999 | 4 |\n * | | | uu | -43, 01, 99, -99 | 4 |\n * | | | uuu | -043, 001, 123, 999, -999 | 4 |\n * | | | uuuu | -0043, 0001, 2017, 9999, -9999 | 4 |\n * | | | uuuuu | ... | 2,4 |\n * | Quarter (formatting) | 120 | Q | 1, 2, 3, 4 | |\n * | | | Qo | 1st, 2nd, 3rd, 4th | 5 |\n * | | | QQ | 01, 02, 03, 04 | |\n * | | | QQQ | Q1, Q2, Q3, Q4 | |\n * | | | QQQQ | 1st quarter, 2nd quarter, ... | 2 |\n * | | | QQQQQ | 1, 2, 3, 4 | 4 |\n * | Quarter (stand-alone) | 120 | q | 1, 2, 3, 4 | |\n * | | | qo | 1st, 2nd, 3rd, 4th | 5 |\n * | | | qq | 01, 02, 03, 04 | |\n * | | | qqq | Q1, Q2, Q3, Q4 | |\n * | | | qqqq | 1st quarter, 2nd quarter, ... | 2 |\n * | | | qqqqq | 1, 2, 3, 4 | 3 |\n * | Month (formatting) | 110 | M | 1, 2, ..., 12 | |\n * | | | Mo | 1st, 2nd, ..., 12th | 5 |\n * | | | MM | 01, 02, ..., 12 | |\n * | | | MMM | Jan, Feb, ..., Dec | |\n * | | | MMMM | January, February, ..., December | 2 |\n * | | | MMMMM | J, F, ..., D | |\n * | Month (stand-alone) | 110 | L | 1, 2, ..., 12 | |\n * | | | Lo | 1st, 2nd, ..., 12th | 5 |\n * | | | LL | 01, 02, ..., 12 | |\n * | | | LLL | Jan, Feb, ..., Dec | |\n * | | | LLLL | January, February, ..., December | 2 |\n * | | | LLLLL | J, F, ..., D | |\n * | Local week of year | 100 | w | 1, 2, ..., 53 | |\n * | | | wo | 1st, 2nd, ..., 53th | 5 |\n * | | | ww | 01, 02, ..., 53 | |\n * | ISO week of year | 100 | I | 1, 2, ..., 53 | 5 |\n * | | | Io | 1st, 2nd, ..., 53th | 5 |\n * | | | II | 01, 02, ..., 53 | 5 |\n * | Day of month | 90 | d | 1, 2, ..., 31 | |\n * | | | do | 1st, 2nd, ..., 31st | 5 |\n * | | | dd | 01, 02, ..., 31 | |\n * | Day of year | 90 | D | 1, 2, ..., 365, 366 | 6 |\n * | | | Do | 1st, 2nd, ..., 365th, 366th | 5 |\n * | | | DD | 01, 02, ..., 365, 366 | 6 |\n * | | | DDD | 001, 002, ..., 365, 366 | |\n * | | | DDDD | ... | 2 |\n * | Day of week (formatting) | 90 | E..EEE | Mon, Tue, Wed, ..., Su | |\n * | | | EEEE | Monday, Tuesday, ..., Sunday | 2 |\n * | | | EEEEE | M, T, W, T, F, S, S | |\n * | | | EEEEEE | Mo, Tu, We, Th, Fr, Su, Sa | |\n * | ISO day of week (formatting) | 90 | i | 1, 2, 3, ..., 7 | 5 |\n * | | | io | 1st, 2nd, ..., 7th | 5 |\n * | | | ii | 01, 02, ..., 07 | 5 |\n * | | | iii | Mon, Tue, Wed, ..., Su | 5 |\n * | | | iiii | Monday, Tuesday, ..., Sunday | 2,5 |\n * | | | iiiii | M, T, W, T, F, S, S | 5 |\n * | | | iiiiii | Mo, Tu, We, Th, Fr, Su, Sa | 5 |\n * | Local day of week (formatting) | 90 | e | 2, 3, 4, ..., 1 | |\n * | | | eo | 2nd, 3rd, ..., 1st | 5 |\n * | | | ee | 02, 03, ..., 01 | |\n * | | | eee | Mon, Tue, Wed, ..., Su | |\n * | | | eeee | Monday, Tuesday, ..., Sunday | 2 |\n * | | | eeeee | M, T, W, T, F, S, S | |\n * | | | eeeeee | Mo, Tu, We, Th, Fr, Su, Sa | |\n * | Local day of week (stand-alone) | 90 | c | 2, 3, 4, ..., 1 | |\n * | | | co | 2nd, 3rd, ..., 1st | 5 |\n * | | | cc | 02, 03, ..., 01 | |\n * | | | ccc | Mon, Tue, Wed, ..., Su | |\n * | | | cccc | Monday, Tuesday, ..., Sunday | 2 |\n * | | | ccccc | M, T, W, T, F, S, S | |\n * | | | cccccc | Mo, Tu, We, Th, Fr, Su, Sa | |\n * | AM, PM | 80 | a..aaa | AM, PM | |\n * | | | aaaa | a.m., p.m. | 2 |\n * | | | aaaaa | a, p | |\n * | AM, PM, noon, midnight | 80 | b..bbb | AM, PM, noon, midnight | |\n * | | | bbbb | a.m., p.m., noon, midnight | 2 |\n * | | | bbbbb | a, p, n, mi | |\n * | Flexible day period | 80 | B..BBB | at night, in the morning, ... | |\n * | | | BBBB | at night, in the morning, ... | 2 |\n * | | | BBBBB | at night, in the morning, ... | |\n * | Hour [1-12] | 70 | h | 1, 2, ..., 11, 12 | |\n * | | | ho | 1st, 2nd, ..., 11th, 12th | 5 |\n * | | | hh | 01, 02, ..., 11, 12 | |\n * | Hour [0-23] | 70 | H | 0, 1, 2, ..., 23 | |\n * | | | Ho | 0th, 1st, 2nd, ..., 23rd | 5 |\n * | | | HH | 00, 01, 02, ..., 23 | |\n * | Hour [0-11] | 70 | K | 1, 2, ..., 11, 0 | |\n * | | | Ko | 1st, 2nd, ..., 11th, 0th | 5 |\n * | | | KK | 1, 2, ..., 11, 0 | |\n * | Hour [1-24] | 70 | k | 24, 1, 2, ..., 23 | |\n * | | | ko | 24th, 1st, 2nd, ..., 23rd | 5 |\n * | | | kk | 24, 01, 02, ..., 23 | |\n * | Minute | 60 | m | 0, 1, ..., 59 | |\n * | | | mo | 0th, 1st, ..., 59th | 5 |\n * | | | mm | 00, 01, ..., 59 | |\n * | Second | 50 | s | 0, 1, ..., 59 | |\n * | | | so | 0th, 1st, ..., 59th | 5 |\n * | | | ss | 00, 01, ..., 59 | |\n * | Seconds timestamp | 40 | t | 512969520 | |\n * | | | tt | ... | 2 |\n * | Fraction of second | 30 | S | 0, 1, ..., 9 | |\n * | | | SS | 00, 01, ..., 99 | |\n * | | | SSS | 000, 0001, ..., 999 | |\n * | | | SSSS | ... | 2 |\n * | Milliseconds timestamp | 20 | T | 512969520900 | |\n * | | | TT | ... | 2 |\n * | Timezone (ISO-8601 w/ Z) | 10 | X | -08, +0530, Z | |\n * | | | XX | -0800, +0530, Z | |\n * | | | XXX | -08:00, +05:30, Z | |\n * | | | XXXX | -0800, +0530, Z, +123456 | 2 |\n * | | | XXXXX | -08:00, +05:30, Z, +12:34:56 | |\n * | Timezone (ISO-8601 w/o Z) | 10 | x | -08, +0530, +00 | |\n * | | | xx | -0800, +0530, +0000 | |\n * | | | xxx | -08:00, +05:30, +00:00 | 2 |\n * | | | xxxx | -0800, +0530, +0000, +123456 | |\n * | | | xxxxx | -08:00, +05:30, +00:00, +12:34:56 | |\n * Notes:\n * 1. \"Formatting\" units (e.g. formatting quarter) in the default en-US locale\n * are the same as \"stand-alone\" units, but are different in some languages.\n * \"Formatting\" units are declined according to the rules of the language\n * in the context of a date. \"Stand-alone\" units are always nominative singular.\n * In `format` function, they will produce different result:\n *\n * `format(new Date(2017, 10, 6), 'do LLLL', {locale: cs}) //=> '6. listopad'`\n *\n * `format(new Date(2017, 10, 6), 'do MMMM', {locale: cs}) //=> '6. listopadu'`\n *\n * `parse` will try to match both formatting and stand-alone units interchangably.\n *\n * 2. Any sequence of the identical letters is a pattern, unless it is escaped by\n * the single quote characters (see below).\n * If the sequence is longer than listed in table:\n * - for numerical units (`yyyyyyyy`) `parse` will try to match a number\n * as wide as the sequence\n * - for text units (`MMMMMMMM`) `parse` will try to match the widest variation of the unit.\n * These variations are marked with \"2\" in the last column of the table.\n *\n * 3. `QQQQQ` and `qqqqq` could be not strictly numerical in some locales.\n * These tokens represent the shortest form of the quarter.\n *\n * 4. The main difference between `y` and `u` patterns are B.C. years:\n *\n * | Year | `y` | `u` |\n * |------|-----|-----|\n * | AC 1 | 1 | 1 |\n * | BC 1 | 1 | 0 |\n * | BC 2 | 2 | -1 |\n *\n * Also `yy` will try to guess the century of two digit year by proximity with `baseDate`:\n *\n * `parse('50', 'yy', new Date(2018, 0, 1)) //=> Sat Jan 01 2050 00:00:00`\n *\n * `parse('75', 'yy', new Date(2018, 0, 1)) //=> Wed Jan 01 1975 00:00:00`\n *\n * while `uu` will just assign the year as is:\n *\n * `parse('50', 'uu', new Date(2018, 0, 1)) //=> Sat Jan 01 0050 00:00:00`\n *\n * `parse('75', 'uu', new Date(2018, 0, 1)) //=> Tue Jan 01 0075 00:00:00`\n *\n * The same difference is true for local and ISO week-numbering years (`Y` and `R`),\n * except local week-numbering years are dependent on `options.weekStartsOn`\n * and `options.firstWeekContainsDate` (compare [setISOWeekYear]{@link https://date-fns.org/docs/setISOWeekYear}\n * and [setWeekYear]{@link https://date-fns.org/docs/setWeekYear}).\n *\n * 5. These patterns are not in the Unicode Technical Standard #35:\n * - `i`: ISO day of week\n * - `I`: ISO week of year\n * - `R`: ISO week-numbering year\n * - `o`: ordinal number modifier\n *\n * 6. These tokens are often confused with others. See: https://git.io/fxCyr\n *\n * Values will be assigned to the date in the descending order of its unit's priority.\n * Units of an equal priority overwrite each other in the order of appearance.\n *\n * If no values of higher priority are parsed (e.g. when parsing string 'January 1st' without a year),\n * the values will be taken from 3rd argument `baseDate` which works as a context of parsing.\n *\n * `baseDate` must be passed for correct work of the function.\n * If you're not sure which `baseDate` to supply, create a new instance of Date:\n * `parse('02/11/2014', 'MM/dd/yyyy', new Date())`\n * In this case parsing will be done in the context of the current date.\n * If `baseDate` is `Invalid Date` or a value not convertible to valid `Date`,\n * then `Invalid Date` will be returned.\n *\n * The result may vary by locale.\n *\n * If `formatString` matches with `dateString` but does not provides tokens, `baseDate` will be returned.\n *\n * If parsing failed, `Invalid Date` will be returned.\n * Invalid Date is a Date, whose time value is NaN.\n * Time value of Date: http://es5.github.io/#x15.9.1.1\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - Old `parse` was renamed to `toDate`.\n * Now `parse` is a new function which parses a string using a provided format.\n *\n * ```javascript\n * // Before v2.0.0\n * parse('2016-01-01')\n *\n * // v2.0.0 onward\n * toDate('2016-01-01')\n * parse('2016-01-01', 'yyyy-MM-dd', new Date())\n * ```\n *\n * @param {String} dateString - the string to parse\n * @param {String} formatString - the string of tokens\n * @param {Date|Number} baseDate - defines values missing from the parsed dateString\n * @param {Object} [options] - an object with options.\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {1|2|3|4|5|6|7} [options.firstWeekContainsDate=1] - the day of January, which is always in the first week of the year\n * @param {Boolean} [options.awareOfUnicodeTokens=false] - if true, allows usage of Unicode tokens causes confusion:\n * - Some of the day of year tokens (`D`, `DD`) that are confused with the day of month tokens (`d`, `dd`).\n * - Some of the local week-numbering year tokens (`YY`, `YYYY`) that are confused with the calendar year tokens (`yy`, `yyyy`).\n * See: https://git.io/fxCyr\n * @returns {Date} the parsed date\n * @throws {TypeError} 3 arguments required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n * @throws {RangeError} `options.locale` must contain `match` property\n * @throws {RangeError} `options.awareOfUnicodeTokens` must be set to `true` to use `XX` token; see: https://git.io/fxCyr\n *\n * @example\n * // Parse 11 February 2014 from middle-endian format:\n * var result = parse('02/11/2014', 'MM/dd/yyyy', new Date())\n * //=> Tue Feb 11 2014 00:00:00\n *\n * @example\n * // Parse 28th of February in Esperanto locale in the context of 2010 year:\n * import eo from 'date-fns/locale/eo'\n * var result = parse('28-a de februaro', \"do 'de' MMMM\", new Date(2010, 0, 1), {\n * locale: eo\n * })\n * //=> Sun Feb 28 2010 00:00:00\n */\nfunction parse(\n dirtyDateString,\n dirtyFormatString,\n dirtyBaseDate,\n dirtyOptions\n) {\n if (arguments.length < 3) {\n throw new TypeError(\n '3 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var dateString = String(dirtyDateString)\n var formatString = String(dirtyFormatString)\n var options = dirtyOptions || {}\n\n var locale = options.locale || _locale_en_US_index_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"]\n\n if (!locale.match) {\n throw new RangeError('locale must contain match property')\n }\n\n var localeFirstWeekContainsDate =\n locale.options && locale.options.firstWeekContainsDate\n var defaultFirstWeekContainsDate =\n localeFirstWeekContainsDate == null\n ? 1\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeFirstWeekContainsDate)\n var firstWeekContainsDate =\n options.firstWeekContainsDate == null\n ? defaultFirstWeekContainsDate\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.firstWeekContainsDate)\n\n // Test if weekStartsOn is between 1 and 7 _and_ is not NaN\n if (!(firstWeekContainsDate >= 1 && firstWeekContainsDate <= 7)) {\n throw new RangeError(\n 'firstWeekContainsDate must be between 1 and 7 inclusively'\n )\n }\n\n var localeWeekStartsOn = locale.options && locale.options.weekStartsOn\n var defaultWeekStartsOn =\n localeWeekStartsOn == null ? 0 : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeWeekStartsOn)\n var weekStartsOn =\n options.weekStartsOn == null\n ? defaultWeekStartsOn\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.weekStartsOn)\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively')\n }\n\n if (formatString === '') {\n if (dateString === '') {\n return Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(dirtyBaseDate)\n } else {\n return new Date(NaN)\n }\n }\n\n var subFnOptions = {\n firstWeekContainsDate: firstWeekContainsDate,\n weekStartsOn: weekStartsOn,\n locale: locale\n }\n\n // If timezone isn't specified, it will be set to the system timezone\n var setters = [\n {\n priority: TIMEZONE_UNIT_PRIORITY,\n set: dateToSystemTimezone,\n index: 0\n }\n ]\n\n var i\n\n var tokens = formatString.match(formattingTokensRegExp)\n\n for (i = 0; i < tokens.length; i++) {\n var token = tokens[i]\n\n if (!options.awareOfUnicodeTokens && Object(_lib_protectedTokens_index_js__WEBPACK_IMPORTED_MODULE_7__[\"isProtectedToken\"])(token)) {\n Object(_lib_protectedTokens_index_js__WEBPACK_IMPORTED_MODULE_7__[\"throwProtectedError\"])(token)\n }\n\n var firstCharacter = token[0]\n var parser = _lib_parsers_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"][firstCharacter]\n if (parser) {\n var parseResult = parser.parse(\n dateString,\n token,\n locale.match,\n subFnOptions\n )\n\n if (!parseResult) {\n return new Date(NaN)\n }\n\n setters.push({\n priority: parser.priority,\n set: parser.set,\n validate: parser.validate,\n value: parseResult.value,\n index: setters.length\n })\n\n dateString = parseResult.rest\n } else {\n // Replace two single quote characters with one single quote character\n if (token === \"''\") {\n token = \"'\"\n } else if (firstCharacter === \"'\") {\n token = cleanEscapedString(token)\n }\n\n // Cut token from string, or, if string doesn't match the token, return Invalid Date\n if (dateString.indexOf(token) === 0) {\n dateString = dateString.slice(token.length)\n } else {\n return new Date(NaN)\n }\n }\n }\n\n // Check if the remaining input contains something other than whitespace\n if (dateString.length > 0 && notWhitespaceRegExp.test(dateString)) {\n return new Date(NaN)\n }\n\n var uniquePrioritySetters = setters\n .map(function(setter) {\n return setter.priority\n })\n .sort(function(a, b) {\n return b - a\n })\n .filter(function(priority, index, array) {\n return array.indexOf(priority) === index\n })\n .map(function(priority) {\n return setters\n .filter(function(setter) {\n return setter.priority === priority\n })\n .reverse()\n })\n .map(function(setterArray) {\n return setterArray[0]\n })\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(dirtyBaseDate)\n\n if (isNaN(date)) {\n return new Date(NaN)\n }\n\n // Convert the date in system timezone to the same date in UTC+00:00 timezone.\n // This ensures that when UTC functions will be implemented, locales will be compatible with them.\n // See an issue about UTC functions: https://github.com/date-fns/date-fns/issues/37\n var utcDate = Object(_subMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(date, Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date))\n\n var flags = {}\n for (i = 0; i < uniquePrioritySetters.length; i++) {\n var setter = uniquePrioritySetters[i]\n\n if (\n setter.validate &&\n !setter.validate(utcDate, setter.value, subFnOptions)\n ) {\n return new Date(NaN)\n }\n\n var result = setter.set(utcDate, flags, setter.value, subFnOptions)\n // Result is tuple (date, flags)\n if (result[0]) {\n utcDate = result[0]\n Object(_lib_assign_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(flags, result[1])\n // Result is date\n } else {\n utcDate = result\n }\n }\n\n return utcDate\n}\n\nfunction dateToSystemTimezone(date, flags) {\n if (flags.timestampIsSet) {\n return date\n }\n\n var convertedDate = new Date(0)\n convertedDate.setFullYear(\n date.getUTCFullYear(),\n date.getUTCMonth(),\n date.getUTCDate()\n )\n convertedDate.setHours(\n date.getUTCHours(),\n date.getUTCMinutes(),\n date.getUTCSeconds(),\n date.getUTCMilliseconds()\n )\n return convertedDate\n}\n\nfunction cleanEscapedString(input) {\n return input.match(escapedStringRegExp)[1].replace(doubleQuoteRegExp, \"'\")\n}\n\n\n/***/ }),\n/* 435 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _lib_getUTCWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(364);\n/* harmony import */ var _lib_setUTCDay_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(436);\n/* harmony import */ var _lib_setUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(437);\n/* harmony import */ var _lib_startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(362);\n/* harmony import */ var _lib_setUTCISODay_index_js__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(438);\n/* harmony import */ var _lib_setUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(439);\n/* harmony import */ var _lib_startOfUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(358);\n\n\n\n\n\n\n\n\nvar MILLISECONDS_IN_HOUR = 3600000\nvar MILLISECONDS_IN_MINUTE = 60000\nvar MILLISECONDS_IN_SECOND = 1000\n\nvar numericPatterns = {\n month: /^(1[0-2]|0?\\d)/, // 0 to 12\n date: /^(3[0-1]|[0-2]?\\d)/, // 0 to 31\n dayOfYear: /^(36[0-6]|3[0-5]\\d|[0-2]?\\d?\\d)/, // 0 to 366\n week: /^(5[0-3]|[0-4]?\\d)/, // 0 to 53\n hour23h: /^(2[0-3]|[0-1]?\\d)/, // 0 to 23\n hour24h: /^(2[0-4]|[0-1]?\\d)/, // 0 to 24\n hour11h: /^(1[0-1]|0?\\d)/, // 0 to 11\n hour12h: /^(1[0-2]|0?\\d)/, // 0 to 12\n minute: /^[0-5]?\\d/, // 0 to 59\n second: /^[0-5]?\\d/, // 0 to 59\n\n singleDigit: /^\\d/, // 0 to 9\n twoDigits: /^\\d{1,2}/, // 0 to 99\n threeDigits: /^\\d{1,3}/, // 0 to 999\n fourDigits: /^\\d{1,4}/, // 0 to 9999\n\n anyDigitsSigned: /^-?\\d+/,\n singleDigitSigned: /^-?\\d/, // 0 to 9, -0 to -9\n twoDigitsSigned: /^-?\\d{1,2}/, // 0 to 99, -0 to -99\n threeDigitsSigned: /^-?\\d{1,3}/, // 0 to 999, -0 to -999\n fourDigitsSigned: /^-?\\d{1,4}/ // 0 to 9999, -0 to -9999\n}\n\nvar timezonePatterns = {\n basicOptionalMinutes: /^([+-])(\\d{2})(\\d{2})?|Z/,\n basic: /^([+-])(\\d{2})(\\d{2})|Z/,\n basicOptionalSeconds: /^([+-])(\\d{2})(\\d{2})((\\d{2}))?|Z/,\n extended: /^([+-])(\\d{2}):(\\d{2})|Z/,\n extendedOptionalSeconds: /^([+-])(\\d{2}):(\\d{2})(:(\\d{2}))?|Z/\n}\n\nfunction parseNumericPattern(pattern, string, valueCallback) {\n var matchResult = string.match(pattern)\n\n if (!matchResult) {\n return null\n }\n\n var value = parseInt(matchResult[0], 10)\n\n return {\n value: valueCallback ? valueCallback(value) : value,\n rest: string.slice(matchResult[0].length)\n }\n}\n\nfunction parseTimezonePattern(pattern, string) {\n var matchResult = string.match(pattern)\n\n if (!matchResult) {\n return null\n }\n\n // Input is 'Z'\n if (matchResult[0] === 'Z') {\n return {\n value: 0,\n rest: string.slice(1)\n }\n }\n\n var sign = matchResult[1] === '+' ? 1 : -1\n var hours = matchResult[2] ? parseInt(matchResult[2], 10) : 0\n var minutes = matchResult[3] ? parseInt(matchResult[3], 10) : 0\n var seconds = matchResult[5] ? parseInt(matchResult[5], 10) : 0\n\n return {\n value:\n sign *\n (hours * MILLISECONDS_IN_HOUR +\n minutes * MILLISECONDS_IN_MINUTE +\n seconds * MILLISECONDS_IN_SECOND),\n rest: string.slice(matchResult[0].length)\n }\n}\n\nfunction parseAnyDigitsSigned(string, valueCallback) {\n return parseNumericPattern(\n numericPatterns.anyDigitsSigned,\n string,\n valueCallback\n )\n}\n\nfunction parseNDigits(n, string, valueCallback) {\n switch (n) {\n case 1:\n return parseNumericPattern(\n numericPatterns.singleDigit,\n string,\n valueCallback\n )\n case 2:\n return parseNumericPattern(\n numericPatterns.twoDigits,\n string,\n valueCallback\n )\n case 3:\n return parseNumericPattern(\n numericPatterns.threeDigits,\n string,\n valueCallback\n )\n case 4:\n return parseNumericPattern(\n numericPatterns.fourDigits,\n string,\n valueCallback\n )\n default:\n return parseNumericPattern(\n new RegExp('^\\\\d{1,' + n + '}'),\n string,\n valueCallback\n )\n }\n}\n\nfunction parseNDigitsSigned(n, string, valueCallback) {\n switch (n) {\n case 1:\n return parseNumericPattern(\n numericPatterns.singleDigitSigned,\n string,\n valueCallback\n )\n case 2:\n return parseNumericPattern(\n numericPatterns.twoDigitsSigned,\n string,\n valueCallback\n )\n case 3:\n return parseNumericPattern(\n numericPatterns.threeDigitsSigned,\n string,\n valueCallback\n )\n case 4:\n return parseNumericPattern(\n numericPatterns.fourDigitsSigned,\n string,\n valueCallback\n )\n default:\n return parseNumericPattern(\n new RegExp('^-?\\\\d{1,' + n + '}'),\n string,\n valueCallback\n )\n }\n}\n\nfunction dayPeriodEnumToHours(enumValue) {\n switch (enumValue) {\n case 'morning':\n return 4\n case 'evening':\n return 17\n case 'pm':\n case 'noon':\n case 'afternoon':\n return 12\n case 'am':\n case 'midnight':\n case 'night':\n default:\n return 0\n }\n}\n\nfunction normalizeTwoDigitYear(twoDigitYear, currentYear) {\n var isCommonEra = currentYear > 0\n // Absolute number of the current year:\n // 1 -> 1 AC\n // 0 -> 1 BC\n // -1 -> 2 BC\n var absCurrentYear = isCommonEra ? currentYear : 1 - currentYear\n\n var result\n if (absCurrentYear <= 50) {\n result = twoDigitYear || 100\n } else {\n var rangeEnd = absCurrentYear + 50\n var rangeEndCentury = Math.floor(rangeEnd / 100) * 100\n var isPreviousCentury = twoDigitYear >= rangeEnd % 100\n result = twoDigitYear + rangeEndCentury - (isPreviousCentury ? 100 : 0)\n }\n\n return isCommonEra ? result : 1 - result\n}\n\nvar DAYS_IN_MONTH = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\nvar DAYS_IN_MONTH_LEAP_YEAR = [31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\n\n// User for validation\nfunction isLeapYearIndex(year) {\n return year % 400 === 0 || (year % 4 === 0 && year % 100 !== 0)\n}\n\n/*\n * | | Unit | | Unit |\n * |-----|--------------------------------|-----|--------------------------------|\n * | a | AM, PM | A* | Milliseconds in day |\n * | b | AM, PM, noon, midnight | B | Flexible day period |\n * | c | Stand-alone local day of week | C* | Localized hour w/ day period |\n * | d | Day of month | D | Day of year |\n * | e | Local day of week | E | Day of week |\n * | f | | F* | Day of week in month |\n * | g* | Modified Julian day | G | Era |\n * | h | Hour [1-12] | H | Hour [0-23] |\n * | i! | ISO day of week | I! | ISO week of year |\n * | j* | Localized hour w/ day period | J* | Localized hour w/o day period |\n * | k | Hour [1-24] | K | Hour [0-11] |\n * | l* | (deprecated) | L | Stand-alone month |\n * | m | Minute | M | Month |\n * | n | | N | |\n * | o! | Ordinal number modifier | O* | Timezone (GMT) |\n * | p | | P | |\n * | q | Stand-alone quarter | Q | Quarter |\n * | r* | Related Gregorian year | R! | ISO week-numbering year |\n * | s | Second | S | Fraction of second |\n * | t! | Seconds timestamp | T! | Milliseconds timestamp |\n * | u | Extended year | U* | Cyclic year |\n * | v* | Timezone (generic non-locat.) | V* | Timezone (location) |\n * | w | Local week of year | W* | Week of month |\n * | x | Timezone (ISO-8601 w/o Z) | X | Timezone (ISO-8601) |\n * | y | Year (abs) | Y | Local week-numbering year |\n * | z* | Timezone (specific non-locat.) | Z* | Timezone (aliases) |\n *\n * Letters marked by * are not implemented but reserved by Unicode standard.\n *\n * Letters marked by ! are non-standard, but implemented by date-fns:\n * - `o` modifies the previous token to turn it into an ordinal (see `parse` docs)\n * - `i` is ISO day of week. For `i` and `ii` is returns numeric ISO week days,\n * i.e. 7 for Sunday, 1 for Monday, etc.\n * - `I` is ISO week of year, as opposed to `w` which is local week of year.\n * - `R` is ISO week-numbering year, as opposed to `Y` which is local week-numbering year.\n * `R` is supposed to be used in conjunction with `I` and `i`\n * for universal ISO week-numbering date, whereas\n * `Y` is supposed to be used in conjunction with `w` and `e`\n * for week-numbering date specific to the locale.\n */\nvar parsers = {\n // Era\n G: {\n priority: 140,\n parse: function(string, token, match, options) {\n switch (token) {\n // AD, BC\n case 'G':\n case 'GG':\n case 'GGG':\n return (\n match.era(string, { width: 'abbreviated' }) ||\n match.era(string, { width: 'narrow' })\n )\n // A, B\n case 'GGGGG':\n return match.era(string, { width: 'narrow' })\n // Anno Domini, Before Christ\n case 'GGGG':\n default:\n return (\n match.era(string, { width: 'wide' }) ||\n match.era(string, { width: 'abbreviated' }) ||\n match.era(string, { width: 'narrow' })\n )\n }\n },\n set: function(date, flags, value, options) {\n // Sets year 10 BC if BC, or 10 AC if AC\n date.setUTCFullYear(value === 1 ? 10 : -9, 0, 1)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Year\n y: {\n // From http://www.unicode.org/reports/tr35/tr35-31/tr35-dates.html#Date_Format_Patterns\n // | Year | y | yy | yyy | yyyy | yyyyy |\n // |----------|-------|----|-------|-------|-------|\n // | AD 1 | 1 | 01 | 001 | 0001 | 00001 |\n // | AD 12 | 12 | 12 | 012 | 0012 | 00012 |\n // | AD 123 | 123 | 23 | 123 | 0123 | 00123 |\n // | AD 1234 | 1234 | 34 | 1234 | 1234 | 01234 |\n // | AD 12345 | 12345 | 45 | 12345 | 12345 | 12345 |\n\n priority: 130,\n parse: function(string, token, match, options) {\n var valueCallback = function(year) {\n return {\n year: year,\n isTwoDigitYear: token === 'yy'\n }\n }\n\n switch (token) {\n case 'y':\n return parseNDigits(4, string, valueCallback)\n case 'yo':\n return match.ordinalNumber(string, {\n unit: 'year',\n valueCallback: valueCallback\n })\n default:\n return parseNDigits(token.length, string, valueCallback)\n }\n },\n validate: function(date, value, options) {\n return value.isTwoDigitYear || value.year > 0\n },\n set: function(date, flags, value, options) {\n var currentYear = Object(_lib_getUTCWeekYear_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(date, options)\n\n if (value.isTwoDigitYear) {\n var normalizedTwoDigitYear = normalizeTwoDigitYear(\n value.year,\n currentYear\n )\n date.setUTCFullYear(normalizedTwoDigitYear, 0, 1)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n\n var year = currentYear > 0 ? value.year : 1 - value.year\n date.setUTCFullYear(year, 0, 1)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Local week-numbering year\n Y: {\n priority: 130,\n parse: function(string, token, match, options) {\n var valueCallback = function(year) {\n return {\n year: year,\n isTwoDigitYear: token === 'YY'\n }\n }\n\n switch (token) {\n case 'Y':\n return parseNDigits(4, string, valueCallback)\n case 'Yo':\n return match.ordinalNumber(string, {\n unit: 'year',\n valueCallback: valueCallback\n })\n default:\n return parseNDigits(token.length, string, valueCallback)\n }\n },\n validate: function(date, value, options) {\n return value.isTwoDigitYear || value.year > 0\n },\n set: function(date, flags, value, options) {\n var currentYear = date.getUTCFullYear()\n\n if (value.isTwoDigitYear) {\n var normalizedTwoDigitYear = normalizeTwoDigitYear(\n value.year,\n currentYear\n )\n date.setUTCFullYear(\n normalizedTwoDigitYear,\n 0,\n options.firstWeekContainsDate\n )\n date.setUTCHours(0, 0, 0, 0)\n return Object(_lib_startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(date, options)\n }\n\n var year = currentYear > 0 ? value.year : 1 - value.year\n date.setUTCFullYear(year, 0, options.firstWeekContainsDate)\n date.setUTCHours(0, 0, 0, 0)\n return Object(_lib_startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(date, options)\n }\n },\n\n // ISO week-numbering year\n R: {\n priority: 130,\n parse: function(string, token, match, options) {\n if (token === 'R') {\n return parseNDigitsSigned(4, string)\n }\n\n return parseNDigitsSigned(token.length, string)\n },\n set: function(date, flags, value, options) {\n var firstWeekOfYear = new Date(0)\n firstWeekOfYear.setUTCFullYear(value, 0, 4)\n firstWeekOfYear.setUTCHours(0, 0, 0, 0)\n return Object(_lib_startOfUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(firstWeekOfYear)\n }\n },\n\n // Extended year\n u: {\n priority: 130,\n parse: function(string, token, match, options) {\n if (token === 'u') {\n return parseNDigitsSigned(4, string)\n }\n\n return parseNDigitsSigned(token.length, string)\n },\n set: function(date, flags, value, options) {\n date.setUTCFullYear(value, 0, 1)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Quarter\n Q: {\n priority: 120,\n parse: function(string, token, match, options) {\n switch (token) {\n // 1, 2, 3, 4\n case 'Q':\n case 'QQ': // 01, 02, 03, 04\n return parseNDigits(token.length, string)\n // 1st, 2nd, 3rd, 4th\n case 'Qo':\n return match.ordinalNumber(string, { unit: 'quarter' })\n // Q1, Q2, Q3, Q4\n case 'QQQ':\n return (\n match.quarter(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.quarter(string, { width: 'narrow', context: 'formatting' })\n )\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n case 'QQQQQ':\n return match.quarter(string, {\n width: 'narrow',\n context: 'formatting'\n })\n // 1st quarter, 2nd quarter, ...\n case 'QQQQ':\n default:\n return (\n match.quarter(string, { width: 'wide', context: 'formatting' }) ||\n match.quarter(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.quarter(string, { width: 'narrow', context: 'formatting' })\n )\n }\n },\n validate: function(date, value, options) {\n return value >= 1 && value <= 4\n },\n set: function(date, flags, value, options) {\n date.setUTCMonth((value - 1) * 3, 1)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Stand-alone quarter\n q: {\n priority: 120,\n parse: function(string, token, match, options) {\n switch (token) {\n // 1, 2, 3, 4\n case 'q':\n case 'qq': // 01, 02, 03, 04\n return parseNDigits(token.length, string)\n // 1st, 2nd, 3rd, 4th\n case 'qo':\n return match.ordinalNumber(string, { unit: 'quarter' })\n // Q1, Q2, Q3, Q4\n case 'qqq':\n return (\n match.quarter(string, {\n width: 'abbreviated',\n context: 'standalone'\n }) ||\n match.quarter(string, { width: 'narrow', context: 'standalone' })\n )\n // 1, 2, 3, 4 (narrow quarter; could be not numerical)\n case 'qqqqq':\n return match.quarter(string, {\n width: 'narrow',\n context: 'standalone'\n })\n // 1st quarter, 2nd quarter, ...\n case 'qqqq':\n default:\n return (\n match.quarter(string, { width: 'wide', context: 'standalone' }) ||\n match.quarter(string, {\n width: 'abbreviated',\n context: 'standalone'\n }) ||\n match.quarter(string, { width: 'narrow', context: 'standalone' })\n )\n }\n },\n validate: function(date, value, options) {\n return value >= 1 && value <= 4\n },\n set: function(date, flags, value, options) {\n date.setUTCMonth((value - 1) * 3, 1)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Month\n M: {\n priority: 110,\n parse: function(string, token, match, options) {\n var valueCallback = function(value) {\n return value - 1\n }\n\n switch (token) {\n // 1, 2, ..., 12\n case 'M':\n return parseNumericPattern(\n numericPatterns.month,\n string,\n valueCallback\n )\n // 01, 02, ..., 12\n case 'MM':\n return parseNDigits(2, string, valueCallback)\n // 1st, 2nd, ..., 12th\n case 'Mo':\n return match.ordinalNumber(string, {\n unit: 'month',\n valueCallback: valueCallback\n })\n // Jan, Feb, ..., Dec\n case 'MMM':\n return (\n match.month(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.month(string, { width: 'narrow', context: 'formatting' })\n )\n // J, F, ..., D\n case 'MMMMM':\n return match.month(string, { width: 'narrow', context: 'formatting' })\n // January, February, ..., December\n case 'MMMM':\n default:\n return (\n match.month(string, { width: 'wide', context: 'formatting' }) ||\n match.month(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.month(string, { width: 'narrow', context: 'formatting' })\n )\n }\n },\n validate: function(date, value, options) {\n return value >= 0 && value <= 11\n },\n set: function(date, flags, value, options) {\n date.setUTCMonth(value, 1)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Stand-alone month\n L: {\n priority: 110,\n parse: function(string, token, match, options) {\n var valueCallback = function(value) {\n return value - 1\n }\n\n switch (token) {\n // 1, 2, ..., 12\n case 'L':\n return parseNumericPattern(\n numericPatterns.month,\n string,\n valueCallback\n )\n // 01, 02, ..., 12\n case 'LL':\n return parseNDigits(2, string, valueCallback)\n // 1st, 2nd, ..., 12th\n case 'Lo':\n return match.ordinalNumber(string, {\n unit: 'month',\n valueCallback: valueCallback\n })\n // Jan, Feb, ..., Dec\n case 'LLL':\n return (\n match.month(string, {\n width: 'abbreviated',\n context: 'standalone'\n }) ||\n match.month(string, { width: 'narrow', context: 'standalone' })\n )\n // J, F, ..., D\n case 'LLLLL':\n return match.month(string, { width: 'narrow', context: 'standalone' })\n // January, February, ..., December\n case 'LLLL':\n default:\n return (\n match.month(string, { width: 'wide', context: 'standalone' }) ||\n match.month(string, {\n width: 'abbreviated',\n context: 'standalone'\n }) ||\n match.month(string, { width: 'narrow', context: 'standalone' })\n )\n }\n },\n validate: function(date, value, options) {\n return value >= 0 && value <= 11\n },\n set: function(date, flags, value, options) {\n date.setUTCMonth(value, 1)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Local week of year\n w: {\n priority: 100,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'w':\n return parseNumericPattern(numericPatterns.week, string)\n case 'wo':\n return match.ordinalNumber(string, { unit: 'week' })\n default:\n return parseNDigits(token.length, string)\n }\n },\n validate: function(date, value, options) {\n return value >= 1 && value <= 53\n },\n set: function(date, flags, value, options) {\n return Object(_lib_startOfUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(Object(_lib_setUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, value, options), options)\n }\n },\n\n // ISO week of year\n I: {\n priority: 100,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'I':\n return parseNumericPattern(numericPatterns.week, string)\n case 'Io':\n return match.ordinalNumber(string, { unit: 'week' })\n default:\n return parseNDigits(token.length, string)\n }\n },\n validate: function(date, value, options) {\n return value >= 1 && value <= 53\n },\n set: function(date, flags, value, options) {\n return Object(_lib_startOfUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_6__[\"default\"])(Object(_lib_setUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_5__[\"default\"])(date, value, options), options)\n }\n },\n\n // Day of the month\n d: {\n priority: 90,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'd':\n return parseNumericPattern(numericPatterns.date, string)\n case 'do':\n return match.ordinalNumber(string, { unit: 'date' })\n default:\n return parseNDigits(token.length, string)\n }\n },\n validate: function(date, value, options) {\n var year = date.getUTCFullYear()\n var isLeapYear = isLeapYearIndex(year)\n var month = date.getUTCMonth()\n if (isLeapYear) {\n return value >= 1 && value <= DAYS_IN_MONTH_LEAP_YEAR[month]\n } else {\n return value >= 1 && value <= DAYS_IN_MONTH[month]\n }\n },\n set: function(date, flags, value, options) {\n date.setUTCDate(value)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Day of year\n D: {\n priority: 90,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'D':\n case 'DD':\n return parseNumericPattern(numericPatterns.dayOfYear, string)\n case 'Do':\n return match.ordinalNumber(string, { unit: 'date' })\n default:\n return parseNDigits(token.length, string)\n }\n },\n validate: function(date, value, options) {\n var year = date.getUTCFullYear()\n var isLeapYear = isLeapYearIndex(year)\n if (isLeapYear) {\n return value >= 1 && value <= 366\n } else {\n return value >= 1 && value <= 365\n }\n },\n set: function(date, flags, value, options) {\n date.setUTCMonth(0, value)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Day of week\n E: {\n priority: 90,\n parse: function(string, token, match, options) {\n switch (token) {\n // Tue\n case 'E':\n case 'EE':\n case 'EEE':\n return (\n match.day(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.day(string, { width: 'short', context: 'formatting' }) ||\n match.day(string, { width: 'narrow', context: 'formatting' })\n )\n // T\n case 'EEEEE':\n return match.day(string, { width: 'narrow', context: 'formatting' })\n // Tu\n case 'EEEEEE':\n return (\n match.day(string, { width: 'short', context: 'formatting' }) ||\n match.day(string, { width: 'narrow', context: 'formatting' })\n )\n // Tuesday\n case 'EEEE':\n default:\n return (\n match.day(string, { width: 'wide', context: 'formatting' }) ||\n match.day(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.day(string, { width: 'short', context: 'formatting' }) ||\n match.day(string, { width: 'narrow', context: 'formatting' })\n )\n }\n },\n validate: function(date, value, options) {\n return value >= 0 && value <= 6\n },\n set: function(date, flags, value, options) {\n date = Object(_lib_setUTCDay_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date, value, options)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Local day of week\n e: {\n priority: 90,\n parse: function(string, token, match, options) {\n var valueCallback = function(value) {\n var wholeWeekDays = Math.floor((value - 1) / 7) * 7\n return ((value + options.weekStartsOn + 6) % 7) + wholeWeekDays\n }\n\n switch (token) {\n // 3\n case 'e':\n case 'ee': // 03\n return parseNDigits(token.length, string, valueCallback)\n // 3rd\n case 'eo':\n return match.ordinalNumber(string, {\n unit: 'day',\n valueCallback: valueCallback\n })\n // Tue\n case 'eee':\n return (\n match.day(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.day(string, { width: 'short', context: 'formatting' }) ||\n match.day(string, { width: 'narrow', context: 'formatting' })\n )\n // T\n case 'eeeee':\n return match.day(string, { width: 'narrow', context: 'formatting' })\n // Tu\n case 'eeeeee':\n return (\n match.day(string, { width: 'short', context: 'formatting' }) ||\n match.day(string, { width: 'narrow', context: 'formatting' })\n )\n // Tuesday\n case 'eeee':\n default:\n return (\n match.day(string, { width: 'wide', context: 'formatting' }) ||\n match.day(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.day(string, { width: 'short', context: 'formatting' }) ||\n match.day(string, { width: 'narrow', context: 'formatting' })\n )\n }\n },\n validate: function(date, value, options) {\n return value >= 0 && value <= 6\n },\n set: function(date, flags, value, options) {\n date = Object(_lib_setUTCDay_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date, value, options)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // Stand-alone local day of week\n c: {\n priority: 90,\n parse: function(string, token, match, options) {\n var valueCallback = function(value) {\n var wholeWeekDays = Math.floor((value - 1) / 7) * 7\n return ((value + options.weekStartsOn + 6) % 7) + wholeWeekDays\n }\n\n switch (token) {\n // 3\n case 'c':\n case 'cc': // 03\n return parseNDigits(token.length, string, valueCallback)\n // 3rd\n case 'co':\n return match.ordinalNumber(string, {\n unit: 'day',\n valueCallback: valueCallback\n })\n // Tue\n case 'ccc':\n return (\n match.day(string, {\n width: 'abbreviated',\n context: 'standalone'\n }) ||\n match.day(string, { width: 'short', context: 'standalone' }) ||\n match.day(string, { width: 'narrow', context: 'standalone' })\n )\n // T\n case 'ccccc':\n return match.day(string, { width: 'narrow', context: 'standalone' })\n // Tu\n case 'cccccc':\n return (\n match.day(string, { width: 'short', context: 'standalone' }) ||\n match.day(string, { width: 'narrow', context: 'standalone' })\n )\n // Tuesday\n case 'cccc':\n default:\n return (\n match.day(string, { width: 'wide', context: 'standalone' }) ||\n match.day(string, {\n width: 'abbreviated',\n context: 'standalone'\n }) ||\n match.day(string, { width: 'short', context: 'standalone' }) ||\n match.day(string, { width: 'narrow', context: 'standalone' })\n )\n }\n },\n validate: function(date, value, options) {\n return value >= 0 && value <= 6\n },\n set: function(date, flags, value, options) {\n date = Object(_lib_setUTCDay_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(date, value, options)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // ISO day of week\n i: {\n priority: 90,\n parse: function(string, token, match, options) {\n var valueCallback = function(value) {\n if (value === 0) {\n return 7\n }\n return value\n }\n\n switch (token) {\n // 2\n case 'i':\n case 'ii': // 02\n return parseNDigits(token.length, string)\n // 2nd\n case 'io':\n return match.ordinalNumber(string, { unit: 'day' })\n // Tue\n case 'iii':\n return (\n match.day(string, {\n width: 'abbreviated',\n context: 'formatting',\n valueCallback: valueCallback\n }) ||\n match.day(string, {\n width: 'short',\n context: 'formatting',\n valueCallback: valueCallback\n }) ||\n match.day(string, {\n width: 'narrow',\n context: 'formatting',\n valueCallback: valueCallback\n })\n )\n // T\n case 'iiiii':\n return match.day(string, {\n width: 'narrow',\n context: 'formatting',\n valueCallback: valueCallback\n })\n // Tu\n case 'iiiiii':\n return (\n match.day(string, {\n width: 'short',\n context: 'formatting',\n valueCallback: valueCallback\n }) ||\n match.day(string, {\n width: 'narrow',\n context: 'formatting',\n valueCallback: valueCallback\n })\n )\n // Tuesday\n case 'iiii':\n default:\n return (\n match.day(string, {\n width: 'wide',\n context: 'formatting',\n valueCallback: valueCallback\n }) ||\n match.day(string, {\n width: 'abbreviated',\n context: 'formatting',\n valueCallback: valueCallback\n }) ||\n match.day(string, {\n width: 'short',\n context: 'formatting',\n valueCallback: valueCallback\n }) ||\n match.day(string, {\n width: 'narrow',\n context: 'formatting',\n valueCallback: valueCallback\n })\n )\n }\n },\n validate: function(date, value, options) {\n return value >= 1 && value <= 7\n },\n set: function(date, flags, value, options) {\n date = Object(_lib_setUTCISODay_index_js__WEBPACK_IMPORTED_MODULE_4__[\"default\"])(date, value, options)\n date.setUTCHours(0, 0, 0, 0)\n return date\n }\n },\n\n // AM or PM\n a: {\n priority: 80,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'a':\n case 'aa':\n case 'aaa':\n return (\n match.dayPeriod(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.dayPeriod(string, { width: 'narrow', context: 'formatting' })\n )\n case 'aaaaa':\n return match.dayPeriod(string, {\n width: 'narrow',\n context: 'formatting'\n })\n case 'aaaa':\n default:\n return (\n match.dayPeriod(string, { width: 'wide', context: 'formatting' }) ||\n match.dayPeriod(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.dayPeriod(string, { width: 'narrow', context: 'formatting' })\n )\n }\n },\n set: function(date, flags, value, options) {\n date.setUTCHours(dayPeriodEnumToHours(value), 0, 0, 0)\n return date\n }\n },\n\n // AM, PM, midnight\n b: {\n priority: 80,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'b':\n case 'bb':\n case 'bbb':\n return (\n match.dayPeriod(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.dayPeriod(string, { width: 'narrow', context: 'formatting' })\n )\n case 'bbbbb':\n return match.dayPeriod(string, {\n width: 'narrow',\n context: 'formatting'\n })\n case 'bbbb':\n default:\n return (\n match.dayPeriod(string, { width: 'wide', context: 'formatting' }) ||\n match.dayPeriod(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.dayPeriod(string, { width: 'narrow', context: 'formatting' })\n )\n }\n },\n set: function(date, flags, value, options) {\n date.setUTCHours(dayPeriodEnumToHours(value), 0, 0, 0)\n return date\n }\n },\n\n // in the morning, in the afternoon, in the evening, at night\n B: {\n priority: 80,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'B':\n case 'BB':\n case 'BBB':\n return (\n match.dayPeriod(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.dayPeriod(string, { width: 'narrow', context: 'formatting' })\n )\n case 'BBBBB':\n return match.dayPeriod(string, {\n width: 'narrow',\n context: 'formatting'\n })\n case 'BBBB':\n default:\n return (\n match.dayPeriod(string, { width: 'wide', context: 'formatting' }) ||\n match.dayPeriod(string, {\n width: 'abbreviated',\n context: 'formatting'\n }) ||\n match.dayPeriod(string, { width: 'narrow', context: 'formatting' })\n )\n }\n },\n set: function(date, flags, value, options) {\n date.setUTCHours(dayPeriodEnumToHours(value), 0, 0, 0)\n return date\n }\n },\n\n // Hour [1-12]\n h: {\n priority: 70,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'h':\n return parseNumericPattern(numericPatterns.hour12h, string)\n case 'ho':\n return match.ordinalNumber(string, { unit: 'hour' })\n default:\n return parseNDigits(token.length, string)\n }\n },\n validate: function(date, value, options) {\n return value >= 1 && value <= 12\n },\n set: function(date, flags, value, options) {\n var isPM = date.getUTCHours() >= 12\n if (isPM && value < 12) {\n date.setUTCHours(value + 12, 0, 0, 0)\n } else if (!isPM && value === 12) {\n date.setUTCHours(0, 0, 0, 0)\n } else {\n date.setUTCHours(value, 0, 0, 0)\n }\n return date\n }\n },\n\n // Hour [0-23]\n H: {\n priority: 70,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'H':\n return parseNumericPattern(numericPatterns.hour23h, string)\n case 'Ho':\n return match.ordinalNumber(string, { unit: 'hour' })\n default:\n return parseNDigits(token.length, string)\n }\n },\n validate: function(date, value, options) {\n return value >= 0 && value <= 23\n },\n set: function(date, flags, value, options) {\n date.setUTCHours(value, 0, 0, 0)\n return date\n }\n },\n\n // Hour [0-11]\n K: {\n priority: 70,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'K':\n return parseNumericPattern(numericPatterns.hour11h, string)\n case 'Ko':\n return match.ordinalNumber(string, { unit: 'hour' })\n default:\n return parseNDigits(token.length, string)\n }\n },\n validate: function(date, value, options) {\n return value >= 0 && value <= 11\n },\n set: function(date, flags, value, options) {\n var isPM = date.getUTCHours() >= 12\n if (isPM && value < 12) {\n date.setUTCHours(value + 12, 0, 0, 0)\n } else {\n date.setUTCHours(value, 0, 0, 0)\n }\n return date\n }\n },\n\n // Hour [1-24]\n k: {\n priority: 70,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'k':\n return parseNumericPattern(numericPatterns.hour24h, string)\n case 'ko':\n return match.ordinalNumber(string, { unit: 'hour' })\n default:\n return parseNDigits(token.length, string)\n }\n },\n validate: function(date, value, options) {\n return value >= 1 && value <= 24\n },\n set: function(date, flags, value, options) {\n var hours = value <= 24 ? value % 24 : value\n date.setUTCHours(hours, 0, 0, 0)\n return date\n }\n },\n\n // Minute\n m: {\n priority: 60,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'm':\n return parseNumericPattern(numericPatterns.minute, string)\n case 'mo':\n return match.ordinalNumber(string, { unit: 'minute' })\n default:\n return parseNDigits(token.length, string)\n }\n },\n validate: function(date, value, options) {\n return value >= 0 && value <= 59\n },\n set: function(date, flags, value, options) {\n date.setUTCMinutes(value, 0, 0)\n return date\n }\n },\n\n // Second\n s: {\n priority: 50,\n parse: function(string, token, match, options) {\n switch (token) {\n case 's':\n return parseNumericPattern(numericPatterns.second, string)\n case 'so':\n return match.ordinalNumber(string, { unit: 'second' })\n default:\n return parseNDigits(token.length, string)\n }\n },\n validate: function(date, value, options) {\n return value >= 0 && value <= 59\n },\n set: function(date, flags, value, options) {\n date.setUTCSeconds(value, 0)\n return date\n }\n },\n\n // Fraction of second\n S: {\n priority: 30,\n parse: function(string, token, match, options) {\n var valueCallback = function(value) {\n return Math.floor(value * Math.pow(10, -token.length + 3))\n }\n return parseNDigits(token.length, string, valueCallback)\n },\n set: function(date, flags, value, options) {\n date.setUTCMilliseconds(value)\n return date\n }\n },\n\n // Timezone (ISO-8601. +00:00 is `'Z'`)\n X: {\n priority: 10,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'X':\n return parseTimezonePattern(\n timezonePatterns.basicOptionalMinutes,\n string\n )\n case 'XX':\n return parseTimezonePattern(timezonePatterns.basic, string)\n case 'XXXX':\n return parseTimezonePattern(\n timezonePatterns.basicOptionalSeconds,\n string\n )\n case 'XXXXX':\n return parseTimezonePattern(\n timezonePatterns.extendedOptionalSeconds,\n string\n )\n case 'XXX':\n default:\n return parseTimezonePattern(timezonePatterns.extended, string)\n }\n },\n set: function(date, flags, value, options) {\n if (flags.timestampIsSet) {\n return date\n }\n return new Date(date.getTime() - value)\n }\n },\n\n // Timezone (ISO-8601)\n x: {\n priority: 10,\n parse: function(string, token, match, options) {\n switch (token) {\n case 'x':\n return parseTimezonePattern(\n timezonePatterns.basicOptionalMinutes,\n string\n )\n case 'xx':\n return parseTimezonePattern(timezonePatterns.basic, string)\n case 'xxxx':\n return parseTimezonePattern(\n timezonePatterns.basicOptionalSeconds,\n string\n )\n case 'xxxxx':\n return parseTimezonePattern(\n timezonePatterns.extendedOptionalSeconds,\n string\n )\n case 'xxx':\n default:\n return parseTimezonePattern(timezonePatterns.extended, string)\n }\n },\n set: function(date, flags, value, options) {\n if (flags.timestampIsSet) {\n return date\n }\n return new Date(date.getTime() - value)\n }\n },\n\n // Seconds timestamp\n t: {\n priority: 40,\n parse: function(string, token, match, options) {\n return parseAnyDigitsSigned(string)\n },\n set: function(date, flags, value, options) {\n return [new Date(value * 1000), { timestampIsSet: true }]\n }\n },\n\n // Milliseconds timestamp\n T: {\n priority: 20,\n parse: function(string, token, match, options) {\n return parseAnyDigitsSigned(string)\n },\n set: function(date, flags, value, options) {\n return [new Date(value), { timestampIsSet: true }]\n }\n }\n}\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (parsers);\n\n\n/***/ }),\n/* 436 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setUTCDay; });\n/* harmony import */ var _toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction setUTCDay(dirtyDate, dirtyDay, dirtyOptions) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeWeekStartsOn =\n locale && locale.options && locale.options.weekStartsOn\n var defaultWeekStartsOn =\n localeWeekStartsOn == null ? 0 : Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeWeekStartsOn)\n var weekStartsOn =\n options.weekStartsOn == null\n ? defaultWeekStartsOn\n : Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.weekStartsOn)\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively')\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var day = Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDay)\n\n var currentDay = date.getUTCDay()\n\n var remainder = day % 7\n var dayIndex = (remainder + 7) % 7\n\n var diff = (dayIndex < weekStartsOn ? 7 : 0) + day - currentDay\n\n date.setUTCDate(date.getUTCDate() + diff)\n return date\n}\n\n\n/***/ }),\n/* 437 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setUTCWeek; });\n/* harmony import */ var _toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _getUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(361);\n\n\n\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction setUTCWeek(dirtyDate, dirtyWeek, options) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var week = Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyWeek)\n var diff = Object(_getUTCWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, options) - week\n date.setUTCDate(date.getUTCDate() - diff * 7)\n return date\n}\n\n\n/***/ }),\n/* 438 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setUTCISODay; });\n/* harmony import */ var _toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction setUTCISODay(dirtyDate, dirtyDay) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var day = Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDay)\n\n if (day % 7 === 0) {\n day = day - 7\n }\n\n var weekStartsOn = 1\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var currentDay = date.getUTCDay()\n\n var remainder = day % 7\n var dayIndex = (remainder + 7) % 7\n\n var diff = (dayIndex < weekStartsOn ? 7 : 0) + day - currentDay\n\n date.setUTCDate(date.getUTCDate() + diff)\n return date\n}\n\n\n/***/ }),\n/* 439 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setUTCISOWeek; });\n/* harmony import */ var _toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _getUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(357);\n\n\n\n\n// This function will be a part of public API when UTC function will be implemented.\n// See issue: https://github.com/date-fns/date-fns/issues/376\nfunction setUTCISOWeek(dirtyDate, dirtyISOWeek) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var isoWeek = Object(_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyISOWeek)\n var diff = Object(_getUTCISOWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date) - isoWeek\n date.setUTCDate(date.getUTCDate() - diff * 7)\n return date\n}\n\n\n/***/ }),\n/* 440 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return parseISO; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(289);\n\n\n\nvar MILLISECONDS_IN_HOUR = 3600000\nvar MILLISECONDS_IN_MINUTE = 60000\nvar DEFAULT_ADDITIONAL_DIGITS = 2\n\nvar patterns = {\n dateTimeDelimiter: /[T ]/,\n timeZoneDelimiter: /[Z ]/i,\n timezone: /([Z+-].*)$/\n}\n\nvar dateRegex = /^-?(?:(\\d{3})|(\\d{2})(?:-?(\\d{2}))?|W(\\d{2})(?:-?(\\d{1}))?|)$/\nvar timeRegex = /^(\\d{2}(?:[.,]\\d*)?)(?::?(\\d{2}(?:[.,]\\d*)?))?(?::?(\\d{2}(?:[.,]\\d*)?))?$/\nvar timezoneRegex = /^([+-])(\\d{2})(?::?(\\d{2}))?$/\n\n/**\n * @name parseISO\n * @category Common Helpers\n * @summary Parse ISO string\n *\n * @description\n * Parse the given string in ISO 8601 format and return an instance of Date.\n *\n * Function accepts complete ISO 8601 formats as well as partial implementations.\n * ISO 8601: http://en.wikipedia.org/wiki/ISO_8601\n *\n * If the argument isn't a string, the function cannot parse the string or\n * the values are invalid, it returns Invalid Date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * - The previous `parse` implementation was renamed to `parseISO`.\n *\n * ```javascript\n * // Before v2.0.0\n * parse('2016-01-01')\n *\n * // v2.0.0 onward\n * parseISO('2016-01-01')\n * ```\n *\n * - `parseISO` now validates separate date and time values in ISO-8601 strings\n * and returns `Invalid Date` if the date is invalid.\n *\n * ```javascript\n * parseISO('2018-13-32')\n * //=> Invalid Date\n * ```\n *\n * - `parseISO` now doesn't fall back to `new Date` constructor\n * if it fails to parse a string argument. Instead, it returns `Invalid Date`.\n *\n * @param {String} argument - the value to convert\n * @param {Object} [options] - an object with options.\n * @param {0|1|2} [options.additionalDigits=2] - the additional number of digits in the extended year format\n * @returns {Date} the parsed date in the local time zone\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.additionalDigits` must be 0, 1 or 2\n *\n * @example\n * // Convert string '2014-02-11T11:30:30' to date:\n * var result = parseISO('2014-02-11T11:30:30')\n * //=> Tue Feb 11 2014 11:30:30\n *\n * @example\n * // Convert string '+02014101' to date,\n * // if the additional number of digits in the extended year format is 1:\n * var result = parseISO('+02014101', { additionalDigits: 1 })\n * //=> Fri Apr 11 2014 00:00:00\n */\nfunction parseISO(argument, dirtyOptions) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n\n var additionalDigits =\n options.additionalDigits == null\n ? DEFAULT_ADDITIONAL_DIGITS\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.additionalDigits)\n if (\n additionalDigits !== 2 &&\n additionalDigits !== 1 &&\n additionalDigits !== 0\n ) {\n throw new RangeError('additionalDigits must be 0, 1 or 2')\n }\n\n if (\n !(\n typeof argument === 'string' ||\n Object.prototype.toString.call(argument) === '[object String]'\n )\n ) {\n return new Date(NaN)\n }\n\n var dateStrings = splitDateString(argument)\n var parseYearResult = parseYear(dateStrings.date, additionalDigits)\n var date = parseDate(parseYearResult.restDateString, parseYearResult.year)\n\n if (isNaN(date) || !date) {\n return new Date(NaN)\n }\n\n var timestamp = date.getTime()\n var time = 0\n var offset\n\n if (dateStrings.time) {\n time = parseTime(dateStrings.time)\n if (isNaN(time)) {\n return new Date(NaN)\n }\n }\n\n if (dateStrings.timezone) {\n offset = parseTimezone(dateStrings.timezone)\n if (isNaN(offset)) {\n return new Date(NaN)\n }\n } else {\n var fullTime = timestamp + time\n var fullTimeDate = new Date(fullTime)\n\n offset = Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(fullTimeDate)\n\n // Adjust time when it's coming from DST\n var fullTimeDateNextDay = new Date(fullTime)\n fullTimeDateNextDay.setDate(fullTimeDate.getDate() + 1)\n var offsetDiff =\n Object(_lib_getTimezoneOffsetInMilliseconds_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(fullTimeDateNextDay) - offset\n if (offsetDiff > 0) {\n offset += offsetDiff\n }\n }\n\n return new Date(timestamp + time + offset)\n}\n\nfunction splitDateString(dateString) {\n var dateStrings = {}\n var array = dateString.split(patterns.dateTimeDelimiter)\n var timeString\n\n if (/:/.test(array[0])) {\n dateStrings.date = null\n timeString = array[0]\n } else {\n dateStrings.date = array[0]\n timeString = array[1]\n if (patterns.timeZoneDelimiter.test(dateStrings.date)) {\n dateStrings.date = dateString.split(patterns.timeZoneDelimiter)[0]\n timeString = dateString.substr(dateStrings.date.length, dateString.length)\n }\n }\n\n if (timeString) {\n var token = patterns.timezone.exec(timeString)\n if (token) {\n dateStrings.time = timeString.replace(token[1], '')\n dateStrings.timezone = token[1]\n } else {\n dateStrings.time = timeString\n }\n }\n\n return dateStrings\n}\n\nfunction parseYear(dateString, additionalDigits) {\n var regex = new RegExp(\n '^(?:(\\\\d{4}|[+-]\\\\d{' +\n (4 + additionalDigits) +\n '})|(\\\\d{2}|[+-]\\\\d{' +\n (2 + additionalDigits) +\n '})$)'\n )\n\n var captures = dateString.match(regex)\n // Invalid ISO-formatted year\n if (!captures) return { year: null }\n\n var year = captures[1] && parseInt(captures[1])\n var century = captures[2] && parseInt(captures[2])\n\n return {\n year: century == null ? year : century * 100,\n restDateString: dateString.slice((captures[1] || captures[2]).length)\n }\n}\n\nfunction parseDate(dateString, year) {\n // Invalid ISO-formatted year\n if (year === null) return null\n\n var captures = dateString.match(dateRegex)\n // Invalid ISO-formatted string\n if (!captures) return null\n\n var isWeekDate = !!captures[4]\n var dayOfYear = parseDateUnit(captures[1])\n var month = parseDateUnit(captures[2]) - 1\n var day = parseDateUnit(captures[3])\n var week = parseDateUnit(captures[4]) - 1\n var dayOfWeek = parseDateUnit(captures[5]) - 1\n\n if (isWeekDate) {\n if (!validateWeekDate(year, week, dayOfWeek)) {\n return new Date(NaN)\n }\n return dayOfISOWeekYear(year, week, dayOfWeek)\n } else {\n var date = new Date(0)\n if (\n !validateDate(year, month, day) ||\n !validateDayOfYearDate(year, dayOfYear)\n ) {\n return new Date(NaN)\n }\n date.setUTCFullYear(year, month, Math.max(dayOfYear, day))\n return date\n }\n}\n\nfunction parseDateUnit(value) {\n return value ? parseInt(value) : 1\n}\n\nfunction parseTime(timeString) {\n var captures = timeString.match(timeRegex)\n if (!captures) return null // Invalid ISO-formatted time\n\n var hours = parseTimeUnit(captures[1])\n var minutes = parseTimeUnit(captures[2])\n var seconds = parseTimeUnit(captures[3])\n\n if (!validateTime(hours, minutes, seconds)) {\n return NaN\n }\n\n return (\n (hours % 24) * MILLISECONDS_IN_HOUR +\n minutes * MILLISECONDS_IN_MINUTE +\n seconds * 1000\n )\n}\n\nfunction parseTimeUnit(value) {\n return (value && parseFloat(value.replace(',', '.'))) || 0\n}\n\nfunction parseTimezone(timezoneString) {\n if (timezoneString === 'Z') return 0\n\n var captures = timezoneString.match(timezoneRegex)\n if (!captures) return 0\n\n var sign = captures[1] === '+' ? -1 : 1\n var hours = parseInt(captures[2])\n var minutes = (captures[3] && parseInt(captures[3])) || 0\n\n if (!validateTimezone(hours, minutes)) {\n return NaN\n }\n\n return (\n sign * (hours * MILLISECONDS_IN_HOUR + minutes * MILLISECONDS_IN_MINUTE)\n )\n}\n\nfunction dayOfISOWeekYear(isoWeekYear, week, day) {\n var date = new Date(0)\n date.setUTCFullYear(isoWeekYear, 0, 4)\n var fourthOfJanuaryDay = date.getUTCDay() || 7\n var diff = (week || 0) * 7 + (day || 0) + 1 - fourthOfJanuaryDay\n date.setUTCDate(date.getUTCDate() + diff)\n return date\n}\n\n// Validation functions\n\n// February is null to handle the leap year (using ||)\nvar daysInMonths = [31, null, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]\n\nfunction isLeapYearIndex(year) {\n return year % 400 === 0 || (year % 4 === 0 && year % 100)\n}\n\nfunction validateDate(year, month, date) {\n return !(\n month < 0 ||\n month > 11 ||\n date < 1 ||\n date > (daysInMonths[month] || (isLeapYearIndex(year) ? 29 : 28))\n )\n}\n\nfunction validateDayOfYearDate(year, dayOfYear) {\n return !(dayOfYear < 1 || dayOfYear > (isLeapYearIndex(year) ? 366 : 365))\n}\n\nfunction validateWeekDate(_year, week, day) {\n return !(week < 0 || week > 52 || day < 0 || day > 6)\n}\n\nfunction validateTime(hours, minutes, seconds) {\n return !(\n seconds < 0 ||\n seconds >= 60 ||\n minutes < 0 ||\n minutes >= 60 ||\n hours < 0 ||\n hours >= 25\n )\n}\n\nfunction validateTimezone(_hours, minutes) {\n return !(minutes < 0 || minutes > 59)\n}\n\n\n/***/ }),\n/* 441 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return roundToNearestMinutes; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(278);\n\n\n\n/**\n * @name roundToNearestMinutes\n * @category Minute Helpers\n * @summary Rounds the given date to the nearest minute\n *\n * @description\n * Rounds the given date to the nearest minute\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to round\n * @param {Object} [options] - an object with options.\n * @param {Number} [options.nearestTo=1] - passed to `toDate`. See [toDate]{@link https://date-fns.org/docs/toDate}\n * @returns {Date} the new date rounded to the closest minute\n * @throws {TypeError} 1 argument required\n * @throws {RangeError} `options.nearestTo` must be between 1 and 30\n *\n * @example\n * // Round 10 July 2014 12:12:34 to nearest minute:\n * var result = roundToNearestMinutes(new Date(2014, 6, 10, 12, 12, 34))\n * //=> Thu Jul 10 2014 12:13:00\n */\nfunction roundToNearestMinutes(dirtyDate, options) {\n if (arguments.length < 1) {\n throw new TypeError('1 argument required, but only none provided present')\n }\n\n var nearestTo =\n options && 'nearestTo' in options ? Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(options.nearestTo) : 1\n\n if (nearestTo < 1 || nearestTo > 30) {\n throw new RangeError('`options.nearestTo` must be between 1 and 30')\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var seconds = date.getSeconds() // relevant if nearestTo is 1, which is the default case\n var minutes = date.getMinutes() + seconds / 60\n var roundedMinutes = Math.floor(minutes / nearestTo) * nearestTo\n var remainderMinutes = minutes % nearestTo\n var addedMinutes = Math.round(remainderMinutes / nearestTo) * nearestTo\n\n return new Date(\n date.getFullYear(),\n date.getMonth(),\n date.getDate(),\n date.getHours(),\n roundedMinutes + addedMinutes\n )\n}\n\n\n/***/ }),\n/* 442 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setDate; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name setDate\n * @category Day Helpers\n * @summary Set the day of the month to the given date.\n *\n * @description\n * Set the day of the month to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} dayOfMonth - the day of the month of the new date\n * @returns {Date} the new date with the day of the month set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set the 30th day of the month to 1 September 2014:\n * var result = setDate(new Date(2014, 8, 1), 30)\n * //=> Tue Sep 30 2014 00:00:00\n */\nfunction setDate(dirtyDate, dirtyDayOfMonth) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var dayOfMonth = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDayOfMonth)\n date.setDate(dayOfMonth)\n return date\n}\n\n\n/***/ }),\n/* 443 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setDay; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _addDays_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(277);\n\n\n\n\n/**\n * @name setDay\n * @category Weekday Helpers\n * @summary Set the day of the week to the given date.\n *\n * @description\n * Set the day of the week to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} day - the day of the week of the new date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {Locale} [options.locale=defaultLocale] - the locale object. See [Locale]{@link https://date-fns.org/docs/Locale}\n * @returns {Date} the new date with the day of the week set\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n *\n * @example\n * // Set Sunday to 1 September 2014:\n * var result = setDay(new Date(2014, 8, 1), 0)\n * //=> Sun Aug 31 2014 00:00:00\n *\n * @example\n * // If week starts with Monday, set Sunday to 1 September 2014:\n * var result = setDay(new Date(2014, 8, 1), 0, { weekStartsOn: 1 })\n * //=> Sun Sep 07 2014 00:00:00\n */\nfunction setDay(dirtyDate, dirtyDay, dirtyOptions) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeWeekStartsOn =\n locale && locale.options && locale.options.weekStartsOn\n var defaultWeekStartsOn =\n localeWeekStartsOn == null ? 0 : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeWeekStartsOn)\n var weekStartsOn =\n options.weekStartsOn == null\n ? defaultWeekStartsOn\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.weekStartsOn)\n\n // Test if weekStartsOn is between 0 and 6 _and_ is not NaN\n if (!(weekStartsOn >= 0 && weekStartsOn <= 6)) {\n throw new RangeError('weekStartsOn must be between 0 and 6 inclusively')\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, options)\n var day = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDay)\n var currentDay = date.getDay()\n\n var remainder = day % 7\n var dayIndex = (remainder + 7) % 7\n\n var diff = (dayIndex < weekStartsOn ? 7 : 0) + day - currentDay\n return Object(_addDays_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, diff, options)\n}\n\n\n/***/ }),\n/* 444 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setDayOfYear; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name setDayOfYear\n * @category Day Helpers\n * @summary Set the day of the year to the given date.\n *\n * @description\n * Set the day of the year to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} dayOfYear - the day of the year of the new date\n * @returns {Date} the new date with the day of the year set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set the 2nd day of the year to 2 July 2014:\n * var result = setDayOfYear(new Date(2014, 6, 2), 2)\n * //=> Thu Jan 02 2014 00:00:00\n */\nfunction setDayOfYear(dirtyDate, dirtyDayOfYear) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var dayOfYear = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDayOfYear)\n date.setMonth(0)\n date.setDate(dayOfYear)\n return date\n}\n\n\n/***/ }),\n/* 445 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setHours; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name setHours\n * @category Hour Helpers\n * @summary Set the hours to the given date.\n *\n * @description\n * Set the hours to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} hours - the hours of the new date\n * @returns {Date} the new date with the hours set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set 4 hours to 1 September 2014 11:30:00:\n * var result = setHours(new Date(2014, 8, 1, 11, 30), 4)\n * //=> Mon Sep 01 2014 04:30:00\n */\nfunction setHours(dirtyDate, dirtyHours) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var hours = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyHours)\n date.setHours(hours)\n return date\n}\n\n\n/***/ }),\n/* 446 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setISODay; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _addDays_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(277);\n/* harmony import */ var _getISODay_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(381);\n\n\n\n\n\n/**\n * @name setISODay\n * @category Weekday Helpers\n * @summary Set the day of the ISO week to the given date.\n *\n * @description\n * Set the day of the ISO week to the given date.\n * ISO week starts with Monday.\n * 7 is the index of Sunday, 1 is the index of Monday etc.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} day - the day of the ISO week of the new date\n * @returns {Date} the new date with the day of the ISO week set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set Sunday to 1 September 2014:\n * var result = setISODay(new Date(2014, 8, 1), 7)\n * //=> Sun Sep 07 2014 00:00:00\n */\nfunction setISODay(dirtyDate, dirtyDay) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var day = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDay)\n var currentDay = Object(_getISODay_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(date)\n var diff = day - currentDay\n return Object(_addDays_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, diff)\n}\n\n\n/***/ }),\n/* 447 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setISOWeek; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _getISOWeek_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(382);\n\n\n\n\n/**\n * @name setISOWeek\n * @category ISO Week Helpers\n * @summary Set the ISO week to the given date.\n *\n * @description\n * Set the ISO week to the given date, saving the weekday number.\n *\n * ISO week-numbering year: http://en.wikipedia.org/wiki/ISO_week_date\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} isoWeek - the ISO week of the new date\n * @returns {Date} the new date with the ISO week set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set the 53rd ISO week to 7 August 2004:\n * var result = setISOWeek(new Date(2004, 7, 7), 53)\n * //=> Sat Jan 01 2005 00:00:00\n */\nfunction setISOWeek(dirtyDate, dirtyISOWeek) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var isoWeek = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyISOWeek)\n var diff = Object(_getISOWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date) - isoWeek\n date.setDate(date.getDate() - diff * 7)\n return date\n}\n\n\n/***/ }),\n/* 448 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setMilliseconds; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name setMilliseconds\n * @category Millisecond Helpers\n * @summary Set the milliseconds to the given date.\n *\n * @description\n * Set the milliseconds to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} milliseconds - the milliseconds of the new date\n * @returns {Date} the new date with the milliseconds set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set 300 milliseconds to 1 September 2014 11:30:40.500:\n * var result = setMilliseconds(new Date(2014, 8, 1, 11, 30, 40, 500), 300)\n * //=> Mon Sep 01 2014 11:30:40.300\n */\nfunction setMilliseconds(dirtyDate, dirtyMilliseconds) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var milliseconds = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyMilliseconds)\n date.setMilliseconds(milliseconds)\n return date\n}\n\n\n/***/ }),\n/* 449 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setMinutes; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name setMinutes\n * @category Minute Helpers\n * @summary Set the minutes to the given date.\n *\n * @description\n * Set the minutes to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} minutes - the minutes of the new date\n * @returns {Date} the new date with the minutes set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set 45 minutes to 1 September 2014 11:30:40:\n * var result = setMinutes(new Date(2014, 8, 1, 11, 30, 40), 45)\n * //=> Mon Sep 01 2014 11:45:40\n */\nfunction setMinutes(dirtyDate, dirtyMinutes) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var minutes = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyMinutes)\n date.setMinutes(minutes)\n return date\n}\n\n\n/***/ }),\n/* 450 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setMonth; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _getDaysInMonth_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(293);\n\n\n\n\n/**\n * @name setMonth\n * @category Month Helpers\n * @summary Set the month to the given date.\n *\n * @description\n * Set the month to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} month - the month of the new date\n * @returns {Date} the new date with the month set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set February to 1 September 2014:\n * var result = setMonth(new Date(2014, 8, 1), 1)\n * //=> Sat Feb 01 2014 00:00:00\n */\nfunction setMonth(dirtyDate, dirtyMonth) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var month = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyMonth)\n var year = date.getFullYear()\n var day = date.getDate()\n\n var dateWithDesiredMonth = new Date(0)\n dateWithDesiredMonth.setFullYear(year, month, 15)\n dateWithDesiredMonth.setHours(0, 0, 0, 0)\n var daysInMonth = Object(_getDaysInMonth_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(dateWithDesiredMonth)\n // Set the last day of the new month\n // if the original date was the last day of the longer month\n date.setMonth(month, Math.min(day, daysInMonth))\n return date\n}\n\n\n/***/ }),\n/* 451 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setQuarter; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _setMonth_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(450);\n\n\n\n\n/**\n * @name setQuarter\n * @category Quarter Helpers\n * @summary Set the year quarter to the given date.\n *\n * @description\n * Set the year quarter to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} quarter - the quarter of the new date\n * @returns {Date} the new date with the quarter set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set the 2nd quarter to 2 July 2014:\n * var result = setQuarter(new Date(2014, 6, 2), 2)\n * //=> Wed Apr 02 2014 00:00:00\n */\nfunction setQuarter(dirtyDate, dirtyQuarter) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var quarter = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyQuarter)\n var oldQuarter = Math.floor(date.getMonth() / 3) + 1\n var diff = quarter - oldQuarter\n return Object(_setMonth_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, date.getMonth() + diff * 3)\n}\n\n\n/***/ }),\n/* 452 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setSeconds; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name setSeconds\n * @category Second Helpers\n * @summary Set the seconds to the given date.\n *\n * @description\n * Set the seconds to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} seconds - the seconds of the new date\n * @returns {Date} the new date with the seconds set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set 45 seconds to 1 September 2014 11:30:40:\n * var result = setSeconds(new Date(2014, 8, 1, 11, 30, 40), 45)\n * //=> Mon Sep 01 2014 11:30:45\n */\nfunction setSeconds(dirtyDate, dirtySeconds) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var seconds = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtySeconds)\n date.setSeconds(seconds)\n return date\n}\n\n\n/***/ }),\n/* 453 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setWeek; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _getWeek_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(391);\n\n\n\n\n/**\n * @name setWeek\n * @category Week Helpers\n * @summary Set the local week to the given date.\n *\n * @description\n * Set the local week to the given date, saving the weekday number.\n * The exact calculation depends on the values of\n * `options.weekStartsOn` (which is the index of the first day of the week)\n * and `options.firstWeekContainsDate` (which is the day of January, which is always in\n * the first week of the week-numbering year)\n *\n * Week numbering: https://en.wikipedia.org/wiki/Week#Week_numbering\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} week - the week of the new date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {1|2|3|4|5|6|7} [options.firstWeekContainsDate=1] - the day of January, which is always in the first week of the year\n * @returns {Date} the new date with the local week set\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n *\n * @example\n * // Set the 1st week to 2 January 2005 with default options:\n * var result = setWeek(new Date(2005, 0, 2), 1)\n * //=> Sun Dec 26 2004 00:00:00\n *\n * @example\n * // Set the 1st week to 2 January 2005,\n * // if Monday is the first day of the week,\n * // and the first week of the year always contains 4 January:\n * var result = setWeek(new Date(2005, 0, 2), 1, {\n * weekStartsOn: 1,\n * firstWeekContainsDate: 4\n * })\n * //=> Sun Jan 4 2004 00:00:00\n */\nfunction setWeek(dirtyDate, dirtyWeek, dirtyOptions) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var week = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyWeek)\n var diff = Object(_getWeek_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, dirtyOptions) - week\n date.setDate(date.getDate() - diff * 7)\n return date\n}\n\n\n/***/ }),\n/* 454 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setWeekYear; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n/* harmony import */ var _startOfWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(392);\n/* harmony import */ var _differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(288);\n\n\n\n\n\n/**\n * @name setWeekYear\n * @category Week-Numbering Year Helpers\n * @summary Set the local week-numbering year to the given date.\n *\n * @description\n * Set the local week-numbering year to the given date,\n * saving the week number and the weekday number.\n * The exact calculation depends on the values of\n * `options.weekStartsOn` (which is the index of the first day of the week)\n * and `options.firstWeekContainsDate` (which is the day of January, which is always in\n * the first week of the week-numbering year)\n *\n * Week numbering: https://en.wikipedia.org/wiki/Week#Week_numbering\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} weekYear - the local week-numbering year of the new date\n * @param {Object} [options] - an object with options.\n * @param {0|1|2|3|4|5|6} [options.weekStartsOn=0] - the index of the first day of the week (0 - Sunday)\n * @param {1|2|3|4|5|6|7} [options.firstWeekContainsDate=1] - the day of January, which is always in the first week of the year\n * @returns {Date} the new date with the local week-numbering year set\n * @throws {TypeError} 2 arguments required\n * @throws {RangeError} `options.weekStartsOn` must be between 0 and 6\n * @throws {RangeError} `options.firstWeekContainsDate` must be between 1 and 7\n *\n * @example\n * // Set the local week-numbering year 2004 to 2 January 2010 with default options:\n * var result = setWeekYear(new Date(2010, 0, 2), 2004)\n * //=> Sat Jan 03 2004 00:00:00\n *\n * @example\n * // Set the local week-numbering year 2004 to 2 January 2010,\n * // if Monday is the first day of week\n * // and 4 January is always in the first week of the year:\n * var result = setWeekYear(new Date(2010, 0, 2), 2004, {\n * weekStartsOn: 1,\n * firstWeekContainsDate: 4\n * })\n * //=> Sat Jan 01 2005 00:00:00\n */\nfunction setWeekYear(dirtyDate, dirtyWeekYear, dirtyOptions) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var options = dirtyOptions || {}\n var locale = options.locale\n var localeFirstWeekContainsDate =\n locale && locale.options && locale.options.firstWeekContainsDate\n var defaultFirstWeekContainsDate =\n localeFirstWeekContainsDate == null\n ? 1\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(localeFirstWeekContainsDate)\n var firstWeekContainsDate =\n options.firstWeekContainsDate == null\n ? defaultFirstWeekContainsDate\n : Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(options.firstWeekContainsDate)\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var weekYear = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyWeekYear)\n var diff = Object(_differenceInCalendarDays_index_js__WEBPACK_IMPORTED_MODULE_3__[\"default\"])(date, Object(_startOfWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(date, dirtyOptions))\n var firstWeek = new Date(0)\n firstWeek.setFullYear(weekYear, 0, firstWeekContainsDate)\n firstWeek.setHours(0, 0, 0, 0)\n date = Object(_startOfWeekYear_index_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(firstWeek, dirtyOptions)\n date.setDate(date.getDate() + diff)\n return date\n}\n\n\n/***/ }),\n/* 455 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return setYear; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(279);\n\n\n\n/**\n * @name setYear\n * @category Year Helpers\n * @summary Set the year to the given date.\n *\n * @description\n * Set the year to the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} year - the year of the new date\n * @returns {Date} the new date with the year set\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Set year 2013 to 1 September 2014:\n * var result = setYear(new Date(2014, 8, 1), 2013)\n * //=> Sun Sep 01 2013 00:00:00\n */\nfunction setYear(dirtyDate, dirtyYear) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate)\n var year = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyYear)\n\n // Check if date is Invalid Date because Date.prototype.setFullYear ignores the value of Invalid Date\n if (isNaN(date)) {\n return new Date(NaN)\n }\n\n date.setFullYear(year)\n return date\n}\n\n\n/***/ }),\n/* 456 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return startOfDecade; });\n/* harmony import */ var _toDate_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(279);\n\n\n/**\n * @name startOfDecade\n * @category Decade Helpers\n * @summary Return the start of a decade for the given date.\n *\n * @description\n * Return the start of a decade for the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the original date\n * @returns {Date} the start of a decade\n * @throws {TypeError} 1 argument required\n *\n * @example\n * // The start of a decade for 21 October 2015 00:00:00:\n * var result = startOfDecade(new Date(2015, 9, 21, 00, 00, 00))\n * //=> Jan 01 2010 00:00:00\n */\nfunction startOfDecade(dirtyDate) {\n if (arguments.length < 1) {\n throw new TypeError(\n '1 argument required, but only ' + arguments.length + ' present'\n )\n }\n\n var date = Object(_toDate_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyDate)\n var year = date.getFullYear()\n var decade = Math.floor(year / 10) * 10\n date.setFullYear(decade, 0, 1)\n date.setHours(0, 0, 0, 0)\n return date\n}\n\n\n/***/ }),\n/* 457 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return subDays; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addDays_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(277);\n\n\n\n/**\n * @name subDays\n * @category Day Helpers\n * @summary Subtract the specified number of days from the given date.\n *\n * @description\n * Subtract the specified number of days from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of days to be subtracted\n * @returns {Date} the new date with the days subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 10 days from 1 September 2014:\n * var result = subDays(new Date(2014, 8, 1), 10)\n * //=> Fri Aug 22 2014 00:00:00\n */\nfunction subDays(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addDays_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, -amount)\n}\n\n\n/***/ }),\n/* 458 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return subHours; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addHours_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(280);\n\n\n\n/**\n * @name subHours\n * @category Hour Helpers\n * @summary Subtract the specified number of hours from the given date.\n *\n * @description\n * Subtract the specified number of hours from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of hours to be subtracted\n * @returns {Date} the new date with the hours subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 2 hours from 11 July 2014 01:00:00:\n * var result = subHours(new Date(2014, 6, 11, 1, 0), 2)\n * //=> Thu Jul 10 2014 23:00:00\n */\nfunction subHours(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addHours_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, -amount)\n}\n\n\n/***/ }),\n/* 459 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return subMinutes; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addMinutes_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(291);\n\n\n\n/**\n * @name subMinutes\n * @category Minute Helpers\n * @summary Subtract the specified number of minutes from the given date.\n *\n * @description\n * Subtract the specified number of minutes from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of minutes to be subtracted\n * @returns {Date} the new date with the minutes subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 30 minutes from 10 July 2014 12:00:00:\n * var result = subMinutes(new Date(2014, 6, 10, 12, 0), 30)\n * //=> Thu Jul 10 2014 11:30:00\n */\nfunction subMinutes(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addMinutes_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, -amount)\n}\n\n\n/***/ }),\n/* 460 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return subMonths; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addMonths_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(292);\n\n\n\n/**\n * @name subMonths\n * @category Month Helpers\n * @summary Subtract the specified number of months from the given date.\n *\n * @description\n * Subtract the specified number of months from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of months to be subtracted\n * @returns {Date} the new date with the months subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 5 months from 1 February 2015:\n * var result = subMonths(new Date(2015, 1, 1), 5)\n * //=> Mon Sep 01 2014 00:00:00\n */\nfunction subMonths(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addMonths_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, -amount)\n}\n\n\n/***/ }),\n/* 461 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return subQuarters; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addQuarters_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(294);\n\n\n\n/**\n * @name subQuarters\n * @category Quarter Helpers\n * @summary Subtract the specified number of year quarters from the given date.\n *\n * @description\n * Subtract the specified number of year quarters from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of quarters to be subtracted\n * @returns {Date} the new date with the quarters subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 3 quarters from 1 September 2014:\n * var result = subQuarters(new Date(2014, 8, 1), 3)\n * //=> Sun Dec 01 2013 00:00:00\n */\nfunction subQuarters(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addQuarters_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, -amount)\n}\n\n\n/***/ }),\n/* 462 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return subSeconds; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addSeconds_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(295);\n\n\n\n/**\n * @name subSeconds\n * @category Second Helpers\n * @summary Subtract the specified number of seconds from the given date.\n *\n * @description\n * Subtract the specified number of seconds from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of seconds to be subtracted\n * @returns {Date} the new date with the seconds subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 30 seconds from 10 July 2014 12:45:00:\n * var result = subSeconds(new Date(2014, 6, 10, 12, 45, 0), 30)\n * //=> Thu Jul 10 2014 12:44:30\n */\nfunction subSeconds(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addSeconds_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, -amount)\n}\n\n\n/***/ }),\n/* 463 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return subWeeks; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addWeeks_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(296);\n\n\n\n/**\n * @name subWeeks\n * @category Week Helpers\n * @summary Subtract the specified number of weeks from the given date.\n *\n * @description\n * Subtract the specified number of weeks from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of weeks to be subtracted\n * @returns {Date} the new date with the weeks subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 4 weeks from 1 September 2014:\n * var result = subWeeks(new Date(2014, 8, 1), 4)\n * //=> Mon Aug 04 2014 00:00:00\n */\nfunction subWeeks(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addWeeks_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, -amount)\n}\n\n\n/***/ }),\n/* 464 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return subYears; });\n/* harmony import */ var _lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(278);\n/* harmony import */ var _addYears_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(297);\n\n\n\n/**\n * @name subYears\n * @category Year Helpers\n * @summary Subtract the specified number of years from the given date.\n *\n * @description\n * Subtract the specified number of years from the given date.\n *\n * ### v2.0.0 breaking changes:\n *\n * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes).\n *\n * @param {Date|Number} date - the date to be changed\n * @param {Number} amount - the amount of years to be subtracted\n * @returns {Date} the new date with the years subtracted\n * @throws {TypeError} 2 arguments required\n *\n * @example\n * // Subtract 5 years from 1 September 2014:\n * var result = subYears(new Date(2014, 8, 1), 5)\n * //=> Tue Sep 01 2009 00:00:00\n */\nfunction subYears(dirtyDate, dirtyAmount) {\n if (arguments.length < 2) {\n throw new TypeError(\n '2 arguments required, but only ' + arguments.length + ' present'\n )\n }\n\n var amount = Object(_lib_toInteger_index_js__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(dirtyAmount)\n return Object(_addYears_index_js__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(dirtyDate, -amount)\n}\n\n\n/***/ }),\n/* 465 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return rotateDayIndexes; });\n/**\n * Given a start day of week, return an array of day indexes starting at that given day.\n */\nvar days = [0, 1, 2, 3, 4, 5, 6];\nfunction rotateDayIndexes(startOfWeek) {\n function mapDay(_, i) {\n return days[(i + startOfWeek) % 7];\n }\n\n return days.map(mapDay);\n} //# sourceMappingURL=rotateDayIndexes.js.map\n\n/***/ }),\n/* 466 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var date_fns__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(276);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n}; // inspired by this library https://github.com/deepsweet/mnth\n// it cannot be used directly because of this issue: https://github.com/deepsweet/mnth/issues/2\n\n\n\nvar DAYS_IN_WEEK = 7;\n\nvar generateMonthGrid = function (date, options) {\n var firstDay = __assign({\n firstDay: 1\n }, options).firstDay;\n\n var daysInMonth = Object(date_fns__WEBPACK_IMPORTED_MODULE_0__[\"getDaysInMonth\"])(date);\n var firstDateOfMonth = Object(date_fns__WEBPACK_IMPORTED_MODULE_0__[\"startOfMonth\"])(date);\n var lastDateOfMonth = Object(date_fns__WEBPACK_IMPORTED_MODULE_0__[\"endOfMonth\"])(date);\n var firstDayOfMonth = Object(date_fns__WEBPACK_IMPORTED_MODULE_0__[\"getDay\"])(firstDateOfMonth);\n var lastDayOfMonth = Object(date_fns__WEBPACK_IMPORTED_MODULE_0__[\"getDay\"])(lastDateOfMonth);\n var daysToPrepend = (firstDayOfMonth - firstDay + DAYS_IN_WEEK) % DAYS_IN_WEEK;\n var daysToAppend = (DAYS_IN_WEEK - 1 - lastDayOfMonth + firstDay) % DAYS_IN_WEEK;\n var month = [];\n var week = [];\n\n for (var i = 1 - daysToPrepend; i <= daysInMonth + daysToAppend + 1; i++) {\n if (week.length <= 7) {\n if (i <= 0) {\n week.push(Object(date_fns__WEBPACK_IMPORTED_MODULE_0__[\"addDays\"])(firstDateOfMonth, i - 1));\n } else if (i > daysInMonth) {\n week.push(Object(date_fns__WEBPACK_IMPORTED_MODULE_0__[\"addDays\"])(lastDateOfMonth, i - daysInMonth));\n } else {\n week.push(Object(date_fns__WEBPACK_IMPORTED_MODULE_0__[\"setDate\"])(date, i));\n }\n }\n\n if (week.length === 7) {\n month.push(week);\n week = [];\n }\n }\n\n return month;\n};\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (generateMonthGrid); //# sourceMappingURL=generate-month-grid.js.map\n\n/***/ }),\n/* 467 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"mergeLocales\", function() { return mergeLocales; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"normalizeLocale\", function() { return normalizeLocale; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n\n\nvar getHtmlElement = function () {\n return document.querySelector('html');\n};\n\nfunction getBrowserLocale() {\n return new Intl.DateTimeFormat().resolvedOptions().locale;\n}\n\nfunction checkLocale(locale) {\n // Support underscore-delimeted locales, as provided by mezzanine\n locale = locale && locale.replace(/^([a-z]{2})_/, '$1-'); // Check that the value matches aa-BB pattern\n // TODO: support full BCP 47 spec?\n\n if (locale && !locale.match(/^[a-z]{2}(-[A-Z]{2})?$/)) {\n _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"logger\"].warn(\"Invalid locale provided: \" + locale + \". Falling back to default\");\n locale = '';\n }\n\n return locale;\n}\n\nfunction mergeLocales(locale, fullLocale) {\n var isShort = locale.length === 2;\n\n if (isShort && fullLocale.indexOf(locale) === 0) {\n return fullLocale;\n }\n\n return locale;\n}\nfunction normalizeLocale(locale) {\n locale = checkLocale(locale);\n var browserLocale = getBrowserLocale();\n\n if (locale) {\n return mergeLocales(locale, browserLocale);\n }\n\n var htmlLocale = checkLocale(getHtmlElement().getAttribute('lang'));\n\n if (htmlLocale) {\n return mergeLocales(htmlLocale, browserLocale);\n }\n\n return browserLocale;\n} //# sourceMappingURL=locales.js.map\n\n/***/ }),\n/* 468 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"isoToDisplay\", function() { return isoToDisplay; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"displayToIso\", function() { return displayToIso; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"daysInMonth\", function() { return daysInMonth; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"parseDate\", function() { return parseDate; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"formatDate\", function() { return formatDate; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"memoizedDate\", function() { return memoizedDate; });\nvar isoToDisplay = function (value) {\n return value.replace(/-/g, '/');\n};\nvar displayToIso = function (value) {\n return value.replace(/\\//g, '-');\n};\nvar daysInMonth = function (date) {\n return new Date(date.getFullYear(), date.getMonth() + 1, 0).getDate();\n};\n\nvar padLeftZeros = function (value, length) {\n while (value.length < length) {\n value = \"0\" + value;\n }\n\n return value;\n}; // we cannot use new Date(string) constructor, because it produces GMT time that may have different date than the local\n\n\nvar parseDate = function (value) {\n var _a = value.split('-'),\n year = _a[0],\n month = _a[1],\n day = _a[2];\n\n return new Date(Number(year), (Number(month) || 1) - 1, Number(day) || 1);\n}; // we cannot use Date.toISOString because it produces GMT time where the date can be different than local\n\nvar formatDate = function (value) {\n var year = value.getFullYear();\n var month = padLeftZeros(\"\" + (value.getMonth() + 1), 2);\n var date = padLeftZeros(\"\" + value.getDate(), 2);\n return year + \"-\" + month + \"-\" + date;\n}; // reuse date instances, to allow shallow equality checking\n\nvar memoCache = {};\nvar memoizedDate = function (key, date) {\n var parsed = date && date.length > 4 && parseDate(date);\n\n if (!(memoCache[key] && parsed && memoCache[key].getTime() === parsed.getTime())) {\n memoCache[key] = parsed;\n }\n\n return memoCache[key];\n}; //# sourceMappingURL=date.js.map\n\n/***/ }),\n/* 469 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(470);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _expandable_section__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(471);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _expandable_section__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 470 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 471 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_expandable_section_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(472);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_expandable_section_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"ExpandableSection\"]));\n\n/***/ }),\n/* 472 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ExpandableSection\", function() { return ExpandableSection; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _icon_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(52);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\nvar lastGeneratedId = 0;\n\nfunction nextGeneratedId() {\n return 'awsui-expandable-section-' + lastGeneratedId++;\n}\n\nvar ExpandableSection = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-expandable-section', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n callbacks: {\n initialized: function () {\n this.controlId = nextGeneratedId();\n this.triggerControlId = this.controlId + \"-trigger\";\n }\n },\n properties: {\n // If true, the component will display the content area. If false, the component will hide\n // the content area.\n expanded: {\n type: 'boolean'\n },\n // The possible variants of an expandable section are the following\n // * `default`: can be used in any context\n // * `borderless`: supposed to be used in form section footers\n // * `container`: supposed to be used in a detail page along with other containers\n // (please check `awsui-util-container` examples for further detail)\n // * `navigation`: supposed to be used in the navigation panel with anchors and custom styled content,\n // it comes without any styles\n variant: {\n type: 'string',\n valid: ['default', 'borderless', 'container', 'navigation'],\n defaultValue: 'default'\n }\n },\n regions: {\n // Primary content displayed in the expandable section element.\n content: {\n isDefault: true\n },\n // Heading displayed above the content text.\n header: {}\n },\n events: {\n // Fired when the state has changed (it has been expanded or collapsed).\n // The event `detail` contains the current value of the `expanded` property.\n change: {\n bubbles: true,\n cancelable: false,\n detailType: 'ExpandableSection.ChangeDetail'\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var isContainer = this.variant === 'container';\n var isNavigation = this.variant === 'navigation';\n\n var applyFocusableAttributes = function (attributes) {\n attributes['aria-controls'] = _this.controlId;\n attributes['aria-expanded'] = _this.expanded.toString();\n attributes['override-focus'] = true;\n return attributes;\n };\n\n var header = function () {\n var eventHandler = function () {\n _this.expanded = !_this.expanded;\n\n _this.__fireEvent('change', {\n expanded: _this.expanded\n });\n };\n\n var clickHandler = function () {\n eventHandler();\n };\n\n var headerCb = new h.ClassBuilder(_this).addComponentClass('header').addComponentClass(\"header-\" + _this.variant).addComponentClass('header-expanded', _this.expanded).addClass('awsui-util-container-header', isContainer);\n var iconCb = new h.ClassBuilder(_this).addComponentClass('header-icon').addComponentClass(\"header-icon-\" + _this.variant);\n var headerAttributes = {\n onclick: clickHandler,\n id: _this.triggerControlId\n };\n var iconAttributes = {}; // Navigation must contain anchors, so we make only icon focusable\n\n var HeaderTag = 'DIV';\n var IconTag = 'DIV';\n\n if (isNavigation) {\n applyFocusableAttributes(iconAttributes);\n iconCb.addComponentClass('header-icon-focusable').addComponentClass('trigger');\n IconTag = 'BUTTON';\n iconAttributes.type = 'button';\n iconAttributes['aria-labelledby'] = _this.triggerControlId;\n } else {\n applyFocusableAttributes(headerAttributes);\n headerCb.addComponentClass('trigger');\n HeaderTag = 'BUTTON';\n headerAttributes.type = 'button';\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(HeaderTag, __assign({}, headerAttributes, {\n className: headerCb.toClassName()\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(IconTag, __assign({}, iconAttributes, {\n className: iconCb.toClassName()\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_icon_src__WEBPACK_IMPORTED_MODULE_1__[\"Icon\"], {\n name: _this.expanded ? 'caret-down-filled' : 'caret-right-filled'\n })), h.region('header'));\n };\n\n var content = function () {\n var cb = new h.ClassBuilder(_this).addComponentClass('content').addComponentClass(\"content-\" + _this.variant).addComponentClass('content-expanded', _this.expanded);\n var attributes = {\n class: cb.toClassName(),\n id: _this.controlId,\n role: 'region',\n 'aria-labelledby': _this.triggerControlId\n };\n return h.region('content', 'div', attributes);\n };\n\n var cb = new h.ClassBuilder(this).addClass('awsui-expandable-section').addClass('awsui-util-container', isContainer);\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: cb.toClassName()\n }, [header(), content()]);\n }\n}); //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 473 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(474);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _flash__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(475);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _flash__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 474 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 475 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_flash_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(476);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_flash_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Flash\"]));\n\n/***/ }),\n/* 476 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _flash__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(477);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Flash\", function() { return _flash__WEBPACK_IMPORTED_MODULE_0__[\"Flash\"]; });\n\n/* harmony import */ var _flashbar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(478);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Flashbar\", function() { return _flashbar__WEBPACK_IMPORTED_MODULE_1__[\"Flashbar\"]; });\n\n\n //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 477 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Flash\", function() { return Flash; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _button_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48);\n/* harmony import */ var _icon_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52);\n/* harmony import */ var _spinner_src__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(115);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\n\n\nvar Flash = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-flash', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n events: {\n // Fired when the user clicks on the close icon that is displayed\n // when the `dismissible` property is set to `true`.\n dismiss: {\n cancelable: true\n },\n // Fired when the user clicks on the action button.\n buttonClick: {\n cancelable: false\n }\n },\n properties: {\n // Indicates the type of the message to be displayed.\n type: {\n nullable: false,\n valid: ['success', 'error', 'warning', 'info'],\n defaultValue: 'info'\n },\n // Replaces the icon with a spinner and forces the type of alert to `info`.\n loading: {\n type: 'boolean'\n },\n // Determines whether the message is displayed to the user or not.\n visible: {\n type: 'boolean',\n defaultValue: true\n },\n // If true, the component will include a close button in the UI.\n // By default, the close button is not included in the UI.\n //\n // Clicking on this button will fire the `awsui:dismiss` event and will set the `visible` property to false.\n dismissible: {\n type: 'boolean',\n nullable: true\n },\n // When set, an action button will be displayed in the message area\n // and the close button will also be displayed, unless the `dismissible` property\n // is explicitly set to `false`.\n //\n // An`awsui:buttonClick` event will be triggered when the user clicks on it.\n buttonText: {\n type: 'string'\n },\n // Adds an `aria-label` to the dismiss button for better accessibility\n dismissLabel: {\n type: 'string'\n }\n },\n regions: {\n // Heading text.\n header: {},\n // Primary text displayed in the element.\n content: {\n isDefault: true\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var dismissButton = function () {\n if (!_this.dismissible) {\n return;\n }\n\n var dismissFn = function () {\n _this.__fireEvent('dismiss', null, {\n onNotCanceled: function () {\n return _this.visible = false;\n }\n });\n };\n\n var attributes = {\n variant: 'icon',\n icon: 'close',\n formAction: 'none',\n click: dismissFn,\n label: _this.dismissLabel\n };\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-flash-dismiss\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_button_src__WEBPACK_IMPORTED_MODULE_1__[\"Button\"], __assign({}, attributes)));\n };\n\n var actionButton = function () {\n if (!_this.buttonText) {\n return;\n }\n\n var trigger = function () {\n return _this.__fireEvent('buttonClick');\n };\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_button_src__WEBPACK_IMPORTED_MODULE_1__[\"Button\"], {\n text: _this.buttonText,\n click: trigger,\n className: \"awsui-flash-action-button\",\n formAction: \"none\"\n });\n };\n\n var iconType = {\n success: 'status-positive',\n warning: 'status-warning',\n info: 'status-info',\n error: 'status-negative'\n }[this.type];\n var icon = this.loading ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_spinner_src__WEBPACK_IMPORTED_MODULE_3__[\"Spinner\"], null) : _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_icon_src__WEBPACK_IMPORTED_MODULE_2__[\"Icon\"], {\n name: iconType\n });\n var cb = new h.ClassBuilder(this).addClass('awsui-flash').addClass('awsui-flash-hidden', !this.visible).addClass('awsui-flash-type-info', this.loading).addPropertyValueClass('type', !this.loading);\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: cb.toClassName(),\n \"aria-hidden\": !this.visible\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-flash-icon\"\n }, icon), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-flash-body\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-flash-message\"\n }, h.region('header', 'div', {\n className: 'awsui-flash-header'\n }), h.region('content', 'div')), actionButton()), dismissButton());\n }\n}); //# sourceMappingURL=flash.js.map\n\n/***/ }),\n/* 478 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Flashbar\", function() { return Flashbar; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _keysMap__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(479);\n/* harmony import */ var _flash__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(477);\n\n\n // A flash bar generates a list of flash messages (see awsui-flash component) based on an\n// object representation of the component.\n\nvar Flashbar = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-flashbar', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n properties: {\n // List of flash message definition objects. The flash messages will be\n // displayed in the same order as you provide them. All the available\n // properties of the flash component are available here as well, except for\n // `visible`.\n //\n // **AngularJS:**\n // Internally, the `dismiss` and `buttonClick` functions do not invoke a digest loop.\n // Therefore, it is your responsibility to manually call `$scope.$apply`\n // if you need to.\n items: {\n type: 'array',\n itemTypes: ['Flashbar.MessageDefinition'],\n onChange: function () {\n this.keysMap.updateKeys(this.items);\n }\n }\n },\n callbacks: {\n initialized: function () {\n this.keysMap = Object(_keysMap__WEBPACK_IMPORTED_MODULE_1__[\"default\"])();\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var hasItems = Boolean(this.items) && this.items.length > 0;\n\n if (!hasItems) {\n return;\n }\n\n var items = this.items.map(function (item, index) {\n var content = item.content ? _this.renderToMithril(\"flash-content-\" + index, item.content) : '';\n var header = item.header ? _this.renderToMithril(\"flash-header-\" + index, item.header) : '';\n var dismissible = item.dismissible === undefined ? null : item.dismissible;\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_flash__WEBPACK_IMPORTED_MODULE_2__[\"Flash\"], {\n key: _this.keysMap.getKey(item),\n dismissible: dismissible,\n loading: Boolean(item.loading),\n type: item.type || 'info',\n content: content,\n header: header,\n buttonText: item.buttonText,\n buttonClick: item.buttonClick,\n dismiss: item.dismiss,\n dismissLabel: item.dismissLabel\n });\n });\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-flashbar\"\n }, items);\n }\n}); //# sourceMappingURL=flashbar.js.map\n\n/***/ }),\n/* 479 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"KeysMap\", function() { return KeysMap; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"KeysMapStub\", function() { return KeysMapStub; });\nvar KeysMap =\n/** @class */\nfunction () {\n function KeysMap() {\n this.keys = new Map();\n this.keysCounter = 0;\n }\n\n KeysMap.prototype.getKey = function (item) {\n return this.keys.get(item);\n };\n\n KeysMap.prototype.updateKeys = function (items) {\n var _this = this;\n\n var oldKeys = this.keys;\n this.keys = items.reduce(function (keys, item) {\n var newKey = oldKeys.get(item) || \"item-\" + _this.keysCounter++;\n keys.set(item, newKey);\n return keys;\n }, new Map());\n };\n\n return KeysMap;\n}();\n\n // For browsers not supporting Map interface, mainly phantomjs.\n// Always creates a new key, vdom is never reused\n\nvar KeysMapStub =\n/** @class */\nfunction () {\n function KeysMapStub() {\n this.keysCounter = 0;\n }\n\n KeysMapStub.prototype.getKey = function (item) {\n return \"item-\" + this.keysCounter++;\n };\n\n KeysMapStub.prototype.updateKeys = function (items) {// noop\n };\n\n return KeysMapStub;\n}();\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (function () {\n return typeof Map === 'function' ? new KeysMap() : new KeysMapStub();\n}); //# sourceMappingURL=keysMap.js.map\n\n/***/ }),\n/* 480 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(481);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _flashbar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(482);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _flashbar__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 481 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 482 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_flash_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(476);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_flash_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Flashbar\"]));\n\n/***/ }),\n/* 483 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(484);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _form_field__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(485);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _form_field__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 484 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 485 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_form_field_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(138);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_form_field_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"FormField\"]));\n\n/***/ }),\n/* 486 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(487);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _form_section__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(488);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _form_section__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 487 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 488 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_form_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(489);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_form_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"FormSection\"]));\n\n/***/ }),\n/* 489 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Form\", function() { return Form; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _alert_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(47);\n/* harmony import */ var _form_section__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(490);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"FormSection\", function() { return _form_section__WEBPACK_IMPORTED_MODULE_2__[\"FormSection\"]; });\n\n\n\n\nvar Form = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-form', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n regions: {\n // Rendered inside the form.\n content: {\n isDefault: true\n },\n // Title of the form (mandatory).\n header: {},\n // General description of the form (optional).\n description: {},\n // Additional form level validation message (optional).\n errorText: {},\n // Form action buttons are supposed to be placed here.\n actions: {}\n },\n render: function (m, h) {\n var _this = this;\n\n var errorText = function () {\n if (!_this.errorText) {\n return;\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-form-error\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_alert_src__WEBPACK_IMPORTED_MODULE_1__[\"Alert\"], {\n type: \"error\",\n content: h.region('errorText')\n }));\n };\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-form\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-form-header\"\n }, h.region('header', 'div', {\n className: 'awsui-form-title'\n }), h.region('description', 'div', {\n className: 'awsui-form-description'\n })), h.region('content', 'div', {\n className: 'awsui-form-content'\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n \"aria-live\": \"assertive\"\n }, errorText()), h.region('actions', 'div', {\n className: 'awsui-form-actions'\n }));\n }\n}); //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 490 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"FormSection\", function() { return FormSection; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _expandable_section_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(472);\n\n\nvar FormSection = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-form-section', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n properties: {\n // Indicates whether the section should be expandable.\n // Expandable sections are supposed to contain additional optional settings.\n expandable: {\n type: 'boolean'\n },\n // Indicates whether the section is expanded or not\n expanded: {\n type: 'boolean'\n }\n },\n regions: {\n // Rendered inside the form section.\n content: {\n isDefault: true\n },\n // Title of the form section (mandatory).\n header: {},\n // General description about the form section (optional).\n description: {},\n // Footer of the form section. This is where additional settings are supposed to be placed.\n // Please check the borderless variant of expandable sections for further information.\n footer: {}\n },\n events: {\n // Fired when the state of the expandable form section changes (collapsed or expanded).\n // The event `detail`contains the current value of the `expanded` property.\n change: {\n bubbles: true,\n cancelable: false,\n detailType: 'FormSection.ChangeDetail'\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var header = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", null, h.region('header'), h.region('description', 'div', {\n className: 'awsui-util-container-header-description'\n }));\n\n var content = h.region('content');\n\n var expandableSection = function () {\n var changeHandler = function (evt) {\n evt.stopPropagation();\n _this.expanded = !_this.expanded;\n\n _this.__fireEvent('change', {\n expanded: _this.expanded\n });\n };\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_expandable_section_src__WEBPACK_IMPORTED_MODULE_1__[\"ExpandableSection\"], {\n variant: \"container\",\n header: header,\n content: content,\n expanded: _this.expanded,\n change: changeHandler\n });\n };\n\n var defaultSection = function () {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-util-container\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-util-container-header\"\n }, header), content, h.region('footer', 'div', {\n className: 'awsui-util-container-footer'\n }));\n };\n\n return this.expandable ? expandableSection() : defaultSection();\n }\n}); //# sourceMappingURL=form-section.js.map\n\n/***/ }),\n/* 491 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(492);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _form__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(493);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _form__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 492 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 493 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_form_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(489);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_form_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Form\"]));\n\n/***/ }),\n/* 494 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(495);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _icon__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(496);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _icon__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 495 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 496 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_icon_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_icon_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Icon\"]));\n\n/***/ }),\n/* 497 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(498);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _input__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(499);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _input__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 498 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 499 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_input_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(142);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_input_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Input\"]));\n\n/***/ }),\n/* 500 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(501);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _modal__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(502);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _modal__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 501 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 502 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_modal_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(216);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_modal_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Modal\"]));\n\n/***/ }),\n/* 503 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(504);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _multiselect__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(505);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _multiselect__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 504 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 505 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_select_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_select_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Multiselect\"]));\n\n/***/ }),\n/* 506 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _multiselect__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(507);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Multiselect\", function() { return _multiselect__WEBPACK_IMPORTED_MODULE_0__[\"Multiselect\"]; });\n\n/* harmony import */ var _select__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(518);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Select\", function() { return _select__WEBPACK_IMPORTED_MODULE_1__[\"Select\"]; });\n\n\n //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 507 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Multiselect\", function() { return Multiselect; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _dropdown_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(147);\n/* harmony import */ var _spinner_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(115);\n/* harmony import */ var _token_src__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(208);\n/* harmony import */ var _trigger__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(508);\n/* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(509);\n/* harmony import */ var _utils_multiselect_controller__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(510);\n/* harmony import */ var _dropdown_src_utils_options__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(152);\n/* harmony import */ var _utils_dropdown_footer__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(516);\n/* harmony import */ var _utils_deprecation_warnings__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(517);\n\n\n\n\n\n\n\n\n\n\nvar deprecationWarnings = Object(_utils_deprecation_warnings__WEBPACK_IMPORTED_MODULE_9__[\"default\"])('awsui-multiselect');\nvar lastGeneratedId = 0;\n\nvar nextGeneratedId = function () {\n return \"awsui-multiselect-\" + lastGeneratedId++;\n};\n\nvar Multiselect = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-multiselect', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n callbacks: {\n initialized: function () {\n this.controller = new _utils_multiselect_controller__WEBPACK_IMPORTED_MODULE_6__[\"default\"](this);\n\n if (!this.controlId) {\n this.controlId = nextGeneratedId();\n }\n },\n attached: function () {\n this.controller.attached();\n },\n detached: function () {\n this.controller.detached();\n }\n },\n regions: {\n // Displayed when there are no options.\n empty: {},\n // Displayed for `filteringType=\"auto\"` when there are no matches for the filtering.\n noMatch: {}\n },\n properties: {\n // Whether the whole select should be disabled.\n //\n // **AngularJS:** Use `data-disabled` instead.\n disabled: {\n type: 'boolean',\n onChange: function () {\n if (this.disabled) {\n this.controller.closeDropdown();\n }\n }\n },\n // Renders the control in invalid state.\n invalid: {\n type: 'boolean',\n nullable: true\n },\n // Enable filtering for dropdown options:\n // * `none`: do not display filtering input.\n // * `auto`: component will automatically filter options based on user input.\n // * `manual`: set up `delayedFilteringChange` event listener and filter items on your side or request\n // them from server\n filteringType: {\n type: 'string',\n valid: ['none', 'auto', 'manual'],\n defaultValue: 'none'\n },\n // Whether option filtering should be enabled.\n //\n // **Deprecated:** Use `filteringType=\"auto\"` instead.\n enableFiltering: {\n type: 'boolean',\n onChange: function (oldValue, newValue) {\n if (newValue) {\n deprecationWarnings.enableFiltering();\n }\n }\n },\n // Placeholder displayed in the filtering input if filtering is enabled.\n filteringPlaceholder: {\n type: 'string'\n },\n // Adds aria label on the built-in filtering input if filtering is enabled.\n filteringLabel: {\n type: 'string'\n },\n // Specifies the current status of data fetching:\n // * `pending`: no request in progress, but there may be more items loaded.\n // * `loading`: data fetching is in progress.\n // * `finished`: pagination reached the end, no more requests expected.\n // * `error`: an error occurred during fetch. You should provide user an option to recover, see examples\n // for more details.\n statusType: {\n type: 'string',\n valid: ['pending', 'loading', 'finished', 'error'],\n defaultValue: 'finished'\n },\n // Renders the control in loading state.\n //\n // **Deprecated:** Use `statusType=\"loading\"` instead.\n loading: {\n type: 'boolean',\n onChange: function (oldValue, newValue) {\n if (newValue) {\n deprecationWarnings.loading();\n }\n }\n },\n // Text to be displayed when in loading state.\n loadingText: {\n type: 'string'\n },\n // Text to be displayed at the bottom of the dropdown menu once pagination has reached the end.\n finishedText: {\n type: 'string'\n },\n // Text to be displayed in case of a data fetching error. Make sure to also provide the `recoveryText`,\n // see its documentation for more details.\n errorText: {\n type: 'string'\n },\n // Text for the recovery button. Displayed next to the error text.\n // Use the `recoveryClick` event to do a recovery action, for example, retrying the request.\n recoveryText: {\n type: 'string'\n },\n // Array of objects, each can represent a simple option with the following properties:\n //\n // * `label` [string]: A short title shown in the select to describe this item.\n // * `disabled` [boolean]: Whether this item is disabled.\n //\n // Extended options can provide further guidance about each option by specifying further\n // properties:\n // * `id` [string]: The id of the select when this item is selected.\n // * `labelTag` [string]: A tag giving further guidance shown pulled right next to the label.\n // * `description` [string]: Further explanatory guidance about the option below the label.\n // * `iconName` [string]: The name of the icon, use with awsui icons.\n // * `iconUrl` [string]: The url to the icon, use with custom icons.\n // * `iconAlt` [string]: The alternate text, use with custom icons.\n // * `tags` [string array]: A list of tags giving further guidance about the option.\n // * `filteringTags` [string array]: A list of metadata that is never displayed unless one of\n // the tags gives a match for the user filtering.\n //\n // Options can be grouped by specifying the given option as a group of options:\n //\n // * `label` [string]: description of the group.\n // * `options` [array]: array of simple options.\n // * `disabled` [boolean]: whether the whole group is disabled.\n //\n // Notice that only one level of options nesting is supported.\n options: {\n type: 'array',\n itemTypes: ['Select.IOption', 'Select.Option', 'Select.OptionsGroup']\n },\n // Hint text displayed in the field when no option has been selected.\n placeholder: {\n type: 'string'\n },\n // The currently selected options.\n selectedOptions: {\n type: 'array',\n itemTypes: ['Select.Option'],\n nullable: true\n },\n // Ids of the currently selected options.\n //\n // **Deprecated:** Use `selectedOptions` instead.\n selectedIds: {\n type: 'array',\n itemTypes: ['string'],\n nullable: true,\n onChange: function (oldValue, newValue) {\n if (newValue) {\n deprecationWarnings.selectedIds();\n }\n }\n },\n // Whether to keep the dropdown list open after selecting an item.\n // The default value is true.\n keepOpen: {\n type: 'boolean',\n defaultValue: true\n },\n // Id for the trigger component. It defaults to an automatically generated id.\n controlId: {\n type: 'string',\n announceValue: true\n },\n // Adds an aria-label to the token deselection button\n deselectLabel: {\n type: 'function',\n functionType: 'Select.deselectLabel'\n },\n // Localized string that describes an option as selected.\n // This is required to provide a good screen reader experience. See the\n // [accessibility guidelines](/system/components/awsui-multiselect/?tabId=usage#accessibility-guidelines)\n // for more details.\n selectedLabel: {\n type: 'string'\n },\n // Optionally overrides the element that is announced to screen readers\n // when the highlighted option changes. By default, this announces\n // the option's name and properties, as well as its selected state if\n // the selectedLabel property is defined.\n // The highlighted option is provided, as well as its group (if groups\n // are used and it differs from the group of the previously highlighted option).\n //\n // See the\n // [accessibility guidelines](/system/components/awsui-select/?tabId=usage#accessibility-guidelines)\n // fore more details.\n highlightedOptionDescription: {\n type: 'function',\n functionType: 'Select.HighlightedOptionDescription'\n },\n // The currently selected option.\n __selectedOptions: {\n type: 'array',\n itemTypes: ['Select.Option']\n },\n // A flag showing whether the dropdown is open.\n __open: {\n type: 'boolean'\n },\n // The currently highlighted option in the dropwdown. The browser does not\n // consider it as an active element.\n __highlightedOption: {\n type: 'object',\n objectType: 'Select.Option'\n },\n // The current filtering input.\n __filteringText: {\n type: 'string'\n },\n // The option that was last used for selection/deselection when `keepOpen` is true.\n __focusedOption: {\n type: 'object',\n objectType: 'Select.Option'\n },\n // Adds aria-label on the trigger.\n label: {\n type: 'string'\n },\n // Adds aria-labelledby on the trigger. Use this only with form fields that\n // contain multiple controls under the same label.\n // 1. Define a custom id inside the label\n // 2. Refer to that label from every single control under that label using this property\n ariaLabelledby: {\n type: 'string'\n },\n // Adds aria-describedby on the trigger. Use this only with form fields that\n // contain multiple controls under the same label.\n // 1. Define custom ids inside the description, hint and error text\n // 2. Refer to these from every single control under that label using this property\n // 3. Refer to any other hint/description text that you provide\n ariaDescribedby: {\n type: 'string',\n nullable: true\n },\n // Adds aria-required on the native input\n ariaRequired: {\n type: 'boolean'\n },\n // A default suggested aria-labelledby value that can be pushed down from a FormField\n __suggestedAriaLabelledby: {\n type: 'string'\n }\n },\n events: {\n // Fired when the select is blured.\n blur: {\n bubbles: false,\n cancelable: false\n },\n // Fired when the select is focused.\n focus: {\n bubbles: false,\n cancelable: false\n },\n // Fired whenever the user selects or de-selects an option.\n // The event `detail` contains:\n // * `selectedIds`: array containing the ids of the currently selected options.\n // * `selectedOptions`: array containing the currently selected options.\n // * `selectedId`: the id of the last option that has been selected/de-selected.\n // * `selectedOption`: the last option that has been selected/de-selected.\n // * `deselected`: whether the `selectedOption` was selected or de-selected.\n change: {\n bubbles: true,\n cancelable: false,\n detailType: 'Select.MultiselectChangeDetail'\n },\n // Fired after the filtering input state changes:\n // * When the user has changed the value and stopped typing for a certain period of time.\n // * When the user opens the dropdown menu and filtering state has been reset.\n //\n // Use this in case of `filteringType=\"manual\"` to load filtered items\n delayedFilteringChange: {\n bubbles: true,\n cancelable: false,\n detailType: 'Select.DelayedFilteringChangeDetail'\n },\n // Fired when `statusType` is set to `pending` and there is a need for more items:\n // * When the user has scrolled to the bottom of the dropdown.\n // * When the options property changed and there are not enough items to make the list scrollable.\n loadMore: {\n bubbles: true,\n cancelable: false\n },\n // Fired when the user clicks the recovery button placed at the bottom of the dropdown list in the error state.\n // Use this to retry a failed request or provide another option for the user to recover from the error.\n recoveryClick: {\n bubbles: true,\n cancelable: false\n }\n },\n functions: {\n // Gives focus to the element without opening it.\n focus: function () {\n this.controller.getTriggerComponent().focus();\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var cb = new h.ClassBuilder(this);\n cb.addComponentClass('open', this.__open).addComponentClass('loading', this.loading);\n\n var loading = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-util-status-inactive awsui-select-loading\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_spinner_src__WEBPACK_IMPORTED_MODULE_2__[\"Spinner\"], {\n size: \"normal\"\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-select-loading-text\"\n }, this.loadingText));\n\n var tokenItems = this.controller.getSelectedOptions().map(function (option) {\n // Spread can't be used to pass the option to the object because, in GWT, the option properties are non-enumerable, and they are in their prototype\n return {\n tags: option.tags,\n labelTag: option.labelTag,\n label: option.label,\n iconUrl: option.iconUrl,\n iconName: option.iconName,\n iconAlt: option.iconAlt,\n description: option.description,\n __labelPrefix: option.__labelPrefix,\n disabled: !!_this.disabled,\n dismissLabel: _this.deselectLabel ? _this.deselectLabel(option) : null\n };\n });\n var displayFilter = this.controller.shouldDisplayFilter();\n var ariaLabelledby = [this.ariaLabelledby, this.__suggestedAriaLabelledby].filter(function (el) {\n return el;\n }).join(' ');\n var dropdownControlId = this.controlId + \"-dropdown\";\n var visibleOptions = this.controller.getVisibleOptions();\n var filter = displayFilter ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_filter__WEBPACK_IMPORTED_MODULE_5__[\"default\"], {\n value: this.__filteringText,\n placeholder: this.filteringPlaceholder,\n label: this.filteringLabel,\n ariaLabelledby: ariaLabelledby,\n highlightedOption: this.__highlightedOption,\n ariaActivedescendant: Object(_dropdown_src_utils_options__WEBPACK_IMPORTED_MODULE_7__[\"getHighlightedId\"])(dropdownControlId, visibleOptions, this.__highlightedOption),\n ariaOwns: dropdownControlId + \"-options\"\n }) : '';\n\n var trigger = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_trigger__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n placeholder: this.placeholder,\n disabled: this.disabled,\n invalid: this.invalid,\n open: this.__open,\n controlId: this.controlId,\n dropdownControlId: dropdownControlId,\n ariaLabelledby: ariaLabelledby,\n ariaDescribedby: this.ariaDescribedby,\n ariaLabel: this.label,\n ariaRequired: this.ariaRequired\n });\n\n var dropdown = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_dropdown_src__WEBPACK_IMPORTED_MODULE_1__[\"Dropdown\"], {\n options: visibleOptions,\n highlightText: this.__filteringText,\n open: this.__open,\n selectedOptions: this.controller.getSelectedOptions(),\n highlightedOption: this.__highlightedOption,\n filter: filter,\n isMultiselect: true,\n controlId: dropdownControlId,\n focusedOption: this.__focusedOption,\n hasFiltering: displayFilter,\n listBottom: _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_utils_dropdown_footer__WEBPACK_IMPORTED_MODULE_8__[\"default\"], {\n status: this.statusType,\n isEmpty: visibleOptions.length === 0,\n emptyText: this.controller.getEmptyText(),\n loadingText: this.loadingText,\n finishedText: this.finishedText,\n errorText: this.errorText,\n recoveryText: this.recoveryText,\n onRecoveryClick: function () {\n return _this.__fireEvent('recoveryClick');\n }\n }),\n loadMore: this.controller.loadMoreHandler,\n selectedLabel: this.selectedLabel,\n highlightedOptionDescription: this.highlightedOptionDescription\n });\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: cb.toClassName()\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-select-keyboard-area\",\n tabindex: \"-1\"\n }, this.loading ? loading : [trigger, dropdown]), this.loading ? '' : _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_token_src__WEBPACK_IMPORTED_MODULE_3__[\"TokenGroup\"], {\n items: tokenItems\n }));\n },\n wrapperSupport: {\n ngModel: {\n value: 'selectedIds',\n event: 'change'\n }\n }\n}); //# sourceMappingURL=multiselect.js.map\n\n/***/ }),\n/* 508 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _icon_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(52);\n/* harmony import */ var _dropdown_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(147);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (_core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-select-trigger', {\n releaseStatus: 'internal',\n version: \"2.1.9463.0 (975feb47)\",\n properties: {\n // Hint text when no value has been selected.\n placeholder: {\n type: 'string'\n },\n // Text to be displayed.\n selectedOption: {\n type: 'object',\n objectType: 'Select.Option'\n },\n // Whether the trigger should be disabled. In angular use\n // `data-disabled` instead.\n disabled: {\n type: 'boolean'\n },\n // Render the control in invalid state.\n invalid: {\n type: 'boolean',\n nullable: true\n },\n variant: {\n type: 'string',\n valid: ['label', 'option'],\n defaultValue: 'label'\n },\n open: {\n type: 'boolean',\n defaultValue: false\n },\n // Id for the dropdown options.\n dropdownControlId: {\n type: 'string'\n },\n // Id for this trigger. It is announced to receive labels from FormField\n controlId: {\n type: 'string',\n announceValue: true\n },\n // Adds aria-label on the trigger.\n ariaLabel: {\n type: 'string'\n },\n // Adds aria-labelledby on the trigger. Use this only with form fields that\n // contain multiple controls under the same label.\n // 1. Define a custom id inside the label\n // 2. Refer to that label from every single control under that label using this property\n ariaLabelledby: {\n type: 'string'\n },\n // Adds aria-describedby on the trigger. Use this only with form fields that\n // contain multiple controls under the same label.\n // 1. Define custom ids inside the description, hint and error text\n // 2. Refer to these from every single control under that label using this property\n // 3. Refer to any other hint/description text that you provide\n ariaDescribedby: {\n type: 'string',\n nullable: true\n },\n // A default suggested aria-describedby value that can be pushed down from a FormField\n __suggestedAriaDescribedby: {\n type: 'string'\n }\n },\n functions: {\n // Focuses the trigger.\n focus: function () {\n this.node.querySelector('.awsui-select-trigger').focus();\n }\n },\n events: {\n __toggle: {\n bubbles: true,\n cancelable: false\n },\n __triggerBlur: {\n bubbles: true,\n cancelable: false\n },\n __triggerFocus: {\n bubbles: true,\n cancelable: false\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var cb = new h.ClassBuilder(this);\n cb.addClass('awsui-select-trigger').addClass('awsui-dropdown-trigger').addComponentClass('disabled', this.disabled).addComponentClass('no-option', !this.selectedOption).addPropertyValueClass('variant');\n\n if (typeof this.invalid === 'boolean') {\n cb.addComponentClass('valid', !this.invalid).addComponentClass('invalid', this.invalid);\n }\n\n var attributes = {\n className: cb.toClassName(),\n id: this.controlId,\n onfocus: function () {\n return _this.__fireEvent('__triggerFocus');\n },\n onblur: function () {\n return _this.__fireEvent('__triggerBlur');\n },\n 'override-focus': true,\n 'aria-expanded': \"\" + this.open,\n 'aria-labelledby': (this.ariaLabelledby || '') + \" \" + (this.ariaLabel ? this.controlId + \"-label\" : '') + \" \" + this.controlId + \"-textbox\",\n // Do not specify placeholder when we have an option, otherwise screenreaders\n // will read the placeholder text regardlessly.\n placeholder: this.selectedOption ? false : this.placeholder,\n disabled: this.disabled,\n role: 'button',\n 'aria-haspopup': 'listbox'\n };\n\n if (!this.disabled) {\n attributes.tabindex = 0;\n\n attributes.onmousedown = function (e) {\n // We need to prevent the default behavior (which is focusing the trigger),\n // because IE11 is not always able to focus correctly. Instead, we need to manage the focus ourselves,\n // see the interaction handler.\n e.preventDefault();\n\n _this.__fireEvent('__toggle');\n };\n }\n\n var ariaDescribedby = this.ariaDescribedby || this.__suggestedAriaDescribedby;\n\n if (ariaDescribedby) {\n attributes['aria-describedby'] = ariaDescribedby;\n }\n\n if (this.invalid) {\n attributes['aria-invalid'] = 'true';\n }\n\n var value = function () {\n return _this.variant === 'option' ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_dropdown_src__WEBPACK_IMPORTED_MODULE_2__[\"Option\"], {\n disabled: _this.disabled,\n option: _this.selectedOption,\n selectable: false\n }) : _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-select-trigger-label\"\n }, _this.selectedOption.label);\n };\n\n var trigger = function () {\n if (_this.selectedOption) {\n return value();\n }\n\n if (_this.placeholder) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-select-trigger-placeholder\"\n }, _this.placeholder);\n }\n\n return null;\n };\n\n var label = function () {\n return _this.ariaLabel ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n id: _this.controlId + \"-label\",\n className: \"awsui-util-hide\"\n }, _this.ariaLabel) : '';\n };\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", __assign({}, attributes), label(), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-select-trigger-wrapper\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-select-trigger-textbox\",\n id: this.controlId + \"-textbox\"\n }, trigger()), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_icon_src__WEBPACK_IMPORTED_MODULE_1__[\"Icon\"], {\n className: \"awsui-select-trigger-icon\",\n name: \"caret-down-filled\"\n })));\n }\n})); //# sourceMappingURL=trigger.js.map\n\n/***/ }),\n/* 509 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _input_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(142);\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (_core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-select-filter', {\n releaseStatus: 'internal',\n version: \"2.1.9463.0 (975feb47)\",\n properties: {\n // The current filtering input value.\n value: {\n type: 'string'\n },\n // The placeholder displayed in the filtering input.\n placeholder: {\n type: 'string'\n },\n // Adds aria label on the built-in filtering input.\n label: {\n type: 'string'\n },\n // The currently highlighted option in the dropdown. The browser does not\n // consider it as an active element.\n highlightedOption: {\n type: 'object',\n objectType: 'Select.Option'\n },\n ariaLabelledby: {\n type: 'string'\n },\n ariaActivedescendant: {\n type: 'string'\n },\n ariaOwns: {\n type: 'string'\n },\n // Adds aria-required on the native input\n ariaRequired: {\n type: 'boolean'\n }\n },\n regions: {},\n functions: {\n __getFilteringInput: function () {\n return this.node.querySelector('.awsui-input');\n },\n blur: function () {\n this.__getFilteringInput().blur();\n },\n focus: function () {\n this.__getFilteringInput().focus();\n }\n },\n callbacks: {\n initialized: function () {\n // Prevent announcement of controlId so FormField won't pick it up\n this.node.addEventListener('awsui:__controlidchange', function (e) {\n return e.stopPropagation();\n });\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var getOptionText = function () {\n var option = _this.highlightedOption;\n\n if (!option) {\n return '';\n }\n\n return [option.label, option.labelTag || '', option.description || '', option.tags ? option.tags.join(' ') : '', option.filteringTags ? option.filteringTags.join(' ') : ''].join(' ');\n };\n\n var onInputKeydown = function (event) {\n // prevent select filtering from accidental form submission\n if (event.detail.keyCode === _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].enter) {\n event.preventDefault();\n }\n };\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", null, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_input_src__WEBPACK_IMPORTED_MODULE_1__[\"Input\"], {\n className: \"awsui-select-dropdown-filter\",\n autocomplete: false,\n label: this.label,\n value: this.value,\n placeholder: this.placeholder,\n type: \"search\",\n invalid: false,\n keydown: onInputKeydown,\n ariaDescribedby: null,\n ariaLabelledby: this.ariaLabelledby,\n ariaRequired: this.ariaRequired,\n __ariaActivedescendant: this.ariaActivedescendant,\n __ariaOwns: this.ariaOwns,\n __ariaExpanded: \"true\",\n __ariaHaspopup: \"true\",\n __role: \"combobox\",\n __nativeInputType: \"text\"\n }));\n }\n})); //# sourceMappingURL=filter.js.map\n\n/***/ }),\n/* 510 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _filtering_handler__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(511);\n/* harmony import */ var _base_select_controller__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(513);\nvar __extends = undefined && undefined.__extends || function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf || {\n __proto__: []\n } instanceof Array && function (d, b) {\n d.__proto__ = b;\n } || function (d, b) {\n for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\n };\n\n return extendStatics(d, b);\n };\n\n return function (d, b) {\n extendStatics(d, b);\n\n function __() {\n this.constructor = d;\n }\n\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n}();\n\n\n\n\nvar MultiselectController =\n/** @class */\nfunction (_super) {\n __extends(MultiselectController, _super);\n\n function MultiselectController(componentInstance) {\n var _this = _super.call(this, componentInstance) || this;\n\n _this.filteringHandler = new _filtering_handler__WEBPACK_IMPORTED_MODULE_0__[\"default\"](componentInstance, false);\n return _this;\n }\n\n MultiselectController.prototype.openDropdown = function () {\n // Reset last used focusedOption when opening\n this.component.__focusedOption = null;\n\n _super.prototype.openDropdown.call(this);\n };\n\n MultiselectController.prototype.getDefaultHighlightedOption = function () {\n if (this.shouldDisplayFilter()) {\n return null;\n }\n\n var selectedOptions = this.getSelectedOptions();\n\n if (selectedOptions.length > 0) {\n return selectedOptions[0];\n }\n\n return this.getEnabledOptions(true)[0];\n };\n\n MultiselectController.prototype.getSelectedOptions = function () {\n var _this = this;\n\n if (this.component.selectedOptions) {\n return this.component.selectedOptions;\n }\n\n if (this.component.selectedIds) {\n return this.getEnabledOptions(false).filter(function (option) {\n return _this.component.selectedIds.indexOf(option.id) > -1;\n });\n }\n\n return [];\n };\n\n MultiselectController.prototype.setSelectedOptions = function (options) {\n if (this.component.selectedOptions) {\n this.component.selectedOptions = options;\n } else {\n this.component.selectedIds = options.map(function (option) {\n return option.id;\n });\n }\n };\n\n MultiselectController.prototype.selectOption = function (option) {\n var selectedOptions = this.getSelectedOptions();\n var alreadySelected = selectedOptions.filter(function (selected) {\n return option.id === selected.id;\n })[0];\n var deselected = alreadySelected !== undefined;\n var index = selectedOptions.indexOf(alreadySelected);\n\n if (this.component.keepOpen) {\n this.component.__focusedOption = option;\n }\n\n var newSelection = deselected ? selectedOptions.slice(0, index).concat(selectedOptions.slice(index + 1, selectedOptions.length)) : selectedOptions.concat([option]);\n this.setSelectedOptions(newSelection);\n\n if (!this.component.keepOpen) {\n this.closeDropdown();\n }\n\n this.component.__fireEvent('change', {\n deselected: deselected,\n selectedId: option.id,\n selectedOption: option,\n selectedIds: newSelection.map(function (option) {\n return option.id;\n }),\n selectedOptions: this.getSelectedOptionsDetail(newSelection)\n });\n };\n\n MultiselectController.prototype.getSelectedOptionsDetail = function (newSelectedOptions) {\n if (this.component.selectedOptions) {\n // When a customer uses the new API, we provide new selected options as-is. We cannot lookup options from\n // the respective property, because it may not contain all possible selected options\n return newSelectedOptions;\n } // When a customer uses for legacy selectedIds we provide options in their original order in the `options`\n // property for backward compatibility\n\n\n return this.getEnabledOptions(false).filter(function (option) {\n return newSelectedOptions.indexOf(option) > -1;\n });\n };\n\n MultiselectController.prototype.dismissOption = function (_a) {\n var itemIndex = _a.itemIndex;\n this.selectOption(this.getSelectedOptions()[itemIndex]);\n };\n\n return MultiselectController;\n}(_base_select_controller__WEBPACK_IMPORTED_MODULE_1__[\"default\"]);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (MultiselectController); //# sourceMappingURL=multiselect-controller.js.map\n\n/***/ }),\n/* 511 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_runtime_src_utils_debounce__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(123);\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(512);\n\n\n\nvar FilteringHandler =\n/** @class */\nfunction () {\n function FilteringHandler(select, enableKeypressWhenClosed) {\n var _this = this;\n\n if (enableKeypressWhenClosed === void 0) {\n enableKeypressWhenClosed = true;\n }\n\n this.select = select;\n this.enableKeypressWhenClosed = enableKeypressWhenClosed;\n this.filteringText = '';\n this.delayedResetKeypressBuffer = Object(_core_runtime_src_utils_debounce__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(function () {\n return _this.filteringText = '';\n }, 500);\n this.delayedNotifyInput = Object(_core_runtime_src_utils_debounce__WEBPACK_IMPORTED_MODULE_0__[\"default\"])(function () {\n return _this.select.controller.notifyFilteringChange();\n });\n }\n\n FilteringHandler.prototype.addListeners = function () {\n this.__createListeners(); // We need to wrap the native events with our own\n\n\n this.select.node.addEventListener(_constants__WEBPACK_IMPORTED_MODULE_1__[\"default\"].AWSUI_PREFIX + \"input\", this.filteringInputListener);\n this.select.node.addEventListener('keypress', this.keypressListener);\n };\n\n FilteringHandler.prototype.removeListeners = function () {\n this.select.node.removeEventListener(_constants__WEBPACK_IMPORTED_MODULE_1__[\"default\"].AWSUI_PREFIX + \"input\", this.filteringInputListener);\n this.select.node.removeEventListener('keypress', this.keypressListener);\n };\n\n FilteringHandler.__isChar = function (charCode) {\n return [0, _constants__WEBPACK_IMPORTED_MODULE_1__[\"default\"].ENTER, _constants__WEBPACK_IMPORTED_MODULE_1__[\"default\"].SPACE, _constants__WEBPACK_IMPORTED_MODULE_1__[\"default\"].TAB].indexOf(charCode) === -1;\n };\n\n FilteringHandler.__isRepeatedChar = function (str) {\n var repeatedChar = Array.prototype.reduce.call(str, function (a, b) {\n return a === b ? b : null;\n });\n return Boolean(repeatedChar);\n };\n\n FilteringHandler.prototype.__createListeners = function () {\n this.filteringInputListener = this.__filteringInput();\n this.keypressListener = this.__keypress();\n };\n\n FilteringHandler.prototype.__handleMatch = function (match) {\n if (this.select.__open) {\n this.select.__highlightedOption = match;\n } else {\n this.select.controller.selectOption(match);\n }\n };\n\n FilteringHandler.prototype.__match = function (strToFilter, text, strictMatching) {\n if (!strToFilter) {\n return false;\n }\n\n var matchIndex = strToFilter.toLowerCase().indexOf(text.toLowerCase());\n return strictMatching ? matchIndex === 0 : matchIndex !== -1;\n };\n\n FilteringHandler.prototype.__matchOption = function (option, text, strictMatching) {\n var _this = this;\n\n var tags = [];\n\n if (!strictMatching) {\n tags = tags.concat(option.filteringTags);\n }\n\n tags = tags.concat(option.tags);\n var tagsMatch = tags.some(function (tag) {\n return _this.__match(tag, text, strictMatching);\n });\n\n if (tagsMatch) {\n return tagsMatch;\n }\n\n return ['label', 'labelTag', 'description'].some(function (content) {\n return _this.__match(option[content], text, strictMatching);\n });\n };\n\n FilteringHandler.prototype.__findKeypressMatchingOptions = function (text) {\n var _this = this;\n\n return this.select.controller.getEnabledOptions(true).filter(function (option) {\n return _this.__matchOption(option, text, true);\n });\n };\n\n FilteringHandler.prototype.__keypress = function () {\n var _this = this;\n\n return function (ev) {\n // Native search should not be active on closed dropdown if the flag says so\n if (!_this.enableKeypressWhenClosed && !_this.select.__open) {\n return;\n }\n\n if (_this.select.controller.shouldDisplayFilter() || !FilteringHandler.__isChar(ev.charCode)) {\n return;\n }\n\n _this.delayedResetKeypressBuffer();\n\n _this.filteringText += String.fromCharCode(ev.charCode);\n\n var matchingOptions = _this.__findKeypressMatchingOptions(_this.filteringText); // We have an exact match\n\n\n if (matchingOptions.length === 1) {\n _this.__handleMatch(matchingOptions[0]);\n\n return;\n } // Hit the same char over and over, we assume they want to cycle through\n\n\n if (_this.filteringText.length > 1 && FilteringHandler.__isRepeatedChar(_this.filteringText)) {\n var charMatchingOptions = _this.__findKeypressMatchingOptions(_this.filteringText[0]);\n\n if (charMatchingOptions.length) {\n var active = void 0;\n\n if (_this.select.__open) {\n active = charMatchingOptions.indexOf(_this.select.__highlightedOption);\n } else {\n // It is only SelectComponent here, Multiselect exits the method earlier,\n // because it has enableKeypressWhenClosed=false\n active = charMatchingOptions.indexOf(_this.select.controller.getSelectedOption());\n } // Pick the next thing (if something with this prefix wasn't selected\n // we'll end up with the first option)\n\n\n active += 1;\n active = active % charMatchingOptions.length;\n\n _this.__handleMatch(charMatchingOptions[active]);\n\n return;\n }\n } // We have multiple things that start with this prefix. Based on the\n // behavior of native select, this is considered after the repeated case\n\n\n if (matchingOptions.length) {\n _this.__handleMatch(matchingOptions[0]);\n\n return;\n } // No match at all, do nothing\n\n };\n };\n\n FilteringHandler.prototype.getFilterMatchingOptions = function () {\n var _this = this;\n\n var text = this.select.__filteringText;\n\n if (!text || this.select.filteringType === \"manual\"\n /* MANUAL */\n ) {\n return this.select.options;\n }\n\n return this.select.options.reduce(function (matchingOptions, option) {\n if ('options' in option) {\n var filteredOptionsGroup = {\n label: option.label,\n disabled: option.disabled,\n options: option.options.filter(function (optionToFilter) {\n return _this.__matchOption(optionToFilter, text, false);\n })\n };\n\n if (filteredOptionsGroup.options.length > 0) {\n return matchingOptions.concat([filteredOptionsGroup]);\n }\n } else if (_this.__matchOption(option, text, false)) {\n return matchingOptions.concat([option]);\n }\n\n return matchingOptions;\n }, []);\n };\n\n FilteringHandler.prototype.__filteringInput = function () {\n var _this = this;\n\n return function (event) {\n event.stopPropagation();\n _this.select.__filteringText = event.detail.value;\n\n _this.delayedNotifyInput();\n };\n };\n\n return FilteringHandler;\n}();\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (FilteringHandler); //# sourceMappingURL=filtering-handler.js.map\n\n/***/ }),\n/* 512 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony default export */ __webpack_exports__[\"default\"] = ({\n ENTER: 13,\n ESCAPE: 27,\n SPACE: 32,\n UP: 38,\n DOWN: 40,\n TAB: 9,\n AWSUI_PREFIX: 'awsui:'\n}); //# sourceMappingURL=constants.js.map\n\n/***/ }),\n/* 513 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(514);\n/* harmony import */ var _dropdown_src_utils_options__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(152);\n/* harmony import */ var _filtering_handler__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(511);\n/* harmony import */ var _interaction_handler__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(515);\n\n\n\n\n\nvar BaseSelectController =\n/** @class */\nfunction () {\n function BaseSelectController(componentInstance) {\n var _this = this;\n\n this.loadMoreHandler = function (event) {\n event.stopPropagation();\n\n if (_this.component.options.length > 0 && _this.component.statusType === _internal__WEBPACK_IMPORTED_MODULE_0__[\"SelectStatusType\"].PENDING) {\n _this.component.__fireEvent('loadMore');\n }\n };\n\n this.component = componentInstance;\n this.interactionHandler = new _interaction_handler__WEBPACK_IMPORTED_MODULE_3__[\"default\"](componentInstance);\n this.filteringHandler = new _filtering_handler__WEBPACK_IMPORTED_MODULE_2__[\"default\"](componentInstance);\n }\n\n BaseSelectController.prototype.attached = function () {\n this.interactionHandler.addListeners();\n this.filteringHandler.addListeners();\n };\n\n BaseSelectController.prototype.detached = function () {\n this.interactionHandler.removeListeners();\n this.filteringHandler.removeListeners();\n };\n\n BaseSelectController.prototype.getTriggerComponent = function () {\n return this.component.node.querySelector('awsui-select-trigger').component;\n };\n\n BaseSelectController.prototype.getDropdownComponent = function () {\n return this.component.node.querySelector('awsui-select-dropdown').component;\n };\n\n BaseSelectController.prototype.getFilterComponent = function () {\n return this.component.node.querySelector('awsui-select-filter').component;\n };\n\n BaseSelectController.prototype.getFilterInput = function () {\n return this.getFilterComponent().node.querySelector('input');\n };\n\n BaseSelectController.prototype.closeDropdown = function (loseFocus) {\n // if we're closing because we're losing focus, and the focus isn't currently on the trigger element\n // we want to manually fire a blur event\n if (loseFocus && this.component.__open && !this.getTriggerComponent().node.contains(document.activeElement)) {\n this.component.__fireEvent('blur');\n }\n\n this.component.__open = false;\n this.component.__highlightedOption = null;\n };\n\n BaseSelectController.prototype.openDropdown = function () {\n if (this.component.disabled) {\n return;\n }\n\n this.component.__open = true;\n\n if (this.component.__filteringText !== '') {\n this.component.__filteringText = '';\n this.notifyFilteringChange();\n }\n\n this.interactionHandler.focusActiveElement();\n };\n\n BaseSelectController.prototype.getVisibleOptions = function () {\n return this.filteringHandler.getFilterMatchingOptions();\n };\n\n BaseSelectController.prototype.getEnabledOptions = function (onlyVisible) {\n var options = onlyVisible ? this.getVisibleOptions() : this.component.options;\n return Object(_dropdown_src_utils_options__WEBPACK_IMPORTED_MODULE_1__[\"getFlatOptions\"])(options, false);\n };\n\n BaseSelectController.prototype.getEmptyText = function () {\n return this.hasAutoFiltering() && this.component.__filteringText ? this.component.noMatch : this.component.empty;\n };\n\n BaseSelectController.prototype.shouldDisplayFilter = function () {\n return this.hasAutoFiltering() && this.component.options.length > 0 || this.component.filteringType === \"manual\"\n /* MANUAL */\n ;\n };\n\n BaseSelectController.prototype.hasAutoFiltering = function () {\n return this.component.enableFiltering || this.component.filteringType === \"auto\"\n /* AUTO */\n ;\n };\n\n BaseSelectController.prototype.notifyFilteringChange = function () {\n this.component.__fireEvent('delayedFilteringChange', {\n value: this.component.__filteringText\n });\n };\n\n return BaseSelectController;\n}();\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (BaseSelectController); //# sourceMappingURL=base-select-controller.js.map\n\n/***/ }),\n/* 514 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"SelectStatusType\", function() { return SelectStatusType; });\nvar SelectStatusType;\n\n(function (SelectStatusType) {\n SelectStatusType[\"PENDING\"] = \"pending\";\n SelectStatusType[\"LOADING\"] = \"loading\";\n SelectStatusType[\"ERROR\"] = \"error\";\n SelectStatusType[\"FINISHED\"] = \"finished\";\n})(SelectStatusType || (SelectStatusType = {})); //# sourceMappingURL=internal.js.map\n\n/***/ }),\n/* 515 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _constants__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(512);\n\n\nvar InteractionHandler =\n/** @class */\nfunction () {\n function InteractionHandler(select) {\n var _this = this;\n\n this.select = select;\n\n this.focusListener = function (ev) {\n ev.stopPropagation(); // We already have focus, probably through clicking the trigger\n\n if (_this.isFocused) {\n _this.skipNextFocus = false;\n return;\n }\n\n _this.isFocused = true;\n\n if (_this.skipNextFocus) {\n _this.skipNextFocus = false;\n return;\n }\n\n _this.select.__fireEvent('focus');\n };\n\n this.blurListener = function (ev) {\n ev.stopPropagation();\n\n if (_this.skipNextBlur) {\n _this.skipNextBlur = false;\n return;\n }\n\n _this.select.__fireEvent('blur');\n\n _this.isFocused = false;\n _this.skipNextFocus = false;\n };\n\n this.mouseupListener = function () {\n if (_this.select.__open && _this.select.controller.shouldDisplayFilter()) {\n _this.__focusFiltering(); // It can happen that the user switched from keyboard interaction\n // back to navigating with the mouse\n\n\n _this.select.__highlightedOption = _this.select.controller.getDefaultHighlightedOption();\n }\n };\n\n this.toggleListener = function (ev) {\n ev.stopPropagation();\n\n if (_this.select.__open) {\n _this.select.controller.closeDropdown();\n\n _this.isFocused = false;\n } else {\n _this.select.controller.openDropdown();\n\n if (!_this.isFocused) {\n _this.select.__fireEvent('focus');\n\n _this.isFocused = true;\n }\n }\n };\n\n this.selectionListener = function (ev) {\n ev.stopPropagation(); // To be aligned with the keyboard behavior, we need to also re-focus the trigger when\n // selecting an option with the mouse. It is skipped to make sure that we do not raise an\n // unnecessary focus event.\n\n _this.skipNextFocus = true; // we need to focus before closing the dropdown, otherwise the focus might temporarily\n // leave the component and go back to the body.\n\n _this.select.focus();\n\n _this.select.controller.selectOption(ev.detail);\n };\n\n this.dismissListener = function (_a) {\n var detail = _a.detail; // \"instanceof MultiselectController\" can't be used here because it creates a circular dependency\n\n if (_this.select.controller.dismissOption) {\n // Focus on the control to keep the same behavior as before having the TokenGroup component\n // It should be removed in v2.2, https://issues.amazon.com/issues/AWSUI-6185\n _this.skipNextFocus = true;\n\n _this.select.focus();\n\n _this.select.controller.dismissOption(detail);\n }\n };\n\n this.keydownListener = function (ev) {\n var select = _this.select;\n var controller = _this.select.controller;\n\n switch (ev.keyCode) {\n case _constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].SPACE:\n if (!_this.select.__open || !controller.shouldDisplayFilter()) {\n ev.preventDefault();\n\n _this.__toggleSelect();\n }\n\n return;\n\n case _constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].ENTER:\n ev.preventDefault();\n\n _this.__toggleSelect();\n\n return;\n\n case _constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].TAB:\n controller.closeDropdown(true);\n _this.isFocused = false;\n _this.skipNextBlur = false;\n _this.skipNextFocus = false;\n return;\n\n case _constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].ESCAPE:\n ev.preventDefault();\n _this.skipNextFocus = true;\n controller.closeDropdown();\n select.focus();\n return;\n\n case _constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].UP:\n ev.preventDefault();\n select.__open ? _this.__moveHighlight(-1) : _this.__openDropdownAndHighlight();\n return;\n\n case _constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].DOWN:\n ev.preventDefault();\n select.__open ? _this.__moveHighlight(1) : _this.__openDropdownAndHighlight();\n return;\n }\n };\n\n this.globalMousedownListener = function (ev) {\n if (!_this.select.__open) {\n return;\n }\n\n if (!_this.select.node.contains(ev.target)) {\n _this.select.controller.closeDropdown(true);\n } else {\n var dropdown = _this.select.node.querySelector('.awsui-select-dropdown'); // Prevent any blurring that happens because of clicking inside the dropdown.\n // This also means that we do not fire a blur event after an option has been selected.\n // This matches the behavior of the native select.\n\n\n if (dropdown.contains(ev.target)) {\n ev.preventDefault();\n }\n }\n };\n }\n\n InteractionHandler.prototype.addListeners = function () {\n var node = this.select.node; // Close the dropdown when the user clicks away\n\n document.addEventListener('mousedown', this.globalMousedownListener);\n node.addEventListener('mouseup', this.mouseupListener); // We need to wrap the native events with our own\n\n node.addEventListener(_constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].AWSUI_PREFIX + \"__triggerBlur\", this.blurListener);\n node.addEventListener(_constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].AWSUI_PREFIX + \"__triggerFocus\", this.focusListener);\n node.addEventListener(_constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].AWSUI_PREFIX + \"dismiss\", this.dismissListener);\n node.addEventListener(_constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].AWSUI_PREFIX + \"__selected\", this.selectionListener); // Toggle the dropdown when the trigger is clicked\n\n node.addEventListener(_constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].AWSUI_PREFIX + \"__toggle\", this.toggleListener); // Handle keyboard interaction\n\n node.querySelector('.awsui-select-keyboard-area').addEventListener('keydown', this.keydownListener);\n };\n\n InteractionHandler.prototype.removeListeners = function () {\n var node = this.select.node;\n document.removeEventListener('mousedown', this.globalMousedownListener);\n node.removeEventListener(_constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].AWSUI_PREFIX + \"__triggerBlur\", this.blurListener);\n node.removeEventListener(_constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].AWSUI_PREFIX + \"__triggerFocus\", this.focusListener);\n node.querySelector('.awsui-select-keyboard-area').removeEventListener('keydown', this.keydownListener);\n node.removeEventListener('mouseup', this.mouseupListener);\n node.removeEventListener(_constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].AWSUI_PREFIX + \"dismiss\", this.dismissListener);\n node.removeEventListener(_constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].AWSUI_PREFIX + \"__selected\", this.selectionListener);\n node.removeEventListener(_constants__WEBPACK_IMPORTED_MODULE_0__[\"default\"].AWSUI_PREFIX + \"__toggle\", this.toggleListener);\n };\n\n InteractionHandler.prototype.__focusFiltering = function () {\n if (document.activeElement === this.select.controller.getFilterInput()) {\n return;\n }\n\n this.skipNextBlur = true;\n this.select.controller.getFilterComponent().focus();\n };\n\n InteractionHandler.prototype.__focusDropdown = function () {\n this.skipNextBlur = true;\n this.select.controller.getDropdownComponent().focusDropdown();\n };\n\n InteractionHandler.prototype.focusActiveElement = function () {\n if (document.activeElement === this.select.node.querySelector('.awsui-select-trigger')) {\n this.skipNextFocus = true;\n }\n\n if (this.select.controller.shouldDisplayFilter()) {\n this.__focusFiltering();\n } else {\n this.__focusDropdown();\n }\n };\n\n InteractionHandler.prototype.__openDropdownAndHighlight = function () {\n this.select.controller.openDropdown();\n this.select.__highlightedOption = this.select.controller.getDefaultHighlightedOption();\n };\n\n InteractionHandler.prototype.__moveHighlight = function (dir) {\n var options = this.select.controller.getEnabledOptions(true);\n var select = this.select;\n\n if (options.length === 0) {\n return;\n }\n\n var currIdx = options.indexOf(select.__highlightedOption);\n var nextIdx = currIdx + dir;\n\n if (options[nextIdx]) {\n select.__highlightedOption = options[nextIdx];\n }\n };\n\n InteractionHandler.prototype.__toggleSelect = function () {\n if (!this.select.__open) {\n this.__openDropdownAndHighlight();\n\n return;\n }\n\n if (!this.select.__highlightedOption) {\n if (!this.select.controller.shouldDisplayFilter()) {\n this.select.controller.closeDropdown();\n }\n\n return;\n } // we need to focus before closing the dropdown, otherwise the focus might temporarily\n // leave the component and go back to the body.\n\n\n this.skipNextFocus = true;\n\n if (!this.select.keepOpen) {\n this.select.focus();\n }\n\n this.select.controller.selectOption(this.select.__highlightedOption);\n };\n\n return InteractionHandler;\n}();\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (InteractionHandler); //# sourceMappingURL=interaction-handler.js.map\n\n/***/ }),\n/* 516 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return DropdownFooter; });\n/* harmony import */ var _spinner_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(115);\n/* harmony import */ var _icon_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(52);\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5);\n/* harmony import */ var _internal__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(514);\n\n\n\n\nfunction DropdownFooter(_a) {\n var _b = _a.status,\n status = _b === void 0 ? _internal__WEBPACK_IMPORTED_MODULE_3__[\"SelectStatusType\"].FINISHED : _b,\n isEmpty = _a.isEmpty,\n emptyText = _a.emptyText,\n loadingText = _a.loadingText,\n finishedText = _a.finishedText,\n errorText = _a.errorText,\n recoveryText = _a.recoveryText,\n onRecoveryClick = _a.onRecoveryClick;\n\n if (status === _internal__WEBPACK_IMPORTED_MODULE_3__[\"SelectStatusType\"].LOADING) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_2__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-util-status-inactive\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_2__[\"AwsUi\"].__createElement(_spinner_src__WEBPACK_IMPORTED_MODULE_0__[\"Spinner\"], null), \" \", loadingText);\n }\n\n if (status === _internal__WEBPACK_IMPORTED_MODULE_3__[\"SelectStatusType\"].ERROR) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_2__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-util-status-negative\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_2__[\"AwsUi\"].__createElement(_icon_src__WEBPACK_IMPORTED_MODULE_1__[\"Icon\"], {\n name: \"status-negative\"\n }), \" \", errorText, ' ', _core_runtime_src__WEBPACK_IMPORTED_MODULE_2__[\"AwsUi\"].__createElement(\"a\", {\n role: \"button\",\n tabIndex: \"0\",\n className: \"awsui-select-recovery-button\",\n onclick: onRecoveryClick\n }, recoveryText));\n }\n\n if (isEmpty) {\n return emptyText;\n }\n\n if (status === _internal__WEBPACK_IMPORTED_MODULE_3__[\"SelectStatusType\"].FINISHED && finishedText) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_2__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-util-status-inactive\"\n }, finishedText);\n }\n\n return null;\n} //# sourceMappingURL=dropdown-footer.js.map\n\n/***/ }),\n/* 517 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return createDeprecationWarnings; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n\nfunction createDeprecationWarnings(componentName) {\n function createDeprecationPropertyWarning(property, replacement) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"logger\"].warnOnce(\"[\" + componentName + \"]\", \"The `\" + property + \"` property has been deprecated. Use `\" + replacement + \"` instead.\");\n }\n\n return {\n selectedId: createDeprecationPropertyWarning('selectedId', 'selectedOption'),\n selectedIds: createDeprecationPropertyWarning('selectedIds', 'selectedOptions'),\n loading: createDeprecationPropertyWarning('loading', 'statusType=\"loading\"'),\n enableFiltering: createDeprecationPropertyWarning('enableFiltering', 'filteringType=\"auto\"')\n };\n} //# sourceMappingURL=deprecation-warnings.js.map\n\n/***/ }),\n/* 518 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Select\", function() { return Select; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _dropdown_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(147);\n/* harmony import */ var _spinner_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(115);\n/* harmony import */ var _trigger__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(508);\n/* harmony import */ var _filter__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(509);\n/* harmony import */ var _utils_select_controller__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(519);\n/* harmony import */ var _dropdown_src_utils_options__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(152);\n/* harmony import */ var _utils_dropdown_footer__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(516);\n/* harmony import */ var _utils_deprecation_warnings__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(517);\n\n\n\n\n\n\n\n\n\nvar deprecationWarnings = Object(_utils_deprecation_warnings__WEBPACK_IMPORTED_MODULE_8__[\"default\"])('awsui-select');\nvar lastGeneratedId = 0;\n\nvar nextGeneratedId = function () {\n return \"awsui-select-\" + lastGeneratedId++;\n};\n\nvar Select = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-select', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n callbacks: {\n initialized: function () {\n this.controller = new _utils_select_controller__WEBPACK_IMPORTED_MODULE_5__[\"default\"](this);\n\n if (!this.controlId) {\n this.controlId = nextGeneratedId();\n }\n },\n attached: function () {\n this.controller.attached();\n },\n detached: function () {\n this.controller.detached();\n }\n },\n regions: {\n // Displayed when there are no options.\n empty: {},\n // Displayed for `filteringType=\"auto\"` when there are no matches for the filtering.\n noMatch: {}\n },\n properties: {\n // Whether the whole select should be disabled.\n //\n // **AngularJS:** Use `data-disabled` instead.\n disabled: {\n type: 'boolean',\n onChange: function () {\n if (this.disabled) {\n this.controller.closeDropdown();\n }\n }\n },\n // Renders the control in invalid state.\n invalid: {\n type: 'boolean',\n nullable: true\n },\n // Specifies the current status of data fetching:\n // * `pending`: no request in progress, but there may be more items loaded.\n // * `loading`: data fetching is in progress.\n // * `finished`: pagination reached the end, no more requests expected.\n // * `error`: an error occurred during fetch. You should provide user an option to recover, see examples\n // for more details.\n statusType: {\n type: 'string',\n valid: ['pending', 'loading', 'finished', 'error'],\n defaultValue: 'finished'\n },\n // Renders the control in loading state.\n //\n // **Deprecated:** Use `statusType=\"loading\"` instead.\n loading: {\n type: 'boolean',\n onChange: function (oldValue, newValue) {\n if (newValue) {\n deprecationWarnings.loading();\n }\n }\n },\n // Text to be displayed when in loading state.\n loadingText: {\n type: 'string'\n },\n // Text to be displayed at the bottom of the dropdown menu once pagination has reached the end.\n finishedText: {\n type: 'string'\n },\n // Text to be displayed in case of a data fetching error. Make sure to also provide the `recoveryText`,\n // see its documentation for more details.\n errorText: {\n type: 'string'\n },\n // Text for the recovery button. Displayed next to the error text.\n // Use the `recoveryClick` event to do a recovery action, for example, retrying the request.\n recoveryText: {\n type: 'string'\n },\n // Enable filtering for dropdown options:\n // * `none`: do not display filtering input.\n // * `auto`: component will automatically filter options based on user input.\n // * `manual`: set up `delayedFilteringChange` event listener and filter items on your side or request\n // them from server\n filteringType: {\n type: 'string',\n valid: ['none', 'auto', 'manual'],\n defaultValue: 'none'\n },\n // Whether option filtering should be enabled.\n //\n // **Deprecated:** Use `filteringType=\"auto\"` instead.\n enableFiltering: {\n type: 'boolean',\n onChange: function (oldValue, newValue) {\n if (newValue) {\n deprecationWarnings.enableFiltering();\n }\n }\n },\n // Placeholder displayed in the filtering input if filtering is enabled.\n filteringPlaceholder: {\n type: 'string'\n },\n // Adds aria label on the built-in filtering input if filtering is enabled.\n filteringLabel: {\n type: 'string'\n },\n // Array of objects, each can represent a simple option with the following properties:\n //\n // * `label` [string]: A short title shown in the select to describe this item.\n // * `disabled` [boolean]: Whether this item is disabled.\n //\n // Extended options can provide further guidance about each option by specifying further\n // properties:\n // * `id` [string]: The id of the select when this item is selected.\n // * `labelTag` [string]: A tag giving further guidance shown pulled right next to the label.\n // * `description` [string]: Further explanatory guidance about the option below the label.\n // * `iconName` [string]: The name of the icon, use with awsui icons.\n // * `iconUrl` [string]: The url to the icon, use with custom icons.\n // * `iconAlt` [string]: The alternate text, use with custom icons.\n // * `tags` [string array]: A list of tags giving further guidance about the option.\n // * `filteringTags` [string array]: A list of metadata that is never displayed unless one of\n // the tags gives a match for the user filtering.\n //\n // Options can be grouped by specifying the given option as a group of options:\n //\n // * `label` [string]: description of the group.\n // * `options` [array]: array of simple options.\n // * `disabled` [boolean]: whether the whole group is disabled.\n //\n // Notice that only one level of options nesting is supported.\n options: {\n type: 'array',\n itemTypes: ['Select.IOption', 'Select.Option', 'Select.OptionsGroup']\n },\n // Hint text displayed in the field when no option has been selected.\n placeholder: {\n type: 'string'\n },\n // Currently selected option.\n selectedOption: {\n type: 'object',\n objectType: 'Select.Option'\n },\n // Id of the currently selected option.\n //\n // **Deprecated:** Use `selectedOption` instead.\n selectedId: {\n type: 'string',\n onChange: function (oldValue, newValue) {\n if (newValue) {\n deprecationWarnings.selectedId();\n }\n }\n },\n // Defines the variant of the trigger. It can be either a simple label,\n // choosing `label`, or the entire option, by setting it to `option`.\n triggerVariant: {\n type: 'string',\n valid: ['label', 'option'],\n defaultValue: 'label'\n },\n // Id for the trigger component. It defaults to an automatically generated id.\n controlId: {\n type: 'string',\n announceValue: true\n },\n // Adds aria-labelledby on the select.\n // 1. Define a custom id inside the label of the form field\n // 2. Refer to that label using this property\n ariaLabelledby: {\n type: 'string'\n },\n // Adds aria-describedby on the select. Use this only with form fields that\n // contain multiple controls under the same label.\n // 1. Define custom ids inside the description, hint and error text\n // 2. Refer to these from every single control under that label using this property\n // 3. Refer to any other hint/description text that you provide\n ariaDescribedby: {\n type: 'string',\n nullable: true\n },\n // Adds aria-required on the native input\n ariaRequired: {\n type: 'boolean'\n },\n // Adds aria-label on the select.\n label: {\n type: 'string'\n },\n // Localized string that describes an option as selected.\n // This is required to provide a good screen reader experience. See the\n // [accessibility guidelines](/system/components/awsui-select/?tabId=usage#accessibility-guidelines)\n // for more details.\n selectedLabel: {\n type: 'string'\n },\n // Optionally overrides the element that is announced to screen readers\n // when the highlighted option changes. By default, this announces\n // the option's name and properties, as well as its selected state if\n // the selectedLabel property is defined.\n // The highlighted option is provided, as well as its group (if groups\n // are used and it differs from the group of the previously highlighted option).\n //\n // See the\n // [accessibility guidelines](/system/components/awsui-select/?tabId=usage#accessibility-guidelines)\n // fore more details.\n highlightedOptionDescription: {\n type: 'function',\n functionType: 'Select.HighlightedOptionDescription'\n },\n // Current filtering input.\n __filteringText: {\n type: 'string'\n },\n // A flag showing whether the dropdown is open.\n __open: {\n type: 'boolean'\n },\n // The currently highlighted option in the dropwdown. The browser does not\n // consider it as an active element.\n __highlightedOption: {\n type: 'object',\n objectType: 'Select.Option'\n },\n // A default suggested aria-labelledby value that can be pushed down from a FormField\n __suggestedAriaLabelledby: {\n type: 'string'\n }\n },\n events: {\n // Fired when the select is blured.\n blur: {\n bubbles: false,\n cancelable: false\n },\n // Fired when the select is focused.\n focus: {\n bubbles: false,\n cancelable: false\n },\n // Fired whenever the user selects an option.\n // The event `detail` contains the current `selectedId` and `selectedOption`.\n change: {\n bubbles: true,\n cancelable: false,\n detailType: 'Select.ChangeDetail'\n },\n // Fired after the filtering input state changes:\n // * When the user has changed the value and stopped typing for a certain period of time.\n // * When the user opens the dropdown menu and filtering state has been reset.\n //\n // Use this in case of `filteringType=\"manual\"` to load filtered items\n delayedFilteringChange: {\n bubbles: true,\n cancelable: false,\n detailType: 'Select.DelayedFilteringChangeDetail'\n },\n // Fired when `statusType` is set to `pending` and there is a need for more items:\n // * When the user has scrolled to the bottom of the dropdown.\n // * When the options property changed and there are not enough items to make the list scrollable.\n loadMore: {\n bubbles: true,\n cancelable: false\n },\n // Fired when the user clicks the recovery button placed at the bottom of the dropdown list in the error state.\n // Use this to retry a failed request or provide another option for the user to recover from the error.\n recoveryClick: {\n bubbles: true,\n cancelable: false\n }\n },\n functions: {\n // Gives focus to the element without opening it.\n focus: function () {\n this.controller.getTriggerComponent().focus();\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var cb = new h.ClassBuilder(this);\n cb.addComponentClass('open', this.__open);\n\n var loading = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-util-status-inactive awsui-select-loading\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_spinner_src__WEBPACK_IMPORTED_MODULE_2__[\"Spinner\"], {\n size: \"normal\"\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-select-loading-text\"\n }, this.loadingText));\n\n var displayFilter = this.controller.shouldDisplayFilter();\n var ariaLabelledby = [this.ariaLabelledby, this.__suggestedAriaLabelledby].filter(function (el) {\n return el;\n }).join(' ');\n var dropdownControlId = this.controlId + \"-dropdown\";\n var selectedOption = this.controller.getSelectedOption();\n var visibleOptions = this.controller.getVisibleOptions();\n var filter = displayFilter ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_filter__WEBPACK_IMPORTED_MODULE_4__[\"default\"], {\n value: this.__filteringText,\n placeholder: this.filteringPlaceholder,\n label: this.filteringLabel,\n ariaLabelledby: ariaLabelledby,\n ariaRequired: this.ariaRequired,\n highlightedOption: this.__highlightedOption,\n ariaActivedescendant: Object(_dropdown_src_utils_options__WEBPACK_IMPORTED_MODULE_6__[\"getHighlightedId\"])(dropdownControlId, visibleOptions, this.__highlightedOption),\n ariaOwns: dropdownControlId + \"-options\"\n }) : '';\n\n var select = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: cb.toClassName()\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_trigger__WEBPACK_IMPORTED_MODULE_3__[\"default\"], {\n selectedOption: selectedOption,\n placeholder: this.placeholder,\n disabled: this.disabled,\n variant: this.triggerVariant,\n invalid: this.invalid,\n controlId: this.controlId,\n dropdownControlId: dropdownControlId,\n open: this.__open,\n ariaDescribedby: this.ariaDescribedby,\n ariaLabelledby: ariaLabelledby,\n ariaLabel: this.label\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_dropdown_src__WEBPACK_IMPORTED_MODULE_1__[\"Dropdown\"], {\n options: visibleOptions,\n highlightText: this.__filteringText,\n open: this.__open,\n selectedOptions: selectedOption ? [selectedOption] : [],\n highlightedOption: this.__highlightedOption,\n filter: filter,\n controlId: dropdownControlId,\n isMultiselect: false,\n hasFiltering: displayFilter,\n ariaRequired: this.ariaRequired,\n listBottom: _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_utils_dropdown_footer__WEBPACK_IMPORTED_MODULE_7__[\"default\"], {\n status: this.statusType,\n isEmpty: visibleOptions.length === 0,\n emptyText: this.controller.getEmptyText(),\n loadingText: this.loadingText,\n finishedText: this.finishedText,\n errorText: this.errorText,\n recoveryText: this.recoveryText,\n onRecoveryClick: function () {\n return _this.__fireEvent('recoveryClick');\n }\n }),\n loadMore: this.controller.loadMoreHandler,\n selectedLabel: this.selectedLabel,\n highlightedOptionDescription: this.highlightedOptionDescription\n }));\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-select-keyboard-area\"\n }, this.loading ? loading : select);\n },\n wrapperSupport: {\n ngModel: {\n value: 'selectedId',\n event: 'change'\n }\n }\n}); //# sourceMappingURL=select.js.map\n\n/***/ }),\n/* 519 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _base_select_controller__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(513);\nvar __extends = undefined && undefined.__extends || function () {\n var extendStatics = function (d, b) {\n extendStatics = Object.setPrototypeOf || {\n __proto__: []\n } instanceof Array && function (d, b) {\n d.__proto__ = b;\n } || function (d, b) {\n for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p];\n };\n\n return extendStatics(d, b);\n };\n\n return function (d, b) {\n extendStatics(d, b);\n\n function __() {\n this.constructor = d;\n }\n\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\n };\n}();\n\n\n\nvar SelectController =\n/** @class */\nfunction (_super) {\n __extends(SelectController, _super);\n\n function SelectController() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n\n SelectController.prototype.getDefaultHighlightedOption = function () {\n if (this.shouldDisplayFilter()) {\n return null;\n }\n\n return this.getSelectedOption() || this.getEnabledOptions(false)[0];\n };\n\n SelectController.prototype.getSelectedOption = function () {\n var _this = this;\n\n if (this.component.selectedOption) {\n return this.component.selectedOption;\n }\n\n if (this.component.selectedId) {\n return this.getEnabledOptions(false).filter(function (option) {\n return option.id === _this.component.selectedId;\n })[0];\n }\n\n return null;\n };\n\n SelectController.prototype.setSelectedOption = function (option) {\n if (this.component.selectedOption) {\n this.component.selectedOption = option;\n } else {\n this.component.selectedId = option.id;\n }\n };\n\n SelectController.prototype.selectOption = function (option) {\n this.setSelectedOption(option);\n this.closeDropdown();\n\n this.component.__fireEvent('change', {\n selectedId: option.id,\n selectedOption: option\n });\n };\n\n return SelectController;\n}(_base_select_controller__WEBPACK_IMPORTED_MODULE_0__[\"default\"]);\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (SelectController); //# sourceMappingURL=select-controller.js.map\n\n/***/ }),\n/* 520 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(521);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _progress_bar__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(522);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _progress_bar__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 521 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 522 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_progress_bar_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(523);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_progress_bar_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"ProgressBar\"]));\n\n/***/ }),\n/* 523 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"ProgressBar\", function() { return ProgressBar; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _button_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(48);\n/* harmony import */ var _icon_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(524);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\n\n\nvar MAX_VALUE = 100;\nvar controlId = 0;\nvar ProgressBar = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-progress-bar', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n events: {\n // Fired when the user triggers the result state button.\n resultButtonClick: {\n cancelable: false\n }\n },\n properties: {\n // Percentage value of the progress. Will be clamped between 0 and 100. Decimals will be rounded.\n value: {\n type: 'integer',\n defaultValue: 0\n },\n // Use `\"in-progress\"` to display a progress bar.\n // `\"success\"` and `\"error\"` are result states and replace the progress element with a status indicator,\n // `resultText` and, if set, with a button containing `resultButtonText`.\n status: {\n type: 'string',\n valid: ['in-progress', 'success', 'error'],\n defaultValue: 'in-progress'\n },\n // Allows the correct styling of the progress bar in different contexts.\n // Set it to `\"flash\"` when using the progress bar within a flash component.\n // Set it to `\"key-value\"` when using it within the key-value pairs pattern. Set it to `\"standalone\"` in all other cases.\n variant: {\n type: 'string',\n valid: ['standalone', 'flash', 'key-value'],\n required: true\n },\n // Text for the button that gets displayed when `status` is set to `\"error\"` or `\"success\"`.\n // If `resultButtonText` is empty, no button will be displayed.\n resultButtonText: {\n type: 'string'\n }\n },\n regions: {\n // Short information summarizing the operation. Rendered at the top of the component.\n label: {},\n // More detailed information about the operation, rendered between the progress bar and label.\n description: {},\n // Information that is displayed below the progress bar.\n additionalInfo: {},\n // Content that is displayed whenever `status` is set to `\"error\"` or `\"success\"`.\n resultText: {}\n },\n callbacks: {\n initialized: function () {\n this.__controlId = \"awsui-progress-bar-\" + controlId++;\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var progressBar = function () {\n var roundedValue = Math.round(_this.value);\n var value = Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"clamp\"])(roundedValue, 0, MAX_VALUE);\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](_this, 'container').toString()\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"progress\", {\n className: new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](_this, 'progress').toString(),\n value: value,\n max: MAX_VALUE,\n \"aria-valuetext\": _this.value + \"%\",\n \"aria-labelledby\": _this.__controlId + \"-label\"\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"small\", {\n className: new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](_this, 'percentage').toString(),\n \"aria-hidden\": \"true\"\n }, value + \"%\"));\n };\n\n var resultButton = function () {\n var trigger = function () {\n return _this.__fireEvent('resultButtonClick');\n };\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_button_src__WEBPACK_IMPORTED_MODULE_1__[\"Button\"], {\n className: \"awsui-util-ml-m awsui-progress-bar__result-button\",\n text: _this.resultButtonText,\n click: trigger,\n formAction: \"none\"\n });\n };\n\n var resultState = function (isInFlash) {\n var resultClass = _this.status === 'success' ? 'positive' : 'negative';\n var ariaProps = {\n 'aria-labelledby': _this.__controlId + \"-label\",\n 'aria-live': 'polite',\n 'aria-atomic': 'true'\n };\n\n if (isInFlash) {\n return h.region('resultText', 'span', ariaProps);\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", __assign({\n className: \"awsui-util-status-\" + resultClass\n }, ariaProps), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_icon_src__WEBPACK_IMPORTED_MODULE_2__[\"Icon\"], {\n name: \"status-\" + resultClass\n }), \" \", h.region('resultText', 'span'), _this.resultButtonText ? resultButton() : null);\n };\n\n var rootClasses = new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](this);\n\n if (this.variant) {\n rootClasses.modifier(this.variant);\n }\n\n var isInFlash = this.variant === 'flash';\n var isInResultState = this.status !== 'in-progress';\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: rootClasses.toString()\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](this, 'progress-container')\n }, h.region('label', 'label', {\n className: new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](this, 'label').toString() + \" \" + (this.variant === 'key-value' ? 'awsui-util-label' : ''),\n id: this.__controlId + \"-label\"\n }), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"small\", {\n className: new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](this, 'description').toString()\n }, h.region('description')), !isInResultState ? progressBar() : resultState(isInFlash), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"small\", {\n className: new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](this, 'additional-info').toString()\n }, h.region('additionalInfo'))), isInResultState && isInFlash && this.resultButtonText ? resultButton() : null);\n }\n}); //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 524 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"clamp\", function() { return clamp; });\nvar clamp = function (value, lowerLimit, upperLimit) {\n return Math.max(Math.min(value, upperLimit), lowerLimit);\n}; //# sourceMappingURL=utils.js.map\n\n/***/ }),\n/* 525 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(526);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _radio_button__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(527);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _radio_button__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 526 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 527 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_radio_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(198);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_radio_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"RadioButton\"]));\n\n/***/ }),\n/* 528 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(529);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _radio_group__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(530);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _radio_group__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 529 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 530 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_radio_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(198);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_radio_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"RadioGroup\"]));\n\n/***/ }),\n/* 531 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(532);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _select__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(533);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _select__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 532 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 533 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_select_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(506);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_select_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Select\"]));\n\n/***/ }),\n/* 534 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(535);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _side_navigation__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(536);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _side_navigation__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 535 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 536 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_side_navigation_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(537);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_side_navigation_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"SideNavigation\"]));\n\n/***/ }),\n/* 537 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"SideNavigation\", function() { return SideNavigation; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _expandable_section_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(472);\n/* harmony import */ var _icon_src__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(52);\n/* harmony import */ var _utils__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(538);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\n\n\nvar SideNavigation = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-side-navigation', {\n version: \"2.1.9463.0 (975feb47)\",\n releaseStatus: 'stable',\n properties: {\n // Object responsible for the header at the top of the navigation component.\n // It contains:\n // * `text` [string]: text to be displayed as a header.\n // * `href` [string]: href the header should link to.\n header: {\n type: 'object',\n objectType: 'SideNavigation.Header',\n onChange: function (oldHeader, newHeader) {\n if (newHeader) {\n Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"validateDataFormat\"])(newHeader, _utils__WEBPACK_IMPORTED_MODULE_3__[\"HEADER\"]);\n }\n }\n },\n // Href of the currently active link.\n // All items within the navigation with matching href will be highlighted.\n // `Sections` and `Expandable Page Groups` which contain a highlighted item will be automatically expanded,\n // unless their definitions have `expanded` property explicitly set to `false`.\n // `activeHref` property is automatically set to the href of a clicked item, unless `follow` event is prevented.\n activeHref: {\n type: 'string'\n },\n // Items to be displayed in the navigation.\n // Allowed objects are `Link`, `Divider`, `Section`, `LinkGroup` and `ExpandableLinkGroup`.\n // For details on when to use each of the items, see UX documentation.\n //\n // Keep in mind that you can always inject extra properties (for example: an id)\n // in order to more easily identify the item when it's used in an event `detail`\n // (see the events section below for more information).\n //\n // #### Link\n // Object that represents an anchor in the navigation.\n // Links are rendered as `` tags.\n // * `type`: `'link'`.\n // * `text` [string]: text of the link.\n // * `href` [string]: href of the link.\n // * `external` [boolean]: if set to `true` the navigation item will be decorated with an icon marking the link as external.\n // The anchor will also receive attribute `target=\"_blank\"`. Additionally, `activeHref` property will not be modified when a user clicks on the link.\n // * `info` [Renderable]: allows to display content next to the link. Although it is technically possible to insert any content,\n // our UX guidelines allow only to add a Badge. The definition of \"renderable\" depends on your framework, see below.\n //\n // #### Divider\n // Object that represents a horizontal divider between navigation content.\n // It only contains\n // * `type`: `'divider'`.\n //\n // #### Section\n // Object that represents a section within the navigation.\n // * `type`: `'section'`.\n // * `text` [string]: text to be displayed as a title of the section.\n // * `expanded` [boolean]: whether section should be expanded or not. Default value is `true`.\n // * `items` [array]: a content of the section. Can be any valid item from this list.\n // Although there is no technical limitation to the nesting level,\n // our UX recommendation is to use only one level.\n //\n // #### LinkGroup\n // Object that represents a group of links.\n // * `type`: `'link-group'`.\n // * `text` [string]: text of the group link.\n // * `href` [string]: href of the group link.\n // * `items` [array]: array of child content. Can be any valid item from this list.\n // Although there is no technical limitation to the nesting level,\n // our UX recommendation is to use only one level.\n //\n // #### ExpandableLinkGroup\n //\n // Object that represents an expandable group of links.\n // * `type`: `'expandable-link-group'`.\n // * `text` [string]: text of the group link.\n // * `href` [string]: href of the group link.\n // * `expanded` [boolean]: whether group should be expanded or not.\n // If not explicitly set, the group will be collapsed by default,\n // unless one of the nested links is active.\n // * `items` [array]: array of child content.\n // Can be any valid item from this list.\n // Although there is no technical limitation to the nesting level,\n // our UX recommendation is to use only one level.\n //\n //\n // #### Renderable value\n // * **AngularJS:** Must be a string representing an Angular template.\n // Example: `'2'`.\n // * **React:** Must be a valid React element or a function that returns a React element to display.\n // Example: `() => 2` or just `2` in jsx.\n // * **GWT:** Must be a lambda function that should return either a string, html element or GWT-widget instance.\n // Example: `() -> 'some text'` or `() -> new HTMLPanel()`.\n items: {\n type: 'array',\n itemTypes: ['SideNavigation.Item', 'SideNavigation.Link', 'SideNavigation.Divider', 'SideNavigation.Section', 'SideNavigation.LinkGroup', 'SideNavigation.ExpandableLinkGroup'],\n onChange: function (oldItems, newItems) {\n if (oldItems === newItems) {\n return;\n }\n\n Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"validateItems\"])(newItems);\n this.__expandedStateIndex = Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"generateExpandableItemsIndex\"])(newItems);\n }\n }\n },\n events: {\n // Fired when an anchor is clicked without any modifier (CTRL, ALT, SHIFT).\n // The event `detail` contains a definition of the clicked item.\n // Use this event to prevent default browser navigation (by calling `preventDefault` method)\n // and branch your own routing.\n //\n // If the event is prevented the `activeHref` property will not be automatically set\n // to the href of the clicked item, so you will have to do it yourself.\n follow: {\n bubbles: true,\n cancelable: true,\n detailType: 'SideNavigation.FollowDetail'\n },\n // Fired when expansion state of `Section` or `ExpandablePageGroup` items changes\n // as a result of a user interaction.\n // The event `detail` contains an object with information about the changed item.\n // * `item` [object]: definition of the item which was changed.\n // * `expanded` [boolean]: whether the item is expanded or not.\n // * `expandableParents` [array]: a list of parent items which has type of `Section` or `ExpandablePageGroup`.\n // Use `expandableParents` array to set their expanded state to `true` if you want\n // your data model to keep track of the current state of the navigation items.\n //\n // _Remark:_ the `awsui:change` event is not raised if the expansion of expandable items\n // is merely a result of the activation of a nested link upon changing the `activeHref` property.\n change: {\n bubbles: true,\n cancelable: false,\n detailType: 'SideNavigation.ChangeDetail'\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var getLocalState = function (def) {\n return _this.__expandedStateIndex.filter(function (_a) {\n var item = _a.item;\n return item === def;\n })[0];\n };\n\n var createDivider = function (modifier) {\n if (modifier === void 0) {\n modifier = 'default';\n }\n\n var className = new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](_this, _utils__WEBPACK_IMPORTED_MODULE_3__[\"DIVIDER\"]).modifier(modifier).toString();\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"hr\", {\n className: className\n });\n };\n\n var createList = function (items, modifier) {\n if (items === void 0) {\n items = [];\n }\n\n if (modifier === void 0) {\n modifier = '';\n } // value must me initialized, undefined will not work because of mithril issue:\n // https://github.com/MithrilJS/mithril.js/issues/2258\n\n\n var className = null;\n\n if (modifier) {\n className = new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](_this, 'list').modifier(modifier).toString();\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"ul\", {\n className: className\n }, items.map(function (item) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"li\", null, navigationItemsFactory(item));\n }));\n };\n\n var createClickHandler = function (definition) {\n return function (event) {\n // if the event is not stopped it propagates to expandable section and changes state set during rendering\n event.stopPropagation(); // only if primary mouse button is clicked without any modifier keys\n\n var specialKey = event.button !== 0 || event.ctrlKey || event.altKey || event.shiftKey || event.metaKey;\n\n if (specialKey) {\n return;\n }\n\n if (definition.type === _utils__WEBPACK_IMPORTED_MODULE_3__[\"EXPANDABLE_LINK_GROUP\"]) {\n var localState = getLocalState(definition);\n\n if (!localState.expanded) {\n localState.expanded = true;\n\n _this.__fireEvent('change', localState);\n }\n\n _this.__update();\n }\n\n _this.__fireEvent('follow', definition, {\n nativeEvent: event,\n onNotCanceled: function () {\n if (!definition.external) {\n _this.activeHref = definition.href;\n }\n }\n });\n };\n };\n\n var createChangeHandler = function (definition) {\n return function (event) {\n event.stopPropagation();\n var localState = getLocalState(definition);\n localState.expanded = event.detail.expanded;\n\n _this.__fireEvent('change', localState);\n };\n };\n\n var createKeyupHandler = function (definition) {\n return function (event) {\n if (event.keyCode === 13) {\n event.stopPropagation();\n }\n };\n };\n\n var createLink = function (def, expanded) {\n var infoContent = def.info ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-util-ml-s\"\n }, _this.renderToMithril(\"link-item-\" + def.href + \"-\" + def.text, def.info)) : null;\n var externalIcon = def.external ? _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_icon_src__WEBPACK_IMPORTED_MODULE_2__[\"Icon\"], {\n name: \"external\",\n className: \"awsui-util-ml-s\"\n }) : null;\n var isActive = _this.activeHref === def.href;\n var className = new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](_this, _utils__WEBPACK_IMPORTED_MODULE_3__[\"LINK\"]).modifier('active', isActive).toString();\n var attributes = {\n onclick: createClickHandler(def),\n onkeyup: createKeyupHandler(def),\n className: className,\n href: def.href\n };\n\n if (def.external) {\n attributes.target = '_blank';\n }\n\n if (isActive) {\n attributes['aria-current'] = 'page';\n }\n\n if (expanded !== undefined) {\n attributes['aria-expanded'] = \"\" + expanded;\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", null, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"a\", __assign({}, attributes), def.text, externalIcon), infoContent);\n };\n\n var createSection = function (def) {\n var localState = getLocalState(def);\n var expanded = localState.expanded || localState.expanded === undefined;\n var list = createList(def.items);\n\n var header = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-side-navigation__title\"\n }, def.text);\n\n var onChange = createChangeHandler(def);\n var subNavClassName = new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](_this, 'sub-navigation').modifier(_utils__WEBPACK_IMPORTED_MODULE_3__[\"SECTION\"]).utility('no-gutters').toString();\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_expandable_section_src__WEBPACK_IMPORTED_MODULE_1__[\"ExpandableSection\"], {\n className: subNavClassName,\n variant: \"borderless\",\n header: header,\n content: list,\n expanded: expanded,\n change: onChange\n });\n };\n\n var createLinkGroup = function (def) {\n var header = createLink(def);\n var list = createList(def.items);\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", null, header, list);\n };\n\n var createExpandableLinkGroup = function (def) {\n var localState = getLocalState(def).expanded;\n var expanded = localState !== undefined ? localState : Object(_utils__WEBPACK_IMPORTED_MODULE_3__[\"hasActiveLink\"])(def, _this.activeHref);\n var header = createLink(def, expanded);\n var list = createList(def.items, _utils__WEBPACK_IMPORTED_MODULE_3__[\"EXPANDABLE_LINK_GROUP\"]);\n var onChange = createChangeHandler(def);\n var subNavClassName = new _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"ClassBuilder\"](_this, 'sub-navigation').modifier(_utils__WEBPACK_IMPORTED_MODULE_3__[\"EXPANDABLE_LINK_GROUP\"]).toString();\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_expandable_section_src__WEBPACK_IMPORTED_MODULE_1__[\"ExpandableSection\"], {\n variant: \"navigation\",\n className: subNavClassName,\n header: header,\n content: list,\n expanded: expanded,\n change: onChange\n });\n };\n\n var createHeader = function (def) {\n if (!def) {\n // do not render header if we have no data\n return null;\n }\n\n var attributes = {\n onclick: createClickHandler(def),\n href: def.href,\n className: 'awsui-side-navigation__header-link'\n };\n\n if (def.href === _this.activeHref) {\n attributes['aria-current'] = 'page';\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", null, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-side-navigation__header awsui-util-font-size-3\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"a\", __assign({}, attributes), def.text)), createDivider('header'));\n };\n\n var navigationItemsFactory = function (def) {\n switch (def.type) {\n case _utils__WEBPACK_IMPORTED_MODULE_3__[\"LINK\"]:\n return createLink(def);\n\n case _utils__WEBPACK_IMPORTED_MODULE_3__[\"DIVIDER\"]:\n return createDivider();\n\n case _utils__WEBPACK_IMPORTED_MODULE_3__[\"SECTION\"]:\n return createSection(def);\n\n case _utils__WEBPACK_IMPORTED_MODULE_3__[\"LINK_GROUP\"]:\n return createLinkGroup(def);\n\n case _utils__WEBPACK_IMPORTED_MODULE_3__[\"EXPANDABLE_LINK_GROUP\"]:\n return createExpandableLinkGroup(def);\n }\n };\n\n var header = createHeader(this.header);\n var list = createList(this.items, 'root');\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n class: \"awsui-side-navigation\"\n }, header, list);\n }\n}); //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 538 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"HEADER\", function() { return HEADER; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"DIVIDER\", function() { return DIVIDER; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"LINK\", function() { return LINK; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"SECTION\", function() { return SECTION; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"LINK_GROUP\", function() { return LINK_GROUP; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"EXPANDABLE_LINK_GROUP\", function() { return EXPANDABLE_LINK_GROUP; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"hasActiveLink\", function() { return hasActiveLink; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"validateDataFormat\", function() { return validateDataFormat; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"validateItems\", function() { return validateItems; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"generateExpandableItemsIndex\", function() { return generateExpandableItemsIndex; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\nvar _a;\n\n\nvar HEADER = 'header';\nvar DIVIDER = 'divider';\nvar LINK = 'link';\nvar SECTION = 'section';\nvar LINK_GROUP = 'link-group';\nvar EXPANDABLE_LINK_GROUP = 'expandable-link-group';\nvar dataFormat = (_a = {}, _a[HEADER] = ['text', 'href'], _a[LINK] = ['type', 'text', 'href'], _a[SECTION] = ['type', 'text', 'items'], _a[LINK_GROUP] = ['type', 'text', 'items', 'href'], _a[EXPANDABLE_LINK_GROUP] = ['type', 'text', 'items', 'href'], _a[DIVIDER] = ['type'], _a);\nvar hasActiveLink = function (item, activeHref) {\n if (item.href && item.href === activeHref) {\n return true;\n }\n\n if (item.items) {\n return item.items.some(function (i) {\n return hasActiveLink(i, activeHref);\n });\n }\n\n return false;\n};\n\nvar validateHrefDuplicates = function (items, scannedHrefs) {\n if (items === void 0) {\n items = [];\n }\n\n if (scannedHrefs === void 0) {\n scannedHrefs = {};\n }\n\n items.forEach(function (item) {\n if (item.href) {\n if (scannedHrefs[item.href]) {\n _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"logger\"].warn(\"Items contain a duplicated href: \\\"\" + item.href + \"\\\".\");\n } else {\n scannedHrefs[item.href] = true;\n }\n }\n\n validateHrefDuplicates(item.items, scannedHrefs);\n });\n};\n\nvar validateDataFormat = function (item, typeName) {\n var requiredProperties = dataFormat[typeName];\n\n var isMissing = function (prop) {\n return item[prop] === undefined;\n };\n\n var missing = requiredProperties.filter(isMissing);\n\n if (missing.length) {\n _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"logger\"].error(\"Missing properties [\" + missing.join(', ') + \"] in \\\"\" + typeName + \"\\\" item.\");\n }\n};\nvar validateItems = function (items) {\n if (items === void 0) {\n items = [];\n }\n\n validateHrefDuplicates(items);\n items.forEach(function (item) {\n if (!item.type) {\n _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"logger\"].error('Item type is not specified.');\n }\n\n if (!dataFormat.hasOwnProperty(item.type)) {\n _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"logger\"].error(\"Unknown item type: \\\"\" + item.type + \"\\\".\");\n }\n\n validateDataFormat(item, item.type);\n validateItems(item.items);\n });\n};\nvar generateExpandableItemsIndex = function (items, index, expandableParents) {\n if (index === void 0) {\n index = [];\n }\n\n if (expandableParents === void 0) {\n expandableParents = [];\n }\n\n items.forEach(function (item) {\n var nextLevelParents = expandableParents.slice();\n\n if (item.type === SECTION || item.type === EXPANDABLE_LINK_GROUP) {\n index.push({\n item: item,\n expanded: item.expanded,\n expandableParents: expandableParents\n });\n nextLevelParents.unshift(item);\n }\n\n if (item.items) {\n generateExpandableItemsIndex(item.items, index, nextLevelParents);\n }\n });\n return index;\n}; //# sourceMappingURL=utils.js.map\n\n/***/ }),\n/* 539 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(540);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _spinner__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(541);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _spinner__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 540 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 541 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_spinner_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(115);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_spinner_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Spinner\"]));\n\n/***/ }),\n/* 542 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(543);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _table_content_selector__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(544);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _table_content_selector__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 543 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 544 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TableContentSelector\"]));\n\n/***/ }),\n/* 545 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(546);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _table_filtering__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(547);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _table_filtering__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 546 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 547 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TableFiltering\"]));\n\n/***/ }),\n/* 548 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(549);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _table_page_size_selector__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(550);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _table_page_size_selector__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 549 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 550 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TablePageSizeSelector\"]));\n\n/***/ }),\n/* 551 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(552);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _table_pagination__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(553);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _table_pagination__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 552 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 553 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TablePagination\"]));\n\n/***/ }),\n/* 554 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(555);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _table_preferences__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(556);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _table_preferences__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 555 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 556 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TablePreferences\"]));\n\n/***/ }),\n/* 557 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(558);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _table_property_filtering__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(559);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _table_property_filtering__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 558 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 559 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TablePropertyFiltering\"]));\n\n/***/ }),\n/* 560 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(561);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _table_selection__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(562);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _table_selection__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 561 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 562 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TableSelection\"]));\n\n/***/ }),\n/* 563 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(564);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _table_sorting__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(565);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _table_sorting__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 564 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 565 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TableSorting\"]));\n\n/***/ }),\n/* 566 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(567);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _table_wrap_lines__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(568);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _table_wrap_lines__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 567 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 568 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TableWrapLines\"]));\n\n/***/ }),\n/* 569 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(570);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _table__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(571);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _table__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 570 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 571 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(178);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_table_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Table\"]));\n\n/***/ }),\n/* 572 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(573);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _tabs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(574);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _tabs__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 573 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 574 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_tabs_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(575);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_tabs_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Tabs\"]));\n\n/***/ }),\n/* 575 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"nextGeneratedId\", function() { return nextGeneratedId; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Tabs\", function() { return Tabs; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\nvar lastGeneratedId = 0;\nvar nextGeneratedId = function () {\n return \"awsui-tabs-\" + lastGeneratedId++;\n};\nvar Tabs = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-tabs', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n callbacks: {\n initialized: function () {\n this.__id = nextGeneratedId();\n }\n },\n properties: {\n // Array of objects, each having the following properties:\n //\n // * `id` [string]: The tab id, this value will be set to activeTabId when the tab is selected.\n // * `label` [string/function]: Tab label shown in the UI.\n // * `content` [string/function]: Tab content to render in the container.\n // * `disabled` [boolean]: Whether this item is disabled.\n // * `href` [string]: You can use this parameter to change the default `href` of the internal tab anchor. The\n // `click` event default behavior is prevented, unless user clicks the tab with a key modifier (CTRL,\n // ALT, SHIFT, META). This allows to open new browser tabs with initially selected component tab,\n // when the routing can handle such deep links. You can manually update routing on the current page\n // using the `activeTabHref` property of `change` event detail.\n tabs: {\n type: 'array',\n itemTypes: ['Tabs.Tab'],\n onChange: function (oldTabs, newTabs) {\n this.__enabledTabs = newTabs.filter(function (tab) {\n return !tab.disabled;\n });\n }\n },\n // Id of the currently active tab.\n activeTabId: {\n type: 'string'\n },\n // The possible visual variants of tabs are the following:\n // * default: can be used in any context\n // * container: version with borders, supposed to be used along with other containers\n variant: {\n type: 'string',\n valid: ['default', 'container'],\n defaultValue: 'default'\n }\n },\n events: {\n // Fired whenever the user selects a different tab.\n // The event `detail` contains the current `activeTabId`.\n change: {\n bubbles: true,\n cancelable: false,\n detailType: 'Tabs.ChangeDetail'\n }\n },\n functions: {\n __highlightTab: function (enabledTabIndex) {\n var tab = this.__enabledTabs[enabledTabIndex];\n this.activeTabId = tab.id;\n var enabledTabNodes = this.node.querySelectorAll('.awsui-tabs-tab-link:not(.awsui-tabs-tab-disabled)');\n enabledTabNodes[enabledTabIndex].focus();\n\n this.__fireEvent('change', {\n activeTabId: tab.id,\n activeTabHref: tab.href\n });\n },\n __moveHighlight: function (event, tab) {\n if (event.keyCode !== _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].right && event.keyCode !== _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].left) {\n return;\n }\n\n var activeIndex = this.__enabledTabs.indexOf(tab);\n\n if (event.keyCode === _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].right) {\n if (activeIndex + 1 === this.__enabledTabs.length) {\n this.__highlightTab(0);\n } else {\n this.__highlightTab(activeIndex + 1);\n }\n } else if (event.keyCode === _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"KeyCode\"].left) {\n if (activeIndex === 0) {\n this.__highlightTab(this.__enabledTabs.length - 1);\n } else {\n this.__highlightTab(activeIndex - 1);\n }\n }\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var renderTab = function (tab) {\n var clickTab = function (event) {\n if (tab.disabled || tab.id === _this.activeTabId) {\n event.preventDefault();\n return;\n } // if primary mouse button is clicked with a modifier key browser will handle opening a new tab\n\n\n var specialKey = event.button !== 0 || event.ctrlKey || event.altKey || event.shiftKey || event.metaKey;\n\n if (specialKey && tab.href) {\n return;\n }\n\n event.preventDefault();\n _this.activeTabId = tab.id;\n\n _this.__fireEvent('change', {\n activeTabId: _this.activeTabId,\n activeTabHref: tab.href\n });\n };\n\n var classes = new h.ClassBuilder(_this).addComponentClass('tab-link').addComponentClass('tab-active', _this.activeTabId === tab.id).addComponentClass('tab-disabled', tab.disabled).toClassName();\n var linkAttributes = {\n className: classes,\n 'override-focus': true,\n role: 'tab',\n 'aria-selected': \"\" + (tab.id === _this.activeTabId),\n 'aria-controls': _this.__id + \"-\" + tab.id + \"-panel\"\n };\n\n if (tab.disabled) {\n linkAttributes['aria-disabled'] = 'true';\n } else {\n // Only add href attribute if tab isn't disabled.\n // This allows focus only on enabled tabs\n linkAttributes.href = tab.href || '#';\n linkAttributes.onclick = clickTab;\n\n linkAttributes.onkeydown = function (event) {\n return _this.__moveHighlight(event, tab);\n };\n }\n\n if (tab.id !== _this.activeTabId) {\n linkAttributes.tabindex = '-1';\n }\n\n linkAttributes['data-testid'] = tab.id;\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"li\", {\n className: \"awsui-tabs-tab\",\n role: \"presentation\"\n }, _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"a\", __assign({}, linkAttributes), _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n className: \"awsui-tabs-tab-label\"\n }, _this.renderToMithril(\"tab-link-\" + tab.id, tab.label))));\n };\n\n var header = function () {\n var classes = new h.ClassBuilder(_this).addComponentClass('header').addClass('awsui-util-container-header', _this.variant === 'container').toClassName();\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"ul\", {\n className: classes,\n role: \"tablist\"\n }, _this.tabs.map(renderTab));\n };\n\n var content = function () {\n var selectedTab = _this.tabs.filter(function (tab) {\n return tab.id === _this.activeTabId;\n })[0];\n\n var renderContent = function (tab) {\n var isContentActive = tab === selectedTab && !selectedTab.disabled && selectedTab.content;\n var classes = new h.ClassBuilder(_this).addComponentClass('content').addComponentClass('content-active', isContentActive).addComponentClass('content-inactive', !isContentActive).toClassName();\n var contentAttributes = {\n className: classes,\n role: 'tabpanel',\n id: _this.__id + \"-\" + tab.id + \"-panel\",\n key: _this.__id + \"-\" + tab.id + \"-panel\",\n tabindex: '0',\n 'override-focus': true\n };\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", __assign({}, contentAttributes), isContentActive ? _this.renderToMithril(_this.__id + \"-\" + tab.id + \"-panel\", selectedTab.content) : null);\n };\n\n return _this.variant === 'container' ? _this.tabs.map(renderContent) : _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: \"awsui-tabs-content-wrapper\"\n }, _this.tabs.map(renderContent));\n };\n\n var cb = new h.ClassBuilder(this).addPropertyValueClass('variant').addClass('awsui-util-container', this.variant === 'container');\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", {\n className: cb.toClassName()\n }, header(), content());\n },\n wrapperSupport: {\n ngModel: {\n value: 'activeTabId',\n event: 'change'\n }\n }\n}); //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 576 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(577);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _textarea__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(578);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _textarea__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 577 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 578 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_textarea_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(579);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_textarea_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Textarea\"]));\n\n/***/ }),\n/* 579 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Textarea\", function() { return Textarea; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\nvar lastGeneratedId = 0;\n\nfunction nextGeneratedId() {\n return 'awsui-textarea-' + lastGeneratedId++;\n}\n\nvar Textarea = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-textarea', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n callbacks: {\n initialized: function () {\n if (!this.controlId) {\n this.controlId = nextGeneratedId();\n }\n }\n },\n properties: {\n // Text entered into the element.\n value: {\n type: 'string'\n },\n // Placeholder text rendered when the value is an empty string.\n placeholder: {\n type: 'string'\n },\n // The name of the control used in HTML forms.\n name: {\n type: 'string'\n },\n // Specifies that the textarea should be disabled, preventing the user from\n // modifying the value and preventing the value from being included in a\n // form submission. A disabled textarea cannot receive focus.\n //\n // **AngularJS:** Use `data-disabled` instead.\n disabled: {\n type: 'boolean'\n },\n // Specifies that the textarea should be readonly, preventing the user from\n // modifying the value but including it in a form submission. A readonly textarea can receive focus.\n //\n // Do not use readonly textareas outside of a form.\n readonly: {\n type: 'boolean'\n },\n // Overrides invalidation state. Usually invalid state comes from wrapping `awsui-form-field` component, however\n // sometimes you need to override its state when you have more than one input within single form-field.\n invalid: {\n type: 'boolean',\n nullable: true\n },\n // Id of the internal textarea. Useful for relating a label element's\n // \"for\" attribute to this control. It defaults to an automatically generated id.\n controlId: {\n type: 'string',\n announceValue: true\n },\n // The number of lines of text to set the height to.\n rows: {\n type: 'integer',\n defaultValue: 3\n },\n // Adds an aria label on the native textarea.\n label: {\n type: 'string'\n },\n // Adds aria-describedby on the native textarea. Use this only with form fields that\n // contain multiple controls under the same label.\n // 1. Define custom ids inside the description, hint and error text\n // 2. Refer to these from every single control under that label using this property\n // 3. Refer to any other hint/description text that you provide\n ariaDescribedby: {\n type: 'string',\n nullable: true\n },\n // A default suggested aria-describedby value that can be pushed down from a FormField\n __suggestedAriaDescribedby: {\n type: 'string'\n },\n // Adds aria-required on the native input\n ariaRequired: {\n type: 'boolean'\n }\n },\n events: {\n // Fired when textarea focus is removed from the UI control.\n blur: {\n bubbles: false,\n cancelable: false\n },\n // Mimics the native `change` event on inputs.\n // The event `detail` contains the current value of the field.\n change: {\n bubbles: true,\n cancelable: false,\n detailType: 'Textarea.ChangeDetail'\n },\n // Fires when input focus is set onto the UI control.\n focus: {\n bubbles: false,\n cancelable: false\n },\n // Mimics the native `input` event on inputs.\n // The event `detail` contains the current value of the field.\n input: {\n bubbles: true,\n cancelable: false,\n detailType: 'Textarea.ChangeDetail'\n },\n // Fired when the underlying native input fires `keydown` event.\n // The event `detail` contains the `keyCode` and information about modifiers (alt, ctrl, ...).\n keydown: {\n bubbles: true,\n cancelable: true,\n detailType: 'Textarea.KeyDetail'\n },\n // Fired when the underlying native input fires `keyup` event.\n // The event `detail` contains the `keyCode` and information about modifiers (alt, ctrl, ...).\n keyup: {\n bubbles: true,\n cancelable: true,\n detailType: 'Textarea.KeyDetail'\n },\n // Fired when the underlying native input fires `keypress` event.\n // The event `detail` contains the `key` property and information about modifiers (alt, ctrl, ...).\n keypress: {\n bubbles: true,\n cancelable: true,\n detailType: 'Textarea.KeyDetail'\n }\n },\n functions: {\n // Sets input focus onto the UI control.\n focus: function () {\n this.node.querySelector('.awsui-textarea').focus();\n }\n },\n render: function (m, h) {\n var _this = this;\n\n var keyHandler = function (eventName) {\n return function (event) {\n var keyCode = event.keyCode,\n key = event.key,\n ctrlKey = event.ctrlKey,\n shiftKey = event.shiftKey,\n altKey = event.altKey,\n metaKey = event.metaKey;\n\n _this.__fireEvent(eventName, {\n keyCode: keyCode,\n key: key,\n ctrlKey: ctrlKey,\n shiftKey: shiftKey,\n altKey: altKey,\n metaKey: metaKey\n }, {\n nativeEvent: event\n });\n };\n };\n\n var inputHandler = function (event) {\n if (event.target.value !== _this.value) {\n _this.value = event.target.value;\n return _this.__fireEvent('input', {\n value: _this.value\n });\n }\n };\n\n var changeHandler = function () {\n return _this.__fireEvent('change', {\n value: _this.value\n });\n };\n\n var cb = new h.ClassBuilder(this);\n cb.addClass('awsui-textarea').addComponentClass('readonly', this.readonly);\n\n if (this.invalid !== null) {\n cb.addComponentClass('invalid', this.invalid);\n cb.addComponentClass('valid', !this.invalid);\n }\n\n var attributes = {\n className: cb.toClassName(),\n disabled: this.disabled,\n readonly: this.readonly,\n onblur: function () {\n return _this.__fireEvent('blur');\n },\n onfocus: function () {\n return _this.__fireEvent('focus');\n },\n onkeydown: keyHandler('keydown'),\n onkeyup: keyHandler('keyup'),\n onkeypress: keyHandler('keypress'),\n oninput: inputHandler,\n onchange: changeHandler,\n rows: this.rows,\n 'aria-required': this.ariaRequired && 'true'\n };\n\n if (this.name) {\n attributes.name = this.name;\n }\n\n if (this.placeholder) {\n attributes.placeholder = this.placeholder;\n }\n\n if (this.label) {\n attributes['aria-label'] = this.label;\n }\n\n if (this.invalid) {\n attributes['aria-invalid'] = 'true';\n } // The 'value' attribute is handled separately for two reasons:\n // 1) It causes a rendering bug with Mitrhil when a character is entered\n // in the input element. See the tests for more info.\n // 2) If the value is updated by the user, in IE the caret is reset to the end\n // of the textarea, even if the update was in the middle of the text.\n // We work around these issues by having a config callback that only\n // changes the value if it has been updated.\n\n\n var initValue = function (element) {\n var textarea = element;\n\n if (textarea.value !== _this.value) {\n textarea.value = _this.value || '';\n }\n };\n\n attributes.lifecycleKey = 'textarea';\n attributes.componentDidMount = initValue;\n attributes.componentDidUpdate = initValue;\n\n if (this.controlId) {\n attributes.id = this.controlId;\n }\n\n var ariaDescribedby = this.ariaDescribedby || this.__suggestedAriaDescribedby;\n\n if (ariaDescribedby) {\n attributes['aria-describedby'] = ariaDescribedby;\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"textarea\", __assign({}, attributes));\n },\n wrapperSupport: {\n ngModel: {\n value: 'value',\n event: 'input'\n }\n }\n}); //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 580 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(581);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _tiles__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(582);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _tiles__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 581 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 582 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_radio_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(198);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_radio_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Tiles\"]));\n\n/***/ }),\n/* 583 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(584);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _time_input__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(585);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _time_input__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 584 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 585 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_time_input_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(586);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_time_input_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TimeInput\"]));\n\n/***/ }),\n/* 586 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _time_input__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(587);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"TimeInput\", function() { return _time_input__WEBPACK_IMPORTED_MODULE_0__[\"TimeInput\"]; });\n\n //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 587 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"TimeInput\", function() { return TimeInput; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _input_src_base_input__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(145);\n/* harmony import */ var _controllers_MaskedInputController__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(260);\n\n\n\n\nfunction getFormat(format, use24Hour) {\n var segments = [use24Hour ? {\n min: 0,\n max: 23,\n length: 2\n } : {\n min: 1,\n max: 12,\n length: 2\n }];\n\n if (format.match('hh:mm')) {\n segments.push({\n min: 0,\n max: 59,\n length: 2\n });\n }\n\n if (format.match('hh:mm:ss')) {\n segments.push({\n min: 0,\n max: 59,\n length: 2\n });\n }\n\n return {\n separator: ':',\n segments: segments\n };\n}\n\nvar TimeInput = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-time-input', {\n releaseStatus: 'stable',\n version: \"2.1.9463.0 (975feb47)\",\n callbacks: {\n initialized: function () {\n var _this = this;\n\n this.__controller = new _controllers_MaskedInputController__WEBPACK_IMPORTED_MODULE_2__[\"default\"]({\n getValue: function () {\n return _this.value;\n },\n isReadOnly: function () {\n return _this.readonly;\n },\n isDisabled: function () {\n return _this.disabled;\n },\n notifyInput: function (value) {\n _this.value = value;\n\n _this.__fireEvent('input', {\n value: value\n });\n },\n notifyChange: function (value) {\n _this.value = value;\n\n _this.__fireEvent('change', {\n value: value\n });\n },\n overrideValue: function (value) {\n _this.value = value;\n },\n focus: function () {\n return _this.focus();\n },\n notifyFocus: function () {\n return _this.__fireEvent('focus');\n },\n notifyBlur: function () {\n return _this.__fireEvent('blur');\n },\n notifyKeyEvent: function () {\n return null;\n }\n }, this.node);\n\n this.__controller.setFormat(getFormat(this.format, this.use24Hour));\n\n if (!this.controlId) {\n this.controlId = this.__controller.generatedId;\n }\n },\n attached: function () {\n this.__controller.addListeners();\n },\n detached: function () {\n this.__controller.removeListeners();\n }\n },\n properties: {\n // Text entered into the form element.\n value: {\n type: 'string',\n defaultValue: '',\n onChange: function (oldValue, newValue) {\n var updated = this.__controller.maskedValueAttributeChangeHandler(oldValue, newValue);\n\n if (updated !== newValue) {\n this.value = updated;\n }\n }\n },\n // The name of the control used in HTML forms.\n name: {\n type: 'string'\n },\n // Specifies the granularity of the time input.\n format: {\n type: 'string',\n defaultValue: 'hh:mm:ss',\n valid: ['hh', 'hh:mm', 'hh:mm:ss'],\n onChange: function (oldValue, newValue) {\n var updated = this.__controller.reformat(getFormat(newValue, this.use24Hour), this.value);\n\n if (updated !== this.value) {\n this.value = updated;\n }\n }\n },\n // Specifies whether the component should use 12 hour or 24 hour format.\n // Note: When using 12 hour format, there is no option for picking 'am' or 'pm'.\n use24Hour: {\n type: 'boolean',\n defaultValue: true,\n onChange: function (oldValue, newValue) {\n var updated = this.__controller.reformat(getFormat(this.format, newValue), this.value);\n\n if (updated !== this.value) {\n this.value = updated;\n }\n }\n },\n // Placeholder text rendered when the value is an empty string.\n placeholder: {\n type: 'string'\n },\n // Specifies that the input should be disabled, preventing the user from\n // modifying the value and preventing the value from being included in a\n // form submission. A disabled input cannot receive focus.\n //\n // **AngularJS:** Use `data-disabled` instead.\n disabled: {\n type: 'boolean'\n },\n // Specifies that the input should be readonly, preventing the user from\n // modifying the value but including it in a form submission. A readonly input can receive focus.\n //\n // Do not use readonly inputs outside of a form.\n readonly: {\n type: 'boolean'\n },\n // Overrides invalidation state. Usually invalid state comes from wrapping `awsui-form-field` component, however\n // sometimes you need to override its state when you have more than one input within single form-field.\n invalid: {\n type: 'boolean',\n nullable: true\n },\n // Allows you to indicate that the control is to be focused as\n // soon as the `load` event triggers, allowing the user to just start\n // typing without having to manually focus the input. Don't use this option\n // in pages that allow for the field to be scrolled out of the viewport.\n autofocus: {\n type: 'boolean'\n },\n // Specifies whether browsers should enable autocomplete for this input.\n // In some cases it may be appropriate to disable autocomplete, for example for\n // security-sensitive fields.\n autocomplete: {\n type: 'boolean',\n defaultValue: true\n },\n // Id of the internal input. Useful for relating a label element's\n // \"for\" attribute to this control. It defaults to an automatically generated id.\n controlId: {\n type: 'string',\n announceValue: true,\n onChange: function () {\n if (!this.controlId) {\n this.controlId = this.__controller.generatedId;\n }\n }\n },\n // Adds an aria label on the native input.\n label: {\n type: 'string'\n },\n // Adds aria-labelledby on the native input. Use this only with form fields that\n // contain multiple controls under the same label.\n // 1. Define a custom id inside the label\n // 2. Refer to that label from every single control under that label using this property\n ariaLabelledby: {\n type: 'string'\n },\n // Adds aria-describedby on the native input. Use this only with form fields that\n // contain multiple controls under the same label.\n // 1. Define custom ids inside the description, hint and error text\n // 2. Refer to these from every single control under that label using this property\n // 3. Refer to any other hint/description text that you provide\n ariaDescribedby: {\n type: 'string',\n nullable: true\n },\n // Adds aria-required on the native input\n ariaRequired: {\n type: 'boolean'\n },\n // A default suggested aria-describedby value that can be pushed down from a FormField\n __suggestedAriaDescribedby: {\n type: 'string'\n },\n __confirmedValue: {\n type: 'string',\n defaultValue: ''\n }\n },\n functions: {\n // Sets input focus onto the UI control.\n focus: function () {\n this.node.querySelector('input').focus();\n }\n },\n events: {\n // Fired when input focus is set onto the UI control.\n focus: {\n bubbles: true,\n cancelable: false\n },\n // Fired when input focus is removed from the UI control.\n blur: {\n bubbles: true,\n cancelable: false\n },\n // Mimics the native `change` event on inputs.\n // The event `detail` contains the current value of the field.\n change: {\n bubbles: true,\n cancelable: false,\n detailType: 'TimeInput.ChangeDetail'\n },\n // Mimics the native `input` event on inputs.\n // The event `detail` contains the current value of the field.\n input: {\n bubbles: true,\n cancelable: false,\n detailType: 'TimeInput.ChangeDetail'\n }\n },\n render: function (m, h) {\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(_input_src_base_input__WEBPACK_IMPORTED_MODULE_1__[\"default\"], {\n value: this.value,\n type: this.type,\n autocomplete: this.autocomplete,\n disabled: this.disabled,\n readonly: this.readonly,\n \"aria-invalid\": this.invalid,\n \"aria-required\": this.ariaRequired,\n additionalAttrs: {\n name: this.name,\n id: this.controlId || null,\n placeholder: this.placeholder,\n autofocus: this.autofocus,\n 'aria-describedby': this.ariaDescribedby || this.__suggestedAriaDescribedby || undefined,\n 'aria-label': this.label,\n 'aria-labelledby': this.ariaLabelledby\n }\n });\n }\n}); //# sourceMappingURL=time-input.js.map\n\n/***/ }),\n/* 588 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(589);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _toggle__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(590);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _toggle__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 589 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 590 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_checkbox_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(194);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_checkbox_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Toggle\"]));\n\n/***/ }),\n/* 591 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(592);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _token_group__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(593);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _token_group__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 592 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 593 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_token_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(208);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_token_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"TokenGroup\"]));\n\n/***/ }),\n/* 594 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(595);\n/* harmony import */ var _styles_css__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_styles_css__WEBPACK_IMPORTED_MODULE_0__);\n/* harmony import */ var _tooltip__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(596);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return _tooltip__WEBPACK_IMPORTED_MODULE_1__[\"default\"]; });\n\n/* empty/unused harmony star reexport */\n \n \n\n/***/ }),\n/* 595 */\n/***/ (function(module, exports, __webpack_require__) {\n\n// extracted by mini-css-extract-plugin\n\n/***/ }),\n/* 596 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _internal_packages_components_react_src_metrics__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4);\n/* harmony import */ var _internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(39);\n/* harmony import */ var _internal_components_tooltip_src_index_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(597);\n\n\n\n/* harmony default export */ __webpack_exports__[\"default\"] = (Object(_internal_core_wrapper_react_src_index_js__WEBPACK_IMPORTED_MODULE_1__[\"createClass\"])(_internal_components_tooltip_src_index_js__WEBPACK_IMPORTED_MODULE_2__[\"Tooltip\"]));\n\n/***/ }),\n/* 597 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Tooltip\", function() { return Tooltip; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony import */ var _positioning__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(598);\nvar __assign = undefined && undefined.__assign || function () {\n __assign = Object.assign || function (t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\n }\n\n return t;\n };\n\n return __assign.apply(this, arguments);\n};\n\n\n\nvar positionOrders = {\n top: ['top', 'bottom', 'right', 'left'],\n right: ['right', 'left', 'top', 'bottom'],\n bottom: ['bottom', 'top', 'right', 'left'],\n left: ['left', 'right', 'top', 'bottom']\n};\nvar Tooltip = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__addComponent('awsui-tooltip', {\n releaseStatus: 'deprecated',\n version: \"2.1.9463.0 (975feb47)\",\n properties: {\n // Where, relative to the trigger region, the tooltip should be\n // displayed.\n position: {\n type: 'string',\n valid: ['top', 'right', 'bottom', 'left'],\n defaultValue: 'right'\n },\n // If set, this property will make the tooltip contents wrap in multiple\n // lines. Otherwise (unset or set to `null`) it will just render in one line,\n // but the width of the tooltip will adjust to its contents.\n size: {\n type: 'string',\n nullable: true,\n valid: ['small', 'medium', 'large']\n },\n // Determines whether the tooltip is displayed to the user or not. This property is private.\n __visible: {\n type: 'boolean'\n },\n // Reflects if the user is hovering over the tooltip element\n __hoverTooltip: {\n type: 'boolean'\n }\n },\n regions: {\n // Elements that will trigger the tooltip when hovered.\n trigger: {\n isDefault: true\n },\n // Content of the tooltip.\n text: {}\n },\n render: function (m, h) {\n var component = this;\n\n if (!this.position || !this.text) {\n return h.region('trigger', 'span');\n }\n\n function trigger() {\n var triggerAttributes = {\n className: 'awsui-tooltip-trigger',\n onmouseover: function () {\n return component.__visible = true;\n },\n onmouseleave: function () {\n if (!component.__hoverTooltip) {\n component.__visible = false;\n }\n }\n };\n return h.region('trigger', 'span', triggerAttributes);\n }\n\n function getWrapperClass(position) {\n return new h.ClassBuilder(component).addComponentClass('wrap').addComponentClass('visible', component.__visible).addComponentClass(\"position-\" + position).toClassName();\n }\n\n function text() {\n var cb = new h.ClassBuilder(component);\n cb.addComponentClass('text').addPropertyValueClass('size');\n var wrapperAttributes = {\n className: getWrapperClass(component.position),\n onmouseover: function () {\n component.__hoverTooltip = true;\n component.__visible = true;\n },\n onmouseleave: function () {\n component.__hoverTooltip = false;\n component.__visible = false;\n }\n };\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"div\", __assign({}, wrapperAttributes), h.region('text', 'div', {\n className: cb.toClassName()\n }));\n }\n\n function updatePosition(el) {\n var tooltip = el.querySelector('.awsui-tooltip-wrap');\n var trigger = el.querySelector('.awsui-tooltip-trigger');\n\n if (component.__visible) {\n var position = Object(_positioning__WEBPACK_IMPORTED_MODULE_1__[\"default\"])(tooltip, trigger, positionOrders[component.position]);\n tooltip.className = getWrapperClass(position);\n }\n }\n\n return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"].__createElement(\"span\", {\n lifecycleKey: \"awsui-tooltip\",\n componentDidMount: updatePosition,\n componentDidUpdate: updatePosition\n }, trigger(), text());\n }\n}); //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 598 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return positionTooltip; });\n// returns an element that is used to positionate the given element\n// element.offsetParent also gives us `td` elements that we need to skip and find the real offsetParent\nfunction getOffsetParent(element) {\n var offsetPositions = ['absolute', 'fixed', 'relative'];\n var offsetParent = element.offsetParent;\n\n while (offsetParent && offsetPositions.indexOf(getComputedStyle(offsetParent).position) === -1) {\n offsetParent = offsetParent.offsetParent;\n }\n\n return offsetParent || window.document.documentElement;\n} // returns the closest scrollable parent\n\n\nfunction getOverflowParent(element) {\n var parent = element.parentElement;\n\n while (parent && getComputedStyle(parent).overflow === 'visible') {\n parent = parent.parentElement;\n }\n\n return parent;\n}\n\nfunction getWindowPosition() {\n return {\n top: 0,\n left: 0,\n width: window.innerWidth,\n height: window.innerHeight\n };\n}\n\nfunction getElementPosition(element) {\n var parentRect = getOffsetParent(element).getBoundingClientRect();\n var viewport = getOverflowParent(element);\n var viewportRect = viewport ? viewport.getBoundingClientRect() : getWindowPosition();\n var targetRect = element.getBoundingClientRect(); // return viewport and calculated scroll offset with document margins\n\n return {\n height: targetRect.height,\n width: targetRect.width,\n viewportRect: viewportRect,\n viewportOffset: {\n top: targetRect.top - viewportRect.top,\n left: targetRect.left - viewportRect.left\n },\n scrollOffset: {\n top: targetRect.top - parentRect.top,\n left: targetRect.left - parentRect.left\n }\n };\n}\n\nfunction alignLeftOffset(targetRect, tooltipRect) {\n var tooltipLeftOffset = (targetRect.width - tooltipRect.width) / 2;\n var tooltipViewportOffset = targetRect.viewportOffset.left + tooltipLeftOffset; // check that tooltip fits into the visible area from left\n\n if (tooltipViewportOffset < 0) {\n return 0;\n } // check that tooltip fits into the visible area from right\n\n\n if (tooltipRect.width + tooltipViewportOffset > tooltipRect.viewportRect.width) {\n return tooltipRect.viewportRect.width - tooltipRect.width;\n }\n\n return targetRect.scrollOffset.left + tooltipLeftOffset;\n}\n\nfunction alignTopOffset(targetRect, tooltipRect) {\n var tooltipTopOffset = (targetRect.height - tooltipRect.height) / 2; // check that tooltip fits into the visible area from top\n\n if (targetRect.viewportOffset.top + tooltipTopOffset < 0) {\n // actually, this is a scrollTop value\n return targetRect.scrollOffset.top - targetRect.viewportOffset.top;\n }\n\n return targetRect.scrollOffset.top + tooltipTopOffset;\n}\n\nvar positionCheck = {\n top: function (targetRect, tooltipRect) {\n return targetRect.viewportOffset.top - tooltipRect.height >= 0;\n },\n bottom: function (targetRect, tooltipRect) {\n return targetRect.viewportOffset.top + targetRect.height + tooltipRect.height < tooltipRect.viewportRect.height;\n },\n right: function (targetRect, tooltipRect) {\n return targetRect.viewportOffset.left + targetRect.width + tooltipRect.width <= tooltipRect.viewportRect.width;\n },\n left: function (targetRect, tooltipRect) {\n return targetRect.viewportOffset.left - tooltipRect.width >= 0;\n }\n};\nvar positionLogic = {\n top: function (targetRect, tooltipRect) {\n return {\n top: targetRect.scrollOffset.top - tooltipRect.height,\n left: alignLeftOffset(targetRect, tooltipRect)\n };\n },\n bottom: function (targetRect, tooltipRect) {\n return {\n top: targetRect.scrollOffset.top + targetRect.height,\n left: alignLeftOffset(targetRect, tooltipRect)\n };\n },\n right: function (targetRect, tooltipRect) {\n return {\n top: alignTopOffset(targetRect, tooltipRect),\n left: targetRect.scrollOffset.left + targetRect.width\n };\n },\n left: function (targetRect, tooltipRect) {\n return {\n top: alignTopOffset(targetRect, tooltipRect),\n left: targetRect.scrollOffset.left - tooltipRect.width\n };\n }\n};\nfunction positionTooltip(tooltip, target, positions) {\n // reset previous tooltip placement\n tooltip.style.top = '0';\n tooltip.style.left = '0';\n var targetRect = getElementPosition(target);\n var tooltipRect = getElementPosition(tooltip); // try to position the tooltip based on the list of positions passed.\n // if the tooltip does not fit after trying all positions listed,\n // default to the first position in the list.\n\n var position;\n\n for (var i = 0; i < positions.length; i++) {\n if (positionCheck[positions[i]](targetRect, tooltipRect)) {\n position = positions[i];\n break;\n }\n }\n\n if (!position) {\n position = positions[0];\n }\n\n var offsets = positionLogic[position](targetRect, tooltipRect);\n tooltip.style.left = offsets.left + 'px';\n tooltip.style.top = offsets.top + 'px';\n return position;\n} //# sourceMappingURL=positioning.js.map\n\n/***/ }),\n/* 599 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"AwsUi\", function() { return _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"AwsUi\"]; });\n\n/* harmony import */ var _components_styles_src__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(600);\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"Mode\", function() { return _components_styles_src__WEBPACK_IMPORTED_MODULE_1__[\"Mode\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"applyMode\", function() { return _components_styles_src__WEBPACK_IMPORTED_MODULE_1__[\"applyMode\"]; });\n\n// export AwsUi object to call AwsUi.config\n\n //# sourceMappingURL=runtime.js.map\n\n/***/ }),\n/* 600 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"Mode\", function() { return Mode; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"applyMode\", function() { return applyMode; });\nvar Mode;\n\n(function (Mode) {\n Mode[\"Light\"] = \"light\";\n Mode[\"Dark\"] = \"dark\";\n})(Mode || (Mode = {}));\n\nvar isKnownMode = function (mode) {\n return Object.keys(Mode).filter(function (key) {\n return Mode[key] === mode;\n }).length >= 1;\n};\n\nvar getClassNameByMode = function (mode) {\n return isKnownMode(mode) ? \"awsui-polaris-\" + mode + \"-mode\" : null;\n};\n\nvar notAwsModeClass = function (className) {\n return !/awsui-(.*)-mode/.test(className);\n};\n\nvar applyMode = function (mode, target) {\n if (target === void 0) {\n target = document.body;\n }\n\n if (!isKnownMode(mode)) {\n mode && console.warn(\"Mode \" + mode + \" is not supported\");\n return;\n }\n\n var modeClassName = getClassNameByMode(mode);\n var classes = target.className.split(' ').map(function (className) {\n return className.trim();\n }).filter(notAwsModeClass);\n modeClassName && classes.push(modeClassName);\n target.className = classes.join(' ');\n}; //# sourceMappingURL=index.js.map\n\n/***/ }),\n/* 601 */\n/***/ (function(module, __webpack_exports__, __webpack_require__) {\n\n\"use strict\";\n__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"default\", function() { return deprecateExport; });\n/* harmony import */ var _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5);\n\nfunction deprecateExport(exportObject) {\n var descriptors = {};\n var deprecatedExportWarning = _core_runtime_src__WEBPACK_IMPORTED_MODULE_0__[\"logger\"].warnOnce('Default export has been deprecated. Use `* as` syntax instead');\n Object.keys(exportObject).forEach(function (key) {\n descriptors[key] = {\n enumerable: true,\n get: function () {\n deprecatedExportWarning();\n return exportObject[key];\n }\n };\n });\n return Object.create({}, descriptors);\n} //# sourceMappingURL=deprecate-export.js.map\n\n/***/ })\n/******/ ]);\n});","/* eslint-disable */\n// this is an auto generated file. This will be overwritten\n\nexport const getExplorerProfile = /* GraphQL */ `\n query GetExplorerProfile($cognito_user: String!) {\n getExplorerProfile(cognito_user: $cognito_user) {\n cognito_user\n email\n first_name\n last_name\n country\n region\n topicArea\n program_status\n legal_form\n link_to_nda\n is_disabled\n is_admin\n admin_category\n createdAt\n updatedAt\n }\n }\n`;\nexport const listExplorerProfiles = /* GraphQL */ `\n query ListExplorerProfiles(\n $cognito_user: String\n $filter: ModelExplorerProfileFilterInput\n $limit: Int\n $nextToken: String\n $sortDirection: ModelSortDirection\n ) {\n listExplorerProfiles(\n cognito_user: $cognito_user\n filter: $filter\n limit: $limit\n nextToken: $nextToken\n sortDirection: $sortDirection\n ) {\n items {\n cognito_user\n email\n first_name\n last_name\n country\n region\n topicArea\n program_status\n legal_form\n link_to_nda\n is_disabled\n is_admin\n admin_category\n createdAt\n updatedAt\n }\n nextToken\n }\n }\n`;\nexport const getActivity = /* GraphQL */ `\n query GetActivity($id: ID!) {\n getActivity(id: $id) {\n id\n cognito_user\n region\n email\n output_type\n description\n link\n date_completed\n createdAt\n country\n reject_reason\n status\n category\n name\n impact\n language\n updatedAt\n }\n }\n`;\nexport const listActivitys = /* GraphQL */ `\n query ListActivitys(\n $filter: ModelActivityFilterInput\n $limit: Int\n $nextToken: String\n ) {\n listActivitys(filter: $filter, limit: $limit, nextToken: $nextToken) {\n items {\n id\n cognito_user\n region\n email\n output_type\n description\n link\n date_completed\n createdAt\n country\n reject_reason\n status\n category\n name\n impact\n language\n updatedAt\n }\n nextToken\n }\n }\n`;\nexport const activitiesByStatusAndDate = /* GraphQL */ `\n query ActivitiesByStatusAndDate(\n $status: String\n $date_completed: ModelStringKeyConditionInput\n $sortDirection: ModelSortDirection\n $filter: ModelActivityFilterInput\n $limit: Int\n $nextToken: String\n ) {\n ActivitiesByStatusAndDate(\n status: $status\n date_completed: $date_completed\n sortDirection: $sortDirection\n filter: $filter\n limit: $limit\n nextToken: $nextToken\n ) {\n items {\n id\n cognito_user\n region\n email\n output_type\n description\n link\n date_completed\n createdAt\n country\n reject_reason\n status\n category\n name\n impact\n language\n updatedAt\n }\n nextToken\n }\n }\n`;\nexport const activitiesByCategory = /* GraphQL */ `\n query ActivitiesByCategory(\n $category: String\n $createdAt: ModelStringKeyConditionInput\n $sortDirection: ModelSortDirection\n $filter: ModelActivityFilterInput\n $limit: Int\n $nextToken: String\n ) {\n ActivitiesByCategory(\n category: $category\n createdAt: $createdAt\n sortDirection: $sortDirection\n filter: $filter\n limit: $limit\n nextToken: $nextToken\n ) {\n items {\n id\n cognito_user\n region\n email\n output_type\n description\n link\n date_completed\n createdAt\n country\n reject_reason\n status\n category\n name\n impact\n language\n updatedAt\n }\n nextToken\n }\n }\n`;\nexport const activitiesByCategoryAndDate = /* GraphQL */ `\n query ActivitiesByCategoryAndDate(\n $category: String\n $date_completed: ModelStringKeyConditionInput\n $sortDirection: ModelSortDirection\n $filter: ModelActivityFilterInput\n $limit: Int\n $nextToken: String\n ) {\n ActivitiesByCategoryAndDate(\n category: $category\n date_completed: $date_completed\n sortDirection: $sortDirection\n filter: $filter\n limit: $limit\n nextToken: $nextToken\n ) {\n items {\n id\n cognito_user\n region\n email\n output_type\n description\n link\n date_completed\n createdAt\n country\n reject_reason\n status\n category\n name\n impact\n language\n updatedAt\n }\n nextToken\n }\n }\n`;\nexport const activitiesByTypeAndDate = /* GraphQL */ `\n query ActivitiesByTypeAndDate(\n $output_type: String\n $date_completed: ModelStringKeyConditionInput\n $sortDirection: ModelSortDirection\n $filter: ModelActivityFilterInput\n $limit: Int\n $nextToken: String\n ) {\n ActivitiesByTypeAndDate(\n output_type: $output_type\n date_completed: $date_completed\n sortDirection: $sortDirection\n filter: $filter\n limit: $limit\n nextToken: $nextToken\n ) {\n items {\n id\n cognito_user\n region\n email\n output_type\n description\n link\n date_completed\n createdAt\n country\n reject_reason\n status\n category\n name\n impact\n language\n updatedAt\n }\n nextToken\n }\n }\n`;\n","export const appLayoutLabels = {\n navigation: 'Side navigation',\n navigationToggle: 'Open side navigation',\n navigationClose: 'Close side navigation',\n tools: 'Help panel',\n toolsToggle: 'Open help panel',\n toolsClose: 'Close help panel'\n};\n\nexport const paginationLabels = {\n nextPageLabel: 'Next page',\n previousPageLabel: 'Previous page',\n pageLabel: (pageNumber) => `Page ${pageNumber} of all pages`\n};\n\nexport const distributionSelectionLabels = {\n itemSelectionLabel: (data, row) => `select ${row.id}`,\n allItemsSelectionLabel: () => 'select all',\n selectionGroupLabel: 'Distribution selection'\n};\n\nexport const originsSelectionLabels = {\n itemSelectionLabel: (data, row) => `select ${row.name}`,\n allItemsSelectionLabel: () => 'select all',\n selectionGroupLabel: 'Origins selection'\n};\n\nexport const behaviorsSelectionLabels = {\n itemSelectionLabel: (data, row) => `select path ${row.pathPattern} from origin ${row.origin}`,\n allItemsSelectionLabel: () => 'select all',\n selectionGroupLabel: 'Behaviors selection'\n};\n\nexport const logsSelectionLabels = {\n itemSelectionLabel: (data, row) => `select ${row.name}`,\n allItemsSelectionLabel: () => 'select all',\n selectionGroupLabel: 'Logs selection'\n};\n","/* eslint-disable */\n// this is an auto generated file. This will be overwritten\n\nexport const createExplorerProfile = /* GraphQL */ `\n mutation CreateExplorerProfile(\n $input: CreateExplorerProfileInput!\n $condition: ModelExplorerProfileConditionInput\n ) {\n createExplorerProfile(input: $input, condition: $condition) {\n cognito_user\n email\n first_name\n last_name\n country\n region\n topicArea\n program_status\n legal_form\n link_to_nda\n is_disabled\n is_admin\n admin_category\n createdAt\n updatedAt\n }\n }\n`;\nexport const updateExplorerProfile = /* GraphQL */ `\n mutation UpdateExplorerProfile(\n $input: UpdateExplorerProfileInput!\n $condition: ModelExplorerProfileConditionInput\n ) {\n updateExplorerProfile(input: $input, condition: $condition) {\n cognito_user\n email\n first_name\n last_name\n country\n region\n topicArea\n program_status\n legal_form\n link_to_nda\n is_disabled\n is_admin\n admin_category\n createdAt\n updatedAt\n }\n }\n`;\nexport const deleteExplorerProfile = /* GraphQL */ `\n mutation DeleteExplorerProfile(\n $input: DeleteExplorerProfileInput!\n $condition: ModelExplorerProfileConditionInput\n ) {\n deleteExplorerProfile(input: $input, condition: $condition) {\n cognito_user\n email\n first_name\n last_name\n country\n region\n topicArea\n program_status\n legal_form\n link_to_nda\n is_disabled\n is_admin\n admin_category\n createdAt\n updatedAt\n }\n }\n`;\nexport const createActivity = /* GraphQL */ `\n mutation CreateActivity(\n $input: CreateActivityInput!\n $condition: ModelActivityConditionInput\n ) {\n createActivity(input: $input, condition: $condition) {\n id\n cognito_user\n region\n email\n output_type\n description\n link\n date_completed\n createdAt\n country\n reject_reason\n status\n category\n name\n impact\n language\n updatedAt\n }\n }\n`;\nexport const updateActivity = /* GraphQL */ `\n mutation UpdateActivity(\n $input: UpdateActivityInput!\n $condition: ModelActivityConditionInput\n ) {\n updateActivity(input: $input, condition: $condition) {\n id\n cognito_user\n region\n email\n output_type\n description\n link\n date_completed\n createdAt\n country\n reject_reason\n status\n category\n name\n impact\n language\n updatedAt\n }\n }\n`;\nexport const deleteActivity = /* GraphQL */ `\n mutation DeleteActivity(\n $input: DeleteActivityInput!\n $condition: ModelActivityConditionInput\n ) {\n deleteActivity(input: $input, condition: $condition) {\n id\n cognito_user\n region\n email\n output_type\n description\n link\n date_completed\n createdAt\n country\n reject_reason\n status\n category\n name\n impact\n language\n updatedAt\n }\n }\n`;\n","export const getHeaderCounterText = (items, selectedItems) => {\n return selectedItems.length\n ? `(${selectedItems.length}/${items.length})`\n : `(${items.length})`;\n};\n\nexport const getServerHeaderCounterText = (totalCount, selectedItems) => {\n return selectedItems.length\n ? `(${selectedItems.length}/${totalCount}+)`\n : `(${totalCount}+)`;\n};\n\nexport const getServerFilterCounterText = (items, pagesCount, pageSize) => {\n const count =\n pagesCount > 1 ? `${pageSize * (pagesCount - 1)}+` : items.length + '';\n return count === '1' ? `1 match` : `${count} matches`;\n};\n\nexport const getFilterCounterText = count =>\n `${count} ${count === 1 ? 'match' : 'matches'}`;\n","import React from 'react';\nimport { Icon } from '@amzn/awsui-components-react';\nfunction validURL(str) {\n var isValidUrl = /^(?:(?:https?|ftp):\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!10(?:\\.\\d{1,3}){3})(?!127(?:\\.\\d{1,3}){3})(?!169\\.254(?:\\.\\d{1,3}){2})(?!192\\.168(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:\\/[^\\s]*)?$/i;\n return isValidUrl.test(str);\n}\n\nfunction getItemUrl(item){\n if (validURL(item.link)){\n return (\n )\n }\n return ( - )\n}\nexport const COLUMN_DEFINITIONS = [\n {\n id: 'date',\n header: () => 'Date',\n cell: item => item.date_completed,\n minWidth: '120px',\n allowLineWrap: true\n },\n {\n id: 'output_type',\n header: () => 'Type',\n cell: item => item.output_type,\n minWidth: '200px',\n allowLineWrap: true\n },\n {\n id: 'category',\n header: () => 'Category',\n cell: item => item.category,\n minWidth: '100px',\n allowLineWrap: true\n },\n {\n id: 'description',\n header: () => 'Description',\n cell: item => item.description,\n minWidth: '350px',\n allowLineWrap: false\n },\n {\n id: 'Link',\n header: () => 'Link',\n cell: item => getItemUrl(item),\n minWidth: '100px',\n allowLineWrap: true\n }\n];\n\nexport const SORTABLE_COLUMNS = [\n { id: 'date', field: 'date_completed' },\n { id: 'created', field: 'createdAt' },\n { id: 'output_type', field: 'output_type' },\n { id: 'category', field: 'category' },\n { id: 'description', field: 'description' }\n];\n\nexport const CONTENT_SELECTOR_OPTIONS = [\n {\n label: 'Main distribution properties',\n options: [\n { id: 'id', label: 'Distribution ID', editable: false, visible: true },\n { id: 'domainName', label: 'Domain name', editable: true, visible: true },\n { id: 'deliveryMethod', label: 'Delivery method', editable: true, visible: true },\n { id: 'priceClass', label: 'Price class', editable: true, visible: false },\n { id: 'sslCertificate', label: 'SSL certificate', editable: true, visible: true },\n { id: 'origin', label: 'Origin', editable: true, visible: false },\n { id: 'status', label: 'Status', editable: true, visible: true },\n { id: 'state', label: 'State', editable: true, visible: true },\n { id: 'logging', label: 'Logging', editable: true, visible: false }\n ]\n }\n];\n\nexport const PAGE_SELECTOR_OPTIONS = [\n { value: 10, label: '10 Distributions' },\n { value: 30, label: '30 Distributions' },\n { value: 50, label: '50 Distributions' }\n];\n\nexport const PROPERTY_FILTERING_OPTIONS = [\n { propertyLabel: 'Domain name', propertyKey: 'domainName', groupValuesLabel: 'Domain name values', values: [] },\n { propertyLabel: 'Delivery method', propertyKey: 'deliveryMethod', groupValuesLabel: 'Delivery method values', values: [] },\n { propertyLabel: 'Price class', propertyKey: 'priceClass', groupValuesLabel: 'Price class values', values: [] },\n { propertyLabel: 'Origin', propertyKey: 'origin', groupValuesLabel: 'Origin values', values: [] },\n { propertyLabel: 'Status', propertyKey: 'status', groupValuesLabel: 'Status values', values: [] },\n { propertyLabel: 'State', propertyKey: 'state', groupValuesLabel: 'State values', values: [] },\n { propertyLabel: 'Logging', propertyKey: 'logging', groupValuesLabel: 'Logging values', values: [] },\n {\n propertyLabel: 'SSL certificate',\n propertyKey: 'sslCertificate',\n groupValuesLabel: 'SSL certificate values',\n values: []\n }\n];\n\nexport const CUSTOM_PREFERENCE_OPTIONS = [{ value: 'table', label: 'Table' }, { value: 'cards', label: 'Cards' }];\n\nexport const PROPERTY_FILTERING_I18N_CONSTANTS = {\n placeholder: 'Filter distributions by property or value',\n operationAndText: 'and',\n operationNotAndText: 'and not',\n operationOrText: 'or',\n operationNotOrText: 'or not',\n clearFiltersText: 'Clear filters',\n groupPropertiesText: 'Properties',\n groupValuesText: 'Values',\n filteringEmpty: 'No results found',\n filteringLabel: 'Filter distributions',\n filteringStatusText: 'Loading'\n};","const promisify = (ctx, fn) => function(...args) {\n const result = fn.apply(ctx, [this.name, ...args]);\n return result && result.then ? result : Promise.resolve(result);\n};\n\nexport const createPropertyStorage = (name, storage) => ({\n name,\n save: promisify(storage, storage.save),\n load: promisify(storage, storage.load)\n});\n","export const save = (key, value) =>\n localStorage.setItem(key, JSON.stringify(value));\n\nexport const load = key => {\n const value = localStorage.getItem(key);\n try {\n return value && JSON.parse(value);\n } catch (e) {\n console.warn(\n `⚠️ The ${key} value that is stored in localStorage is incorrect. Try to remove the value ${key} from localStorage and reload the page`\n );\n return undefined;\n }\n};\n","export const addToColumnDefinitions = (\n columnDefinitions,\n propertyName,\n columns\n) =>\n columnDefinitions.map(colDef => {\n const column = (columns || []).find(col => col.id === colDef.id);\n return {\n ...colDef,\n [propertyName]: column && column[propertyName]\n };\n });\n\nexport const mapWithColumnDefinitionIds = (\n columnDefinitions,\n propertyName,\n items\n) =>\n columnDefinitions.map(({ id }, i) => ({\n id,\n [propertyName]: items[i]\n }));\n","import React from 'react';\nimport { Link } from 'react-router-dom'\nimport { API, graphqlOperation } from 'aws-amplify'\n\nimport { deleteActivity } from \"../graphql/mutations\";\nimport { getFilterCounterText } from '../common/tableCounterStrings';\n\n\nimport {\n COLUMN_DEFINITIONS,\n CONTENT_SELECTOR_OPTIONS,\n SORTABLE_COLUMNS,\n } from './table-config-myactivities';\n import {\n distributionSelectionLabels\n } from '../common/labels';\n import {\n Button,\n Table,\n TableSelection,\n TableFiltering,\n\n TableSorting,\n Flash\n } from '@amzn/awsui-components-react';\n import '../styles/table.scss';\n import { createPropertyStorage } from '../common/createPropertyStorage';\n import * as localStorage from '../common/localStorage';\n import { mapWithColumnDefinitionIds, addToColumnDefinitions } from '../common/columnDefinitionsHelper';\n\n var floatRightStyle = {\n float: 'right'\n };\n\n const widthsStorage = createPropertyStorage('React-Table-Widths', localStorage);\n const saveWidths = e => widthsStorage.save(mapWithColumnDefinitionIds(COLUMN_DEFINITIONS, 'width', e.detail.widths));\n const loadWidths = () =>\n widthsStorage.load().then(columns => addToColumnDefinitions(COLUMN_DEFINITIONS, 'width', columns));\n \n export const TableHeader = ({ selectedDistributions, counter, updateTools , watcher , table, disableAdd}) => {\n const isOnlyOneSelected = selectedDistributions.length === 1;\n \n function handleClick(e) {\n e.preventDefault();\n watcher.createClicked();\n }\n\n function handleEdit(e) {\n e.preventDefault();\n watcher.editClicked(selectedDistributions);\n }\n\n function handleDelete(e) {\n e.preventDefault();\n \n var payload={\n input: {\n \"id\": selectedDistributions[0].id\n }\n }\n\n console.log(JSON.stringify(payload));\n delContribution(payload);\n \n }\n\n\n const delContribution = async (payload) => {\n await API.graphql(graphqlOperation(deleteActivity, payload))\n .then(res => {\n \n console.log(JSON.stringify(res));\n\n if (res.data.deleteActivity!=null){\n console.log(\"contribution successfully deleted: \", res );\n \n\n var newFlash = ;\n watcher.setFlashMessage(newFlash);\n watcher.recursiveAPNContributionsForUser();\n\n\n }else{\n\n watcher.setFlashMessage();\n }\n \n })\n .catch(error => console.error(\"Something went wrong updating contribution: \", error));\n }\n\n return (\n \n
\n
\n My Activities \n
\n \n
\n
\n\n
\n );\n };\n \nclass ContributionsList extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = {\n columnDefinitions: COLUMN_DEFINITIONS,\n selectedDistributions: [],\n filteringText: '',\n pageSize: 1000,\n contentSelectorOptions: CONTENT_SELECTOR_OPTIONS,\n wrapLines: false,\n isAdmin: false\n };\n this.onPaginationChange = this.onPaginationChange.bind(this);\n }\n\n\n componentDidMount() {\n\n //console.log(this.props.currentUser);\n loadWidths().then(columnDefinitions => {\n this.setState({\n columnDefinitions\n });\n });\n }\n \n onFilteringChange({ detail: { filteringText } }) {\n this.setState({\n filteringText\n });\n }\n \n onPaginationChange({ detail: { pageSize } }) {\n this.setState({\n pageSize\n });\n }\n \n onContentSelectionChange({ detail}) {\n const contentSelection = detail.contentSelection;\n const currentContentSelectorOptionGroup = this.state.contentSelectorOptions[0];\n this.setState({\n contentSelectorOptions: [{\n label: currentContentSelectorOptionGroup.label,\n options: currentContentSelectorOptionGroup.options.map(opt => ({\n id: opt.id,\n label: opt.label,\n editable: opt.editable,\n visible: contentSelection.indexOf(opt.id) !== -1\n }))\n }]\n });\n }\n \n onWrapLinesChange({ detail }) {\n this.setState({\n wrapLines: detail.value\n });\n }\n \n headerCounter(selectedDistributions, distributions) {\n return selectedDistributions.length\n ? `(${selectedDistributions.length}/${distributions.length})`\n : `(${distributions.length})`;\n }\n \n clearFilter() {\n this.setState({\n filteringText: ''\n });\n }\n\n render() {\n\n\n\n return (\n \n
\n { (this.props.isAdmin === true) ? \n \n Administration: \n \n : null \n }\n \n \n \n \n \n\n
\n )}\n \n onWrapLinesChange={this.onWrapLinesChange.bind(this)}\n >\n\n
\n\n\n
\n\n {/* Pagination removed on 24-02-2022\n \n */}\n\n this.setState({selectedDistributions: evt.detail.selectedItems})}\n />\n \n \n \n \n )\n }\n }\n\n export default ContributionsList;","export function regionCountries(region) {\n return countryOptions.filter(x => x.region === region);}\n\nexport const regionOptions = [\n {\n \"label\": \"APAC\",\n \"id\": \"APAC\"\n },\n {\n \"label\": \"CHINA\",\n \"id\": \"CHINA\"\n },\n {\n \"label\": \"EMEA\",\n \"id\": \"EMEA\"\n },\n {\n \"label\": \"JAPAN\",\n \"id\": \"JAPAN\"\n },\n {\n \"label\": \"LATAM\",\n \"id\": \"LATAM\"\n },\n {\n \"label\": \"NAMER\",\n \"id\": \"NAMER\"\n }\n];\n\nexport const adminRegionOptions = [\n {\n \"label\": \"GLOBAL\",\n \"id\": \"GLOBAL\"\n },\n {\n \"label\": \"APAC\",\n \"id\": \"APAC\"\n },\n {\n \"label\": \"CHINA\",\n \"id\": \"CHINA\"\n },\n {\n \"label\": \"EMEA\",\n \"id\": \"EMEA\"\n },\n {\n \"label\": \"JAPAN\",\n \"id\": \"JAPAN\"\n },\n {\n \"label\": \"LATAM\",\n \"id\": \"LATAM\"\n },\n {\n \"label\": \"NAMER\",\n \"id\": \"NAMER\"\n }\n];export const countryOptions =\n [\n {\n \"region\": \"EMEA\",\n \"label\": \"Afghanistan\",\n \"id\": \"AF\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Aland Islands\",\n \"id\": \"AX\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Albania\",\n \"id\": \"AL\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Algeria\",\n \"id\": \"DZ\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"American Samoa\",\n \"id\": \"AS\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Andorra\",\n \"id\": \"AD\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Angola\",\n \"id\": \"AO\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Anguilla\",\n \"id\": \"AI\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Antigua And Barbuda\",\n \"id\": \"AG\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Argentina\",\n \"id\": \"AR\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Armenia\",\n \"id\": \"AM\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Aruba\",\n \"id\": \"AW\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Australia\",\n \"id\": \"AU\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Austria\",\n \"id\": \"AT\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Azerbaijan\",\n \"id\": \"AZ\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Bahamas\",\n \"id\": \"BS\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Bahrain\",\n \"id\": \"BH\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Bangladesh\",\n \"id\": \"BD\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Barbados\",\n \"id\": \"BB\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Belarus\",\n \"id\": \"BY\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Belgium\",\n \"id\": \"BE\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Belize\",\n \"id\": \"BZ\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Benin\",\n \"id\": \"BJ\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Bermuda\",\n \"id\": \"BM\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Bhutan\",\n \"id\": \"BT\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Bolivia\",\n \"id\": \"BO\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Bosnia and Herzegovina\",\n \"id\": \"BA\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Botswana\",\n \"id\": \"BW\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Brazil\",\n \"id\": \"BR\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Brunei Darussalam\",\n \"id\": \"BN\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Bulgaria\",\n \"id\": \"BG\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Burkina Faso\",\n \"id\": \"BF\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Cambodia\",\n \"id\": \"KH\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Cameroon\",\n \"id\": \"CM\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Canada\",\n \"id\": \"CA\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Cape Verde\",\n \"id\": \"CV\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Cayman Islands\",\n \"id\": \"KY\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Chile\",\n \"id\": \"CL\"\n },\n {\n \"region\": \"CHINA\",\n \"label\": \"China\",\n \"id\": \"CN\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Colombia\",\n \"id\": \"CO\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Comoros\",\n \"id\": \"KM\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Congo\",\n \"id\": \"CG\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Costa Rica\",\n \"id\": \"CR\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Cote d'Ivoire\",\n \"id\": \"CI\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Croatia\",\n \"id\": \"HR\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Cuba\",\n \"id\": \"CU\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Curacao\",\n \"id\": \"CW\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Cyprus\",\n \"id\": \"CY\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Czech Republic\",\n \"id\": \"CZ\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Denmark\",\n \"id\": \"DK\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Dominica\",\n \"id\": \"DM\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Dominican Republic\",\n \"id\": \"DO\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Ecuador\",\n \"id\": \"EC\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Egypt\",\n \"id\": \"EG\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"El Salvador\",\n \"id\": \"SV\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Estonia\",\n \"id\": \"EE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Ethiopia\",\n \"id\": \"ET\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Fiji\",\n \"id\": \"FJ\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Finland\",\n \"id\": \"FI\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"France\",\n \"id\": \"FR\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Gabon\",\n \"id\": \"GA\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Gambia\",\n \"id\": \"GM\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Georgia\",\n \"id\": \"GE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Germany\",\n \"id\": \"DE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Ghana\",\n \"id\": \"GH\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Gibraltar\",\n \"id\": \"GI\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Greece\",\n \"id\": \"GR\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Grenada\",\n \"id\": \"GD\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Guadeloupe\",\n \"id\": \"GP\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Guam\",\n \"id\": \"GU\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Guatemala\",\n \"id\": \"GT\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Guinea\",\n \"id\": \"GN\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Guyana\",\n \"id\": \"GY\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Haiti\",\n \"id\": \"HT\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Honduras\",\n \"id\": \"HN\"\n },\n {\n \"region\": \"CHINA\",\n \"label\": \"Hong Kong\",\n \"id\": \"HK\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Hungary\",\n \"id\": \"HU\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Iceland\",\n \"id\": \"IS\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"India\",\n \"id\": \"IN\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Indonesia\",\n \"id\": \"ID\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Iraq\",\n \"id\": \"IQ\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Ireland\",\n \"id\": \"IE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Isle of Man\",\n \"id\": \"IM\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Israel\",\n \"id\": \"IL\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Italy\",\n \"id\": \"IT\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Jamaica\",\n \"id\": \"JM\"\n },\n {\n \"region\": \"JAPAN\",\n \"label\": \"Japan\",\n \"id\": \"JP\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Jersey\",\n \"id\": \"JE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Jordan\",\n \"id\": \"JO\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Kazakhstan\",\n \"id\": \"KZ\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Kenya\",\n \"id\": \"KE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Kiribati\",\n \"id\": \"KI\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Korea\",\n \"id\": \"KR\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Kuwait\",\n \"id\": \"KW\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Kyrgyzstan\",\n \"id\": \"KG\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Lao People's Democratic Republic\",\n \"id\": \"LA\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Latvia\",\n \"id\": \"LV\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Lebanon\",\n \"id\": \"LB\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Lesotho\",\n \"id\": \"LS\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Liberia\",\n \"id\": \"LR\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Libyan Arab Jamahiriya\",\n \"id\": \"LY\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Liechtenstein\",\n \"id\": \"LI\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Lithuania\",\n \"id\": \"LT\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Luxembourg\",\n \"id\": \"LU\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Macedonia, The former Yugoslav Republic Of\",\n \"id\": \"MK\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Madagascar\",\n \"id\": \"MG\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Malawi\",\n \"id\": \"MW\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Malaysia\",\n \"id\": \"MY\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Maldives\",\n \"id\": \"MV\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Mali\",\n \"id\": \"ML\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Malta\",\n \"id\": \"MT\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Martinique\",\n \"id\": \"MQ\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Mauritania\",\n \"id\": \"MR\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Mauritius\",\n \"id\": \"MU\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Mexico\",\n \"id\": \"MX\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Moldova, Republic of\",\n \"id\": \"MD\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Monaco\",\n \"id\": \"MC\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Mongolia\",\n \"id\": \"MN\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Montenegro\",\n \"id\": \"ME\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Morocco\",\n \"id\": \"MA\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Mozambique\",\n \"id\": \"MZ\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Myanmar\",\n \"id\": \"MM\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Namibia\",\n \"id\": \"NA\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Nepal\",\n \"id\": \"NP\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Netherlands\",\n \"id\": \"NL\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Netherlands Antilles\",\n \"id\": \"NL\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"New Caledonia\",\n \"id\": \"NC\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"New Zealand\",\n \"id\": \"NZ\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Nicaragua\",\n \"id\": \"NI\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Niger\",\n \"id\": \"NE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Nigeria\",\n \"id\": \"NG\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Norway\",\n \"id\": \"NO\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Oman\",\n \"id\": \"OM\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Pakistan\",\n \"id\": \"PK\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Palestinian Territory, Occupied\",\n \"id\": \"PS\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Panama\",\n \"id\": \"PA\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Papua New Guinea\",\n \"id\": \"PG\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Paraguay\",\n \"id\": \"PY\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Peru\",\n \"id\": \"PE\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Philippines\",\n \"id\": \"PH\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Poland\",\n \"id\": \"PL\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Portugal\",\n \"id\": \"PT\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Puerto Rico\",\n \"id\": \"PR\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Qatar\",\n \"id\": \"QA\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Reunion\",\n \"id\": \"RE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Romania\",\n \"id\": \"RO\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Russia\",\n \"id\": \"RU\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Rwanda\",\n \"id\": \"RW\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Saint Lucia\",\n \"id\": \"LC\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Saint Vincent and the Grenadines\",\n \"id\": \"VC\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"San Marino\",\n \"id\": \"SM\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Saudi Arabia\",\n \"id\": \"SA\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Senegal\",\n \"id\": \"SN\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Serbia\",\n \"id\": \"RS\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Serbia and Montenegro\",\n \"id\": \"RS\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Seychelles\",\n \"id\": \"SC\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Sierra Leone\",\n \"id\": \"SL\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Singapore\",\n \"id\": \"SG\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Slovakia\",\n \"id\": \"SK\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Slovenia\",\n \"id\": \"SI\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Somalia\",\n \"id\": \"SO\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"South Africa\",\n \"id\": \"ZA\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"South Georgia and the South Sandwich Islands\",\n \"id\": \"GS\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"South Sudan\",\n \"id\": \"SS\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Spain\",\n \"id\": \"ES\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Sri Lanka\",\n \"id\": \"LK\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Sudan\",\n \"id\": \"SD\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Suriname\",\n \"id\": \"SR\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Swaziland\",\n \"id\": \"SZ\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Sweden\",\n \"id\": \"SE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Switzerland\",\n \"id\": \"CH\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Syrian Arab Republic\",\n \"id\": \"SY\"\n },\n {\n \"region\": \"CHINA\",\n \"label\": \"Taiwan\",\n \"id\": \"TW\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Tanzania\",\n \"id\": \"TZ\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Thailand\",\n \"id\": \"TH\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Timor-Leste\",\n \"id\": \"TL\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Togo\",\n \"id\": \"TG\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Trinidad and Tobago\",\n \"id\": \"TT\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Tunisia\",\n \"id\": \"TN\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Turkey\",\n \"id\": \"TR\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Turkmenistan\",\n \"id\": \"TM\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"Turks and Caicos Islands\",\n \"id\": \"TC\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Uganda\",\n \"id\": \"UG\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Ukraine\",\n \"id\": \"UA\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"United Arab Emirates\",\n \"id\": \"AE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"United Kingdom\",\n \"id\": \"GB\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"United States\",\n \"id\": \"US\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"United States Minor Outlying Islands\",\n \"id\": \"UM\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Uruguay\",\n \"id\": \"UY\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Uzbekistan\",\n \"id\": \"UZ\"\n },\n {\n \"region\": \"LATAM\",\n \"label\": \"Venezuela\",\n \"id\": \"VE\"\n },\n {\n \"region\": \"APAC\",\n \"label\": \"Vietnam\",\n \"id\": \"VN\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"VIRGIN ISLANDS, BRITISH\",\n \"id\": \"VG\"\n },\n {\n \"region\": \"NAMER\",\n \"label\": \"VIRGIN ISLANDS, U.S.\",\n \"id\": \"VI\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Yemen\",\n \"id\": \"YE\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Zambia\",\n \"id\": \"ZM\"\n },\n {\n \"region\": \"EMEA\",\n \"label\": \"Zimbabwe\",\n \"id\": \"ZW\"\n }\n ];","import React from 'react';\n\nexport function findContributionById(find){\n return contributionTypes.filter(x => x.id === find );\n }\n\nexport const contributionTypes = [\n {\n label: \"3rd Party Events\",\n id: \"3rd Party Events\",\n score: 20,\n link: true,\n desc: 3rd Party Events
\n },\n {\n label: \"Article\",\n id: \"Article\",\n score: 20,\n link: true,\n desc: Online technical publication on a social media platform like LinkedIn, publisher, magazine, trade journal, ...
\n },\n {\n label: \"AWS Events\",\n id: \"AWS Events\",\n score: 20,\n link: true,\n desc: AWS Events
\n },\n {\n label: \"Blog Post\",\n id: \"Blog Post\",\n score: 20,\n link: true,\n desc: Online technical publication on the AWS/APN blog, a company blog, a personal blog, a publishing platform like Medium, ...
\n },\n {\n label: \"Case Study\",\n id: \"Case Study\",\n score: 30,\n link: true,\n desc: \n },\n {\n label: \"Email/Newsletter\",\n id: \"Email/Newsletter\",\n score: 40,\n link: true,\n desc: Any sort of content delivered via email, including newsletters. Please report the email open numbers, not the number of emails sent
\n },\n {\n label: \"News\",\n id: \"News\",\n score: 40,\n link: true,\n desc: Content created that discusses news about AWS
\n },\n {\n label: \"Open Source Project\",\n id: \"Open Source Project\",\n score: 40,\n link: true,\n desc: Source code on open repositories like GitHub
\n },\n {\n label: \"Podcast/Audio\",\n id: \"Podcast/Audio\",\n score: 10,\n link: true,\n desc: Any kind of audio-based content, from a podcast to Clubhouse, to songs about AWS.
\n },\n {\n label: \"Presentation: In Person\",\n id: \"Presentation In Person\",\n score: 20,\n link: true,\n desc: An in-person presentation given at a live event such as a meetup, conference, etc.
\n },\n {\n label: \"Presentation: Online\",\n id: \"Presentation Online\",\n score: 20,\n link: true,\n desc: Giving any type of presentation online to a user group, conference, live on Twitch or a YouTube event, etc.
\n },\n {\n label: \"re:Invent\",\n id: \"reInvent\",\n score: 20,\n link: true,\n desc: re:Invent content that doesn’t fall into a service category
\n },\n {\n label: \"Technical Presentation In Person\",\n id: \"Technical Presentation In Person\",\n score: 40,\n link: true,\n desc: Hosting an in-person User Group, community meeting, re:Invent re:Cap, etc.
\n },\n {\n label: \"Technical Presentation Online\",\n id: \"Technical Presentation Online\",\n score: 40,\n link: true,\n desc: Hosting any kind of online event such as a User Group, tech day, etc.
\n },\n {\n label: \"Video\",\n id: \"Video\",\n score: 10,\n link: true,\n desc: Any type of pre-recorded video content on any platform.
\n },\n {\n label: \"Webinar\",\n id: \"Webinar\",\n score: 10,\n link: true,\n desc: Live, web-based video conference, digital/online conference, ...
\n },\n {\n label: \"Whitepaper\",\n id: \"Whitepaper\",\n score: 40,\n link: true,\n desc: \n },\n {\n label: \"Other\",\n id: \"Other\",\n score: 40,\n link: true,\n desc: Anything that doesn’t fit into another category
\n }\n];\n","export function findCategoryById(find){\n return categoryTypes.filter(x => x.id === find );\n }\n\nexport const categoryTypes = [\n {\n label: \"AI Engineering\",\n id: \"Generative AI\",\n },\n {\n label: \"Cloud Operations\",\n id: \"Cloud Operations\",\n },\n {\n label: \"Community/Career/Other\",\n id: \"Community/Career/Other\",\n },\n {\n label: \"Containers\",\n id: \"Containers\",\n },\n {\n label: \"Data (Databases + Analytics + BI)\",\n id: \"Data (Databases + Analytics + BI)\",\n },\n {\n label: \"Dev Tools\",\n id: \"Dev Tools\",\n },\n {\n label: \"Front End Web & Mobile\",\n id: \"Mobile\",\n },\n /*{\n label: \"Game Tech\",\n id: \"Game Tech\",\n },*/\n /*{\n label: \"Graviton/ARM Development\",\n id: \"Graviton/ARM Development\",\n },*/\n {\n label: \"Machine Learning/GenAI\",\n id: \"Machine Learning/GenAI\",\n },\n {\n label: \"Multiple AWS Services\",\n id: \"Multiple AWS Services\",\n },\n {\n label: \"Networking & Content Delivery\",\n id: \"Networking & Content Delivery\",\n },\n {\n label: \"Security\",\n id: \"Security\",\n },\n {\n label: \"Serverless\",\n id: \"Serverless\",\n },\n /*{\n label: \"Storage\",\n id: \"Storage\",\n },*/\n {\n label: \"Other AWS Services\",\n id: \"Other AWS Services\",\n }\n];\n\n","const languageNames = [\n \"Akan\",\n \"Amharic\",\n \"Arabic\",\n \"Assamese\",\n \"Awadhi\",\n \"Azerbaijani\",\n \"Balochi\",\n \"Belarusian\",\n \"Bengali\",\n \"Bhojpuri\",\n \"Burmese\",\n \"Catalan\",\n \"Cebuano (Visayan)\",\n \"Chewa\",\n \"Chhattisgarhi\",\n \"Chittagonian\",\n \"Czech\",\n \"Deccan\",\n \"Dhundhari\",\n \"Dutch\",\n \"Eastern Min\",\n \"English\",\n \"French\",\n \"Fula\",\n \"Gan Chinese\",\n \"German\",\n \"Greek\",\n \"Gujarati\",\n \"Haitian Creole\",\n \"Hakka\",\n \"Haryanvi\",\n \"Hausa\",\n \"Hebrew\",\n \"Hiligaynon\",\n \"Hindi\",\n \"Hmong\",\n \"Hungarian\",\n \"Igbo\",\n \"Ilocano\",\n \"Italian\",\n \"Japanese\",\n \"Javanese\",\n \"Jin\",\n \"Kannada\",\n \"Kazakh\",\n \"Khmer\",\n \"Kinyarwanda\",\n \"Kirundi\",\n \"Konkani\",\n \"Korean\",\n \"Kurdish\",\n \"Madurese\",\n \"Magahi\",\n \"Maithili\",\n \"Malagasy\",\n \"Malay/Indonesian\",\n \"Malayalam\",\n \"Mandarin\",\n \"Marathi\",\n \"Marwari\",\n \"Mossi\",\n \"Nepali\",\n \"Northern Min\",\n \"Norwegian\",\n \"Odia (Oriya)\",\n \"Oromo\",\n \"Pashto\",\n \"Persian\",\n \"Polish\",\n \"Portuguese\",\n \"Punjabi\",\n \"Quechua\",\n \"Romanian\",\n \"Russian\",\n \"Saraiki\",\n \"Serbo-Croatian\",\n \"Shona\",\n \"Sindhi\",\n \"Sinhalese\",\n \"Somali\",\n \"Southern Min\",\n \"Spanish\",\n \"Sundanese\",\n \"Swedish\",\n \"Sylheti\",\n \"Tagalog\",\n \"Tamil\",\n \"Telugu\",\n \"Te Reo Māori\",\n \"Thai\",\n \"Turkish\",\n \"Turkmen\",\n \"Ukrainian\",\n \"Urdu\",\n \"Uyghur\",\n \"Uzbek\",\n \"Vietnamese\",\n \"Wu (inc. Shanghainese)\",\n \"Xhosa\",\n \"Xiang (Hunnanese)\",\n \"Yoruba\",\n \"Yue (Cantonese)\",\n \"Zhuang\",\n \"Zulu\"\n];\n\nexport const languageOptions = languageNames.map(name => {\n return {\n \"label\": name,\n \"id\": name\n }\n});","import React from 'react';\nimport { API, graphqlOperation } from 'aws-amplify'\n\nimport { createActivity } from \"../graphql/mutations\";\nimport { ColumnLayout, Form, FormSection, Textarea, DatePicker, FormField, Input, Select, Button } from '@amzn/awsui-components-react';\n\nimport {countryOptions , regionCountries} from '../dropdowns/CountriesReference'\n\nimport {contributionTypes, findContributionById} from './ActivitiesTypeReference'\nimport {categoryTypes} from './ActivitiesCategoryReference'\nimport {languageOptions} from './LanguageReference'\n\nclass AddContribution extends React.Component {\n\n constructor(props) {\n super(props);\n var selectedRegion = props.userProfile.region;\n var selectedCountryId = countryOptions.find(x => x.label === props.userProfile.country).id;\n this.state = {\n region: selectedRegion, country: selectedCountryId, date_completed: '', description: '', link: '', requiresLink: true, impact: '', chars_left: 280, max_char:280\n };\n this.handleChange = this.handleChange.bind(this);\n }\n\n validURL(str) {\n var isValidUrl = /^(?:(?:https?|ftp):\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!10(?:\\.\\d{1,3}){3})(?!127(?:\\.\\d{1,3}){3})(?!169\\.254(?:\\.\\d{1,3}){2})(?!192\\.168(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:\\/[^\\s]*)?$/i;\n return isValidUrl.test(str);\n }\n\n handleCancel(e) {\n e.preventDefault();\n this.props.watcher.cancelClicked();\n }\n\n handleChange(e, target) {\n //console.log(\"user profile: \" + this.props.userProfile.first_name + this.props.userProfile.last_name);\n e.preventDefault();\n let change = {}\n \n if(e.detail.selectedId!==undefined){\n change[target]=e.detail.selectedId;\n this.setState(change);\n this.forceUpdate();\n }\n if(e.detail.value!==undefined){\n change[target]=e.detail.value;\n }\n\n if (\"region\"===target)\n {\n this.setState({country: regionCountries(e.detail.selectedId)[0].id});\n }\n\n if (\"type\"===target)\n {\n // console.log(findContributionById(e.detail.selectedId)[0].link);\n this.setState({typeValid:true});\n this.setState({requiresLink: findContributionById(e.detail.selectedId)[0].link});\n }\n\n this.setState(change);\n\n if (!this.validURL(this.state.link) && this.state.requiresLink===true){\n this.setState({linkValid:false});\n }else{\n this.setState({linkValid:true});\n }\n\n // clear input errors\n if (this.state.date_completed!==''){\n this.setState({date_completedValid:true});\n }\n var date_completed = Date.parse(this.state.date_completed); \n\n var now = new Date();\n now.setDate(now.getDate() + 1);\n\n if (date_completed > now) {\n this.setState({date_completedValid:false , date_completedErrorText: \"Date cannot be in the future.\"});\n }else{\n this.setState({date_completedErrorText: null});\n }\n\n if (\"description\"===target) {\n const charCount = e.detail.value.length;\n const maxChar = this.state.max_char;\n const charLength = maxChar - charCount;\n this.setState({ chars_left: charLength });\n\n if (charLength > 0 && charLength <281) {\n this.setState({descriptionValid:true});\n }\n else {\n this.setState({descriptionValid:false});\n }\n }\n\n if(\"impact\" === target) {\n this.setState({impactValid:true, impactErrorText: null});\n this.setState({value: this.state.impact})\n const re = /^[0-9\\b]+$/;\n if (!(re.test(this.state.impact))) { // if it contains a letter\n this.setState({impactValid:false, impactErrorText: \"Impact can contain only numbers\"});\n }\n }\n\n if (\"language\" === target) {\n this.setState({languageValid:true});\n }\n }\n\n handleSubmit() {\n if (this.state.type===undefined){\n this.setState({typeValid:false});\n return;\n }\n\n if (this.state.category===undefined){\n this.setState({categoryValid:false});\n return;\n }\n\n // input errors\n if (this.state.date_completed===''){\n this.setState({date_completedValid:false});\n return;\n } else {\n var date_completed = Date.parse(this.state.date_completed); \n var now = new Date();\n if (date_completed > now) {\n this.setState({date_completedValid:false , date_completedErrorText: \"Date cannot be in the future.\"});\n return;\n }\n }\n\n if (!this.validURL(this.state.link) && this.state.requiresLink===true){\n return;\n }\n\n // to make sure the description is less than 280 chars\n\n if (this.state.description===''){\n this.setState({descriptionValid:false});\n return;\n }\n\n if (this.state.description) {\n if(this.state.chars_left > 0){\n this.setState({descriptionValid:true});\n }\n else {\n this.setState({descriptionValid:false});\n return; \n }\n }\n\n if (this.state.impact === '') {\n this.setState({impactValid:false});\n return;\n }\n else {\n const re = /^[0-9\\b]+$/;\n if (!(re.test(this.state.impact))) {\n this.setState({impactValid: false, impactErrorText: \"Impact can contain only numbers\"});\n return;\n }\n }\n\n var country = countryOptions.find(x => x.id === this.state.country).label;\n \n var explorerName = this.props.userProfile.first_name + \" \" +this.props.userProfile.last_name;\n const payload = {\n input: {\n cognito_user: this.props.watcher.state.currentUser.sub,\n region:this.state.region,\n email: this.props.watcher.state.currentUser.email,\n output_type: this.state.type,\n category: this.state.category,\n description: this.state.description,\n link: this.state.link,\n date_completed: this.state.date_completed,\n country: country,\n status: \"APPROVED\",\n name: explorerName,\n language: this.state.language,\n impact: this.state.impact\n } \n }\n this.createAPNContribution(payload);\n }\n \n // next, we create a function to interact with the API\n createAPNContribution = async (payload) => {\n await API.graphql(graphqlOperation(createActivity, payload))\n .then(() => {\n this.props.watcher.onContributionModified(\"Contribution created successfully.\");\n })\n .catch(error => console.error(\"Something went wrong creating output: \", error));\n }\n\n render() {\n let descriptionHTML =Choose from the available contribution types.
\n if (this.state.type!==undefined){\n descriptionHTML = findContributionById(this.state.type)[0].desc;\n }\n return (\n \n )\n }\n\n}\n\nexport default AddContribution;\n","import React from 'react';\nimport { API, graphqlOperation } from 'aws-amplify'\n\nimport { updateActivity } from \"../graphql/mutations\";\nimport { ColumnLayout, Form, FormSection, Textarea, DatePicker, FormField, Input, Select, Button } from '@amzn/awsui-components-react';\n\nimport { countryOptions, regionCountries } from '../dropdowns/CountriesReference'\n\nimport { contributionTypes, findContributionById } from './ActivitiesTypeReference'\nimport { categoryTypes } from './ActivitiesCategoryReference'\nimport {languageOptions} from \"./LanguageReference\";\n\nclass EditContribution extends React.Component {\n\n constructor(props) {\n super(props);\n\n // console.log(\"Editing activity: \", props);\n\n var selectedRegion = props.userProfile.region;\n var selectedCountryId = countryOptions.find(x => x.label === props.userProfile.country).id;\n\n this.state = {\n region: selectedRegion,\n country: selectedCountryId,\n type: props.selected.output_type,\n category: props.selected.category,\n date_completed: props.selected.date_completed,\n description: props.selected.description,\n link: props.selected.link,\n requiresLink: true,\n impact: props.selected.impact,\n language: props.selected.language,\n chars_left: 280,\n max_char: 280\n };\n\n this.handleChange = this.handleChange.bind(this);\n } validURL(str) {\n var isValidUrl = /^(?:(?:https?|ftp):\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!10(?:\\.\\d{1,3}){3})(?!127(?:\\.·\\d{1,3}){3})(?!169\\.254(?:\\.\\d{1,3}){2})(?!192\\.168(?:\\.\\d{1,3}){2})(?!172\\.(?:1[·6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1·,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00·a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u·00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:\\/[^\\s]*)?$/i;\n return isValidUrl.test(str);\n }\n\n handleCancel(e) {\n e.preventDefault();\n this.props.watcher.cancelClicked();\n }\n\n handleChange(e, target) {\n e.preventDefault();\n let change = {}\n\n if (e.detail.selectedId !== undefined) {\n change[target] = e.detail.selectedId;\n this.setState(change);\n this.forceUpdate();\n }\n if (e.detail.value !== undefined) {\n change[target] = e.detail.value;\n }\n\n if (\"region\" === target) {\n this.setState({ country: regionCountries(e.detail.selectedId)[0].id });\n }\n\n if (\"type\" === target) {\n console.log(findContributionById(e.detail.selectedId)[0].link);\n\n this.setState({ requiresLink: findContributionById(e.detail.selectedId)[0].link });\n }\n\n this.setState(change);\n\n if (!this.validURL(this.state.link) && this.state.requiresLink === true) {\n this.setState({ linkValid: false });\n } else {\n this.setState({ linkValid: true });\n }\n\n // clear input errors\n if (this.state.date_completed !== '') {\n this.setState({ date_completedValid: true });\n }\n var date_completed = Date.parse(this.state.date_completed);\n\n var now = new Date();\n now.setDate(now.getDate() + 1);\n\n if (date_completed > now) {\n this.setState({ date_completedValid: false, date_completedErrorText: \"Date cannot be in the future.\" });\n } else {\n this.setState({ date_completedErrorText: null });\n }\n\n if (\"description\" === target) {\n const charCount = e.detail.value.length;\n const maxChar = this.state.max_char;\n const charLength = maxChar - charCount;\n this.setState({ chars_left: charLength });\n\n if (charLength > 0 && charLength < 281) {\n this.setState({ descriptionValid: true });\n }\n else {\n this.setState({ descriptionValid: false });\n }\n }\n\n if(\"impact\" === target) {\n this.setState({impactValid:true, impactErrorText: null});\n this.setState({value: this.state.impact})\n const re = /^[0-9\\b]+$/;\n if (!(re.test(this.state.impact))) { // if it contains a letter\n this.setState({impactValid:false, impactErrorText: \"Impact can contain only numbers\"});\n }\n }\n\n if (\"language\" === target) {\n this.setState({languageValid:true});\n }\n }\n\n handleSubmit(e) {\n \n if (this.state.category === undefined) {\n this.setState({ categoryValid: false });\n return;\n } // input errors\n if (this.state.date_completed === '') {\n this.setState({ date_completedValid: false });\n return;\n } else {\n var date_completed = Date.parse(this.state.date_completed);\n var now = new Date();\n if (date_completed > now) {\n this.setState({ date_completedValid: false, date_completedErrorText: \"Date cannot be in the future.\" });\n return;\n }\n } if (!this.validURL(this.state.link) && this.state.requiresLink === true) {\n return;\n }\n\n if (this.state.description === '') {\n this.setState({ descriptionValid: false });\n return;\n }\n\n if (this.state.description) {\n if (this.state.chars_left > 0) {\n this.setState({ descriptionValid: true });\n }\n else {\n this.setState({ descriptionValid: false });\n return;\n }\n }\n\n if (this.state.impact === '') {\n this.setState({impactValid:false});\n return;\n }\n else {\n const re = /^[0-9\\b]+$/;\n if (!(re.test(this.state.impact))) {\n this.setState({impactValid: false, impactErrorText: \"Impact can contain only numbers\"});\n return;\n }\n }\n\n if (this.state.language === null) {\n this.setState({languageValid:false});\n return;\n }\n\n var country = countryOptions.find(x => x.id === this.state.country).label;\n\n const payload = {\n input: {\n id: this.props.selected.id,\n cognito_user: this.props.selected.cognito_user,\n region: this.state.region,\n email: this.props.selected.email,\n output_type: this.state.type,\n category: this.state.category,\n description: this.state.description,\n link: this.state.link,\n date_completed: this.state.date_completed,\n country: country,\n status: \"APPROVED\",\n impact: this.state.impact,\n language: this.state.language\n }\n }\n // console.log(payload);\n // this.createContribution(payload);\n this.updateApnContribution(payload);\n }\n\n // next, we create a function to interact with the API\n updateApnContribution = async (payload) => {\n\n await API.graphql(graphqlOperation(updateActivity, payload))\n .then(res => {\n console.log(\"ambassador output successfully updated: \", res)\n this.props.watcher.onContributionModified(\"Contribution updated successfully.\"); })\n .catch(error => console.error(\"Something went wrong creating output: \", error));\n }\n render() { var descriptionHTML = findContributionById(this.state.type)[0].desc;\n\n // console.log(this.state.type);\n //console.log(findContributionById(this.state.type)[0].desc);\n\n return (\n\n \n )\n }\n}\n\nexport default EditContribution;\n","import React, { Component } from 'react';\nimport { API, graphqlOperation } from 'aws-amplify'\n\nimport { listActivitys } from \"../graphql/queries\";\nimport { getExplorerProfile } from \"../graphql/queries\";\n\nimport '@amzn/awsui-components-react/index.css';\nimport '../styles/form.scss';\nimport { Auth } from 'aws-amplify'\n\n\nimport {\n AppLayout,\n Flash\n} from '@amzn/awsui-components-react';\nimport { appLayoutLabels } from '../common/labels';\n\nimport ContributionsList from \"./MyActivitiesList\"\nimport AddContribution from \"./NewActivity\"\nimport EditContribution from \"./EditActivity\"\n\n\nimport * as JWT from 'jwt-decode';\n\n\nclass Achievements extends Component {\n constructor(props){\n super(props);\n\n this.state = { \n contentOrigins: [], toolsIndex: 0, toolsOpen: false, showEditForm: false,\n currentUser: {\"email\": \"nobody\",\"administratior\": false, \"sub\": \"none\"},\n userProfile: {},\n contributions: [],\n flash_message: null,\n noprofile: true,\n loading: true,\n }\n }\n\n getAPNContributionsForUser(){\n\n var filter = {\"filter\": {\"email\": {\"eq\": this.state.currentUser.email}}};\n filter.limit=5000;\n // fetch contributions for this user\n API.graphql(graphqlOperation(listActivitys,filter))\n .then(res => { \n //console.log(\"Something went right: \", res )\n // create a sortable column from the votes\n res.data.listActivitys.items.forEach(function(item,index){\n res.data.listActivitys.items[index].total_votes=(item.votes==null) ? 0 : item.votes.length;\n });\n this.setState({ contributions: res.data.listActivitys.items})\n }).catch(error => console.error(\"Something went wrong: \", error));\n\n }\n\n async recursiveAPNContributionsForUser(){\n\n var filter = {\"filter\": {\"email\": {\"eq\": this.state.currentUser.email}}};\n filter.limit=300;\n\n \n let fetchedContributions = [];\n\n const fetchPages = async (nextToken, params) =>{\n \n \n if (nextToken!==\"\"){params.nextToken=nextToken}\n await API.graphql(graphqlOperation(listActivitys , params))\n .then(res => { \n // create a sortable column from the votes\n res.data.listActivitys.items.forEach(function(item,index){\n res.data.listActivitys.items[index].total_votes=(item.votes==null) ? 0 : item.votes.length;\n });\n fetchedContributions = fetchedContributions.concat(res.data.listActivitys.items);\n if ( null!==res.data.listActivitys.nextToken ) {\n fetchPages(res.data.listActivitys.nextToken, params);\n } else {\n this.setState({ contributions: fetchedContributions, loading: false })\n }\n }).catch(error => console.error(\"Something went wrong: \", error));\n\n }\n await fetchPages(\"\", filter);\n\n}\n\n componentDidMount(){\n let parent = this;\n\n \n Auth.currentAuthenticatedUser()\n .then(user => {\n var token = JWT(user.signInUserSession.accessToken.jwtToken);\n var isAdministrator = false;\n if (token['cognito:groups']!==undefined && token['cognito:groups'][0]===\"ExplorersAdministrators\")\n {isAdministrator=true;}\n user.attributes.administrator=isAdministrator;\n parent.setState({ currentUser: user.attributes});\n\n this.recursiveAPNContributionsForUser();\n\n\n // console.log(\"getApnAmbassadorProfile \" + user.attributes.sub);\n // fetch contributions for this user\n API.graphql(graphqlOperation(getExplorerProfile,{\"cognito_user\":user.attributes.sub}))\n .then(res => { \n // console.log(\"Ambassador profile \", res )\n \n if (res.data.getExplorerProfile===null) {\n this.setState({ flash_message: , noprofile: true})\n }else{\n this.setState({ userProfile: res.data.getExplorerProfile, noprofile: false})\n }\n }).catch(error => {\n this.setState({ flash_message: , noprofile: true})\n });\n\n\n }).catch(err => console.log(err)) // end authentication\n\n } // end will mount\n\n createClicked(){\n this.setState({showEditForm: true})\n }\n\n editClicked(selections){\n // console.log(selections[0]);\n this.setState({showEditForm: true, edit: true, selected: selections[0]});\n }\n\n cancelClicked(){\n this.setState({showEditForm: false, edit: false})\n }\n\n onContributionModified(message){\n this.setState({showEditForm: false});\n var filter = {\"filter\": {\"email\": {\"eq\": this.state.currentUser.email}}};\n filter.limit=5000;\n // fetch contributions for this user\n API.graphql(graphqlOperation(listActivitys,filter))\n .then(res => { \n //console.log(\"Something went right: \", res )\n this.setState({ contributions: res.data.listActivitys.items , flash_message: })\n }).catch(error => console.error(\"Something went wrong: \", error));\n\n }\n\n\n setFlashMessage(flash){\n this.setState({ flash_message: flash})\n }\n\n render(){\n\n return (\n \n\n {\n\n (this.state.showEditForm === true) ? \n\n
\n {\n (this.state.edit === true) ? \n }\n navigationHide\n toolsHide\n labels={appLayoutLabels}\n /> \n \n \n : \n \n }\n navigationHide\n toolsHide\n labels={appLayoutLabels}\n />\n\n\n }\n \n \n \n :\n
this.setState({ toolsOpen: true })} />}\n navigationHide\n toolsHide\n labels={appLayoutLabels}\n />\n \n \n /* end if show create form */\n }\n\n\n \n\n \n\n );\n }\n\n}\n\nexport default Achievements;\n","import React from 'react';\nimport { Icon } from '@amzn/awsui-components-react';\nfunction validURL(str) {\n var isValidUrl = /^(?:(?:https?|ftp):\\/\\/)(?:\\S+(?::\\S*)?@)?(?:(?!10(?:\\.\\d{1,3}){3})(?!127(?:\\.\\d{1,3}){3})(?!169\\.254(?:\\.\\d{1,3}){2})(?!192\\.168(?:\\.\\d{1,3}){2})(?!172\\.(?:1[6-9]|2\\d|3[0-1])(?:\\.\\d{1,3}){2})(?:[1-9]\\d?|1\\d\\d|2[01]\\d|22[0-3])(?:\\.(?:1?\\d{1,2}|2[0-4]\\d|25[0-5])){2}(?:\\.(?:[1-9]\\d?|1\\d\\d|2[0-4]\\d|25[0-4]))|(?:(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)(?:\\.(?:[a-z\\u00a1-\\uffff0-9]+-?)*[a-z\\u00a1-\\uffff0-9]+)*(?:\\.(?:[a-z\\u00a1-\\uffff]{2,})))(?::\\d{2,5})?(?:\\/[^\\s]*)?$/i;\n return isValidUrl.test(str);\n}\n\nfunction getItemUrl(item){\n if (validURL(item.link)){\n return (\n )\n }\n return ( - )\n}\n\n\n\nexport const COLUMN_DEFINITIONS = [\n \n{\n id: 'date',\n header: () => 'Date',\n cell: item => item.date_completed,\n minWidth: '100px',\n allowLineWrap: true\n},\n {\n id: 'explorer',\n header: () => 'User Name',\n cell: item => {item.name},\n minWidth: '150px',\n allowLineWrap: true\n },\n {\n id: 'output_type',\n header: () => 'Type',\n cell: item => item.output_type,\n minWidth: '100px',\n allowLineWrap: true\n},\n{\n id: 'category',\n header: () => 'Category',\n cell: item => item.category,\n minWidth: '100px',\n allowLineWrap: true\n},\n {\n id: 'description',\n header: () => 'Description',\n cell: item => item.description,\n minWidth: '200px',\n allowLineWrap: false\n },\n {\n id: 'Link',\n header: () => 'Link',\n cell: item => getItemUrl(item),\n minWidth: '100px',\n allowLineWrap: true\n }\n];\nexport const SORTABLE_COLUMNS = [ { id: 'votes', field: 'total_votes' }];\n/*\nexport const SORTABLE_COLUMNS = [\n { id: 'votes', field: 'total_votes' },\n { id: 'date', field: 'date_completed' },\n { id: 'created', field: 'createdAt' },\n { id: 'output_type', field: 'output_type' },\n { id: 'sslCertificate', field: 'sslCertificate' },\n { id: 'origin', field: 'origin' },\n { id: 'status', field: 'status' },\n { id: 'state', field: 'state' },\n { id: 'logging', field: 'logging' }\n];*/\n\nexport const CONTENT_SELECTOR_OPTIONS = [\n {\n label: 'Main distribution properties',\n options: [\n { id: 'id', label: 'Distribution ID', editable: false, visible: true },\n { id: 'domainName', label: 'Domain name', editable: true, visible: true },\n { id: 'deliveryMethod', label: 'Delivery method', editable: true, visible: true },\n { id: 'priceClass', label: 'Price class', editable: true, visible: false },\n { id: 'sslCertificate', label: 'SSL certificate', editable: true, visible: true },\n { id: 'origin', label: 'Origin', editable: true, visible: false },\n { id: 'status', label: 'Status', editable: true, visible: true },\n { id: 'state', label: 'State', editable: true, visible: true },\n { id: 'logging', label: 'Logging', editable: true, visible: false }\n ]\n }\n];\n\nexport const PAGE_SELECTOR_OPTIONS = [\n { value: 10, label: '10 Distributions' },\n { value: 30, label: '30 Distributions' },\n { value: 50, label: '50 Distributions' }\n];\n\nexport const PROPERTY_FILTERING_OPTIONS = [\n { propertyLabel: 'Domain name', propertyKey: 'domainName', groupValuesLabel: 'Domain name values', values: [] },\n { propertyLabel: 'Delivery method', propertyKey: 'deliveryMethod', groupValuesLabel: 'Delivery method values', values: [] },\n { propertyLabel: 'Price class', propertyKey: 'priceClass', groupValuesLabel: 'Price class values', values: [] },\n { propertyLabel: 'Origin', propertyKey: 'origin', groupValuesLabel: 'Origin values', values: [] },\n { propertyLabel: 'Status', propertyKey: 'status', groupValuesLabel: 'Status values', values: [] },\n { propertyLabel: 'State', propertyKey: 'state', groupValuesLabel: 'State values', values: [] },\n { propertyLabel: 'Logging', propertyKey: 'logging', groupValuesLabel: 'Logging values', values: [] },\n {\n propertyLabel: 'SSL certificate',\n propertyKey: 'sslCertificate',\n groupValuesLabel: 'SSL certificate values',\n values: []\n }\n];\n\nexport const CUSTOM_PREFERENCE_OPTIONS = [{ value: 'table', label: 'Table' }, { value: 'cards', label: 'Cards' }];\n\nexport const PROPERTY_FILTERING_I18N_CONSTANTS = {\n placeholder: 'Filter distributions by property or value',\n operationAndText: 'and',\n operationNotAndText: 'and not',\n operationOrText: 'or',\n operationNotOrText: 'or not',\n clearFiltersText: 'Clear filters',\n groupPropertiesText: 'Properties',\n groupValuesText: 'Values',\n filteringEmpty: 'No results found',\n filteringLabel: 'Filter distributions',\n filteringStatusText: 'Loading'\n};","import React from 'react';\nimport { Link } from 'react-router-dom'\nimport { API, graphqlOperation } from 'aws-amplify'\nimport {categoryTypes} from './ActivitiesCategoryReference' \nimport {contributionTypes} from './ActivitiesTypeReference' \n\nimport {updateActivity} from '../graphql/mutations'\n\nimport {\n COLUMN_DEFINITIONS,\n CONTENT_SELECTOR_OPTIONS,\n SORTABLE_COLUMNS,\n } from './table-config-all';\n import { paginationLabels } from '../common/labels';\n import {\n Button,\n Table,\n TableFiltering,\n TablePagination,\n TableSorting,Flash,Modal,Textarea,Select\n } from '@amzn/awsui-components-react';\n import { getFilterCounterText } from '../common/tableCounterStrings';\n import '../styles/table.scss';\n import { createPropertyStorage } from '../common/createPropertyStorage';\n import * as localStorage from '../common/localStorage';\n import { mapWithColumnDefinitionIds, addToColumnDefinitions } from '../common/columnDefinitionsHelper';\n\n var floatRightStyle = {\n float: 'right'\n };\n\n const widthsStorage = createPropertyStorage('React-Table-Widths', localStorage);\n const saveWidths = e => widthsStorage.save(mapWithColumnDefinitionIds(COLUMN_DEFINITIONS, 'width', e.detail.widths));\n const loadWidths = () =>\n widthsStorage.load().then(columns => addToColumnDefinitions(COLUMN_DEFINITIONS, 'width', columns));\n \n export const TableHeader = ({ resultSize, selectedCategory, selectedDistributions, counter, updateTools , watcher , table, disableAdd, reject_reason}) => {\n const modifyContributionStatus = async (payload) => {\n await API.graphql(graphqlOperation(updateActivity, payload))\n .then(res => {\n\n if (res.data.updateActivity!=null){\n console.log(\"contribution successfully updated: \", res );\n // create a flash message.\n // set the status on screen \n\n table.props.distributions.find(x => x.id === selectedDistributions[0].id).status=res.data.updateActivity.status;\n table.forceUpdate();\n var newFlash = ;\n watcher.setFlashMessage(newFlash);\n\n\n }else{\n\n watcher.setFlashMessage();\n }\n \n })\n .catch(error => console.error(\"Something went wrong updating contribution: \", error));\n }\n\n if(reject_reason!==undefined && reject_reason!=='' && table.state.cancelReject!==true){\n console.log(\"Reason for rejection is: \" + reject_reason);\n // do the rejection\n console.log(\"Doing one rejection\");\n\n var payload={\n \"input\": {\n \"id\": selectedDistributions[0].id,\"status\": \"REJECTED\", reject_reason: reject_reason\n }\n }\n\n console.log(\"payload\", payload);\n\n modifyContributionStatus(payload);\n\n table.setState({reject_reason:''});\n }\n \n\n return (\n \n
\n
\n Activities {resultSize} in {selectedCategory}\n
\n \n
\n \n {/*\n \n {upVote(e)}}/>\n */}\n \n { (watcher.state.currentUser.administrator === true) ?\n \n {/*\n \n {modifyStatus(e, \"APPROVED\")}}/>\n {handleReject(e)}}/>\n {modifyStatus(e, \"PENDING\")}}/>\n */} : \n null\n }\n\n
\n\n
\n );\n };\n \nclass AllActivitiesTable extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = {\n columnDefinitions: COLUMN_DEFINITIONS,\n selectedCategory: props.selectedCategory,\n selectedType: props.selectedType,\n selectedDistributions: [],\n filteringText: '',\n pageSize: 30,\n contentSelectorOptions: CONTENT_SELECTOR_OPTIONS,\n wrapLines: false,\n isAdmin: false\n };\n this.onPaginationChange = this.onPaginationChange.bind(this);\n this.handleCancel = this.handleCancel.bind(this);\n this.handleOk = this.handleOk.bind(this);\n this.handleChange = this.handleChange.bind(this);\n\n }\n\n\n componentDidMount() {\n loadWidths().then(columnDefinitions => {\n this.setState({\n columnDefinitions\n });\n });\n }\n \n onFilteringChange({ detail: { filteringText } }) {\n this.setState({\n filteringText\n });\n }\n \n onPaginationChange({ detail: { pageSize } }) {\n this.setState({\n pageSize\n });\n }\n \n onContentSelectionChange({ detail}) {\n const contentSelection = detail.contentSelection;\n const currentContentSelectorOptionGroup = this.state.contentSelectorOptions[0];\n this.setState({\n contentSelectorOptions: [{\n label: currentContentSelectorOptionGroup.label,\n options: currentContentSelectorOptionGroup.options.map(opt => ({\n id: opt.id,\n label: opt.label,\n editable: opt.editable,\n visible: contentSelection.indexOf(opt.id) !== -1\n }))\n }]\n });\n }\n \n onWrapLinesChange({ detail }) {\n this.setState({\n wrapLines: detail.value\n });\n }\n \n headerCounter(selectedDistributions, distributions) {\n return selectedDistributions.length\n ? `(${selectedDistributions.length}/${distributions.length})`\n : `(${distributions.length})`;\n }\n \n clearFilter() {\n this.setState({\n filteringText: ''\n });\n }\n \n deleteSelections(){\n // alert(this.state.selectedDistributions);\n }\n\n handleChange(e, target) {\n e.preventDefault();\n if (target===\"selectedCategory\"){\n this.setState({selectedCategory: e.detail.selectedId});\n this.props.watcher.selectCategory(e.detail.selectedId);\n }\n\n if (target===\"selectedType\"){\n this.setState({selectedType: e.detail.selectedId});\n this.props.watcher.selectType(e.detail.selectedId);\n\n }\n\n if (target === \"selectedDate\"){ \n this.setState({lastThirtyDaysSelected: true});\n this.props.watcher.selectDate(true);\n }\n \n //console.log(e);\n if (e.detail.value!==undefined){\n \n if(target===\"reject_reason\")\n this.setState({reject_reason: e.detail.value})\n\n }\n \n }\n\n handleOk(e){\n e.preventDefault();\n \n this.setState({showRejectModal: false, cancelReject: false});\n // alert(this.state.reject_reason);\n }\n\n handleCancel(e){\n e.preventDefault();\n this.props.watcher.setFlashMessage(null);\n\n this.setState({cancelReject: true, reject_reason: '', showRejectModal: false});\n }\n\n render() {\n\n return (\n \n {/* // last 30 days button commented out for now. \n \n
{this.handleChange(e, \"selectedDate\")}}>
\n \n */}\n
\n \n
\n \n
\n Category: \n
\n
\n \n \n
\n\n\n
\n Type: \n
\n
\n \n \n
\n\n
\n\n
\n\n \n { (this.props.isAdmin === true) ? \n
\n Administration: \n \n : null \n }\n
\n\n
\n {this.handleCancel(e)}}>\n {this.handleOk(e)}}>\n }\n >\n \n \n Enter a reason for rejection here.\n
\n \n \n \n\n\n
\n )}\n \n onWrapLinesChange={this.onWrapLinesChange.bind(this)}\n >\n\n
\n
\n
\n \n \n )\n }\n }\n\n export default AllActivitiesTable;","import React, { Component } from 'react';\nimport { API, graphqlOperation } from 'aws-amplify'\n\nimport * as queries from \"../graphql/queries\";\nimport { categoryTypes } from './ActivitiesCategoryReference'\nimport {contributionTypes } from './ActivitiesTypeReference' \n\n\nimport * as JWT from 'jwt-decode';\n\n\nimport '@amzn/awsui-components-react/index.css';\nimport '../styles/form.scss';\nimport { Auth } from 'aws-amplify'\n\nimport {\n AppLayout\n} from '@amzn/awsui-components-react';\nimport { appLayoutLabels } from '../common/labels';\n\nimport AllActivitiesTable from \"./AllActivitiesTable\"\n\n\nclass AllActivitiesList extends Component {\n constructor(props) {\n super(props);\n\n //Set 'All' options as default for Type and category\n\n let allType = {label: \"All\", id: \"All\", score: 0, link: true, desc: \" All contributions
\" };\n let allCategory = {label: \"All\",id: \"All\"};\n\n categoryTypes.unshift(allCategory);\n contributionTypes.unshift(allType);\n\n this.state = {\n contentOrigins: [], toolsIndex: 0, toolsOpen: false, showCreateForm: false,\n selectedCategory: categoryTypes[0].id,\n selectedType: contributionTypes[0].id,\n lastThirtyDaysSelected: false,\n currentUser: { \"email\": \"nobody\", \"administratior\": false },\n userProfile: {},\n contributions: [],\n flash_message: null,\n noprofile: true,\n loading: true,\n }\n }\n\n selectCategory(category) {\n if (this.state.selectedCategory !== category) {\n this.setState({ selectedCategory: category });\n this.recursiveActivitiesBycategory(\"GLOBAL\"); \n }\n }\n\n selectType(type) {\n if (this.state.selectedType !== type) {\n this.setState({ selectedType: type });\n this.recursiveActivitiesBycategory(\"GLOBAL\");\n }\n }\n\n selectDate(flag) {\n this.setState({lastThirtyDaysSelected: flag}, () => { \n this.recursiveActivitiesBycategory(\"GLOBAL\");\n });\n }\n\n componentDidMount() {\n let parent = this;\n Auth.currentAuthenticatedUser()\n .then(user => {\n var token = JWT(user.signInUserSession.accessToken.jwtToken);\n var isAdministrator = false;\n if (token['cognito:groups'] !== undefined && token['cognito:groups'][0] === \"ExplorersAdministrators\") { isAdministrator = true; }\n user.attributes.administrator = isAdministrator;\n parent.setState({ currentUser: user.attributes });\n\n var filter = {};\n this.recursiveActivitiesBycategory(filter, \"GLOBAL\");\n\n }).catch(err => console.error(err)) // end authentication\n } // end will mount\n\n componentWillUnmount() {\n // remove the 'All' from the category and type array\n categoryTypes.shift();\n contributionTypes.shift();\n }\n\n async recursiveActivitiesBycategory(regionFilter) {\n let that = this;\n \n const fetchPages = async (nextToken, params, context) => {\n if ( that.state.selectedType !== context.sourceState.type ) {\n console.log(\"Type has changed, aborting fetchPages\");\n return;\n }\n if ( that.state.selectedCategory !== context.sourceState.category ) {\n console.log(\"Category has changed, aborting fetchPages\");\n return;\n }\n\n let queryName = context.queryName;\n let query = queries[queryName[0].toLowerCase() + queryName.slice(1)];\n if (nextToken !== \"\") { params.nextToken = nextToken }\n return API.graphql(graphqlOperation(query, params))\n .then(res => { \n const responseResult = res.data[queryName];\n fetchedContributions = fetchedContributions.concat(responseResult.items);\n if (null !== responseResult.nextToken) {\n fetchPages(responseResult.nextToken, params, context);\n }\n this.setState({ contributions: fetchedContributions, regionFilter: regionFilter, loading: false })\n }).catch(error => console.error(\"Something went wrong: \", error));\n\n }\n\n let fetchedContributions = [];\n this.setState({ loading: true })\n let params = { \n limit: 200,\n sortDirection: \"DESC\"\n }\n let queryName = '';\n if (this.state.selectedCategory === 'All' && this.state.selectedType === 'All') {\n // No filters applied\n queryName = 'ActivitiesByStatusAndDate';\n params.status = 'APPROVED' //All items are APPROVED, this is just a way to use a secondary index with custom sort.\n } else if (this.state.selectedCategory === 'All' && this.state.selectedType !== 'All') {\n // Filter only by type\n queryName = 'ActivitiesByTypeAndDate';\n params.output_type = this.state.selectedType;\n } else if (this.state.selectedCategory !== 'All' && this.state.selectedType === 'All') {\n // Filter only by category\n queryName = 'ActivitiesByCategoryAndDate';\n params.category = this.state.selectedCategory;\n } else {\n // Filter both by category and type\n queryName = 'ActivitiesByCategoryAndDate';\n params.category = this.state.selectedCategory;\n // Use the query by category and add a filter for type, unless a query by two fields was possible.\n params.filter = {\n output_type : {eq:this.state.selectedType}\n };\n }\n await fetchPages(\"\", params, {queryName, sourceState: { category: this.state.selectedCategory, type: this.state.selectedType} });\n }\n\n\n setFlashMessage(flash) {\n this.setState({ flash_message: flash })\n }\n\n render() {\n\n return (\n \n\n
this.setState({ toolsOpen: true })} />}\n navigationHide\n toolsHide\n labels={appLayoutLabels}\n />\n\n \n\n );\n }\n\n}\n\nexport default AllActivitiesList;\n","import React, { Component } from 'react';\nimport { API, graphqlOperation } from 'aws-amplify'\nimport { Auth } from 'aws-amplify'\n\nimport {getExplorerProfile} from \"../graphql/queries\"\n\nimport * as JWT from 'jwt-decode';\n\n\nimport { Link } from 'react-router-dom'\n\nimport '@amzn/awsui-components-react/index.css';\n\nimport {\n AppLayout,\n Button,\n ColumnLayout,\n Icon,\n Spinner,Flash\n} from '@amzn/awsui-components-react';\nimport { appLayoutLabels } from '../common/labels';\nimport '../styles/form.scss';\n\n\nexport const ProfileDetails = ({ profile , adminView , certifications}) => (\n \n \n
\n
\n
\n
Name\n\n {/* removed the user photo}\n
\n {!profile.headshot ? \n

: \n

\n }\n
\n */}\n\n
\n
{profile.first_name} {profile.last_name}
\n
\n
\n
Email
\n
{profile.email}
\n
\n
\n
Country
\n
\n {profile.country}\n
\n
\n
{/* // Hiding Profile section\n
Region
\n
\n {profile.region}\n
*/}\n
\n \n\n
\n
\n
\n\n \n\n
\n\n
\n
Program Status
\n
\n {\"ACTIVE MEMBER\" === profile.program_status ? \n ACTIVE MEMBER\n : \n {profile.program_status}\n }\n
\n
\n\n {\n (profile.program_status===\"ADMINISTRATOR\") ?\n
\n\n \n
\n
Administration Status
\n
\n \n \n \n
Legal Form
\n
\n {!profile.legal_form ? \"-\" : profile.legal_form}
\n
\n
\n \n
NDA URL
\n
\n {!profile.link_to_nda ? \"-\" : profile.link_to_nda}
\n
\n
\n \n \n
Public Sector
\n
\n {!profile.public_sector ? \"-\" : profile.public_sector}
\n
\n
\n \n :\n null\n }\n
\n
\n\n
\n \n );\n\nexport const ThisProfile = ({ profile, ready , adminView , certifications}) => {\n return (\n \n
\n \n \n \n \n \n\n \n \n
\n \n
\n
Profile Details
\n \n {(ready===true)?\n
: \n }\n \n \n
\n\n );\n };\n\nclass ViewProfile extends Component {\n constructor(props){\n super(props);\n\n this.state = { \n profile: {cognito_user : this.props.match.params.id , first_name: \"\" , last_name: \"\" , country: \"USA\" , region: \"NA\"},\n flash_message: null,\n ready: false,\n currentUser: {administrator: false},\n certifications: []\n }\n }\n\n componentDidMount(){\n if (this.props.location.state!==undefined){\n this.setState({ flash_message: })\n }\n\n let parent = this;\n\n Auth.currentAuthenticatedUser()\n .then(user => {\n var token = JWT(user.signInUserSession.accessToken.jwtToken);\n var isAdministrator = false;\n if (token['cognito:groups']!==undefined && token['cognito:groups'][0]===\"APNAmbassadorsAdministrators\")\n {isAdministrator=true;}\n user.attributes.administrator=isAdministrator;\n var profile = this.state.profile;\n profile.email=user.attributes.email;\n parent.setState({ currentUser: user.attributes, profile: profile});\n this.getProfileForUser(this.props.match.params.id, profile.email);\n \n }).catch(err => console.log(err)) // end authentication\n \n \n } // end will mount\n\n\n getProfileForUser(id, email){\n // fetch contributions for this user\n API.graphql(graphqlOperation(getExplorerProfile,{\"cognito_user\":id}))\n .then(res => {\n if (res.data.getExplorerProfile!==null) {\n let storedProfile = res.data.getExplorerProfile;\n storedProfile.email = email;\n this.setState({ profile: storedProfile , ready: true})\n } else {\n this.setState({ ready: true })\n }\n }).catch(error => {\n console.log(\"Couldn't establish ambassador \", error);\n this.setState({ error: \"Unable to load profile.\" , ready: true})\n });\n\n }\n \n\n render(){\n\n return (\n \n\n
\n }\n navigationHide\n toolsHide\n labels={appLayoutLabels}\n /> \n\n \n\n );\n }\n\n}\n\nexport default ViewProfile;\n","export const topicOptions = [\n {\n \"label\": \"AI Engineering\",\n \"id\": \"AIENG\"\n },\n {\n \"label\": \"Cloud Operations\",\n \"id\": \"MGMI\" // This referred to M&G + Migration, ID cannot be changed without changing the data in DDB.\n },\n {\n \"label\": \"Containers\",\n \"id\": \"CONT\"\n },\n {\n \"label\": \"Data\",\n \"id\": \"DATA\"\n },\n {\n \"label\": \"Dev Tools\",\n \"id\": \"DEVT\"\n },\n {\n \"label\": \"Front-End Web & Mobile\",\n \"id\": \"FEWM\"\n },\n {\n \"label\": \"Game Tech\",\n \"id\": \"GAME\"\n },\n {\n \"label\": \"Graviton/Arm\",\n \"id\": \"GARM\"\n },\n {\n \"label\": \"Machine Learning\",\n \"id\": \"ML\"\n },\n {\n \"label\": \"Network C&D\",\n \"id\": \"NECD\"\n },\n {\n \"label\": \"Security & Identity\",\n \"id\": \"SECI\"\n },\n {\n \"label\": \"Serverless\",\n \"id\": \"SRVL\"\n },\n {\n \"label\": \"Storage\",\n \"id\": \"STOR\"\n }/*,\n {\n \"label\": \"None\",\n \"id\": \"-\"\n }*/\n];\n","import React, { Component } from 'react';\nimport { Link } from 'react-router-dom'\n\nimport { API, graphqlOperation } from 'aws-amplify'\nimport { Auth } from 'aws-amplify'\n\n\nimport {getExplorerProfile} from \"../graphql/queries\"\nimport {createExplorerProfile } from \"../graphql/mutations\"\nimport {updateExplorerProfile} from \"../graphql/mutations\"\n\nimport * as JWT from 'jwt-decode';\nimport '@amzn/awsui-components-react/index.css';\nimport '../styles/form.scss';\n\nimport {\n AppLayout,\n Button,\n ColumnLayout,\n Form,\n FormField,\n FormSection,\n Input,\n Select,\n Spinner\n} from '@amzn/awsui-components-react';\nimport { appLayoutLabels } from '../common/labels';\nimport {regionOptions, countryOptions , regionCountries , adminRegionOptions} from '../dropdowns/CountriesReference'\nimport {topicOptions} from '../dropdowns/TopicsReference'\n\n export const \n YesNo = [\n {\n \"label\": \"YES\",\n \"id\": \"YES\"\n },\n {\n \"label\": \"NO\",\n \"id\": \"NO\"\n }\n ];\n\n export const \n TrueFalse = [\n {\n \"label\": \"YES\",\n \"id\": \"true\"\n },\n {\n \"label\": \"NO\",\n \"id\": \"false\"\n }\n ];\n\n export const \n AmbassadorProgramStatusOptions = [\n {\n \"label\": \"CANDIDATE\",\n \"id\": \"CANDIDATE\"\n },\n {\n \"label\": \"ACTIVE MEMBER\",\n \"id\": \"ACTIVE MEMBER\"\n },\n {\n \"label\": \"REJECTED\",\n \"id\": \"REJECTED\"\n },\n {\n \"label\": \"RETIRED\",\n \"id\": \"RETIRED\"\n },\n {\n \"label\": \"ADMINISTRATOR\",\n \"id\": \"ADMINISTRATOR\"\n }\n ];\n\n\nexport const ProfileForm = ({ currentUser, watcher, newAmbassador , certifications, profile, ready , adminMenu , history}) => {\n if (ready===false) return null;\n let requiredFields = {'first_name': 'nameInvalid', 'region': 'regionInvalid', 'country': 'countryInvalid', 'topicArea': 'topicAreaInvalid'};\n\n function validationErrorsCheck() {\n let anyError = false;\n Object.keys(requiredFields).forEach(field => {\n let profileField = profile[field];\n if (!profileField || profileField === \"\") {\n let statusChange = {}\n statusChange[requiredFields[field]] = true;\n watcher.modifyState(statusChange);\n watcher.forceUpdate();\n anyError = true;\n }\n });\n return anyError;\n }\n \n function handleChange(e, target) {\n e.preventDefault();\n\n if (e.detail.value!==undefined){\n profile[target]=e.detail.value;\n }\n\n if (e.detail.selectedId!==undefined){\n profile[target]=e.detail.selectedId;\n if (target===\"country\"){\n profile[target]=countryOptions.find(x => x.id === e.detail.selectedId).label;\n }\n\n if (target===\"region\") {\n // rebuild the countries select\n // set country to the first item\n profile.region=e.detail.selectedId;\n // profile.country = regionCountries(e.detail.selectedId)[0].label;\n watcher.modifyState({profile: profile});\n }\n }\n\n if (requiredFields[target]) {\n let stateModification = {}\n stateModification[requiredFields[target]] = !profile[target] || profile[target] === \"\";\n watcher.modifyState(stateModification);\n watcher.forceUpdate();\n }\n }\n\n\n function handleSubmit(e){\n e.preventDefault();\n if (validationErrorsCheck()) {\n return;\n }\n Object.keys(profile).forEach((key) => (profile[key] === null || profile[key]===\"\" ) && delete profile[key]);\n if (newAmbassador===true) { \n profile.program_status=\"ACTIVE MEMBER\"; \n\n // not authorized to update these fields \n if(adminMenu!==true) { \n delete profile['legal_form']; \n delete profile['link_to_nda']; \n delete profile['is_disabled']; \n delete profile['is_admin']; \n delete profile['admin_category']; \n delete profile['public_sector']; \n } \n\n // create \n const payload = {\n input: profile\n } \n payload.input.cognito_user=currentUser.sub;\n createAPNAmbassadorProfile(payload); \n } else { \n // not authorized to update these fields \n if(adminMenu!==true) { \n delete profile['program_status']; \n delete profile['legal_form']; \n delete profile['link_to_nda']; \n delete profile['is_disabled']; \n delete profile['is_admin']; \n delete profile['admin_category']; \n delete profile['public_sector']; \n }\n delete profile['createdAt']; \n delete profile['updatedAt'];\n // update\n const payload = { \n input: profile\n }\n updateAPNAmbassadorProfile(payload);\n } \n } \n\n\n const createAPNAmbassadorProfile = async (payload) => {\n await API.graphql(graphqlOperation(createExplorerProfile, payload))\n .then(res => {\n if (res.data.createExplorerProfile!=null){\n console.log(\"ambassador profile successfully created: \", res )\n history.push({\n pathname: '/viewProfile/' + profile.cognito_user,\n state: { flash_message: \"Profile successfully updated.\" }\n })\n }else{\n // alert('something went wrong.');\n }\n })\n .catch(error => console.error(\"Something went wrong creating profile: \", error));\n }\n\n const updateAPNAmbassadorProfile = async (payload) => {\n await API.graphql(graphqlOperation(updateExplorerProfile, payload))\n .then(res => {\n\n if (res.data.updateExplorerProfile!=null){\n console.log(\"ambassador profile successfully update: \", res )\n history.push({\n pathname: '/viewProfile/' + profile.cognito_user,\n state: { flash_message: \"Profile successfully updated.\" }\n })\n // Since the profile has been updated, the state of the header changes (name, surname, completion status,...) \n // Ideally there would be a way to update this status without refreshing the page, but at this point this is just easier. \n window.location.reload(false); \n } else{\n //alert('something went wrong.');\n }\n \n })\n .catch(error => console.error(\"Something went wrong updating profile: \", error));\n }\n\n\n return (\n \n\n{(ready===true)? \n
\n: \n
\n}\n
\n );\n };\n\nclass EditProfile extends Component {\n constructor(props){\n super(props);\n\n this.state = { \n profile: {\"cognito_user\" : this.props.match.params.id , first_name: \"\" , last_name: \"\" , partner_name:\"\" , current_usage_code: \"\" , current_usage_code_expiry: \"\", previous_usage_code:\"\",previous_usage_code_expiry:\"\",segment:\"\",psa: \"\" , link_to_nda: \"\" , legal_form: \"\", is_admin: false , admin_category: \"NA\" },\n certifications: [],\n flash_message: null,\n ready: true,\n isAdministrator: false,\n newAmbassador: false,\n nameInvalid: false,\n topicAreaInvalid: false,\n regionInvalid: false,\n countryInvalid: false\n }\n }\n\n componentDidMount() {\n let parent = this;\n \n Auth.currentAuthenticatedUser()\n .then(user => {\n var token = JWT(user.signInUserSession.accessToken.jwtToken);\n var isAdministrator = false;\n if (token['cognito:groups']!==undefined && token['cognito:groups'][0]===\"ExplorersAdministrators\")\n {isAdministrator=true;}\n user.attributes.administrator=isAdministrator;\n var profile = this.state.profile;\n profile.email=user.attributes.email;\n parent.setState({ currentUser: user.attributes, profile: profile, isAdministrator: isAdministrator});\n this.getProfileForUser(user.username);\n }).catch(err => console.log(err)) // end authenticationn\n } // end will mount\n\n getProfileForUser(id){\n // fetch contributions for this user\n API.graphql(graphqlOperation(getExplorerProfile,{\"cognito_user\":id}))\n .then(res => { \n var theseCertifications = [];\n\n if (res.data.getExplorerProfile!==null){\n // parse certifications\n if (\n res.data.getExplorerProfile!==null && \n res.data.getExplorerProfile.certifications!==undefined && \n res.data.getExplorerProfile.certifications!==\"\" && \n res.data.getExplorerProfile.certifications!==null){\n theseCertifications = JSON.parse(atob(res.data.getExplorerProfile.certifications));\n }\n\n this.setState({ profile: res.data.getExplorerProfile , ready: true , certifications: theseCertifications}) \n }else{\n this.setState({ newAmbassador: true, ready: true , certifications: theseCertifications})\n }\n \n\n }).catch(error => {\n console.log(\"Couldn't establish ambassador \", error);\n this.setState({ error: \"Unable to load profile.\" , ready: true , newAmbassador: true})\n });\n\n }\n\n modifyState(state){\n this.setState(state);\n this.forceUpdate();\n }\n\n render(){\n\n // console.log(this.props);\n\n return (\n \n\n
\n }\n navigationHide\n toolsHide\n labels={appLayoutLabels}\n />\n \n );\n }\n}\n\nexport default EditProfile;\n","import React from 'react';\n\nimport { Icon } from '@amzn/awsui-components-react';\n\nexport const COLUMN_DEFINITIONS = [\n {\n id: 'name',\n header: () => 'Name',\n cell: item => {item.first_name} {item.last_name},\n minWidth: '200px',\n allowLineWrap: true\n },\n {\n id: 'email',\n header: () => 'Email',\n cell: item => item.email,\n minWidth: '200px',\n allowLineWrap: true\n },\n {\n id: 'region',\n cell: item => item.region,\n header: () => 'Region',\n minWidth: '100px',\n allowLineWrap: true\n },\n {\n id: 'country',\n header: () => 'Country',\n cell: item => item.country,\n minWidth: '100px',\n allowLineWrap: true\n },\n {\n id: 'status',\n header: () => 'Status',\n cell: item => \n {(\"AMBASSADOR\" === item.program_status) ? \n Ambassador\n : \n {item.program_status}\n },\n allowLineWrap: false\n }\n];\n\nexport const SORTABLE_COLUMNS = [\n { id: 'name', field: 'first_name' },\n { id: 'email', field: 'email' },\n { id: 'region', field: 'region' },\n { id: 'total_approved_contributions', field: 'total_approved_contributions' },\n { id: 'total_score', field: 'total_score' },\n { id: 'origin', field: 'origin' },\n { id: 'status', field: 'status' },\n { id: 'state', field: 'state' },\n { id: 'logging', field: 'logging' }\n];\n\nexport const CONTENT_SELECTOR_OPTIONS = [\n {\n label: 'Main distribution properties',\n options: [\n { id: 'id', label: 'Distribution ID', editable: false, visible: true },\n { id: 'domainName', label: 'Domain name', editable: true, visible: true },\n { id: 'deliveryMethod', label: 'Delivery method', editable: true, visible: true },\n { id: 'priceClass', label: 'Price class', editable: true, visible: false },\n { id: 'sslCertificate', label: 'SSL certificate', editable: true, visible: true },\n { id: 'origin', label: 'Origin', editable: true, visible: false },\n { id: 'status', label: 'Status', editable: true, visible: true },\n { id: 'state', label: 'State', editable: true, visible: true },\n { id: 'logging', label: 'Logging', editable: true, visible: false }\n ]\n }\n];\n\nexport const PAGE_SELECTOR_OPTIONS = [\n { value: 10, label: '10 Distributions' },\n { value: 30, label: '30 Distributions' },\n { value: 50, label: '50 Distributions' }\n];\n\nexport const PROPERTY_FILTERING_OPTIONS = [\n { propertyLabel: 'Domain name', propertyKey: 'domainName', groupValuesLabel: 'Domain name values', values: [] },\n { propertyLabel: 'Delivery method', propertyKey: 'deliveryMethod', groupValuesLabel: 'Delivery method values', values: [] },\n { propertyLabel: 'Price class', propertyKey: 'priceClass', groupValuesLabel: 'Price class values', values: [] },\n { propertyLabel: 'Origin', propertyKey: 'origin', groupValuesLabel: 'Origin values', values: [] },\n { propertyLabel: 'Status', propertyKey: 'status', groupValuesLabel: 'Status values', values: [] },\n { propertyLabel: 'State', propertyKey: 'state', groupValuesLabel: 'State values', values: [] },\n { propertyLabel: 'Logging', propertyKey: 'logging', groupValuesLabel: 'Logging values', values: [] },\n {\n propertyLabel: 'SSL certificate',\n propertyKey: 'sslCertificate',\n groupValuesLabel: 'SSL certificate values',\n values: []\n }\n];\n\nexport const CUSTOM_PREFERENCE_OPTIONS = [{ value: 'table', label: 'Table' }, { value: 'cards', label: 'Cards' }];\n\nexport const PROPERTY_FILTERING_I18N_CONSTANTS = {\n placeholder: 'Filter distributions by property or value',\n operationAndText: 'and',\n operationNotAndText: 'and not',\n operationOrText: 'or',\n operationNotOrText: 'or not',\n clearFiltersText: 'Clear filters',\n groupPropertiesText: 'Properties',\n groupValuesText: 'Values',\n filteringEmpty: 'No results found',\n filteringLabel: 'Filter distributions',\n filteringStatusText: 'Loading'\n};","import React from 'react';\nimport { Link } from 'react-router-dom'\nimport { Auth } from 'aws-amplify'\n\nimport {\n COLUMN_DEFINITIONS,\n CONTENT_SELECTOR_OPTIONS,\n SORTABLE_COLUMNS,\n } from './profiles-table-config';\n import {\n paginationLabels,\n distributionSelectionLabels\n } from '../common/labels';\n import {\n Button,\n Table,\n TableFiltering,\n TablePagination,\n TableSelection,\n TableSorting,\n } from '@amzn/awsui-components-react';\n import { getFilterCounterText } from '../common/tableCounterStrings';\n import '../styles/table.scss';\n import { createPropertyStorage } from '../common/createPropertyStorage';\n import * as localStorage from '../common/localStorage';\n import { mapWithColumnDefinitionIds, addToColumnDefinitions } from '../common/columnDefinitionsHelper';\n import { API, graphqlOperation } from 'aws-amplify'\n\n import { listExplorerProfiles , getExplorerProfile} from \"../graphql/queries\";\n\n\n var floatRightStyle = {\n float: 'right'\n };\n const widthsStorage = createPropertyStorage('React-Table-Widths', localStorage);\n const saveWidths = e => widthsStorage.save(mapWithColumnDefinitionIds(COLUMN_DEFINITIONS, 'width', e.detail.widths));\n const loadWidths = () =>\n widthsStorage.load().then(columns => addToColumnDefinitions(COLUMN_DEFINITIONS, 'width', columns));\n \n export const TableHeader = ({ selectedDistributions, counter, updateTools , watcher , table , region }) => {\n const isOnlyOneSelected = selectedDistributions.length === 1;\n \n\n return (\n \n
\n
\n Ambassador Profiles (Region: {region})\n
\n \n
\n {\n (isOnlyOneSelected) ? \n
\n : \n
\n }\n {\n /*\n
\n
\n\n */\n\n }\n
\n\n
\n );\n };\n \nclass ProfilesList extends React.Component {\n\n constructor(props) {\n super(props);\n this.state = {\n columnDefinitions: COLUMN_DEFINITIONS,\n selectedDistributions: [],\n profiles: [],\n filteringText: '',\n pageSize: 30,\n contentSelectorOptions: CONTENT_SELECTOR_OPTIONS,\n wrapLines: false\n };\n this.onPaginationChange = this.onPaginationChange.bind(this);\n }\n \n\n loadAmbassadorProfiles(){\n \n \n Auth.currentAuthenticatedUser()\n .then(user => {\n console.log(user);\n \n\n API.graphql(graphqlOperation(getExplorerProfile,{\"cognito_user\":user.username}))\n .then(res => { \n console.log(\"Ambassador res \", res )\n \n // filter the region for this ambassador\n var filter = {}; // empty for global\n var filterLabel = \"GLOBAL\"; // empty for global\n \n if (res.data.getExplorerProfile.admin_region===undefined){ this.loadRegionalAmbassadorProfiles(undefined, filterLabel);}\n else\n if (\n res.data.getExplorerProfile.admin_region!==null && \n res.data.getExplorerProfile.admin_region!==\"\" && \n res.data.getExplorerProfile.admin_region!==\"GLOBAL\"\n ){\n filter = {\"filter\": {\"region\": {\"eq\": res.data.getExplorerProfile.admin_region}}};\n filterLabel=res.data.getExplorerProfile.admin_region;\n this.loadRegionalAmbassadorProfiles(filter, filterLabel);\n }\n \n }).catch(error => {\n console.log(\"Couldn't establish ambassador \", error);\n this.setState({ error: \"Unable to load profile.\" , ready: true});\n\n var filter = {};\n this.loadRegionalAmbassadorProfiles(filter , \"GLOBAL\");\n });\n }).catch(err => console.log(err)) // end authentication\n }\n\n loadRegionalAmbassadorProfiles(filter,filterLabel ){\n var thisFilter={};\n if (filter!==undefined){thisFilter = filter}\n console.log(\"sending filter : \" + thisFilter);\n thisFilter.limit=5000;\n API.graphql(graphqlOperation(listExplorerProfiles,thisFilter))\n .then(res => { \n console.log(\"Something went right: \", res )\n this.setState({ profiles: res.data.listExplorerProfiles.items , regionFilter: filterLabel})\n }).catch(error => console.error(\"Something went wrong: \", error));\n }\n\n componentWillMount(){\n this.loadAmbassadorProfiles();\n } // end will mount\n\n\n componentDidMount() {\n loadWidths().then(columnDefinitions => {\n this.setState({\n columnDefinitions\n });\n });\n\n if (this.props.filterText!==undefined && this.props.filterText!==\"\"){\n this.setState({filteringText: this.props.filterText});\n }\n }\n \n onFilteringChange({ detail: { filteringText } }) {\n this.setState({\n filteringText\n });\n }\n \n onPaginationChange({ detail: { pageSize } }) {\n this.setState({\n pageSize\n });\n }\n \n onContentSelectionChange({ detail}) {\n const contentSelection = detail.contentSelection;\n const currentContentSelectorOptionGroup = this.state.contentSelectorOptions[0];\n this.setState({\n contentSelectorOptions: [{\n label: currentContentSelectorOptionGroup.label,\n options: currentContentSelectorOptionGroup.options.map(opt => ({\n id: opt.id,\n label: opt.label,\n editable: opt.editable,\n visible: contentSelection.indexOf(opt.id) !== -1,\n }))\n }]\n });\n }\n \n onWrapLinesChange({ detail }) {\n this.setState({\n wrapLines: detail.value\n });\n }\n \n headerCounter(selectedDistributions, distributions) {\n return selectedDistributions.length\n ? `(${selectedDistributions.length}/${distributions.length})`\n : `(${distributions.length})`;\n }\n \n clearFilter() {\n this.setState({\n filteringText: ''\n });\n }\n \n deleteSelections(){\n alert(this.state.selectedDistributions);\n }\n\n\n render() {\n return (\n \n\n
\n \n \n \n \n \n \n \n \n \n
\n )}\n \n onWrapLinesChange={this.onWrapLinesChange.bind(this)}\n >\n\n
\n
\n
\n this.setState({selectedDistributions: evt.detail.selectedItems})}\n />\n \n \n )\n }\n }\n\n export default ProfilesList;","import React, { Component } from 'react';\n\nimport * as JWT from 'jwt-decode';\nimport { Auth } from 'aws-amplify'\n\nimport '@amzn/awsui-components-react/index.css';\n\nimport {\n AppLayout\n} from '@amzn/awsui-components-react';\nimport { appLayoutLabels } from '../common/labels';\nimport '../styles/form.scss';\n\nimport ProfilesList from \"./ProfilesList\"\n\n\nclass Profiles extends Component {\n constructor(props){\n super(props);\n\n this.state = { \n contentOrigins: [], toolsIndex: 0, toolsOpen: false, showCreateForm: false,\n currentUser: {\"email\": \"nobody\",\"administratior\": false},\n contributions: [],\n flash_message: null,\n showProfiles: true,\n searchText: ''\n }\n }\n\n componentWillMount() {\n if(this.props.location.search!==undefined && this.props.location.search!==\"\"){\n var searchText=this.props.location.search.substring(1,this.props.location.search.length);\n this.setState({searchText: searchText})\n }\n let parent = this;\n\n Auth.currentAuthenticatedUser()\n .then(user => {\n var token = JWT(user.signInUserSession.accessToken.jwtToken);\n //var isAdministrator = false;\n if (token['cognito:groups']!==undefined && token['cognito:groups'][0]===\"ExplorersAdministrators\") {\n user.attributes.administrator=true;\n parent.setState({ currentUser: user.attributes});\n }\n else {\n this.props.history.push({\n pathname: '/myActivities'\n })\n }\n }).catch(err => console.log(err)) // end authentication\n } // end will mount\n\n componentDidMount() {\n \n }\n\n render() {\n return (\n \n
this.setState({ toolsOpen: true })} />}\n navigationHide\n toolsHide\n labels={appLayoutLabels}\n />\n \n );\n }\n}\n\nexport default Profiles;","import React from 'react'\nimport { Greetings } from 'aws-amplify-react'\nimport { NavItem } from 'aws-amplify-react'\n\nimport { Link } from 'react-router-dom'\n\nimport '@amzn/awsui-components-react/index.css';\n\nimport { Button } from '@amzn/awsui-components-react';\n\nvar floatRightStyle = {\n float: 'right', marginTop: '30px'\n };\n\nvar signOutStyle = {\n marginRight: '20px'\n}\n\nexport default class AmbassadorGreetings extends Greetings {\n \n\n noGreeting() {\n return()\n }\n\n someGreeting(theme) {\n //{\"Hello Kitty\"}\n return (\n \n {\n (this.props.userProfile!==undefined && this.props.userProfile!==null) ?\n \n \n {this.props.userProfile.first_name} {this.props.userProfile.last_name} \n \n \n :\n \n } \n {this.renderSignOutButton(theme)}\n \n );\n }\n\n render() {\n const authState = this.props.authState || this.state.authState;\n const signedIn = (authState === 'signedIn');\n\n const theme = this.props.theme;\n // const greeting = signedIn? this.userGreetings(theme) : this.noGreeting();\n\n const greeting = signedIn? this.someGreeting(theme) : this.noGreeting();\n\n if (!greeting) { return null; }\n\n return (\n \n

\n
\n {greeting}\n
\n
\n );\n }\n}","import React from \"react\";\nimport { useLocation } from \"react-router-dom\";\n\ndeclare function cwr(operation: string, payload: any): void;\n\n/*\n * Tracks changes in the location and sends it to RUM in order to have pages data matching the hash of the URL.\n */\nconst PageTracker = () => {\n\n let location = useLocation();\n React.useEffect(() => {\n if (typeof cwr !== 'undefined') {\n cwr(\"recordPageView\", \"#\" + location.pathname);\n }\n }, [location]);\n\n return (\n <>>\n );\n};\n\nexport default PageTracker;","import React from \"react\";\nimport { Authenticator , Greetings , VerifyContact , SignIn , ConfirmSignIn , ForgotPassword , TOTPSetup, Loading} from \"aws-amplify-react\";\nimport { NavItem, NavBar } from 'aws-amplify-react'\n\nimport { Auth } from 'aws-amplify'\nimport Activities from \"./activities/Activities\";\nimport AllActivitiesList from \"./activities/AllActivitiesList\";\n\nimport ViewProfile from \"./profiles/ViewProfile\";\nimport EditProfile from \"./profiles/EditProfile\";\nimport Profiles from \"./profiles/Profiles\";\n\nimport AmbassadorGreetings from \"./AppGreeting\";\nimport PageTracker from \"./PageTracker\";\n\nimport { API, graphqlOperation } from 'aws-amplify'\n\nimport { getExplorerProfile } from \"./graphql/queries\";\n\nimport {\n Route,\n HashRouter\n} from \"react-router-dom\";\n\nconst globalSignupConfig = {\n hiddenDefaults: [\"phone_number\" , \"email\"],\n signUpDisplayed: false, \n signUpFields: [\n { label: \"Name\", key: \"name\", required: true, type: \"string\" , displayOrder: 1},\n { label: \"Email\", key: \"username\", type: \"string\" , displayOrder: 1 }\n ]\n};\n\ndeclare function cwr(operation: string, payload: any): void;\n\nclass App extends React.Component {\n constructor(props, context) {\n super(props, context);\n this.state = { \n signedIn: false\n }\n }\n\n /* Records errors in RUM, otherwise React swallows them */\n componentDidCatch(error, info) {\n if (typeof cwr !== 'undefined') {\n cwr('recordError', error)\n };\n };\n\n handleStateChange = state => {\n //console.log(state);\n if (state === 'signedIn' || state===\"verifyContact\") {\n // this.setState({ signedIn: true});\n let parent = this;\n\n Auth.currentAuthenticatedUser()\n .then(user => {\n parent.setState({ currentUser: user.attributes ,signedIn: true });\n // fetch this profile\n API.graphql(graphqlOperation(getExplorerProfile,{\"cognito_user\":user.attributes.sub}))\n .then(res => { \n parent.setState({ userProfile: res.data.getExplorerProfile || {}, noprofile: res.data.getAPNAmbassadorProfile==null})\n }).catch(error => {\n console.log(error);\n });\n }).catch(err => console.log(err)) // end authentication\n }\n if (state === 'signIn') {\n this.setState({ signedIn: false});\n }\n };\n\n render() {\n if(this.state.signedIn && this.state.currentUser && this.state.userProfile && window.location.hash.indexOf('#/editProfile/')!==0) {\n let requiredFields = {'first_name': 'First name', 'region': 'Region', 'country': 'Country', 'topicArea': 'Your topic area'};\n let missingFields = [];\n Object.keys(requiredFields).forEach(field => { if (!this.state.userProfile || !this.state.userProfile[field]) missingFields.push(field);});\n if (missingFields.length>0) {\n let missingFieldsText='';\n missingFields.forEach( (field, index) => {\n if (index>0) {\n if(index === missingFields.length - 1) {\n missingFieldsText += \" and \";\n } else {\n missingFieldsText += \", \";\n }\n }\n missingFieldsText += '\"'+requiredFields[field]+'\"';\n })\n // There is probably a more react-ish way to do this, rendering the edit form with a warning on top or something like this, but this is quite simple and effective.\n alert('Your user profile is incomplete. Please complete ' + missingFieldsText +\".\");\n window.location.hash=\"#/editProfile\";\n }\n }\n\n return (\n \n \n\n {\n (this.state.signedIn) ? null\n :\n \n
\n \n }\n\n \n \n \n \n \n \n \n\n\n \n {\n (this.state.signedIn) ? \n \n :\n \n Registration is temporarily closed for new users.\n
\n }\n \n );\n }\n}\n\nexport default App;","/* eslint-disable */\n// WARNING: DO NOT EDIT. This file is automatically generated by AWS Amplify. It will be overwritten.\n\nconst awsmobile = {\n \"aws_project_region\": \"us-east-1\",\n \"aws_appsync_graphqlEndpoint\": \"https://jpk23eez5ng2zlevhrwun5home.appsync-api.us-east-1.amazonaws.com/graphql\",\n \"aws_appsync_region\": \"us-east-1\",\n \"aws_appsync_authenticationType\": \"AMAZON_COGNITO_USER_POOLS\",\n \"aws_cognito_identity_pool_id\": \"us-east-1:2ff2df24-45ab-45ef-afe5-298ca91031f3\",\n \"aws_cognito_region\": \"us-east-1\",\n \"aws_user_pools_id\": \"us-east-1_4JkkQJAxH\",\n \"aws_user_pools_web_client_id\": \"4t3tbc11drjvir32gdvbbd973e\",\n \"oauth\": {},\n \"aws_cognito_username_attributes\": [\n \"EMAIL\"\n ],\n \"aws_cognito_social_providers\": [],\n \"aws_cognito_signup_attributes\": [\n \"EMAIL\"\n ],\n \"aws_cognito_mfa_configuration\": \"OFF\",\n \"aws_cognito_mfa_types\": [\n \"SMS\"\n ],\n \"aws_cognito_password_protection_settings\": {\n \"passwordPolicyMinLength\": 8,\n \"passwordPolicyCharacters\": []\n },\n \"aws_cognito_verification_mechanisms\": [\n \"EMAIL\"\n ]\n};\n\n\nexport default awsmobile;\n","\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport App from './App';\nimport { I18n } from 'aws-amplify';\n\nimport Amplify from 'aws-amplify'\n\nimport config from './aws-exports'\nAmplify.configure(config)\n\n__webpack_nonce__ = 'c29tZSBjb29sIHN0cmluZyB3aWxsIHBvcCB1cCAxMjM='; // eslint-disable-line no-undef\n\n\nconst authScreenLabels = {\n en: {\n 'User does not exist': 'Invalid username or password',\n 'User already exists': 'Account details are invalid',\n }\n};\n\nI18n.setLanguage('en');\nI18n.putVocabularies(authScreenLabels);\n\n\nReactDOM.render(\n ,\n document.getElementById('root')\n );"],"sourceRoot":""}