@quintype/arrow 3.15.1-perf.1 → 3.15.1-perf.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (167) hide show
  1. package/atoms/Author/index.js +48 -2128
  2. package/atoms/Author/styles.arrow.css +1 -1
  3. package/atoms/AuthorWithTime/index.js +116 -2556
  4. package/atoms/AuthorWithTime/styles.arrow.css +1 -1
  5. package/atoms/CollectionName/index.js +48 -2127
  6. package/atoms/CollectionName/styles.arrow.css +1 -1
  7. package/atoms/ExtendedLoadMore/{index-6f8c780e.js → index-0f809dd9.js} +73 -62
  8. package/atoms/ExtendedLoadMore/index-142f015c.js +476 -0
  9. package/atoms/ExtendedLoadMore/{index-2d713010.js → index-37a9ccff.js} +63 -47
  10. package/atoms/ExtendedLoadMore/{index-8345922c.js → index-446679c8.js} +67 -51
  11. package/atoms/ExtendedLoadMore/{index-6daa674c.js → index-44f97338.js} +86 -68
  12. package/atoms/ExtendedLoadMore/{index-c8f346d0.js → index-57dd4870.js} +80 -64
  13. package/atoms/ExtendedLoadMore/{index-7eb05b3d.js → index-66dd4dbd.js} +70 -54
  14. package/atoms/ExtendedLoadMore/{index-6cb56d1a.js → index-8462c597.js} +93 -80
  15. package/atoms/ExtendedLoadMore/{index-aa8b8ab8.js → index-93cb06d1.js} +252 -226
  16. package/atoms/ExtendedLoadMore/index-afd44863.js +95 -0
  17. package/atoms/ExtendedLoadMore/{index-5a7900ba.js → index-b5754c5d.js} +67 -53
  18. package/atoms/ExtendedLoadMore/{index-4191a84c.js → index-bbaf526e.js} +78 -62
  19. package/atoms/ExtendedLoadMore/{index-99af722e.js → index-cfb262ef.js} +65 -48
  20. package/atoms/ExtendedLoadMore/index.js +20 -5
  21. package/atoms/ExtendedLoadMore/styles.arrow.css +1 -1
  22. package/atoms/Headline/index.js +95 -2175
  23. package/atoms/Headline/styles.arrow.css +1 -1
  24. package/atoms/HeroImage/index.js +91 -2230
  25. package/atoms/HeroImage/styles.arrow.css +1 -1
  26. package/atoms/LoadmoreButton/index.js +40 -2133
  27. package/atoms/LoadmoreButton/styles.arrow.css +1 -1
  28. package/atoms/ScrollSnap/index.js +89 -2241
  29. package/atoms/ScrollSnap/styles.arrow.css +1 -1
  30. package/atoms/SectionTag/index.js +40 -2120
  31. package/atoms/SectionTag/styles.arrow.css +1 -1
  32. package/atoms/Subheadline/index.js +35 -2115
  33. package/atoms/Subheadline/styles.arrow.css +1 -1
  34. package/atoms/TimeStamp/index.js +43 -2483
  35. package/atoms/TimeStamp/styles.arrow.css +1 -1
  36. package/molecules/KeyEvents/index.js +95 -2606
  37. package/molecules/KeyEvents/styles.arrow.css +1 -1
  38. package/molecules/PageIntroductionCard/index.js +59 -2487
  39. package/molecules/PageIntroductionCard/styles.arrow.css +1 -1
  40. package/molecules/SocialShareTemplate/index.js +213 -2800
  41. package/molecules/SocialShareTemplate/styles.arrow.css +1 -1
  42. package/molecules/StoryCard/index.js +308 -2816
  43. package/molecules/StoryCard/styles.arrow.css +1 -1
  44. package/molecules/StoryElementCard/index.js +611 -3352
  45. package/molecules/StoryElementCard/styles.arrow.css +1 -1
  46. package/molecules/StorycardContent/index.js +218 -2658
  47. package/molecules/StorycardContent/styles.arrow.css +1 -1
  48. package/package.json +1 -1
  49. package/rows/AlternateCollectionFilter/index.js +438 -2993
  50. package/rows/AlternateCollectionFilter/styles.arrow.css +1 -1
  51. package/rows/AsideCollection/index.js +432 -2987
  52. package/rows/AsideCollection/styles.arrow.css +1 -1
  53. package/rows/AstrologyCollection/index.js +411 -2966
  54. package/rows/AstrologyCollection/styles.arrow.css +1 -1
  55. package/rows/AuthorIntroductionCard/index.js +183 -2890
  56. package/rows/AuthorIntroductionCard/styles.arrow.css +1 -1
  57. package/rows/AuthorsList/index.js +217 -2936
  58. package/rows/AuthorsList/styles.arrow.css +1 -1
  59. package/rows/CollectionFilter/index.js +453 -3008
  60. package/rows/CollectionFilter/styles.arrow.css +1 -1
  61. package/rows/ElevenStories/index.js +439 -2959
  62. package/rows/ElevenStories/styles.arrow.css +1 -1
  63. package/rows/FourColFiveStories/index.js +374 -2872
  64. package/rows/FourColFiveStories/styles.arrow.css +1 -1
  65. package/rows/FourColGrid/index.js +426 -2927
  66. package/rows/FourColGrid/styles.arrow.css +1 -1
  67. package/rows/FourColPortraitStories/index.js +430 -2931
  68. package/rows/FourColPortraitStories/styles.arrow.css +1 -1
  69. package/rows/FourColSixteenStories/index.js +368 -2894
  70. package/rows/FourColSixteenStories/styles.arrow.css +1 -1
  71. package/rows/FourColTwelveStories/index.js +387 -2900
  72. package/rows/FourColTwelveStories/styles.arrow.css +1 -1
  73. package/rows/FourStorySlider/index.js +443 -2963
  74. package/rows/FourStorySlider/styles.arrow.css +1 -1
  75. package/rows/FourStorySliderPortrait/index.js +444 -2964
  76. package/rows/FourStorySliderPortrait/styles.arrow.css +1 -1
  77. package/rows/FourTabbedBigStorySlider/index.js +403 -2923
  78. package/rows/FourTabbedBigStorySlider/styles.arrow.css +1 -1
  79. package/rows/FullScreenSlider/index.js +422 -2942
  80. package/rows/FullScreenSlider/styles.arrow.css +1 -1
  81. package/rows/HalfScreenSlider/index.js +390 -2910
  82. package/rows/HalfScreenSlider/styles.arrow.css +1 -1
  83. package/rows/ListComponent/index.js +398 -2918
  84. package/rows/ListComponent/styles.arrow.css +1 -1
  85. package/rows/Listicles/index.js +189 -2375
  86. package/rows/Listicles/styles.arrow.css +1 -1
  87. package/rows/MagazineEditions/index.js +128 -2580
  88. package/rows/MagazineEditions/styles.arrow.css +1 -1
  89. package/rows/MagazineHeaderCard/index.js +125 -2577
  90. package/rows/MagazineHeaderCard/styles.arrow.css +1 -1
  91. package/rows/MagazineWidget/index.js +408 -2928
  92. package/rows/MagazineWidget/styles.arrow.css +1 -1
  93. package/rows/OneColStoryList/index.js +439 -2940
  94. package/rows/OneColStoryList/styles.arrow.css +1 -1
  95. package/rows/OpinionCollection/index.js +308 -2800
  96. package/rows/OpinionCollection/styles.arrow.css +1 -1
  97. package/rows/SixColSixStories/index.js +405 -2906
  98. package/rows/SixColSixStories/styles.arrow.css +1 -1
  99. package/rows/StoryCollection/index.js +432 -2987
  100. package/rows/StoryCollection/styles.arrow.css +1 -1
  101. package/rows/TagIntroductionCard/index.js +35 -1833
  102. package/rows/TagIntroductionCard/styles.arrow.css +1 -1
  103. package/rows/ThreeColFlexStories/index.js +421 -2922
  104. package/rows/ThreeColFlexStories/styles.arrow.css +1 -1
  105. package/rows/ThreeColFourteenStories/index.js +358 -2871
  106. package/rows/ThreeColFourteenStories/styles.arrow.css +1 -1
  107. package/rows/ThreeColGrid/index.js +428 -2929
  108. package/rows/ThreeColGrid/styles.arrow.css +1 -1
  109. package/rows/ThreeColSevenStory/index.js +406 -2926
  110. package/rows/ThreeColSevenStory/styles.arrow.css +1 -1
  111. package/rows/ThreeColSixStories/index.js +400 -2920
  112. package/rows/ThreeColSixStories/styles.arrow.css +1 -1
  113. package/rows/ThreeColTwelveStories/index.js +383 -2909
  114. package/rows/ThreeColTwelveStories/styles.arrow.css +1 -1
  115. package/rows/TwoColFourStories/index.js +395 -2915
  116. package/rows/TwoColFourStories/styles.arrow.css +1 -1
  117. package/rows/TwoColFourStoryHighlight/index.js +398 -2924
  118. package/rows/TwoColFourStoryHighlight/styles.arrow.css +1 -1
  119. package/rows/TwoColSevenStories/index.js +400 -2920
  120. package/rows/TwoColSevenStories/styles.arrow.css +1 -1
  121. package/rows/TwoColSixStories/index.js +398 -2924
  122. package/rows/TwoColSixStories/styles.arrow.css +1 -1
  123. package/rows/TwoColTenStoriesSidebar/index.js +418 -2938
  124. package/rows/TwoColTenStoriesSidebar/styles.arrow.css +1 -1
  125. package/rows/TwoColThreeStories/index.js +392 -2912
  126. package/rows/TwoColThreeStories/styles.arrow.css +1 -1
  127. package/story-elements/AlsoRead/index.js +92 -2229
  128. package/story-elements/AlsoRead/styles.arrow.css +1 -1
  129. package/story-elements/Attachment/index.js +53 -1899
  130. package/story-elements/Attachment/styles.arrow.css +1 -1
  131. package/story-elements/BigFact/index.js +49 -1895
  132. package/story-elements/BigFact/styles.arrow.css +1 -1
  133. package/story-elements/BlockQuote/index.js +79 -2206
  134. package/story-elements/BlockQuote/styles.arrow.css +1 -1
  135. package/story-elements/Blurb/index.js +52 -1957
  136. package/story-elements/Blurb/styles.arrow.css +1 -1
  137. package/story-elements/Image/index.js +147 -2329
  138. package/story-elements/Image/styles.arrow.css +1 -1
  139. package/story-elements/ImageGallery/index.js +135 -2317
  140. package/story-elements/ImageGallery/styles.arrow.css +1 -1
  141. package/story-elements/ImageSlideshow/index.js +173 -2355
  142. package/story-elements/ImageSlideshow/styles.arrow.css +1 -1
  143. package/story-elements/QuestionAnswer/index.js +79 -2207
  144. package/story-elements/QuestionAnswer/styles.arrow.css +1 -1
  145. package/story-elements/Quote/index.js +52 -1898
  146. package/story-elements/Quote/styles.arrow.css +1 -1
  147. package/story-elements/Reference/index.js +53 -1899
  148. package/story-elements/Reference/styles.arrow.css +1 -1
  149. package/story-elements/StoryElement/index.js +34 -1738
  150. package/story-elements/Summary/index.js +56 -1902
  151. package/story-elements/Summary/styles.arrow.css +1 -1
  152. package/story-elements/Text/index.js +48 -2176
  153. package/story-elements/Text/styles.arrow.css +1 -1
  154. package/story-elements/Video/index.js +35 -1739
  155. package/story-elements/Video/styles.arrow.css +1 -1
  156. package/story-templates/ListicleStoryTemplate/index.js +1182 -4038
  157. package/story-templates/ListicleStoryTemplate/styles.arrow.css +1 -1
  158. package/story-templates/LiveBlogStoryTemplate/index.js +1377 -4233
  159. package/story-templates/LiveBlogStoryTemplate/styles.arrow.css +1 -1
  160. package/story-templates/PhotoStoryTemplate/index.js +1162 -4018
  161. package/story-templates/PhotoStoryTemplate/styles.arrow.css +1 -1
  162. package/story-templates/TextStoryTemplate/index.js +1277 -4133
  163. package/story-templates/TextStoryTemplate/styles.arrow.css +1 -1
  164. package/story-templates/VideoStoryTemplate/index.js +1231 -4087
  165. package/story-templates/VideoStoryTemplate/styles.arrow.css +1 -1
  166. package/atoms/ExtendedLoadMore/index-e39b3ca8.js +0 -3023
  167. package/atoms/ExtendedLoadMore/index-f6e578e3.js +0 -86
@@ -1,2493 +1,48 @@
1
- import React, { useContext, createContext } from 'react';
2
- import PropTypes, { PropTypes as PropTypes$1 } from 'prop-types';
3
- import { Link, ResponsiveImage, ResponsiveHeroImage, LinkBase, collectionToStories } from '@quintype/components';
4
- import Timeago from 'react-timeago';
5
- import { utcToZonedTime, format } from 'date-fns-tz';
6
- import { connect, useSelector, useDispatch } from 'react-redux';
7
-
8
- var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
9
-
10
- function getDefaultExportFromCjs (x) {
11
- return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
12
- }
13
-
14
- function createCommonjsModule(fn) {
15
- var module = { exports: {} };
16
- return fn(module, module.exports), module.exports;
17
- }
18
-
19
- var optionsDefaults_1 = createCommonjsModule(function (module, exports) {
20
-
21
- Object.defineProperty(exports, "__esModule", {
22
- value: true
23
- });
24
- exports["default"] = void 0;
25
- var optionsDefaults = {
26
- attributeNames: {
27
- styleName: 'className'
28
- },
29
- generateScopedName: '[path]___[name]__[local]___[hash:base64:5]',
30
- handleMissingStyleName: 'throw'
31
- };
32
- var _default = optionsDefaults;
33
- exports["default"] = _default;
34
-
35
-
36
- });
37
-
38
- var getClassName = createCommonjsModule(function (module, exports) {
39
-
40
- Object.defineProperty(exports, "__esModule", {
41
- value: true
42
- });
43
- exports["default"] = void 0;
44
-
45
- var _optionsDefaults = _interopRequireDefault(optionsDefaults_1);
46
-
47
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
48
-
49
- var isNamespacedStyleName = function isNamespacedStyleName(styleName) {
50
- return styleName.indexOf('.') !== -1;
51
- };
52
-
53
- var handleError = function handleError(message, handleMissingStyleName) {
54
- if (handleMissingStyleName === 'throw') {
55
- throw new Error(message);
56
- } else if (handleMissingStyleName === 'warn') {
57
- // eslint-disable-next-line no-console
58
- console.warn(message);
59
- }
60
-
61
- return null;
62
- };
63
-
64
- var getClassNameForNamespacedStyleName = function getClassNameForNamespacedStyleName(styleName, styleModuleImportMap, handleMissingStyleNameOption) {
65
- // Note:
66
- // Do not use the desctructing syntax with Babel.
67
- // Desctructing adds _slicedToArray helper.
68
- var styleNameParts = styleName.split('.');
69
- var importName = styleNameParts[0];
70
- var moduleName = styleNameParts[1];
71
- var handleMissingStyleName = handleMissingStyleNameOption || _optionsDefaults["default"].handleMissingStyleName;
72
-
73
- if (!moduleName) {
74
- return handleError('Invalid style name: ' + styleName, handleMissingStyleName);
75
- }
76
-
77
- if (!styleModuleImportMap[importName]) {
78
- return handleError('CSS module import does not exist: ' + importName, handleMissingStyleName);
79
- }
80
-
81
- if (!styleModuleImportMap[importName][moduleName]) {
82
- return handleError('CSS module does not exist: ' + moduleName, handleMissingStyleName);
83
- }
84
-
85
- return styleModuleImportMap[importName][moduleName];
86
- };
87
-
88
- var getClassNameFromMultipleImports = function getClassNameFromMultipleImports(styleName, styleModuleImportMap, handleMissingStyleNameOption) {
89
- var handleMissingStyleName = handleMissingStyleNameOption || _optionsDefaults["default"].handleMissingStyleName;
90
- var importKeysWithMatches = Object.keys(styleModuleImportMap).map(function (importKey) {
91
- return styleModuleImportMap[importKey][styleName] && importKey;
92
- }).filter(function (importKey) {
93
- return importKey;
94
- });
95
-
96
- if (importKeysWithMatches.length > 1) {
97
- throw new Error('Cannot resolve styleName "' + styleName + '" because it is present in multiple imports:' + '\n\n\t' + importKeysWithMatches.join('\n\t') + '\n\nYou can resolve this by using a named import, e.g:' + '\n\n\timport foo from "' + importKeysWithMatches[0] + '";' + '\n\t<div styleName="foo.' + styleName + '" />' + '\n\n');
98
- }
99
-
100
- if (importKeysWithMatches.length === 0) {
101
- return handleError('Could not resolve the styleName \'' + styleName + '\'.', handleMissingStyleName);
102
- }
103
-
104
- return styleModuleImportMap[importKeysWithMatches[0]][styleName];
105
- };
106
-
107
- var _default = function _default(styleNameValue, styleModuleImportMap, options) {
108
- var styleModuleImportMapKeys = Object.keys(styleModuleImportMap);
109
-
110
- var _ref = options || {},
111
- _ref$handleMissingSty = _ref.handleMissingStyleName,
112
- handleMissingStyleName = _ref$handleMissingSty === void 0 ? _optionsDefaults["default"].handleMissingStyleName : _ref$handleMissingSty,
113
- _ref$autoResolveMulti = _ref.autoResolveMultipleImports,
114
- autoResolveMultipleImports = _ref$autoResolveMulti === void 0 ? _optionsDefaults["default"].autoResolveMultipleImports : _ref$autoResolveMulti;
115
-
116
- if (!styleNameValue) {
117
- return '';
118
- }
119
-
120
- return styleNameValue.split(' ').filter(function (styleName) {
121
- return styleName;
122
- }).map(function (styleName) {
123
- if (isNamespacedStyleName(styleName)) {
124
- return getClassNameForNamespacedStyleName(styleName, styleModuleImportMap, handleMissingStyleName);
125
- }
126
-
127
- if (styleModuleImportMapKeys.length === 0) {
128
- throw new Error('Cannot use styleName attribute for style name \'' + styleName + '\' without importing at least one stylesheet.');
129
- }
130
-
131
- if (styleModuleImportMapKeys.length > 1) {
132
- if (!autoResolveMultipleImports) {
133
- throw new Error('Cannot use anonymous style name \'' + styleName + '\' with more than one stylesheet import without setting \'autoResolveMultipleImports\' to true.');
134
- }
135
-
136
- return getClassNameFromMultipleImports(styleName, styleModuleImportMap, handleMissingStyleName);
137
- }
138
-
139
- var styleModuleMap = styleModuleImportMap[styleModuleImportMapKeys[0]];
140
-
141
- if (!styleModuleMap[styleName]) {
142
- return handleError('Could not resolve the styleName \'' + styleName + '\'.', handleMissingStyleName);
143
- }
144
-
145
- return styleModuleMap[styleName];
146
- }).filter(function (className) {
147
- // Remove any styles which could not be found (if handleMissingStyleName === 'ignore')
148
- return className;
149
- }).join(' ');
150
- };
151
-
152
- exports["default"] = _default;
153
-
154
-
155
- });
156
-
157
- var _getClassName = /*@__PURE__*/getDefaultExportFromCjs(getClassName);
158
-
159
- var StateContext = /*#__PURE__*/createContext(); // eslint-disable-next-line react/display-name
1
+ 'use strict';
2
+
3
+ Object.defineProperty(exports, '__esModule', { value: true });
4
+
5
+ var React = require('react');
6
+ var _getClassName = require('babel-plugin-react-css-modules/dist/browser/getClassName');
7
+ var PropTypes = require('prop-types');
8
+ var components = require('@quintype/components');
9
+ var lodash = require('lodash');
10
+ require('@babel/runtime/helpers/asyncToGenerator');
11
+ var _typeof = require('@babel/runtime/helpers/typeof');
12
+ require('@babel/runtime/regenerator');
13
+ var Timeago = require('react-timeago');
14
+ var dateFnsTz = require('date-fns-tz');
15
+ var reactRedux = require('react-redux');
16
+ var _slicedToArray = require('@babel/runtime/helpers/slicedToArray');
17
+ var _defineProperty = require('@babel/runtime/helpers/defineProperty');
18
+
19
+ function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
20
+
21
+ var React__default = /*#__PURE__*/_interopDefaultLegacy(React);
22
+ var _getClassName__default = /*#__PURE__*/_interopDefaultLegacy(_getClassName);
23
+ var PropTypes__default = /*#__PURE__*/_interopDefaultLegacy(PropTypes);
24
+ var _typeof__default = /*#__PURE__*/_interopDefaultLegacy(_typeof);
25
+ var Timeago__default = /*#__PURE__*/_interopDefaultLegacy(Timeago);
26
+ var _slicedToArray__default = /*#__PURE__*/_interopDefaultLegacy(_slicedToArray);
27
+ var _defineProperty__default = /*#__PURE__*/_interopDefaultLegacy(_defineProperty);
28
+
29
+ var StateContext = /*#__PURE__*/React.createContext(); // eslint-disable-next-line react/display-name
160
30
 
161
31
  var StateProvider = function StateProvider(RowComponent) {
162
32
  return function (props) {
163
33
  return (
164
34
  /*#__PURE__*/
165
35
  // eslint-disable-next-line react/prop-types
166
- React.createElement(StateContext.Provider, {
36
+ React__default["default"].createElement(StateContext.Provider, {
167
37
  value: props.config
168
- }, /*#__PURE__*/React.createElement(RowComponent, props))
38
+ }, /*#__PURE__*/React__default["default"].createElement(RowComponent, props))
169
39
  );
170
40
  };
171
41
  };
172
42
  var useStateValue = function useStateValue() {
173
- return useContext(StateContext);
43
+ return React.useContext(StateContext);
174
44
  };
175
45
 
176
- /**
177
- * Checks if `value` is classified as an `Array` object.
178
- *
179
- * @static
180
- * @memberOf _
181
- * @since 0.1.0
182
- * @category Lang
183
- * @param {*} value The value to check.
184
- * @returns {boolean} Returns `true` if `value` is an array, else `false`.
185
- * @example
186
- *
187
- * _.isArray([1, 2, 3]);
188
- * // => true
189
- *
190
- * _.isArray(document.body.children);
191
- * // => false
192
- *
193
- * _.isArray('abc');
194
- * // => false
195
- *
196
- * _.isArray(_.noop);
197
- * // => false
198
- */
199
- var isArray = Array.isArray;
200
-
201
- var isArray_1 = isArray;
202
-
203
- /** Detect free variable `global` from Node.js. */
204
-
205
- var freeGlobal = typeof commonjsGlobal == 'object' && commonjsGlobal && commonjsGlobal.Object === Object && commonjsGlobal;
206
-
207
- var _freeGlobal = freeGlobal;
208
-
209
- /** Detect free variable `self`. */
210
- var freeSelf = typeof self == 'object' && self && self.Object === Object && self;
211
-
212
- /** Used as a reference to the global object. */
213
- var root = _freeGlobal || freeSelf || Function('return this')();
214
-
215
- var _root = root;
216
-
217
- /** Built-in value references. */
218
- var Symbol$1 = _root.Symbol;
219
-
220
- var _Symbol = Symbol$1;
221
-
222
- /** Used for built-in method references. */
223
- var objectProto$4 = Object.prototype;
224
-
225
- /** Used to check objects for own properties. */
226
- var hasOwnProperty$3 = objectProto$4.hasOwnProperty;
227
-
228
- /**
229
- * Used to resolve the
230
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
231
- * of values.
232
- */
233
- var nativeObjectToString$1 = objectProto$4.toString;
234
-
235
- /** Built-in value references. */
236
- var symToStringTag$1 = _Symbol ? _Symbol.toStringTag : undefined;
237
-
238
- /**
239
- * A specialized version of `baseGetTag` which ignores `Symbol.toStringTag` values.
240
- *
241
- * @private
242
- * @param {*} value The value to query.
243
- * @returns {string} Returns the raw `toStringTag`.
244
- */
245
- function getRawTag(value) {
246
- var isOwn = hasOwnProperty$3.call(value, symToStringTag$1),
247
- tag = value[symToStringTag$1];
248
-
249
- try {
250
- value[symToStringTag$1] = undefined;
251
- var unmasked = true;
252
- } catch (e) {}
253
-
254
- var result = nativeObjectToString$1.call(value);
255
- if (unmasked) {
256
- if (isOwn) {
257
- value[symToStringTag$1] = tag;
258
- } else {
259
- delete value[symToStringTag$1];
260
- }
261
- }
262
- return result;
263
- }
264
-
265
- var _getRawTag = getRawTag;
266
-
267
- /** Used for built-in method references. */
268
- var objectProto$3 = Object.prototype;
269
-
270
- /**
271
- * Used to resolve the
272
- * [`toStringTag`](http://ecma-international.org/ecma-262/7.0/#sec-object.prototype.tostring)
273
- * of values.
274
- */
275
- var nativeObjectToString = objectProto$3.toString;
276
-
277
- /**
278
- * Converts `value` to a string using `Object.prototype.toString`.
279
- *
280
- * @private
281
- * @param {*} value The value to convert.
282
- * @returns {string} Returns the converted string.
283
- */
284
- function objectToString(value) {
285
- return nativeObjectToString.call(value);
286
- }
287
-
288
- var _objectToString = objectToString;
289
-
290
- /** `Object#toString` result references. */
291
- var nullTag = '[object Null]',
292
- undefinedTag = '[object Undefined]';
293
-
294
- /** Built-in value references. */
295
- var symToStringTag = _Symbol ? _Symbol.toStringTag : undefined;
296
-
297
- /**
298
- * The base implementation of `getTag` without fallbacks for buggy environments.
299
- *
300
- * @private
301
- * @param {*} value The value to query.
302
- * @returns {string} Returns the `toStringTag`.
303
- */
304
- function baseGetTag(value) {
305
- if (value == null) {
306
- return value === undefined ? undefinedTag : nullTag;
307
- }
308
- return (symToStringTag && symToStringTag in Object(value))
309
- ? _getRawTag(value)
310
- : _objectToString(value);
311
- }
312
-
313
- var _baseGetTag = baseGetTag;
314
-
315
- /**
316
- * Checks if `value` is object-like. A value is object-like if it's not `null`
317
- * and has a `typeof` result of "object".
318
- *
319
- * @static
320
- * @memberOf _
321
- * @since 4.0.0
322
- * @category Lang
323
- * @param {*} value The value to check.
324
- * @returns {boolean} Returns `true` if `value` is object-like, else `false`.
325
- * @example
326
- *
327
- * _.isObjectLike({});
328
- * // => true
329
- *
330
- * _.isObjectLike([1, 2, 3]);
331
- * // => true
332
- *
333
- * _.isObjectLike(_.noop);
334
- * // => false
335
- *
336
- * _.isObjectLike(null);
337
- * // => false
338
- */
339
- function isObjectLike(value) {
340
- return value != null && typeof value == 'object';
341
- }
342
-
343
- var isObjectLike_1 = isObjectLike;
344
-
345
- /** `Object#toString` result references. */
346
- var symbolTag = '[object Symbol]';
347
-
348
- /**
349
- * Checks if `value` is classified as a `Symbol` primitive or object.
350
- *
351
- * @static
352
- * @memberOf _
353
- * @since 4.0.0
354
- * @category Lang
355
- * @param {*} value The value to check.
356
- * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.
357
- * @example
358
- *
359
- * _.isSymbol(Symbol.iterator);
360
- * // => true
361
- *
362
- * _.isSymbol('abc');
363
- * // => false
364
- */
365
- function isSymbol(value) {
366
- return typeof value == 'symbol' ||
367
- (isObjectLike_1(value) && _baseGetTag(value) == symbolTag);
368
- }
369
-
370
- var isSymbol_1 = isSymbol;
371
-
372
- /** Used to match property names within property paths. */
373
- var reIsDeepProp = /\.|\[(?:[^[\]]*|(["'])(?:(?!\1)[^\\]|\\.)*?\1)\]/,
374
- reIsPlainProp = /^\w*$/;
375
-
376
- /**
377
- * Checks if `value` is a property name and not a property path.
378
- *
379
- * @private
380
- * @param {*} value The value to check.
381
- * @param {Object} [object] The object to query keys on.
382
- * @returns {boolean} Returns `true` if `value` is a property name, else `false`.
383
- */
384
- function isKey(value, object) {
385
- if (isArray_1(value)) {
386
- return false;
387
- }
388
- var type = typeof value;
389
- if (type == 'number' || type == 'symbol' || type == 'boolean' ||
390
- value == null || isSymbol_1(value)) {
391
- return true;
392
- }
393
- return reIsPlainProp.test(value) || !reIsDeepProp.test(value) ||
394
- (object != null && value in Object(object));
395
- }
396
-
397
- var _isKey = isKey;
398
-
399
- /**
400
- * Checks if `value` is the
401
- * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)
402
- * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)
403
- *
404
- * @static
405
- * @memberOf _
406
- * @since 0.1.0
407
- * @category Lang
408
- * @param {*} value The value to check.
409
- * @returns {boolean} Returns `true` if `value` is an object, else `false`.
410
- * @example
411
- *
412
- * _.isObject({});
413
- * // => true
414
- *
415
- * _.isObject([1, 2, 3]);
416
- * // => true
417
- *
418
- * _.isObject(_.noop);
419
- * // => true
420
- *
421
- * _.isObject(null);
422
- * // => false
423
- */
424
- function isObject(value) {
425
- var type = typeof value;
426
- return value != null && (type == 'object' || type == 'function');
427
- }
428
-
429
- var isObject_1 = isObject;
430
-
431
- /** `Object#toString` result references. */
432
- var asyncTag = '[object AsyncFunction]',
433
- funcTag = '[object Function]',
434
- genTag = '[object GeneratorFunction]',
435
- proxyTag = '[object Proxy]';
436
-
437
- /**
438
- * Checks if `value` is classified as a `Function` object.
439
- *
440
- * @static
441
- * @memberOf _
442
- * @since 0.1.0
443
- * @category Lang
444
- * @param {*} value The value to check.
445
- * @returns {boolean} Returns `true` if `value` is a function, else `false`.
446
- * @example
447
- *
448
- * _.isFunction(_);
449
- * // => true
450
- *
451
- * _.isFunction(/abc/);
452
- * // => false
453
- */
454
- function isFunction(value) {
455
- if (!isObject_1(value)) {
456
- return false;
457
- }
458
- // The use of `Object#toString` avoids issues with the `typeof` operator
459
- // in Safari 9 which returns 'object' for typed arrays and other constructors.
460
- var tag = _baseGetTag(value);
461
- return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;
462
- }
463
-
464
- var isFunction_1 = isFunction;
465
-
466
- /** Used to detect overreaching core-js shims. */
467
- var coreJsData = _root['__core-js_shared__'];
468
-
469
- var _coreJsData = coreJsData;
470
-
471
- /** Used to detect methods masquerading as native. */
472
- var maskSrcKey = (function() {
473
- var uid = /[^.]+$/.exec(_coreJsData && _coreJsData.keys && _coreJsData.keys.IE_PROTO || '');
474
- return uid ? ('Symbol(src)_1.' + uid) : '';
475
- }());
476
-
477
- /**
478
- * Checks if `func` has its source masked.
479
- *
480
- * @private
481
- * @param {Function} func The function to check.
482
- * @returns {boolean} Returns `true` if `func` is masked, else `false`.
483
- */
484
- function isMasked(func) {
485
- return !!maskSrcKey && (maskSrcKey in func);
486
- }
487
-
488
- var _isMasked = isMasked;
489
-
490
- /** Used for built-in method references. */
491
- var funcProto$1 = Function.prototype;
492
-
493
- /** Used to resolve the decompiled source of functions. */
494
- var funcToString$1 = funcProto$1.toString;
495
-
496
- /**
497
- * Converts `func` to its source code.
498
- *
499
- * @private
500
- * @param {Function} func The function to convert.
501
- * @returns {string} Returns the source code.
502
- */
503
- function toSource(func) {
504
- if (func != null) {
505
- try {
506
- return funcToString$1.call(func);
507
- } catch (e) {}
508
- try {
509
- return (func + '');
510
- } catch (e) {}
511
- }
512
- return '';
513
- }
514
-
515
- var _toSource = toSource;
516
-
517
- /**
518
- * Used to match `RegExp`
519
- * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).
520
- */
521
- var reRegExpChar = /[\\^$.*+?()[\]{}|]/g;
522
-
523
- /** Used to detect host constructors (Safari). */
524
- var reIsHostCtor = /^\[object .+?Constructor\]$/;
525
-
526
- /** Used for built-in method references. */
527
- var funcProto = Function.prototype,
528
- objectProto$2 = Object.prototype;
529
-
530
- /** Used to resolve the decompiled source of functions. */
531
- var funcToString = funcProto.toString;
532
-
533
- /** Used to check objects for own properties. */
534
- var hasOwnProperty$2 = objectProto$2.hasOwnProperty;
535
-
536
- /** Used to detect if a method is native. */
537
- var reIsNative = RegExp('^' +
538
- funcToString.call(hasOwnProperty$2).replace(reRegExpChar, '\\$&')
539
- .replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, '$1.*?') + '$'
540
- );
541
-
542
- /**
543
- * The base implementation of `_.isNative` without bad shim checks.
544
- *
545
- * @private
546
- * @param {*} value The value to check.
547
- * @returns {boolean} Returns `true` if `value` is a native function,
548
- * else `false`.
549
- */
550
- function baseIsNative(value) {
551
- if (!isObject_1(value) || _isMasked(value)) {
552
- return false;
553
- }
554
- var pattern = isFunction_1(value) ? reIsNative : reIsHostCtor;
555
- return pattern.test(_toSource(value));
556
- }
557
-
558
- var _baseIsNative = baseIsNative;
559
-
560
- /**
561
- * Gets the value at `key` of `object`.
562
- *
563
- * @private
564
- * @param {Object} [object] The object to query.
565
- * @param {string} key The key of the property to get.
566
- * @returns {*} Returns the property value.
567
- */
568
- function getValue(object, key) {
569
- return object == null ? undefined : object[key];
570
- }
571
-
572
- var _getValue = getValue;
573
-
574
- /**
575
- * Gets the native function at `key` of `object`.
576
- *
577
- * @private
578
- * @param {Object} object The object to query.
579
- * @param {string} key The key of the method to get.
580
- * @returns {*} Returns the function if it's native, else `undefined`.
581
- */
582
- function getNative(object, key) {
583
- var value = _getValue(object, key);
584
- return _baseIsNative(value) ? value : undefined;
585
- }
586
-
587
- var _getNative = getNative;
588
-
589
- /* Built-in method references that are verified to be native. */
590
- var nativeCreate = _getNative(Object, 'create');
591
-
592
- var _nativeCreate = nativeCreate;
593
-
594
- /**
595
- * Removes all key-value entries from the hash.
596
- *
597
- * @private
598
- * @name clear
599
- * @memberOf Hash
600
- */
601
- function hashClear() {
602
- this.__data__ = _nativeCreate ? _nativeCreate(null) : {};
603
- this.size = 0;
604
- }
605
-
606
- var _hashClear = hashClear;
607
-
608
- /**
609
- * Removes `key` and its value from the hash.
610
- *
611
- * @private
612
- * @name delete
613
- * @memberOf Hash
614
- * @param {Object} hash The hash to modify.
615
- * @param {string} key The key of the value to remove.
616
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
617
- */
618
- function hashDelete(key) {
619
- var result = this.has(key) && delete this.__data__[key];
620
- this.size -= result ? 1 : 0;
621
- return result;
622
- }
623
-
624
- var _hashDelete = hashDelete;
625
-
626
- /** Used to stand-in for `undefined` hash values. */
627
- var HASH_UNDEFINED$1 = '__lodash_hash_undefined__';
628
-
629
- /** Used for built-in method references. */
630
- var objectProto$1 = Object.prototype;
631
-
632
- /** Used to check objects for own properties. */
633
- var hasOwnProperty$1 = objectProto$1.hasOwnProperty;
634
-
635
- /**
636
- * Gets the hash value for `key`.
637
- *
638
- * @private
639
- * @name get
640
- * @memberOf Hash
641
- * @param {string} key The key of the value to get.
642
- * @returns {*} Returns the entry value.
643
- */
644
- function hashGet(key) {
645
- var data = this.__data__;
646
- if (_nativeCreate) {
647
- var result = data[key];
648
- return result === HASH_UNDEFINED$1 ? undefined : result;
649
- }
650
- return hasOwnProperty$1.call(data, key) ? data[key] : undefined;
651
- }
652
-
653
- var _hashGet = hashGet;
654
-
655
- /** Used for built-in method references. */
656
- var objectProto = Object.prototype;
657
-
658
- /** Used to check objects for own properties. */
659
- var hasOwnProperty = objectProto.hasOwnProperty;
660
-
661
- /**
662
- * Checks if a hash value for `key` exists.
663
- *
664
- * @private
665
- * @name has
666
- * @memberOf Hash
667
- * @param {string} key The key of the entry to check.
668
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
669
- */
670
- function hashHas(key) {
671
- var data = this.__data__;
672
- return _nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);
673
- }
674
-
675
- var _hashHas = hashHas;
676
-
677
- /** Used to stand-in for `undefined` hash values. */
678
- var HASH_UNDEFINED = '__lodash_hash_undefined__';
679
-
680
- /**
681
- * Sets the hash `key` to `value`.
682
- *
683
- * @private
684
- * @name set
685
- * @memberOf Hash
686
- * @param {string} key The key of the value to set.
687
- * @param {*} value The value to set.
688
- * @returns {Object} Returns the hash instance.
689
- */
690
- function hashSet(key, value) {
691
- var data = this.__data__;
692
- this.size += this.has(key) ? 0 : 1;
693
- data[key] = (_nativeCreate && value === undefined) ? HASH_UNDEFINED : value;
694
- return this;
695
- }
696
-
697
- var _hashSet = hashSet;
698
-
699
- /**
700
- * Creates a hash object.
701
- *
702
- * @private
703
- * @constructor
704
- * @param {Array} [entries] The key-value pairs to cache.
705
- */
706
- function Hash(entries) {
707
- var index = -1,
708
- length = entries == null ? 0 : entries.length;
709
-
710
- this.clear();
711
- while (++index < length) {
712
- var entry = entries[index];
713
- this.set(entry[0], entry[1]);
714
- }
715
- }
716
-
717
- // Add methods to `Hash`.
718
- Hash.prototype.clear = _hashClear;
719
- Hash.prototype['delete'] = _hashDelete;
720
- Hash.prototype.get = _hashGet;
721
- Hash.prototype.has = _hashHas;
722
- Hash.prototype.set = _hashSet;
723
-
724
- var _Hash = Hash;
725
-
726
- /**
727
- * Removes all key-value entries from the list cache.
728
- *
729
- * @private
730
- * @name clear
731
- * @memberOf ListCache
732
- */
733
- function listCacheClear() {
734
- this.__data__ = [];
735
- this.size = 0;
736
- }
737
-
738
- var _listCacheClear = listCacheClear;
739
-
740
- /**
741
- * Performs a
742
- * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)
743
- * comparison between two values to determine if they are equivalent.
744
- *
745
- * @static
746
- * @memberOf _
747
- * @since 4.0.0
748
- * @category Lang
749
- * @param {*} value The value to compare.
750
- * @param {*} other The other value to compare.
751
- * @returns {boolean} Returns `true` if the values are equivalent, else `false`.
752
- * @example
753
- *
754
- * var object = { 'a': 1 };
755
- * var other = { 'a': 1 };
756
- *
757
- * _.eq(object, object);
758
- * // => true
759
- *
760
- * _.eq(object, other);
761
- * // => false
762
- *
763
- * _.eq('a', 'a');
764
- * // => true
765
- *
766
- * _.eq('a', Object('a'));
767
- * // => false
768
- *
769
- * _.eq(NaN, NaN);
770
- * // => true
771
- */
772
- function eq(value, other) {
773
- return value === other || (value !== value && other !== other);
774
- }
775
-
776
- var eq_1 = eq;
777
-
778
- /**
779
- * Gets the index at which the `key` is found in `array` of key-value pairs.
780
- *
781
- * @private
782
- * @param {Array} array The array to inspect.
783
- * @param {*} key The key to search for.
784
- * @returns {number} Returns the index of the matched value, else `-1`.
785
- */
786
- function assocIndexOf(array, key) {
787
- var length = array.length;
788
- while (length--) {
789
- if (eq_1(array[length][0], key)) {
790
- return length;
791
- }
792
- }
793
- return -1;
794
- }
795
-
796
- var _assocIndexOf = assocIndexOf;
797
-
798
- /** Used for built-in method references. */
799
- var arrayProto = Array.prototype;
800
-
801
- /** Built-in value references. */
802
- var splice = arrayProto.splice;
803
-
804
- /**
805
- * Removes `key` and its value from the list cache.
806
- *
807
- * @private
808
- * @name delete
809
- * @memberOf ListCache
810
- * @param {string} key The key of the value to remove.
811
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
812
- */
813
- function listCacheDelete(key) {
814
- var data = this.__data__,
815
- index = _assocIndexOf(data, key);
816
-
817
- if (index < 0) {
818
- return false;
819
- }
820
- var lastIndex = data.length - 1;
821
- if (index == lastIndex) {
822
- data.pop();
823
- } else {
824
- splice.call(data, index, 1);
825
- }
826
- --this.size;
827
- return true;
828
- }
829
-
830
- var _listCacheDelete = listCacheDelete;
831
-
832
- /**
833
- * Gets the list cache value for `key`.
834
- *
835
- * @private
836
- * @name get
837
- * @memberOf ListCache
838
- * @param {string} key The key of the value to get.
839
- * @returns {*} Returns the entry value.
840
- */
841
- function listCacheGet(key) {
842
- var data = this.__data__,
843
- index = _assocIndexOf(data, key);
844
-
845
- return index < 0 ? undefined : data[index][1];
846
- }
847
-
848
- var _listCacheGet = listCacheGet;
849
-
850
- /**
851
- * Checks if a list cache value for `key` exists.
852
- *
853
- * @private
854
- * @name has
855
- * @memberOf ListCache
856
- * @param {string} key The key of the entry to check.
857
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
858
- */
859
- function listCacheHas(key) {
860
- return _assocIndexOf(this.__data__, key) > -1;
861
- }
862
-
863
- var _listCacheHas = listCacheHas;
864
-
865
- /**
866
- * Sets the list cache `key` to `value`.
867
- *
868
- * @private
869
- * @name set
870
- * @memberOf ListCache
871
- * @param {string} key The key of the value to set.
872
- * @param {*} value The value to set.
873
- * @returns {Object} Returns the list cache instance.
874
- */
875
- function listCacheSet(key, value) {
876
- var data = this.__data__,
877
- index = _assocIndexOf(data, key);
878
-
879
- if (index < 0) {
880
- ++this.size;
881
- data.push([key, value]);
882
- } else {
883
- data[index][1] = value;
884
- }
885
- return this;
886
- }
887
-
888
- var _listCacheSet = listCacheSet;
889
-
890
- /**
891
- * Creates an list cache object.
892
- *
893
- * @private
894
- * @constructor
895
- * @param {Array} [entries] The key-value pairs to cache.
896
- */
897
- function ListCache(entries) {
898
- var index = -1,
899
- length = entries == null ? 0 : entries.length;
900
-
901
- this.clear();
902
- while (++index < length) {
903
- var entry = entries[index];
904
- this.set(entry[0], entry[1]);
905
- }
906
- }
907
-
908
- // Add methods to `ListCache`.
909
- ListCache.prototype.clear = _listCacheClear;
910
- ListCache.prototype['delete'] = _listCacheDelete;
911
- ListCache.prototype.get = _listCacheGet;
912
- ListCache.prototype.has = _listCacheHas;
913
- ListCache.prototype.set = _listCacheSet;
914
-
915
- var _ListCache = ListCache;
916
-
917
- /* Built-in method references that are verified to be native. */
918
- var Map = _getNative(_root, 'Map');
919
-
920
- var _Map = Map;
921
-
922
- /**
923
- * Removes all key-value entries from the map.
924
- *
925
- * @private
926
- * @name clear
927
- * @memberOf MapCache
928
- */
929
- function mapCacheClear() {
930
- this.size = 0;
931
- this.__data__ = {
932
- 'hash': new _Hash,
933
- 'map': new (_Map || _ListCache),
934
- 'string': new _Hash
935
- };
936
- }
937
-
938
- var _mapCacheClear = mapCacheClear;
939
-
940
- /**
941
- * Checks if `value` is suitable for use as unique object key.
942
- *
943
- * @private
944
- * @param {*} value The value to check.
945
- * @returns {boolean} Returns `true` if `value` is suitable, else `false`.
946
- */
947
- function isKeyable(value) {
948
- var type = typeof value;
949
- return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')
950
- ? (value !== '__proto__')
951
- : (value === null);
952
- }
953
-
954
- var _isKeyable = isKeyable;
955
-
956
- /**
957
- * Gets the data for `map`.
958
- *
959
- * @private
960
- * @param {Object} map The map to query.
961
- * @param {string} key The reference key.
962
- * @returns {*} Returns the map data.
963
- */
964
- function getMapData(map, key) {
965
- var data = map.__data__;
966
- return _isKeyable(key)
967
- ? data[typeof key == 'string' ? 'string' : 'hash']
968
- : data.map;
969
- }
970
-
971
- var _getMapData = getMapData;
972
-
973
- /**
974
- * Removes `key` and its value from the map.
975
- *
976
- * @private
977
- * @name delete
978
- * @memberOf MapCache
979
- * @param {string} key The key of the value to remove.
980
- * @returns {boolean} Returns `true` if the entry was removed, else `false`.
981
- */
982
- function mapCacheDelete(key) {
983
- var result = _getMapData(this, key)['delete'](key);
984
- this.size -= result ? 1 : 0;
985
- return result;
986
- }
987
-
988
- var _mapCacheDelete = mapCacheDelete;
989
-
990
- /**
991
- * Gets the map value for `key`.
992
- *
993
- * @private
994
- * @name get
995
- * @memberOf MapCache
996
- * @param {string} key The key of the value to get.
997
- * @returns {*} Returns the entry value.
998
- */
999
- function mapCacheGet(key) {
1000
- return _getMapData(this, key).get(key);
1001
- }
1002
-
1003
- var _mapCacheGet = mapCacheGet;
1004
-
1005
- /**
1006
- * Checks if a map value for `key` exists.
1007
- *
1008
- * @private
1009
- * @name has
1010
- * @memberOf MapCache
1011
- * @param {string} key The key of the entry to check.
1012
- * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.
1013
- */
1014
- function mapCacheHas(key) {
1015
- return _getMapData(this, key).has(key);
1016
- }
1017
-
1018
- var _mapCacheHas = mapCacheHas;
1019
-
1020
- /**
1021
- * Sets the map `key` to `value`.
1022
- *
1023
- * @private
1024
- * @name set
1025
- * @memberOf MapCache
1026
- * @param {string} key The key of the value to set.
1027
- * @param {*} value The value to set.
1028
- * @returns {Object} Returns the map cache instance.
1029
- */
1030
- function mapCacheSet(key, value) {
1031
- var data = _getMapData(this, key),
1032
- size = data.size;
1033
-
1034
- data.set(key, value);
1035
- this.size += data.size == size ? 0 : 1;
1036
- return this;
1037
- }
1038
-
1039
- var _mapCacheSet = mapCacheSet;
1040
-
1041
- /**
1042
- * Creates a map cache object to store key-value pairs.
1043
- *
1044
- * @private
1045
- * @constructor
1046
- * @param {Array} [entries] The key-value pairs to cache.
1047
- */
1048
- function MapCache(entries) {
1049
- var index = -1,
1050
- length = entries == null ? 0 : entries.length;
1051
-
1052
- this.clear();
1053
- while (++index < length) {
1054
- var entry = entries[index];
1055
- this.set(entry[0], entry[1]);
1056
- }
1057
- }
1058
-
1059
- // Add methods to `MapCache`.
1060
- MapCache.prototype.clear = _mapCacheClear;
1061
- MapCache.prototype['delete'] = _mapCacheDelete;
1062
- MapCache.prototype.get = _mapCacheGet;
1063
- MapCache.prototype.has = _mapCacheHas;
1064
- MapCache.prototype.set = _mapCacheSet;
1065
-
1066
- var _MapCache = MapCache;
1067
-
1068
- /** Error message constants. */
1069
- var FUNC_ERROR_TEXT = 'Expected a function';
1070
-
1071
- /**
1072
- * Creates a function that memoizes the result of `func`. If `resolver` is
1073
- * provided, it determines the cache key for storing the result based on the
1074
- * arguments provided to the memoized function. By default, the first argument
1075
- * provided to the memoized function is used as the map cache key. The `func`
1076
- * is invoked with the `this` binding of the memoized function.
1077
- *
1078
- * **Note:** The cache is exposed as the `cache` property on the memoized
1079
- * function. Its creation may be customized by replacing the `_.memoize.Cache`
1080
- * constructor with one whose instances implement the
1081
- * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)
1082
- * method interface of `clear`, `delete`, `get`, `has`, and `set`.
1083
- *
1084
- * @static
1085
- * @memberOf _
1086
- * @since 0.1.0
1087
- * @category Function
1088
- * @param {Function} func The function to have its output memoized.
1089
- * @param {Function} [resolver] The function to resolve the cache key.
1090
- * @returns {Function} Returns the new memoized function.
1091
- * @example
1092
- *
1093
- * var object = { 'a': 1, 'b': 2 };
1094
- * var other = { 'c': 3, 'd': 4 };
1095
- *
1096
- * var values = _.memoize(_.values);
1097
- * values(object);
1098
- * // => [1, 2]
1099
- *
1100
- * values(other);
1101
- * // => [3, 4]
1102
- *
1103
- * object.a = 2;
1104
- * values(object);
1105
- * // => [1, 2]
1106
- *
1107
- * // Modify the result cache.
1108
- * values.cache.set(object, ['a', 'b']);
1109
- * values(object);
1110
- * // => ['a', 'b']
1111
- *
1112
- * // Replace `_.memoize.Cache`.
1113
- * _.memoize.Cache = WeakMap;
1114
- */
1115
- function memoize(func, resolver) {
1116
- if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {
1117
- throw new TypeError(FUNC_ERROR_TEXT);
1118
- }
1119
- var memoized = function() {
1120
- var args = arguments,
1121
- key = resolver ? resolver.apply(this, args) : args[0],
1122
- cache = memoized.cache;
1123
-
1124
- if (cache.has(key)) {
1125
- return cache.get(key);
1126
- }
1127
- var result = func.apply(this, args);
1128
- memoized.cache = cache.set(key, result) || cache;
1129
- return result;
1130
- };
1131
- memoized.cache = new (memoize.Cache || _MapCache);
1132
- return memoized;
1133
- }
1134
-
1135
- // Expose `MapCache`.
1136
- memoize.Cache = _MapCache;
1137
-
1138
- var memoize_1 = memoize;
1139
-
1140
- /** Used as the maximum memoize cache size. */
1141
- var MAX_MEMOIZE_SIZE = 500;
1142
-
1143
- /**
1144
- * A specialized version of `_.memoize` which clears the memoized function's
1145
- * cache when it exceeds `MAX_MEMOIZE_SIZE`.
1146
- *
1147
- * @private
1148
- * @param {Function} func The function to have its output memoized.
1149
- * @returns {Function} Returns the new memoized function.
1150
- */
1151
- function memoizeCapped(func) {
1152
- var result = memoize_1(func, function(key) {
1153
- if (cache.size === MAX_MEMOIZE_SIZE) {
1154
- cache.clear();
1155
- }
1156
- return key;
1157
- });
1158
-
1159
- var cache = result.cache;
1160
- return result;
1161
- }
1162
-
1163
- var _memoizeCapped = memoizeCapped;
1164
-
1165
- /** Used to match property names within property paths. */
1166
- var rePropName = /[^.[\]]+|\[(?:(-?\d+(?:\.\d+)?)|(["'])((?:(?!\2)[^\\]|\\.)*?)\2)\]|(?=(?:\.|\[\])(?:\.|\[\]|$))/g;
1167
-
1168
- /** Used to match backslashes in property paths. */
1169
- var reEscapeChar = /\\(\\)?/g;
1170
-
1171
- /**
1172
- * Converts `string` to a property path array.
1173
- *
1174
- * @private
1175
- * @param {string} string The string to convert.
1176
- * @returns {Array} Returns the property path array.
1177
- */
1178
- var stringToPath = _memoizeCapped(function(string) {
1179
- var result = [];
1180
- if (string.charCodeAt(0) === 46 /* . */) {
1181
- result.push('');
1182
- }
1183
- string.replace(rePropName, function(match, number, quote, subString) {
1184
- result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));
1185
- });
1186
- return result;
1187
- });
1188
-
1189
- var _stringToPath = stringToPath;
1190
-
1191
- /**
1192
- * A specialized version of `_.map` for arrays without support for iteratee
1193
- * shorthands.
1194
- *
1195
- * @private
1196
- * @param {Array} [array] The array to iterate over.
1197
- * @param {Function} iteratee The function invoked per iteration.
1198
- * @returns {Array} Returns the new mapped array.
1199
- */
1200
- function arrayMap(array, iteratee) {
1201
- var index = -1,
1202
- length = array == null ? 0 : array.length,
1203
- result = Array(length);
1204
-
1205
- while (++index < length) {
1206
- result[index] = iteratee(array[index], index, array);
1207
- }
1208
- return result;
1209
- }
1210
-
1211
- var _arrayMap = arrayMap;
1212
-
1213
- /** Used as references for various `Number` constants. */
1214
- var INFINITY$1 = 1 / 0;
1215
-
1216
- /** Used to convert symbols to primitives and strings. */
1217
- var symbolProto = _Symbol ? _Symbol.prototype : undefined,
1218
- symbolToString = symbolProto ? symbolProto.toString : undefined;
1219
-
1220
- /**
1221
- * The base implementation of `_.toString` which doesn't convert nullish
1222
- * values to empty strings.
1223
- *
1224
- * @private
1225
- * @param {*} value The value to process.
1226
- * @returns {string} Returns the string.
1227
- */
1228
- function baseToString(value) {
1229
- // Exit early for strings to avoid a performance hit in some environments.
1230
- if (typeof value == 'string') {
1231
- return value;
1232
- }
1233
- if (isArray_1(value)) {
1234
- // Recursively convert values (susceptible to call stack limits).
1235
- return _arrayMap(value, baseToString) + '';
1236
- }
1237
- if (isSymbol_1(value)) {
1238
- return symbolToString ? symbolToString.call(value) : '';
1239
- }
1240
- var result = (value + '');
1241
- return (result == '0' && (1 / value) == -INFINITY$1) ? '-0' : result;
1242
- }
1243
-
1244
- var _baseToString = baseToString;
1245
-
1246
- /**
1247
- * Converts `value` to a string. An empty string is returned for `null`
1248
- * and `undefined` values. The sign of `-0` is preserved.
1249
- *
1250
- * @static
1251
- * @memberOf _
1252
- * @since 4.0.0
1253
- * @category Lang
1254
- * @param {*} value The value to convert.
1255
- * @returns {string} Returns the converted string.
1256
- * @example
1257
- *
1258
- * _.toString(null);
1259
- * // => ''
1260
- *
1261
- * _.toString(-0);
1262
- * // => '-0'
1263
- *
1264
- * _.toString([1, 2, 3]);
1265
- * // => '1,2,3'
1266
- */
1267
- function toString(value) {
1268
- return value == null ? '' : _baseToString(value);
1269
- }
1270
-
1271
- var toString_1 = toString;
1272
-
1273
- /**
1274
- * Casts `value` to a path array if it's not one.
1275
- *
1276
- * @private
1277
- * @param {*} value The value to inspect.
1278
- * @param {Object} [object] The object to query keys on.
1279
- * @returns {Array} Returns the cast property path array.
1280
- */
1281
- function castPath(value, object) {
1282
- if (isArray_1(value)) {
1283
- return value;
1284
- }
1285
- return _isKey(value, object) ? [value] : _stringToPath(toString_1(value));
1286
- }
1287
-
1288
- var _castPath = castPath;
1289
-
1290
- /** Used as references for various `Number` constants. */
1291
- var INFINITY = 1 / 0;
1292
-
1293
- /**
1294
- * Converts `value` to a string key if it's not a string or symbol.
1295
- *
1296
- * @private
1297
- * @param {*} value The value to inspect.
1298
- * @returns {string|symbol} Returns the key.
1299
- */
1300
- function toKey(value) {
1301
- if (typeof value == 'string' || isSymbol_1(value)) {
1302
- return value;
1303
- }
1304
- var result = (value + '');
1305
- return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;
1306
- }
1307
-
1308
- var _toKey = toKey;
1309
-
1310
- /**
1311
- * The base implementation of `_.get` without support for default values.
1312
- *
1313
- * @private
1314
- * @param {Object} object The object to query.
1315
- * @param {Array|string} path The path of the property to get.
1316
- * @returns {*} Returns the resolved value.
1317
- */
1318
- function baseGet(object, path) {
1319
- path = _castPath(path, object);
1320
-
1321
- var index = 0,
1322
- length = path.length;
1323
-
1324
- while (object != null && index < length) {
1325
- object = object[_toKey(path[index++])];
1326
- }
1327
- return (index && index == length) ? object : undefined;
1328
- }
1329
-
1330
- var _baseGet = baseGet;
1331
-
1332
- /**
1333
- * Gets the value at `path` of `object`. If the resolved value is
1334
- * `undefined`, the `defaultValue` is returned in its place.
1335
- *
1336
- * @static
1337
- * @memberOf _
1338
- * @since 3.7.0
1339
- * @category Object
1340
- * @param {Object} object The object to query.
1341
- * @param {Array|string} path The path of the property to get.
1342
- * @param {*} [defaultValue] The value returned for `undefined` resolved values.
1343
- * @returns {*} Returns the resolved value.
1344
- * @example
1345
- *
1346
- * var object = { 'a': [{ 'b': { 'c': 3 } }] };
1347
- *
1348
- * _.get(object, 'a[0].b.c');
1349
- * // => 3
1350
- *
1351
- * _.get(object, ['a', '0', 'b', 'c']);
1352
- * // => 3
1353
- *
1354
- * _.get(object, 'a.b.c', 'default');
1355
- * // => 'default'
1356
- */
1357
- function get(object, path, defaultValue) {
1358
- var result = object == null ? undefined : _baseGet(object, path);
1359
- return result === undefined ? defaultValue : result;
1360
- }
1361
-
1362
- var get_1 = get;
1363
-
1364
- function _typeof(obj) {
1365
- "@babel/helpers - typeof";
1366
-
1367
- return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) {
1368
- return typeof obj;
1369
- } : function (obj) {
1370
- return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj;
1371
- }, _typeof(obj);
1372
- }
1373
-
1374
- /**
1375
- * Copyright (c) 2014-present, Facebook, Inc.
1376
- *
1377
- * This source code is licensed under the MIT license found in the
1378
- * LICENSE file in the root directory of this source tree.
1379
- */
1380
-
1381
- createCommonjsModule(function (module) {
1382
- var runtime = (function (exports) {
1383
-
1384
- var Op = Object.prototype;
1385
- var hasOwn = Op.hasOwnProperty;
1386
- var undefined$1; // More compressible than void 0.
1387
- var $Symbol = typeof Symbol === "function" ? Symbol : {};
1388
- var iteratorSymbol = $Symbol.iterator || "@@iterator";
1389
- var asyncIteratorSymbol = $Symbol.asyncIterator || "@@asyncIterator";
1390
- var toStringTagSymbol = $Symbol.toStringTag || "@@toStringTag";
1391
-
1392
- function define(obj, key, value) {
1393
- Object.defineProperty(obj, key, {
1394
- value: value,
1395
- enumerable: true,
1396
- configurable: true,
1397
- writable: true
1398
- });
1399
- return obj[key];
1400
- }
1401
- try {
1402
- // IE 8 has a broken Object.defineProperty that only works on DOM objects.
1403
- define({}, "");
1404
- } catch (err) {
1405
- define = function(obj, key, value) {
1406
- return obj[key] = value;
1407
- };
1408
- }
1409
-
1410
- function wrap(innerFn, outerFn, self, tryLocsList) {
1411
- // If outerFn provided and outerFn.prototype is a Generator, then outerFn.prototype instanceof Generator.
1412
- var protoGenerator = outerFn && outerFn.prototype instanceof Generator ? outerFn : Generator;
1413
- var generator = Object.create(protoGenerator.prototype);
1414
- var context = new Context(tryLocsList || []);
1415
-
1416
- // The ._invoke method unifies the implementations of the .next,
1417
- // .throw, and .return methods.
1418
- generator._invoke = makeInvokeMethod(innerFn, self, context);
1419
-
1420
- return generator;
1421
- }
1422
- exports.wrap = wrap;
1423
-
1424
- // Try/catch helper to minimize deoptimizations. Returns a completion
1425
- // record like context.tryEntries[i].completion. This interface could
1426
- // have been (and was previously) designed to take a closure to be
1427
- // invoked without arguments, but in all the cases we care about we
1428
- // already have an existing method we want to call, so there's no need
1429
- // to create a new function object. We can even get away with assuming
1430
- // the method takes exactly one argument, since that happens to be true
1431
- // in every case, so we don't have to touch the arguments object. The
1432
- // only additional allocation required is the completion record, which
1433
- // has a stable shape and so hopefully should be cheap to allocate.
1434
- function tryCatch(fn, obj, arg) {
1435
- try {
1436
- return { type: "normal", arg: fn.call(obj, arg) };
1437
- } catch (err) {
1438
- return { type: "throw", arg: err };
1439
- }
1440
- }
1441
-
1442
- var GenStateSuspendedStart = "suspendedStart";
1443
- var GenStateSuspendedYield = "suspendedYield";
1444
- var GenStateExecuting = "executing";
1445
- var GenStateCompleted = "completed";
1446
-
1447
- // Returning this object from the innerFn has the same effect as
1448
- // breaking out of the dispatch switch statement.
1449
- var ContinueSentinel = {};
1450
-
1451
- // Dummy constructor functions that we use as the .constructor and
1452
- // .constructor.prototype properties for functions that return Generator
1453
- // objects. For full spec compliance, you may wish to configure your
1454
- // minifier not to mangle the names of these two functions.
1455
- function Generator() {}
1456
- function GeneratorFunction() {}
1457
- function GeneratorFunctionPrototype() {}
1458
-
1459
- // This is a polyfill for %IteratorPrototype% for environments that
1460
- // don't natively support it.
1461
- var IteratorPrototype = {};
1462
- define(IteratorPrototype, iteratorSymbol, function () {
1463
- return this;
1464
- });
1465
-
1466
- var getProto = Object.getPrototypeOf;
1467
- var NativeIteratorPrototype = getProto && getProto(getProto(values([])));
1468
- if (NativeIteratorPrototype &&
1469
- NativeIteratorPrototype !== Op &&
1470
- hasOwn.call(NativeIteratorPrototype, iteratorSymbol)) {
1471
- // This environment has a native %IteratorPrototype%; use it instead
1472
- // of the polyfill.
1473
- IteratorPrototype = NativeIteratorPrototype;
1474
- }
1475
-
1476
- var Gp = GeneratorFunctionPrototype.prototype =
1477
- Generator.prototype = Object.create(IteratorPrototype);
1478
- GeneratorFunction.prototype = GeneratorFunctionPrototype;
1479
- define(Gp, "constructor", GeneratorFunctionPrototype);
1480
- define(GeneratorFunctionPrototype, "constructor", GeneratorFunction);
1481
- GeneratorFunction.displayName = define(
1482
- GeneratorFunctionPrototype,
1483
- toStringTagSymbol,
1484
- "GeneratorFunction"
1485
- );
1486
-
1487
- // Helper for defining the .next, .throw, and .return methods of the
1488
- // Iterator interface in terms of a single ._invoke method.
1489
- function defineIteratorMethods(prototype) {
1490
- ["next", "throw", "return"].forEach(function(method) {
1491
- define(prototype, method, function(arg) {
1492
- return this._invoke(method, arg);
1493
- });
1494
- });
1495
- }
1496
-
1497
- exports.isGeneratorFunction = function(genFun) {
1498
- var ctor = typeof genFun === "function" && genFun.constructor;
1499
- return ctor
1500
- ? ctor === GeneratorFunction ||
1501
- // For the native GeneratorFunction constructor, the best we can
1502
- // do is to check its .name property.
1503
- (ctor.displayName || ctor.name) === "GeneratorFunction"
1504
- : false;
1505
- };
1506
-
1507
- exports.mark = function(genFun) {
1508
- if (Object.setPrototypeOf) {
1509
- Object.setPrototypeOf(genFun, GeneratorFunctionPrototype);
1510
- } else {
1511
- genFun.__proto__ = GeneratorFunctionPrototype;
1512
- define(genFun, toStringTagSymbol, "GeneratorFunction");
1513
- }
1514
- genFun.prototype = Object.create(Gp);
1515
- return genFun;
1516
- };
1517
-
1518
- // Within the body of any async function, `await x` is transformed to
1519
- // `yield regeneratorRuntime.awrap(x)`, so that the runtime can test
1520
- // `hasOwn.call(value, "__await")` to determine if the yielded value is
1521
- // meant to be awaited.
1522
- exports.awrap = function(arg) {
1523
- return { __await: arg };
1524
- };
1525
-
1526
- function AsyncIterator(generator, PromiseImpl) {
1527
- function invoke(method, arg, resolve, reject) {
1528
- var record = tryCatch(generator[method], generator, arg);
1529
- if (record.type === "throw") {
1530
- reject(record.arg);
1531
- } else {
1532
- var result = record.arg;
1533
- var value = result.value;
1534
- if (value &&
1535
- typeof value === "object" &&
1536
- hasOwn.call(value, "__await")) {
1537
- return PromiseImpl.resolve(value.__await).then(function(value) {
1538
- invoke("next", value, resolve, reject);
1539
- }, function(err) {
1540
- invoke("throw", err, resolve, reject);
1541
- });
1542
- }
1543
-
1544
- return PromiseImpl.resolve(value).then(function(unwrapped) {
1545
- // When a yielded Promise is resolved, its final value becomes
1546
- // the .value of the Promise<{value,done}> result for the
1547
- // current iteration.
1548
- result.value = unwrapped;
1549
- resolve(result);
1550
- }, function(error) {
1551
- // If a rejected Promise was yielded, throw the rejection back
1552
- // into the async generator function so it can be handled there.
1553
- return invoke("throw", error, resolve, reject);
1554
- });
1555
- }
1556
- }
1557
-
1558
- var previousPromise;
1559
-
1560
- function enqueue(method, arg) {
1561
- function callInvokeWithMethodAndArg() {
1562
- return new PromiseImpl(function(resolve, reject) {
1563
- invoke(method, arg, resolve, reject);
1564
- });
1565
- }
1566
-
1567
- return previousPromise =
1568
- // If enqueue has been called before, then we want to wait until
1569
- // all previous Promises have been resolved before calling invoke,
1570
- // so that results are always delivered in the correct order. If
1571
- // enqueue has not been called before, then it is important to
1572
- // call invoke immediately, without waiting on a callback to fire,
1573
- // so that the async generator function has the opportunity to do
1574
- // any necessary setup in a predictable way. This predictability
1575
- // is why the Promise constructor synchronously invokes its
1576
- // executor callback, and why async functions synchronously
1577
- // execute code before the first await. Since we implement simple
1578
- // async functions in terms of async generators, it is especially
1579
- // important to get this right, even though it requires care.
1580
- previousPromise ? previousPromise.then(
1581
- callInvokeWithMethodAndArg,
1582
- // Avoid propagating failures to Promises returned by later
1583
- // invocations of the iterator.
1584
- callInvokeWithMethodAndArg
1585
- ) : callInvokeWithMethodAndArg();
1586
- }
1587
-
1588
- // Define the unified helper method that is used to implement .next,
1589
- // .throw, and .return (see defineIteratorMethods).
1590
- this._invoke = enqueue;
1591
- }
1592
-
1593
- defineIteratorMethods(AsyncIterator.prototype);
1594
- define(AsyncIterator.prototype, asyncIteratorSymbol, function () {
1595
- return this;
1596
- });
1597
- exports.AsyncIterator = AsyncIterator;
1598
-
1599
- // Note that simple async functions are implemented on top of
1600
- // AsyncIterator objects; they just return a Promise for the value of
1601
- // the final result produced by the iterator.
1602
- exports.async = function(innerFn, outerFn, self, tryLocsList, PromiseImpl) {
1603
- if (PromiseImpl === void 0) PromiseImpl = Promise;
1604
-
1605
- var iter = new AsyncIterator(
1606
- wrap(innerFn, outerFn, self, tryLocsList),
1607
- PromiseImpl
1608
- );
1609
-
1610
- return exports.isGeneratorFunction(outerFn)
1611
- ? iter // If outerFn is a generator, return the full iterator.
1612
- : iter.next().then(function(result) {
1613
- return result.done ? result.value : iter.next();
1614
- });
1615
- };
1616
-
1617
- function makeInvokeMethod(innerFn, self, context) {
1618
- var state = GenStateSuspendedStart;
1619
-
1620
- return function invoke(method, arg) {
1621
- if (state === GenStateExecuting) {
1622
- throw new Error("Generator is already running");
1623
- }
1624
-
1625
- if (state === GenStateCompleted) {
1626
- if (method === "throw") {
1627
- throw arg;
1628
- }
1629
-
1630
- // Be forgiving, per 25.3.3.3.3 of the spec:
1631
- // https://people.mozilla.org/~jorendorff/es6-draft.html#sec-generatorresume
1632
- return doneResult();
1633
- }
1634
-
1635
- context.method = method;
1636
- context.arg = arg;
1637
-
1638
- while (true) {
1639
- var delegate = context.delegate;
1640
- if (delegate) {
1641
- var delegateResult = maybeInvokeDelegate(delegate, context);
1642
- if (delegateResult) {
1643
- if (delegateResult === ContinueSentinel) continue;
1644
- return delegateResult;
1645
- }
1646
- }
1647
-
1648
- if (context.method === "next") {
1649
- // Setting context._sent for legacy support of Babel's
1650
- // function.sent implementation.
1651
- context.sent = context._sent = context.arg;
1652
-
1653
- } else if (context.method === "throw") {
1654
- if (state === GenStateSuspendedStart) {
1655
- state = GenStateCompleted;
1656
- throw context.arg;
1657
- }
1658
-
1659
- context.dispatchException(context.arg);
1660
-
1661
- } else if (context.method === "return") {
1662
- context.abrupt("return", context.arg);
1663
- }
1664
-
1665
- state = GenStateExecuting;
1666
-
1667
- var record = tryCatch(innerFn, self, context);
1668
- if (record.type === "normal") {
1669
- // If an exception is thrown from innerFn, we leave state ===
1670
- // GenStateExecuting and loop back for another invocation.
1671
- state = context.done
1672
- ? GenStateCompleted
1673
- : GenStateSuspendedYield;
1674
-
1675
- if (record.arg === ContinueSentinel) {
1676
- continue;
1677
- }
1678
-
1679
- return {
1680
- value: record.arg,
1681
- done: context.done
1682
- };
1683
-
1684
- } else if (record.type === "throw") {
1685
- state = GenStateCompleted;
1686
- // Dispatch the exception by looping back around to the
1687
- // context.dispatchException(context.arg) call above.
1688
- context.method = "throw";
1689
- context.arg = record.arg;
1690
- }
1691
- }
1692
- };
1693
- }
1694
-
1695
- // Call delegate.iterator[context.method](context.arg) and handle the
1696
- // result, either by returning a { value, done } result from the
1697
- // delegate iterator, or by modifying context.method and context.arg,
1698
- // setting context.delegate to null, and returning the ContinueSentinel.
1699
- function maybeInvokeDelegate(delegate, context) {
1700
- var method = delegate.iterator[context.method];
1701
- if (method === undefined$1) {
1702
- // A .throw or .return when the delegate iterator has no .throw
1703
- // method always terminates the yield* loop.
1704
- context.delegate = null;
1705
-
1706
- if (context.method === "throw") {
1707
- // Note: ["return"] must be used for ES3 parsing compatibility.
1708
- if (delegate.iterator["return"]) {
1709
- // If the delegate iterator has a return method, give it a
1710
- // chance to clean up.
1711
- context.method = "return";
1712
- context.arg = undefined$1;
1713
- maybeInvokeDelegate(delegate, context);
1714
-
1715
- if (context.method === "throw") {
1716
- // If maybeInvokeDelegate(context) changed context.method from
1717
- // "return" to "throw", let that override the TypeError below.
1718
- return ContinueSentinel;
1719
- }
1720
- }
1721
-
1722
- context.method = "throw";
1723
- context.arg = new TypeError(
1724
- "The iterator does not provide a 'throw' method");
1725
- }
1726
-
1727
- return ContinueSentinel;
1728
- }
1729
-
1730
- var record = tryCatch(method, delegate.iterator, context.arg);
1731
-
1732
- if (record.type === "throw") {
1733
- context.method = "throw";
1734
- context.arg = record.arg;
1735
- context.delegate = null;
1736
- return ContinueSentinel;
1737
- }
1738
-
1739
- var info = record.arg;
1740
-
1741
- if (! info) {
1742
- context.method = "throw";
1743
- context.arg = new TypeError("iterator result is not an object");
1744
- context.delegate = null;
1745
- return ContinueSentinel;
1746
- }
1747
-
1748
- if (info.done) {
1749
- // Assign the result of the finished delegate to the temporary
1750
- // variable specified by delegate.resultName (see delegateYield).
1751
- context[delegate.resultName] = info.value;
1752
-
1753
- // Resume execution at the desired location (see delegateYield).
1754
- context.next = delegate.nextLoc;
1755
-
1756
- // If context.method was "throw" but the delegate handled the
1757
- // exception, let the outer generator proceed normally. If
1758
- // context.method was "next", forget context.arg since it has been
1759
- // "consumed" by the delegate iterator. If context.method was
1760
- // "return", allow the original .return call to continue in the
1761
- // outer generator.
1762
- if (context.method !== "return") {
1763
- context.method = "next";
1764
- context.arg = undefined$1;
1765
- }
1766
-
1767
- } else {
1768
- // Re-yield the result returned by the delegate method.
1769
- return info;
1770
- }
1771
-
1772
- // The delegate iterator is finished, so forget it and continue with
1773
- // the outer generator.
1774
- context.delegate = null;
1775
- return ContinueSentinel;
1776
- }
1777
-
1778
- // Define Generator.prototype.{next,throw,return} in terms of the
1779
- // unified ._invoke helper method.
1780
- defineIteratorMethods(Gp);
1781
-
1782
- define(Gp, toStringTagSymbol, "Generator");
1783
-
1784
- // A Generator should always return itself as the iterator object when the
1785
- // @@iterator function is called on it. Some browsers' implementations of the
1786
- // iterator prototype chain incorrectly implement this, causing the Generator
1787
- // object to not be returned from this call. This ensures that doesn't happen.
1788
- // See https://github.com/facebook/regenerator/issues/274 for more details.
1789
- define(Gp, iteratorSymbol, function() {
1790
- return this;
1791
- });
1792
-
1793
- define(Gp, "toString", function() {
1794
- return "[object Generator]";
1795
- });
1796
-
1797
- function pushTryEntry(locs) {
1798
- var entry = { tryLoc: locs[0] };
1799
-
1800
- if (1 in locs) {
1801
- entry.catchLoc = locs[1];
1802
- }
1803
-
1804
- if (2 in locs) {
1805
- entry.finallyLoc = locs[2];
1806
- entry.afterLoc = locs[3];
1807
- }
1808
-
1809
- this.tryEntries.push(entry);
1810
- }
1811
-
1812
- function resetTryEntry(entry) {
1813
- var record = entry.completion || {};
1814
- record.type = "normal";
1815
- delete record.arg;
1816
- entry.completion = record;
1817
- }
1818
-
1819
- function Context(tryLocsList) {
1820
- // The root entry object (effectively a try statement without a catch
1821
- // or a finally block) gives us a place to store values thrown from
1822
- // locations where there is no enclosing try statement.
1823
- this.tryEntries = [{ tryLoc: "root" }];
1824
- tryLocsList.forEach(pushTryEntry, this);
1825
- this.reset(true);
1826
- }
1827
-
1828
- exports.keys = function(object) {
1829
- var keys = [];
1830
- for (var key in object) {
1831
- keys.push(key);
1832
- }
1833
- keys.reverse();
1834
-
1835
- // Rather than returning an object with a next method, we keep
1836
- // things simple and return the next function itself.
1837
- return function next() {
1838
- while (keys.length) {
1839
- var key = keys.pop();
1840
- if (key in object) {
1841
- next.value = key;
1842
- next.done = false;
1843
- return next;
1844
- }
1845
- }
1846
-
1847
- // To avoid creating an additional object, we just hang the .value
1848
- // and .done properties off the next function object itself. This
1849
- // also ensures that the minifier will not anonymize the function.
1850
- next.done = true;
1851
- return next;
1852
- };
1853
- };
1854
-
1855
- function values(iterable) {
1856
- if (iterable) {
1857
- var iteratorMethod = iterable[iteratorSymbol];
1858
- if (iteratorMethod) {
1859
- return iteratorMethod.call(iterable);
1860
- }
1861
-
1862
- if (typeof iterable.next === "function") {
1863
- return iterable;
1864
- }
1865
-
1866
- if (!isNaN(iterable.length)) {
1867
- var i = -1, next = function next() {
1868
- while (++i < iterable.length) {
1869
- if (hasOwn.call(iterable, i)) {
1870
- next.value = iterable[i];
1871
- next.done = false;
1872
- return next;
1873
- }
1874
- }
1875
-
1876
- next.value = undefined$1;
1877
- next.done = true;
1878
-
1879
- return next;
1880
- };
1881
-
1882
- return next.next = next;
1883
- }
1884
- }
1885
-
1886
- // Return an iterator with no values.
1887
- return { next: doneResult };
1888
- }
1889
- exports.values = values;
1890
-
1891
- function doneResult() {
1892
- return { value: undefined$1, done: true };
1893
- }
1894
-
1895
- Context.prototype = {
1896
- constructor: Context,
1897
-
1898
- reset: function(skipTempReset) {
1899
- this.prev = 0;
1900
- this.next = 0;
1901
- // Resetting context._sent for legacy support of Babel's
1902
- // function.sent implementation.
1903
- this.sent = this._sent = undefined$1;
1904
- this.done = false;
1905
- this.delegate = null;
1906
-
1907
- this.method = "next";
1908
- this.arg = undefined$1;
1909
-
1910
- this.tryEntries.forEach(resetTryEntry);
1911
-
1912
- if (!skipTempReset) {
1913
- for (var name in this) {
1914
- // Not sure about the optimal order of these conditions:
1915
- if (name.charAt(0) === "t" &&
1916
- hasOwn.call(this, name) &&
1917
- !isNaN(+name.slice(1))) {
1918
- this[name] = undefined$1;
1919
- }
1920
- }
1921
- }
1922
- },
1923
-
1924
- stop: function() {
1925
- this.done = true;
1926
-
1927
- var rootEntry = this.tryEntries[0];
1928
- var rootRecord = rootEntry.completion;
1929
- if (rootRecord.type === "throw") {
1930
- throw rootRecord.arg;
1931
- }
1932
-
1933
- return this.rval;
1934
- },
1935
-
1936
- dispatchException: function(exception) {
1937
- if (this.done) {
1938
- throw exception;
1939
- }
1940
-
1941
- var context = this;
1942
- function handle(loc, caught) {
1943
- record.type = "throw";
1944
- record.arg = exception;
1945
- context.next = loc;
1946
-
1947
- if (caught) {
1948
- // If the dispatched exception was caught by a catch block,
1949
- // then let that catch block handle the exception normally.
1950
- context.method = "next";
1951
- context.arg = undefined$1;
1952
- }
1953
-
1954
- return !! caught;
1955
- }
1956
-
1957
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
1958
- var entry = this.tryEntries[i];
1959
- var record = entry.completion;
1960
-
1961
- if (entry.tryLoc === "root") {
1962
- // Exception thrown outside of any try block that could handle
1963
- // it, so set the completion value of the entire function to
1964
- // throw the exception.
1965
- return handle("end");
1966
- }
1967
-
1968
- if (entry.tryLoc <= this.prev) {
1969
- var hasCatch = hasOwn.call(entry, "catchLoc");
1970
- var hasFinally = hasOwn.call(entry, "finallyLoc");
1971
-
1972
- if (hasCatch && hasFinally) {
1973
- if (this.prev < entry.catchLoc) {
1974
- return handle(entry.catchLoc, true);
1975
- } else if (this.prev < entry.finallyLoc) {
1976
- return handle(entry.finallyLoc);
1977
- }
1978
-
1979
- } else if (hasCatch) {
1980
- if (this.prev < entry.catchLoc) {
1981
- return handle(entry.catchLoc, true);
1982
- }
1983
-
1984
- } else if (hasFinally) {
1985
- if (this.prev < entry.finallyLoc) {
1986
- return handle(entry.finallyLoc);
1987
- }
1988
-
1989
- } else {
1990
- throw new Error("try statement without catch or finally");
1991
- }
1992
- }
1993
- }
1994
- },
1995
-
1996
- abrupt: function(type, arg) {
1997
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
1998
- var entry = this.tryEntries[i];
1999
- if (entry.tryLoc <= this.prev &&
2000
- hasOwn.call(entry, "finallyLoc") &&
2001
- this.prev < entry.finallyLoc) {
2002
- var finallyEntry = entry;
2003
- break;
2004
- }
2005
- }
2006
-
2007
- if (finallyEntry &&
2008
- (type === "break" ||
2009
- type === "continue") &&
2010
- finallyEntry.tryLoc <= arg &&
2011
- arg <= finallyEntry.finallyLoc) {
2012
- // Ignore the finally entry if control is not jumping to a
2013
- // location outside the try/catch block.
2014
- finallyEntry = null;
2015
- }
2016
-
2017
- var record = finallyEntry ? finallyEntry.completion : {};
2018
- record.type = type;
2019
- record.arg = arg;
2020
-
2021
- if (finallyEntry) {
2022
- this.method = "next";
2023
- this.next = finallyEntry.finallyLoc;
2024
- return ContinueSentinel;
2025
- }
2026
-
2027
- return this.complete(record);
2028
- },
2029
-
2030
- complete: function(record, afterLoc) {
2031
- if (record.type === "throw") {
2032
- throw record.arg;
2033
- }
2034
-
2035
- if (record.type === "break" ||
2036
- record.type === "continue") {
2037
- this.next = record.arg;
2038
- } else if (record.type === "return") {
2039
- this.rval = this.arg = record.arg;
2040
- this.method = "return";
2041
- this.next = "end";
2042
- } else if (record.type === "normal" && afterLoc) {
2043
- this.next = afterLoc;
2044
- }
2045
-
2046
- return ContinueSentinel;
2047
- },
2048
-
2049
- finish: function(finallyLoc) {
2050
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
2051
- var entry = this.tryEntries[i];
2052
- if (entry.finallyLoc === finallyLoc) {
2053
- this.complete(entry.completion, entry.afterLoc);
2054
- resetTryEntry(entry);
2055
- return ContinueSentinel;
2056
- }
2057
- }
2058
- },
2059
-
2060
- "catch": function(tryLoc) {
2061
- for (var i = this.tryEntries.length - 1; i >= 0; --i) {
2062
- var entry = this.tryEntries[i];
2063
- if (entry.tryLoc === tryLoc) {
2064
- var record = entry.completion;
2065
- if (record.type === "throw") {
2066
- var thrown = record.arg;
2067
- resetTryEntry(entry);
2068
- }
2069
- return thrown;
2070
- }
2071
- }
2072
-
2073
- // The context.catch method must only be called with a location
2074
- // argument that corresponds to a known catch block.
2075
- throw new Error("illegal catch attempt");
2076
- },
2077
-
2078
- delegateYield: function(iterable, resultName, nextLoc) {
2079
- this.delegate = {
2080
- iterator: values(iterable),
2081
- resultName: resultName,
2082
- nextLoc: nextLoc
2083
- };
2084
-
2085
- if (this.method === "next") {
2086
- // Deliberately forget the last sent value so that we don't
2087
- // accidentally pass it on to the delegate.
2088
- this.arg = undefined$1;
2089
- }
2090
-
2091
- return ContinueSentinel;
2092
- }
2093
- };
2094
-
2095
- // Regardless of whether this script is executing as a CommonJS module
2096
- // or not, return the runtime object so that we can declare the variable
2097
- // regeneratorRuntime in the outer scope, which allows this module to be
2098
- // injected easily by `bin/regenerator --include-runtime script.js`.
2099
- return exports;
2100
-
2101
- }(
2102
- // If this script is executing as a CommonJS module, use module.exports
2103
- // as the regeneratorRuntime namespace. Otherwise create a new empty
2104
- // object. Either way, the resulting object will be used to initialize
2105
- // the regeneratorRuntime variable at the top of this file.
2106
- module.exports
2107
- ));
2108
-
2109
- try {
2110
- regeneratorRuntime = runtime;
2111
- } catch (accidentalStrictMode) {
2112
- // This module should not be running in strict mode, so the above
2113
- // assignment should always work unless something is misconfigured. Just
2114
- // in case runtime.js accidentally runs in strict mode, in modern engines
2115
- // we can explicitly access globalThis. In older engines we can escape
2116
- // strict mode using a global Function call. This could conceivably fail
2117
- // if a Content Security Policy forbids using Function, but in that case
2118
- // the proper solution is to fix the accidental strict mode problem. If
2119
- // you've misconfigured your bundler to force strict mode and applied a
2120
- // CSP to forbid Function, and you're not willing to fix either of those
2121
- // problems, please detail your unique predicament in a GitHub issue.
2122
- if (typeof globalThis === "object") {
2123
- globalThis.regeneratorRuntime = runtime;
2124
- } else {
2125
- Function("r", "regeneratorRuntime = r")(runtime);
2126
- }
2127
- }
2128
- });
2129
-
2130
- /**
2131
- * A specialized version of `_.reduce` for arrays without support for
2132
- * iteratee shorthands.
2133
- *
2134
- * @private
2135
- * @param {Array} [array] The array to iterate over.
2136
- * @param {Function} iteratee The function invoked per iteration.
2137
- * @param {*} [accumulator] The initial value.
2138
- * @param {boolean} [initAccum] Specify using the first element of `array` as
2139
- * the initial value.
2140
- * @returns {*} Returns the accumulated value.
2141
- */
2142
- function arrayReduce(array, iteratee, accumulator, initAccum) {
2143
- var index = -1,
2144
- length = array == null ? 0 : array.length;
2145
-
2146
- if (initAccum && length) {
2147
- accumulator = array[++index];
2148
- }
2149
- while (++index < length) {
2150
- accumulator = iteratee(accumulator, array[index], index, array);
2151
- }
2152
- return accumulator;
2153
- }
2154
-
2155
- var _arrayReduce = arrayReduce;
2156
-
2157
- /**
2158
- * The base implementation of `_.propertyOf` without support for deep paths.
2159
- *
2160
- * @private
2161
- * @param {Object} object The object to query.
2162
- * @returns {Function} Returns the new accessor function.
2163
- */
2164
- function basePropertyOf(object) {
2165
- return function(key) {
2166
- return object == null ? undefined : object[key];
2167
- };
2168
- }
2169
-
2170
- var _basePropertyOf = basePropertyOf;
2171
-
2172
- /** Used to map Latin Unicode letters to basic Latin letters. */
2173
- var deburredLetters = {
2174
- // Latin-1 Supplement block.
2175
- '\xc0': 'A', '\xc1': 'A', '\xc2': 'A', '\xc3': 'A', '\xc4': 'A', '\xc5': 'A',
2176
- '\xe0': 'a', '\xe1': 'a', '\xe2': 'a', '\xe3': 'a', '\xe4': 'a', '\xe5': 'a',
2177
- '\xc7': 'C', '\xe7': 'c',
2178
- '\xd0': 'D', '\xf0': 'd',
2179
- '\xc8': 'E', '\xc9': 'E', '\xca': 'E', '\xcb': 'E',
2180
- '\xe8': 'e', '\xe9': 'e', '\xea': 'e', '\xeb': 'e',
2181
- '\xcc': 'I', '\xcd': 'I', '\xce': 'I', '\xcf': 'I',
2182
- '\xec': 'i', '\xed': 'i', '\xee': 'i', '\xef': 'i',
2183
- '\xd1': 'N', '\xf1': 'n',
2184
- '\xd2': 'O', '\xd3': 'O', '\xd4': 'O', '\xd5': 'O', '\xd6': 'O', '\xd8': 'O',
2185
- '\xf2': 'o', '\xf3': 'o', '\xf4': 'o', '\xf5': 'o', '\xf6': 'o', '\xf8': 'o',
2186
- '\xd9': 'U', '\xda': 'U', '\xdb': 'U', '\xdc': 'U',
2187
- '\xf9': 'u', '\xfa': 'u', '\xfb': 'u', '\xfc': 'u',
2188
- '\xdd': 'Y', '\xfd': 'y', '\xff': 'y',
2189
- '\xc6': 'Ae', '\xe6': 'ae',
2190
- '\xde': 'Th', '\xfe': 'th',
2191
- '\xdf': 'ss',
2192
- // Latin Extended-A block.
2193
- '\u0100': 'A', '\u0102': 'A', '\u0104': 'A',
2194
- '\u0101': 'a', '\u0103': 'a', '\u0105': 'a',
2195
- '\u0106': 'C', '\u0108': 'C', '\u010a': 'C', '\u010c': 'C',
2196
- '\u0107': 'c', '\u0109': 'c', '\u010b': 'c', '\u010d': 'c',
2197
- '\u010e': 'D', '\u0110': 'D', '\u010f': 'd', '\u0111': 'd',
2198
- '\u0112': 'E', '\u0114': 'E', '\u0116': 'E', '\u0118': 'E', '\u011a': 'E',
2199
- '\u0113': 'e', '\u0115': 'e', '\u0117': 'e', '\u0119': 'e', '\u011b': 'e',
2200
- '\u011c': 'G', '\u011e': 'G', '\u0120': 'G', '\u0122': 'G',
2201
- '\u011d': 'g', '\u011f': 'g', '\u0121': 'g', '\u0123': 'g',
2202
- '\u0124': 'H', '\u0126': 'H', '\u0125': 'h', '\u0127': 'h',
2203
- '\u0128': 'I', '\u012a': 'I', '\u012c': 'I', '\u012e': 'I', '\u0130': 'I',
2204
- '\u0129': 'i', '\u012b': 'i', '\u012d': 'i', '\u012f': 'i', '\u0131': 'i',
2205
- '\u0134': 'J', '\u0135': 'j',
2206
- '\u0136': 'K', '\u0137': 'k', '\u0138': 'k',
2207
- '\u0139': 'L', '\u013b': 'L', '\u013d': 'L', '\u013f': 'L', '\u0141': 'L',
2208
- '\u013a': 'l', '\u013c': 'l', '\u013e': 'l', '\u0140': 'l', '\u0142': 'l',
2209
- '\u0143': 'N', '\u0145': 'N', '\u0147': 'N', '\u014a': 'N',
2210
- '\u0144': 'n', '\u0146': 'n', '\u0148': 'n', '\u014b': 'n',
2211
- '\u014c': 'O', '\u014e': 'O', '\u0150': 'O',
2212
- '\u014d': 'o', '\u014f': 'o', '\u0151': 'o',
2213
- '\u0154': 'R', '\u0156': 'R', '\u0158': 'R',
2214
- '\u0155': 'r', '\u0157': 'r', '\u0159': 'r',
2215
- '\u015a': 'S', '\u015c': 'S', '\u015e': 'S', '\u0160': 'S',
2216
- '\u015b': 's', '\u015d': 's', '\u015f': 's', '\u0161': 's',
2217
- '\u0162': 'T', '\u0164': 'T', '\u0166': 'T',
2218
- '\u0163': 't', '\u0165': 't', '\u0167': 't',
2219
- '\u0168': 'U', '\u016a': 'U', '\u016c': 'U', '\u016e': 'U', '\u0170': 'U', '\u0172': 'U',
2220
- '\u0169': 'u', '\u016b': 'u', '\u016d': 'u', '\u016f': 'u', '\u0171': 'u', '\u0173': 'u',
2221
- '\u0174': 'W', '\u0175': 'w',
2222
- '\u0176': 'Y', '\u0177': 'y', '\u0178': 'Y',
2223
- '\u0179': 'Z', '\u017b': 'Z', '\u017d': 'Z',
2224
- '\u017a': 'z', '\u017c': 'z', '\u017e': 'z',
2225
- '\u0132': 'IJ', '\u0133': 'ij',
2226
- '\u0152': 'Oe', '\u0153': 'oe',
2227
- '\u0149': "'n", '\u017f': 's'
2228
- };
2229
-
2230
- /**
2231
- * Used by `_.deburr` to convert Latin-1 Supplement and Latin Extended-A
2232
- * letters to basic Latin letters.
2233
- *
2234
- * @private
2235
- * @param {string} letter The matched letter to deburr.
2236
- * @returns {string} Returns the deburred letter.
2237
- */
2238
- var deburrLetter = _basePropertyOf(deburredLetters);
2239
-
2240
- var _deburrLetter = deburrLetter;
2241
-
2242
- /** Used to match Latin Unicode letters (excluding mathematical operators). */
2243
- var reLatin = /[\xc0-\xd6\xd8-\xf6\xf8-\xff\u0100-\u017f]/g;
2244
-
2245
- /** Used to compose unicode character classes. */
2246
- var rsComboMarksRange$1 = '\\u0300-\\u036f',
2247
- reComboHalfMarksRange$1 = '\\ufe20-\\ufe2f',
2248
- rsComboSymbolsRange$1 = '\\u20d0-\\u20ff',
2249
- rsComboRange$1 = rsComboMarksRange$1 + reComboHalfMarksRange$1 + rsComboSymbolsRange$1;
2250
-
2251
- /** Used to compose unicode capture groups. */
2252
- var rsCombo$1 = '[' + rsComboRange$1 + ']';
2253
-
2254
- /**
2255
- * Used to match [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks) and
2256
- * [combining diacritical marks for symbols](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks_for_Symbols).
2257
- */
2258
- var reComboMark = RegExp(rsCombo$1, 'g');
2259
-
2260
- /**
2261
- * Deburrs `string` by converting
2262
- * [Latin-1 Supplement](https://en.wikipedia.org/wiki/Latin-1_Supplement_(Unicode_block)#Character_table)
2263
- * and [Latin Extended-A](https://en.wikipedia.org/wiki/Latin_Extended-A)
2264
- * letters to basic Latin letters and removing
2265
- * [combining diacritical marks](https://en.wikipedia.org/wiki/Combining_Diacritical_Marks).
2266
- *
2267
- * @static
2268
- * @memberOf _
2269
- * @since 3.0.0
2270
- * @category String
2271
- * @param {string} [string=''] The string to deburr.
2272
- * @returns {string} Returns the deburred string.
2273
- * @example
2274
- *
2275
- * _.deburr('déjà vu');
2276
- * // => 'deja vu'
2277
- */
2278
- function deburr(string) {
2279
- string = toString_1(string);
2280
- return string && string.replace(reLatin, _deburrLetter).replace(reComboMark, '');
2281
- }
2282
-
2283
- var deburr_1 = deburr;
2284
-
2285
- /** Used to match words composed of alphanumeric characters. */
2286
- var reAsciiWord = /[^\x00-\x2f\x3a-\x40\x5b-\x60\x7b-\x7f]+/g;
2287
-
2288
- /**
2289
- * Splits an ASCII `string` into an array of its words.
2290
- *
2291
- * @private
2292
- * @param {string} The string to inspect.
2293
- * @returns {Array} Returns the words of `string`.
2294
- */
2295
- function asciiWords(string) {
2296
- return string.match(reAsciiWord) || [];
2297
- }
2298
-
2299
- var _asciiWords = asciiWords;
2300
-
2301
- /** Used to detect strings that need a more robust regexp to match words. */
2302
- var reHasUnicodeWord = /[a-z][A-Z]|[A-Z]{2}[a-z]|[0-9][a-zA-Z]|[a-zA-Z][0-9]|[^a-zA-Z0-9 ]/;
2303
-
2304
- /**
2305
- * Checks if `string` contains a word composed of Unicode symbols.
2306
- *
2307
- * @private
2308
- * @param {string} string The string to inspect.
2309
- * @returns {boolean} Returns `true` if a word is found, else `false`.
2310
- */
2311
- function hasUnicodeWord(string) {
2312
- return reHasUnicodeWord.test(string);
2313
- }
2314
-
2315
- var _hasUnicodeWord = hasUnicodeWord;
2316
-
2317
- /** Used to compose unicode character classes. */
2318
- var rsAstralRange = '\\ud800-\\udfff',
2319
- rsComboMarksRange = '\\u0300-\\u036f',
2320
- reComboHalfMarksRange = '\\ufe20-\\ufe2f',
2321
- rsComboSymbolsRange = '\\u20d0-\\u20ff',
2322
- rsComboRange = rsComboMarksRange + reComboHalfMarksRange + rsComboSymbolsRange,
2323
- rsDingbatRange = '\\u2700-\\u27bf',
2324
- rsLowerRange = 'a-z\\xdf-\\xf6\\xf8-\\xff',
2325
- rsMathOpRange = '\\xac\\xb1\\xd7\\xf7',
2326
- rsNonCharRange = '\\x00-\\x2f\\x3a-\\x40\\x5b-\\x60\\x7b-\\xbf',
2327
- rsPunctuationRange = '\\u2000-\\u206f',
2328
- rsSpaceRange = ' \\t\\x0b\\f\\xa0\\ufeff\\n\\r\\u2028\\u2029\\u1680\\u180e\\u2000\\u2001\\u2002\\u2003\\u2004\\u2005\\u2006\\u2007\\u2008\\u2009\\u200a\\u202f\\u205f\\u3000',
2329
- rsUpperRange = 'A-Z\\xc0-\\xd6\\xd8-\\xde',
2330
- rsVarRange = '\\ufe0e\\ufe0f',
2331
- rsBreakRange = rsMathOpRange + rsNonCharRange + rsPunctuationRange + rsSpaceRange;
2332
-
2333
- /** Used to compose unicode capture groups. */
2334
- var rsApos$1 = "['\u2019]",
2335
- rsBreak = '[' + rsBreakRange + ']',
2336
- rsCombo = '[' + rsComboRange + ']',
2337
- rsDigits = '\\d+',
2338
- rsDingbat = '[' + rsDingbatRange + ']',
2339
- rsLower = '[' + rsLowerRange + ']',
2340
- rsMisc = '[^' + rsAstralRange + rsBreakRange + rsDigits + rsDingbatRange + rsLowerRange + rsUpperRange + ']',
2341
- rsFitz = '\\ud83c[\\udffb-\\udfff]',
2342
- rsModifier = '(?:' + rsCombo + '|' + rsFitz + ')',
2343
- rsNonAstral = '[^' + rsAstralRange + ']',
2344
- rsRegional = '(?:\\ud83c[\\udde6-\\uddff]){2}',
2345
- rsSurrPair = '[\\ud800-\\udbff][\\udc00-\\udfff]',
2346
- rsUpper = '[' + rsUpperRange + ']',
2347
- rsZWJ = '\\u200d';
2348
-
2349
- /** Used to compose unicode regexes. */
2350
- var rsMiscLower = '(?:' + rsLower + '|' + rsMisc + ')',
2351
- rsMiscUpper = '(?:' + rsUpper + '|' + rsMisc + ')',
2352
- rsOptContrLower = '(?:' + rsApos$1 + '(?:d|ll|m|re|s|t|ve))?',
2353
- rsOptContrUpper = '(?:' + rsApos$1 + '(?:D|LL|M|RE|S|T|VE))?',
2354
- reOptMod = rsModifier + '?',
2355
- rsOptVar = '[' + rsVarRange + ']?',
2356
- rsOptJoin = '(?:' + rsZWJ + '(?:' + [rsNonAstral, rsRegional, rsSurrPair].join('|') + ')' + rsOptVar + reOptMod + ')*',
2357
- rsOrdLower = '\\d*(?:1st|2nd|3rd|(?![123])\\dth)(?=\\b|[A-Z_])',
2358
- rsOrdUpper = '\\d*(?:1ST|2ND|3RD|(?![123])\\dTH)(?=\\b|[a-z_])',
2359
- rsSeq = rsOptVar + reOptMod + rsOptJoin,
2360
- rsEmoji = '(?:' + [rsDingbat, rsRegional, rsSurrPair].join('|') + ')' + rsSeq;
2361
-
2362
- /** Used to match complex or compound words. */
2363
- var reUnicodeWord = RegExp([
2364
- rsUpper + '?' + rsLower + '+' + rsOptContrLower + '(?=' + [rsBreak, rsUpper, '$'].join('|') + ')',
2365
- rsMiscUpper + '+' + rsOptContrUpper + '(?=' + [rsBreak, rsUpper + rsMiscLower, '$'].join('|') + ')',
2366
- rsUpper + '?' + rsMiscLower + '+' + rsOptContrLower,
2367
- rsUpper + '+' + rsOptContrUpper,
2368
- rsOrdUpper,
2369
- rsOrdLower,
2370
- rsDigits,
2371
- rsEmoji
2372
- ].join('|'), 'g');
2373
-
2374
- /**
2375
- * Splits a Unicode `string` into an array of its words.
2376
- *
2377
- * @private
2378
- * @param {string} The string to inspect.
2379
- * @returns {Array} Returns the words of `string`.
2380
- */
2381
- function unicodeWords(string) {
2382
- return string.match(reUnicodeWord) || [];
2383
- }
2384
-
2385
- var _unicodeWords = unicodeWords;
2386
-
2387
- /**
2388
- * Splits `string` into an array of its words.
2389
- *
2390
- * @static
2391
- * @memberOf _
2392
- * @since 3.0.0
2393
- * @category String
2394
- * @param {string} [string=''] The string to inspect.
2395
- * @param {RegExp|string} [pattern] The pattern to match words.
2396
- * @param- {Object} [guard] Enables use as an iteratee for methods like `_.map`.
2397
- * @returns {Array} Returns the words of `string`.
2398
- * @example
2399
- *
2400
- * _.words('fred, barney, & pebbles');
2401
- * // => ['fred', 'barney', 'pebbles']
2402
- *
2403
- * _.words('fred, barney, & pebbles', /[^, ]+/g);
2404
- * // => ['fred', 'barney', '&', 'pebbles']
2405
- */
2406
- function words(string, pattern, guard) {
2407
- string = toString_1(string);
2408
- pattern = guard ? undefined : pattern;
2409
-
2410
- if (pattern === undefined) {
2411
- return _hasUnicodeWord(string) ? _unicodeWords(string) : _asciiWords(string);
2412
- }
2413
- return string.match(pattern) || [];
2414
- }
2415
-
2416
- var words_1 = words;
2417
-
2418
- /** Used to compose unicode capture groups. */
2419
- var rsApos = "['\u2019]";
2420
-
2421
- /** Used to match apostrophes. */
2422
- var reApos = RegExp(rsApos, 'g');
2423
-
2424
- /**
2425
- * Creates a function like `_.camelCase`.
2426
- *
2427
- * @private
2428
- * @param {Function} callback The function to combine each word.
2429
- * @returns {Function} Returns the new compounder function.
2430
- */
2431
- function createCompounder(callback) {
2432
- return function(string) {
2433
- return _arrayReduce(words_1(deburr_1(string).replace(reApos, '')), callback, '');
2434
- };
2435
- }
2436
-
2437
- var _createCompounder = createCompounder;
2438
-
2439
- /**
2440
- * Converts `string`, as space separated words, to upper case.
2441
- *
2442
- * @static
2443
- * @memberOf _
2444
- * @since 4.0.0
2445
- * @category String
2446
- * @param {string} [string=''] The string to convert.
2447
- * @returns {string} Returns the upper cased string.
2448
- * @example
2449
- *
2450
- * _.upperCase('--foo-bar');
2451
- * // => 'FOO BAR'
2452
- *
2453
- * _.upperCase('fooBar');
2454
- * // => 'FOO BAR'
2455
- *
2456
- * _.upperCase('__foo_bar__');
2457
- * // => 'FOO BAR'
2458
- */
2459
- var upperCase = _createCompounder(function(result, word, index) {
2460
- return result + (index ? ' ' : '') + word.toUpperCase();
2461
- });
2462
-
2463
- var upperCase_1 = upperCase;
2464
-
2465
- /**
2466
- * Converts `string`, as space separated words, to lower case.
2467
- *
2468
- * @static
2469
- * @memberOf _
2470
- * @since 4.0.0
2471
- * @category String
2472
- * @param {string} [string=''] The string to convert.
2473
- * @returns {string} Returns the lower cased string.
2474
- * @example
2475
- *
2476
- * _.lowerCase('--Foo-Bar--');
2477
- * // => 'foo bar'
2478
- *
2479
- * _.lowerCase('fooBar');
2480
- * // => 'foo bar'
2481
- *
2482
- * _.lowerCase('__FOO_BAR__');
2483
- * // => 'foo bar'
2484
- */
2485
- var lowerCase = _createCompounder(function(result, word, index) {
2486
- return result + (index ? ' ' : '') + word.toLowerCase();
2487
- });
2488
-
2489
- var lowerCase_1 = lowerCase;
2490
-
2491
46
  function truncate() {
2492
47
  var string = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : "";
2493
48
  var limit = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 60;
@@ -2514,7 +69,7 @@ var timestampToFormat = function timestampToFormat(value, unit, suffix, timestam
2514
69
  var localizedMonth = month;
2515
70
 
2516
71
  if (isUpperCase) {
2517
- localizedMonth = upperCase_1(month);
72
+ localizedMonth = lodash.upperCase(month);
2518
73
  }
2519
74
 
2520
75
  var year = dateTime.getFullYear();
@@ -2527,7 +82,7 @@ var timestampToFormat = function timestampToFormat(value, unit, suffix, timestam
2527
82
  var timetoShow;
2528
83
 
2529
84
  if (localizedMonths) {
2530
- localizedMonth = get_1(localizedMonths, [lowerCase_1(month)]) || month;
85
+ localizedMonth = lodash.get(localizedMonths, [lodash.lowerCase(month)]) || month;
2531
86
  }
2532
87
 
2533
88
  if (localizedMeridiem) {
@@ -2557,17 +112,17 @@ function formatter(value, unit, suffix, date, config) {
2557
112
  var showDateForUnits = ["day", "week", "month", "year"]; // suffix here refers to ago
2558
113
  // unit here refers to seconds, minute, minutes,...
2559
114
 
2560
- var localizedSuffix = get_1(config, ["localizedPublishTime", suffix]) || suffix;
115
+ var localizedSuffix = lodash.get(config, ["localizedPublishTime", suffix]) || suffix;
2561
116
  var localizedUnitOfTime;
2562
117
 
2563
118
  if (unit === "hour" && value > 23 || showDateForUnits.indexOf(unit) !== -1) {
2564
119
  return timestampToFormat(value, unit, suffix, date, config);
2565
120
  } else if (value > 1) {
2566
- localizedUnitOfTime = get_1(config, ["localizedPublishTime", "".concat(unit, "s")]) || "".concat(unit, "s");
121
+ localizedUnitOfTime = lodash.get(config, ["localizedPublishTime", "".concat(unit, "s")]) || "".concat(unit, "s");
2567
122
  return "".concat(value, " ").concat(localizedUnitOfTime, " ").concat(localizedSuffix);
2568
123
  }
2569
124
 
2570
- localizedUnitOfTime = get_1(config, ["localizedPublishTime", unit]) || unit;
125
+ localizedUnitOfTime = lodash.get(config, ["localizedPublishTime", unit]) || unit;
2571
126
  return "".concat(value, " ").concat(localizedUnitOfTime, " ").concat(localizedSuffix, " ");
2572
127
  }
2573
128
 
@@ -2620,10 +175,10 @@ var clientWidths = {
2620
175
  tablet: 1024
2621
176
  };
2622
177
  var clientWidth = function clientWidth(device) {
2623
- var foundDeviceWidth = get_1(clientWidths, device);
178
+ var foundDeviceWidth = lodash.get(clientWidths, device);
2624
179
 
2625
180
  if (foundDeviceWidth) {
2626
- return get_1(global, "document.documentElement.clientWidth") <= foundDeviceWidth;
181
+ return lodash.get(global, "document.documentElement.clientWidth") <= foundDeviceWidth;
2627
182
  }
2628
183
 
2629
184
  return false;
@@ -2653,7 +208,7 @@ var getSlug = function getSlug(collection) {
2653
208
  var isSection = collection.template === "section";
2654
209
 
2655
210
  if (isSection) {
2656
- var sectionId = get_1(collection, ["metadata", "section", "0", "id"], "");
211
+ var sectionId = lodash.get(collection, ["metadata", "section", "0", "id"], "");
2657
212
  var sections = config.sections;
2658
213
  var section = sections && sections.find(function (section) {
2659
214
  return section.id === sectionId;
@@ -2669,25 +224,25 @@ function isExternalStory() {
2669
224
  storyTemplate = _story$storyTemplate === void 0 ? "" : _story$storyTemplate,
2670
225
  _story$metadata = story.metadata,
2671
226
  metadata = _story$metadata === void 0 ? {} : _story$metadata;
2672
- return storyTemplate === "news-elsewhere" ? get_1(metadata, ["reference-url"], "") : "";
227
+ return storyTemplate === "news-elsewhere" ? lodash.get(metadata, ["reference-url"], "") : "";
2673
228
  } // Adds target='_blank' attribute to anchor tags if not present
2674
229
  var isEmpty = function isEmpty(value) {
2675
230
  return value == null || // From standard.js: Always use === - but value == null is allowed to check null || undefined
2676
- _typeof(value) === "object" && Object.entries(value).length === 0 && value.constructor === Object || typeof value === "string" && value.trim().length === 0;
231
+ _typeof__default["default"](value) === "object" && Object.entries(value).length === 0 && value.constructor === Object || typeof value === "string" && value.trim().length === 0;
2677
232
  };
2678
- PropTypes.shape({
2679
- "sketches-host": PropTypes.string,
2680
- "cdn-name": PropTypes.string,
2681
- "cdn-image": PropTypes.string
233
+ PropTypes__default["default"].shape({
234
+ "sketches-host": PropTypes__default["default"].string,
235
+ "cdn-name": PropTypes__default["default"].string,
236
+ "cdn-image": PropTypes__default["default"].string
2682
237
  });
2683
- PropTypes.shape({
2684
- headline: PropTypes.string,
2685
- "last-published-at": PropTypes.number,
2686
- subheadline: PropTypes.string
238
+ PropTypes__default["default"].shape({
239
+ headline: PropTypes__default["default"].string,
240
+ "last-published-at": PropTypes__default["default"].number,
241
+ subheadline: PropTypes__default["default"].string
2687
242
  });
2688
243
  var getStoryUrl = function getStoryUrl(story) {
2689
244
  var defaultValue = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";
2690
- return get_1(story, ["story-template"]) === "news-elsewhere" ? get_1(story, ["metadata", "reference-url"], "") : story.url || defaultValue;
245
+ return lodash.get(story, ["story-template"]) === "news-elsewhere" ? lodash.get(story, ["metadata", "reference-url"], "") : story.url || defaultValue;
2691
246
  };
2692
247
  var navigateTo = function navigateTo(dispatch) {
2693
248
  var url = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : "";
@@ -2727,17 +282,17 @@ var getTimeStamp = function getTimeStamp(date, _formatter) {
2727
282
  var timezone = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : null;
2728
283
 
2729
284
  if (timezone && template === "story") {
2730
- var zonedTime = timezone && utcToZonedTime(date, timezone);
2731
- var formatZonedTime = zonedTime && format(zonedTime, "yyyy-MM-dd'T'HH:mm:ssXXX", {
285
+ var zonedTime = timezone && dateFnsTz.utcToZonedTime(date, timezone);
286
+ var formatZonedTime = zonedTime && dateFnsTz.format(zonedTime, "yyyy-MM-dd'T'HH:mm:ssXXX", {
2732
287
  timeZone: timezone
2733
288
  });
2734
289
  var timeStamp = timestampToFormat("", "", "", date, config);
2735
- return /*#__PURE__*/React.createElement("time", {
290
+ return /*#__PURE__*/React__default["default"].createElement("time", {
2736
291
  dateTime: formatZonedTime
2737
292
  }, timeStamp);
2738
293
  }
2739
294
 
2740
- return /*#__PURE__*/React.createElement(Timeago, {
295
+ return /*#__PURE__*/React__default["default"].createElement(Timeago__default["default"], {
2741
296
  date: date,
2742
297
  formatter: function formatter(value, unit, suffix, date) {
2743
298
  return _formatter(value, unit, suffix, date, config);
@@ -2751,7 +306,7 @@ var CrownIcon = function CrownIcon(_ref) {
2751
306
  _ref$color = _ref.color,
2752
307
  color = _ref$color === void 0 ? "#D8D8D8" : _ref$color,
2753
308
  positionTop = _ref.positionTop;
2754
- return /*#__PURE__*/React.createElement("svg", {
309
+ return /*#__PURE__*/React__default["default"].createElement("svg", {
2755
310
  xmlns: "http://www.w3.org/2000/svg",
2756
311
  width: width,
2757
312
  height: height,
@@ -2760,28 +315,28 @@ var CrownIcon = function CrownIcon(_ref) {
2760
315
  position: "relative",
2761
316
  top: positionTop
2762
317
  }
2763
- }, /*#__PURE__*/React.createElement("g", {
318
+ }, /*#__PURE__*/React__default["default"].createElement("g", {
2764
319
  fill: "none",
2765
320
  fillRule: "evenodd",
2766
321
  stroke: "none",
2767
322
  strokeWidth: "1"
2768
- }, /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("g", {
323
+ }, /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("g", {
2769
324
  transform: "translate(8 8)"
2770
- }, /*#__PURE__*/React.createElement("path", {
325
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
2771
326
  d: "M0 0H24V24H0z"
2772
- }), /*#__PURE__*/React.createElement("g", {
327
+ }), /*#__PURE__*/React__default["default"].createElement("g", {
2773
328
  fill: color,
2774
329
  fillRule: "nonzero",
2775
330
  transform: "translate(0 2)"
2776
- }, /*#__PURE__*/React.createElement("path", {
331
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
2777
332
  d: "M21.043 19.553c0-.743-.601-1.344-1.344-1.344h-15.4a1.343 1.343 0 100 2.688h15.4c.743 0 1.344-.603 1.344-1.344zM1.598 8.673c.022 0 .042 0 .064-.003l2.131 7.713h16.411l2.132-7.713c.022 0 .041.003.063.003a1.599 1.599 0 10-1.52-1.108L17.025 9.82 12.882 2.95a1.599 1.599 0 10-1.765 0L6.976 9.82 3.121 7.565a1.599 1.599 0 10-1.523 1.107z"
2778
333
  }))))));
2779
334
  };
2780
335
  CrownIcon.propTypes = {
2781
- height: PropTypes.string,
2782
- width: PropTypes.string,
2783
- color: PropTypes.string,
2784
- positionTop: PropTypes.string
336
+ height: PropTypes__default["default"].string,
337
+ width: PropTypes__default["default"].string,
338
+ color: PropTypes__default["default"].string,
339
+ positionTop: PropTypes__default["default"].string
2785
340
  };
2786
341
 
2787
342
  var KeyIcon = function KeyIcon(_ref) {
@@ -2790,7 +345,7 @@ var KeyIcon = function KeyIcon(_ref) {
2790
345
  _ref$color = _ref.color,
2791
346
  color = _ref$color === void 0 ? "#D5D5D5" : _ref$color,
2792
347
  positionTop = _ref.positionTop;
2793
- return /*#__PURE__*/React.createElement("svg", {
348
+ return /*#__PURE__*/React__default["default"].createElement("svg", {
2794
349
  xmlns: "http://www.w3.org/2000/svg",
2795
350
  width: width,
2796
351
  height: height,
@@ -2799,16 +354,16 @@ var KeyIcon = function KeyIcon(_ref) {
2799
354
  position: "relative",
2800
355
  top: positionTop
2801
356
  }
2802
- }, /*#__PURE__*/React.createElement("g", {
357
+ }, /*#__PURE__*/React__default["default"].createElement("g", {
2803
358
  fill: "none",
2804
359
  fillRule: "evenodd",
2805
360
  stroke: "none",
2806
361
  strokeWidth: "1"
2807
- }, /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("g", {
362
+ }, /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("g", {
2808
363
  transform: "translate(8 8)"
2809
- }, /*#__PURE__*/React.createElement("path", {
364
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
2810
365
  d: "M0 0H24V24H0z"
2811
- }), /*#__PURE__*/React.createElement("path", {
366
+ }), /*#__PURE__*/React__default["default"].createElement("path", {
2812
367
  fill: color,
2813
368
  fillRule: "nonzero",
2814
369
  d: "M12.71 4.364A6.54 6.54 0 000 6.545a6.54 6.54 0 0012.71 2.182h4.745v4.364h4.363V8.727H24V4.364H12.71zM6.544 8.727a2.181 2.181 0 110-4.362 2.181 2.181 0 010 4.362z",
@@ -2816,10 +371,10 @@ var KeyIcon = function KeyIcon(_ref) {
2816
371
  })))));
2817
372
  };
2818
373
  KeyIcon.propTypes = {
2819
- height: PropTypes.string,
2820
- width: PropTypes.string,
2821
- color: PropTypes.string,
2822
- positionTop: PropTypes.string
374
+ height: PropTypes__default["default"].string,
375
+ width: PropTypes__default["default"].string,
376
+ color: PropTypes__default["default"].string,
377
+ positionTop: PropTypes__default["default"].string
2823
378
  };
2824
379
 
2825
380
  var LockIcon = function LockIcon(_ref) {
@@ -2828,7 +383,7 @@ var LockIcon = function LockIcon(_ref) {
2828
383
  _ref$color = _ref.color,
2829
384
  color = _ref$color === void 0 ? "#D5D5D5" : _ref$color,
2830
385
  positionTop = _ref.positionTop;
2831
- return /*#__PURE__*/React.createElement("svg", {
386
+ return /*#__PURE__*/React__default["default"].createElement("svg", {
2832
387
  xmlns: "http://www.w3.org/2000/svg",
2833
388
  width: width,
2834
389
  height: height,
@@ -2837,28 +392,28 @@ var LockIcon = function LockIcon(_ref) {
2837
392
  position: "relative",
2838
393
  top: positionTop
2839
394
  }
2840
- }, /*#__PURE__*/React.createElement("g", {
395
+ }, /*#__PURE__*/React__default["default"].createElement("g", {
2841
396
  fill: "none",
2842
397
  fillRule: "evenodd",
2843
398
  stroke: "none",
2844
399
  strokeWidth: "1"
2845
- }, /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("g", {
400
+ }, /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("g", {
2846
401
  transform: "translate(8 8)"
2847
- }, /*#__PURE__*/React.createElement("path", {
402
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
2848
403
  d: "M0 0H24V24H0z"
2849
- }), /*#__PURE__*/React.createElement("g", {
404
+ }), /*#__PURE__*/React__default["default"].createElement("g", {
2850
405
  fill: color,
2851
406
  fillRule: "nonzero",
2852
407
  transform: "translate(3)"
2853
- }, /*#__PURE__*/React.createElement("path", {
408
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
2854
409
  d: "M15.692 9h-.747V6c0-3.31-2.681-6-5.978-6C5.67 0 2.989 2.69 2.989 6v3h-.747A2.249 2.249 0 000 11.25v10.5A2.249 2.249 0 002.242 24h13.45a2.249 2.249 0 002.242-2.25v-10.5A2.249 2.249 0 0015.692 9zM4.982 6c0-2.206 1.787-4 3.985-4s3.985 1.794 3.985 4v3h-7.97V6z"
2855
410
  }))))));
2856
411
  };
2857
412
  LockIcon.propTypes = {
2858
- height: PropTypes.string,
2859
- width: PropTypes.string,
2860
- color: PropTypes.string,
2861
- positionTop: PropTypes.string
413
+ height: PropTypes__default["default"].string,
414
+ width: PropTypes__default["default"].string,
415
+ color: PropTypes__default["default"].string,
416
+ positionTop: PropTypes__default["default"].string
2862
417
  };
2863
418
 
2864
419
  var StarIcon = function StarIcon(_ref) {
@@ -2868,7 +423,7 @@ var StarIcon = function StarIcon(_ref) {
2868
423
  color = _ref$color === void 0 ? "#D5D5D5" : _ref$color,
2869
424
  _ref$positionTop = _ref.positionTop,
2870
425
  positionTop = _ref$positionTop === void 0 ? "" : _ref$positionTop;
2871
- return /*#__PURE__*/React.createElement("svg", {
426
+ return /*#__PURE__*/React__default["default"].createElement("svg", {
2872
427
  xmlns: "http://www.w3.org/2000/svg",
2873
428
  width: width,
2874
429
  height: height,
@@ -2877,21 +432,21 @@ var StarIcon = function StarIcon(_ref) {
2877
432
  position: "relative",
2878
433
  top: positionTop
2879
434
  }
2880
- }, /*#__PURE__*/React.createElement("g", {
435
+ }, /*#__PURE__*/React__default["default"].createElement("g", {
2881
436
  fill: "none",
2882
437
  fillRule: "evenodd",
2883
438
  stroke: "none",
2884
439
  strokeWidth: "1"
2885
- }, /*#__PURE__*/React.createElement("g", null, /*#__PURE__*/React.createElement("path", {
440
+ }, /*#__PURE__*/React__default["default"].createElement("g", null, /*#__PURE__*/React__default["default"].createElement("path", {
2886
441
  fill: color,
2887
442
  d: "M20 26L12.946577 29.7082039 14.2936609 21.854102 8.5873218 16.2917961 16.4732885 15.145898 20 8 23.5267115 15.145898 31.4126782 16.2917961 25.7063391 21.854102 27.053423 29.7082039z"
2888
443
  }))));
2889
444
  };
2890
445
  StarIcon.propTypes = {
2891
- height: PropTypes.string,
2892
- width: PropTypes.string,
2893
- color: PropTypes.string,
2894
- positionTop: PropTypes.string
446
+ height: PropTypes__default["default"].string,
447
+ width: PropTypes__default["default"].string,
448
+ color: PropTypes__default["default"].string,
449
+ positionTop: PropTypes__default["default"].string
2895
450
  };
2896
451
 
2897
452
  var PremiumStoryIcon = function PremiumStoryIcon(_ref) {
@@ -2903,7 +458,7 @@ var PremiumStoryIcon = function PremiumStoryIcon(_ref) {
2903
458
 
2904
459
  switch (iconType) {
2905
460
  case "crown":
2906
- return /*#__PURE__*/React.createElement(CrownIcon, {
461
+ return /*#__PURE__*/React__default["default"].createElement(CrownIcon, {
2907
462
  width: width,
2908
463
  height: height,
2909
464
  color: color,
@@ -2911,7 +466,7 @@ var PremiumStoryIcon = function PremiumStoryIcon(_ref) {
2911
466
  });
2912
467
 
2913
468
  case "lock":
2914
- return /*#__PURE__*/React.createElement(LockIcon, {
469
+ return /*#__PURE__*/React__default["default"].createElement(LockIcon, {
2915
470
  width: width,
2916
471
  height: height,
2917
472
  color: color,
@@ -2919,7 +474,7 @@ var PremiumStoryIcon = function PremiumStoryIcon(_ref) {
2919
474
  });
2920
475
 
2921
476
  case "key":
2922
- return /*#__PURE__*/React.createElement(KeyIcon, {
477
+ return /*#__PURE__*/React__default["default"].createElement(KeyIcon, {
2923
478
  width: width,
2924
479
  height: height,
2925
480
  color: color,
@@ -2927,7 +482,7 @@ var PremiumStoryIcon = function PremiumStoryIcon(_ref) {
2927
482
  });
2928
483
 
2929
484
  default:
2930
- return /*#__PURE__*/React.createElement(StarIcon, {
485
+ return /*#__PURE__*/React__default["default"].createElement(StarIcon, {
2931
486
  width: width,
2932
487
  height: height,
2933
488
  color: color,
@@ -2936,21 +491,21 @@ var PremiumStoryIcon = function PremiumStoryIcon(_ref) {
2936
491
  }
2937
492
  };
2938
493
  PremiumStoryIcon.propTypes = {
2939
- width: PropTypes.string,
2940
- height: PropTypes.string,
2941
- color: PropTypes.string,
2942
- iconType: PropTypes.string,
2943
- positionTop: PropTypes.string
494
+ width: PropTypes__default["default"].string,
495
+ height: PropTypes__default["default"].string,
496
+ color: PropTypes__default["default"].string,
497
+ iconType: PropTypes__default["default"].string,
498
+ positionTop: PropTypes__default["default"].string
2944
499
  };
2945
500
 
2946
501
  function LiveIcon() {
2947
- return /*#__PURE__*/React.createElement("svg", {
502
+ return /*#__PURE__*/React__default["default"].createElement("svg", {
2948
503
  className: "live-icon",
2949
504
  xmlns: "http://www.w3.org/2000/svg",
2950
505
  width: "25",
2951
506
  height: "24",
2952
507
  viewBox: "0 0 25 24"
2953
- }, /*#__PURE__*/React.createElement("path", {
508
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
2954
509
  fill: "#ff5858",
2955
510
  d: "M12 18a6 6 0 110-12 6 6 0 010 12zm0 2.5a8.5 8.5 0 110-17 8.5 8.5 0 010 17zm0-1a7.5 7.5 0 100-15 7.5 7.5 0 000 15z"
2956
511
  }));
@@ -2979,8 +534,8 @@ var Headline = function Headline(_ref) {
2979
534
  enablePremiumStoryIcon = _premiumStoryIconConf3 === void 0 ? false : _premiumStoryIconConf3,
2980
535
  _premiumStoryIconConf4 = premiumStoryIconConfig.showLiveIcon,
2981
536
  showLiveIcon = _premiumStoryIconConf4 === void 0 ? false : _premiumStoryIconConf4;
2982
- var alternateHeadline = get_1(story, ["alternative", "home", "default", "headline"]);
2983
- var premiumStory = enablePremiumStoryIcon && get_1(story, ["access"]) === "subscription";
537
+ var alternateHeadline = lodash.get(story, ["alternative", "home", "default", "headline"]);
538
+ var premiumStory = enablePremiumStoryIcon && lodash.get(story, ["access"]) === "subscription";
2984
539
  var headline = alternateHeadline || story.headline;
2985
540
  var HeaderTag = "h" + headerLevel;
2986
541
 
@@ -3006,38 +561,38 @@ var Headline = function Headline(_ref) {
3006
561
  var textColor = getTextColor(configData.theme);
3007
562
  var wrapperClass = premiumStory ? "wrapper" : "";
3008
563
  var iconSize = "24px";
3009
- var enableLiveIcon = showLiveIcon && story["story-template"] === "live-blog" && !get_1(story, ["metadata", "is-closed"], false);
3010
- return /*#__PURE__*/React.createElement("div", {
564
+ var enableLiveIcon = showLiveIcon && story["story-template"] === "live-blog" && !lodash.get(story, ["metadata", "is-closed"], false);
565
+ return /*#__PURE__*/React__default["default"].createElement("div", {
3011
566
  "data-test-id": "headline",
3012
- className: "arrow-component arr--headline " + _getClassName(wrapperClass, _styleModuleImportMap$d)
3013
- }, premiumStory && /*#__PURE__*/React.createElement(PremiumStoryIcon, {
567
+ className: "arrow-component arr--headline " + _getClassName__default["default"](wrapperClass, _styleModuleImportMap$d)
568
+ }, premiumStory && /*#__PURE__*/React__default["default"].createElement(PremiumStoryIcon, {
3014
569
  width: iconSize,
3015
570
  height: iconSize,
3016
571
  color: iconColor,
3017
572
  iconType: iconStyle,
3018
573
  positionTop: positionHeadline()
3019
- }), isLink ? /*#__PURE__*/React.createElement(Link, {
574
+ }), isLink ? /*#__PURE__*/React__default["default"].createElement(components.Link, {
3020
575
  href: getStoryUrl(story, "/".concat(story.slug)),
3021
576
  externalLink: isExternalStory(story),
3022
577
  "aria-label": "headline"
3023
- }, /*#__PURE__*/React.createElement(HeaderTag, {
3024
- className: _getClassName("headline ".concat(textColor), _styleModuleImportMap$d)
3025
- }, enableLiveIcon && /*#__PURE__*/React.createElement(LiveIcon, null), headline)) : /*#__PURE__*/React.createElement(HeaderTag, {
3026
- className: _getClassName("headline ".concat(textColor), _styleModuleImportMap$d)
3027
- }, enableLiveIcon && /*#__PURE__*/React.createElement(LiveIcon, null), headline));
578
+ }, /*#__PURE__*/React__default["default"].createElement(HeaderTag, {
579
+ className: _getClassName__default["default"]("headline ".concat(textColor), _styleModuleImportMap$d)
580
+ }, enableLiveIcon && /*#__PURE__*/React__default["default"].createElement(LiveIcon, null), headline)) : /*#__PURE__*/React__default["default"].createElement(HeaderTag, {
581
+ className: _getClassName__default["default"]("headline ".concat(textColor), _styleModuleImportMap$d)
582
+ }, enableLiveIcon && /*#__PURE__*/React__default["default"].createElement(LiveIcon, null), headline));
3028
583
  };
3029
584
  Headline.propTypes = {
3030
585
  /** The Story Object from the API response */
3031
- story: PropTypes.object.isRequired,
586
+ story: PropTypes__default["default"].object.isRequired,
3032
587
 
3033
588
  /** Header tags ranging h1-h6, where h[headerLevel] */
3034
- headerLevel: PropTypes.string,
3035
- premiumStoryIconConfig: PropTypes.shape({
3036
- iconColor: PropTypes.string,
3037
- iconType: PropTypes.string,
3038
- enablePremiumStoryIcon: PropTypes.bool
589
+ headerLevel: PropTypes__default["default"].string,
590
+ premiumStoryIconConfig: PropTypes__default["default"].shape({
591
+ iconColor: PropTypes__default["default"].string,
592
+ iconType: PropTypes__default["default"].string,
593
+ enablePremiumStoryIcon: PropTypes__default["default"].bool
3039
594
  }),
3040
- isLink: PropTypes.bool
595
+ isLink: PropTypes__default["default"].bool
3041
596
  };
3042
597
  Headline.defaultProps = {
3043
598
  headerLevel: "6",
@@ -3061,28 +616,28 @@ var Subheadline = function Subheadline(_ref) {
3061
616
  forceShowAtom = _ref.forceShowAtom,
3062
617
  showFullContent = _ref.showFullContent;
3063
618
  var config = useStateValue() || {};
3064
- var subheadline = forceShowAtom || get_1(config, ["showSubheadline"], true);
619
+ var subheadline = forceShowAtom || lodash.get(config, ["showSubheadline"], true);
3065
620
  if (!subheadline) return null;
3066
621
  var textColor = getTextColor(config.theme);
3067
- return /*#__PURE__*/React.createElement("div", {
622
+ return /*#__PURE__*/React__default["default"].createElement("div", {
3068
623
  style: {
3069
624
  WebkitLineClamp: lineClamp
3070
625
  },
3071
626
  "data-test-id": "subheadline",
3072
- className: ("p-alt arr--sub-headline arrow-component ".concat(clazzName) ? "p-alt arr--sub-headline arrow-component ".concat(clazzName) + " " : "") + _getClassName("subheadline ".concat(textColor), _styleModuleImportMap$c)
627
+ className: ("p-alt arr--sub-headline arrow-component ".concat(clazzName) ? "p-alt arr--sub-headline arrow-component ".concat(clazzName) + " " : "") + _getClassName__default["default"]("subheadline ".concat(textColor), _styleModuleImportMap$c)
3073
628
  }, showFullContent || typeof lineClamp === "number" ? story.subheadline : truncate(story.subheadline, truncateChars, true));
3074
629
  };
3075
630
  Subheadline.propTypes = {
3076
631
  /** The Story Object from the API response */
3077
- story: PropTypes.object.isRequired,
632
+ story: PropTypes__default["default"].object.isRequired,
3078
633
  // Restricts the number of lines for subheadline.
3079
- lineClamp: PropTypes.number,
634
+ lineClamp: PropTypes__default["default"].number,
3080
635
 
3081
636
  /** Number of characters to truncate the subheadline */
3082
- truncateChars: PropTypes.number,
3083
- clazzName: PropTypes.string,
3084
- forceShowAtom: PropTypes.bool,
3085
- showFullContent: PropTypes.bool
637
+ truncateChars: PropTypes__default["default"].number,
638
+ clazzName: PropTypes__default["default"].string,
639
+ forceShowAtom: PropTypes__default["default"].bool,
640
+ showFullContent: PropTypes__default["default"].bool
3086
641
  };
3087
642
  Subheadline.defaultProps = {
3088
643
  forceShowAtom: false,
@@ -3104,22 +659,22 @@ var TimeStamp = function TimeStamp(_ref) {
3104
659
  _ref$config = _ref.config,
3105
660
  config = _ref$config === void 0 ? {} : _ref$config;
3106
661
  var configState = useStateValue() || {};
3107
- var isTime = get_1(config, ["showTime"], get_1(configState, ["showTime"], true));
662
+ var isTime = lodash.get(config, ["showTime"], lodash.get(configState, ["showTime"], true));
3108
663
  var time = story["last-published-at"] || story["first-published-at"];
3109
664
  var isBottomClasses = isBottom ? "bottom-fix" : "";
3110
665
  var textColor = getTextColor(configState.theme);
3111
- return /*#__PURE__*/React.createElement(React.Fragment, null, isTime && /*#__PURE__*/React.createElement("div", {
666
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, isTime && /*#__PURE__*/React__default["default"].createElement("div", {
3112
667
  "data-test-id": "publish-time",
3113
- className: "time arr--publish-time " + _getClassName("time ".concat(textColor, " ").concat(isBottomClasses), _styleModuleImportMap$b)
3114
- }, /*#__PURE__*/React.createElement("div", {
668
+ className: "time arr--publish-time " + _getClassName__default["default"]("time ".concat(textColor, " ").concat(isBottomClasses), _styleModuleImportMap$b)
669
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
3115
670
  className: "timestamp-m_time-wrapper__3O2lM"
3116
671
  }, getTimeStamp(time, formatter, config))));
3117
672
  };
3118
673
  TimeStamp.propTypes = {
3119
674
  /** The Story Object from the API response */
3120
- story: PropTypes.object,
3121
- isBottom: PropTypes.bool,
3122
- config: PropTypes.object
675
+ story: PropTypes__default["default"].object,
676
+ isBottom: PropTypes__default["default"].bool,
677
+ config: PropTypes__default["default"].object
3123
678
  };
3124
679
 
3125
680
  var _styleModuleImportMap$a = {
@@ -3145,9 +700,9 @@ var AuthorBase = function AuthorBase(_ref) {
3145
700
  _ref$config = _ref.config,
3146
701
  config = _ref$config === void 0 ? {} : _ref$config;
3147
702
  var configData = useStateValue() || {};
3148
- var isAuthor = get_1(configData, ["showAuthor"], true);
703
+ var isAuthor = lodash.get(configData, ["showAuthor"], true);
3149
704
 
3150
- var _get = get_1(story, ["authors", "0"], ""),
705
+ var _get = lodash.get(story, ["authors", "0"], ""),
3151
706
  avatarUrl = _get["avatar-url"],
3152
707
  avatarS3Key = _get["avatar-s3-key"],
3153
708
  authorName = _get.name,
@@ -3155,17 +710,17 @@ var AuthorBase = function AuthorBase(_ref) {
3155
710
 
3156
711
  var isBottomClasses = isBottom ? "bottom-fix" : "";
3157
712
  var textColor = getTextColor(configData.theme);
3158
- var mountAt = get_1(config, ["mountAt"], "");
713
+ var mountAt = lodash.get(config, ["mountAt"], "");
3159
714
 
3160
715
  var authorImage = function authorImage(dir) {
3161
716
  if (!avatarUrl && !avatarS3Key) {
3162
717
  return null;
3163
718
  }
3164
719
 
3165
- return /*#__PURE__*/React.createElement("div", {
720
+ return /*#__PURE__*/React__default["default"].createElement("div", {
3166
721
  "data-test-id": "author-image",
3167
- className: _getClassName("author-image ".concat(dir, "-image"), _styleModuleImportMap$a)
3168
- }, /*#__PURE__*/React.createElement("figure", null, avatarS3Key ? /*#__PURE__*/React.createElement(ResponsiveImage, {
722
+ className: _getClassName__default["default"]("author-image ".concat(dir, "-image"), _styleModuleImportMap$a)
723
+ }, /*#__PURE__*/React__default["default"].createElement("figure", null, avatarS3Key ? /*#__PURE__*/React__default["default"].createElement(components.ResponsiveImage, {
3169
724
  slug: avatarS3Key,
3170
725
  "aspect-ratio": [1, 1],
3171
726
  defaultWidth: 400,
@@ -3173,49 +728,49 @@ var AuthorBase = function AuthorBase(_ref) {
3173
728
  auto: ["format", "compress"]
3174
729
  },
3175
730
  alt: authorName
3176
- }) : /*#__PURE__*/React.createElement("img", {
731
+ }) : /*#__PURE__*/React__default["default"].createElement("img", {
3177
732
  src: avatarUrl
3178
733
  })));
3179
734
  };
3180
735
 
3181
736
  var isPrefix = function isPrefix(dir) {
3182
737
  if (prefix) {
3183
- return /*#__PURE__*/React.createElement("div", {
3184
- className: "arr-author-prefix " + _getClassName("prefix ".concat(textColor), _styleModuleImportMap$a)
738
+ return /*#__PURE__*/React__default["default"].createElement("div", {
739
+ className: "arr-author-prefix " + _getClassName__default["default"]("prefix ".concat(textColor), _styleModuleImportMap$a)
3185
740
  }, prefix);
3186
741
  }
3187
742
 
3188
743
  return !hideAuthorImage && authorImage(dir);
3189
744
  };
3190
745
 
3191
- return /*#__PURE__*/React.createElement(React.Fragment, null, isAuthor && /*#__PURE__*/React.createElement(Link, {
746
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, isAuthor && /*#__PURE__*/React__default["default"].createElement(components.Link, {
3192
747
  href: "".concat(mountAt, "/author/") + slug,
3193
748
  "aria-label": "author-name",
3194
- className: "author-name arr-author-name arrow-component " + _getClassName("author ".concat(isBottomClasses), _styleModuleImportMap$a)
3195
- }, isPrefix("ltr"), /*#__PURE__*/React.createElement("div", {
749
+ className: "author-name arr-author-name arrow-component " + _getClassName__default["default"]("author ".concat(isBottomClasses), _styleModuleImportMap$a)
750
+ }, isPrefix("ltr"), /*#__PURE__*/React__default["default"].createElement("div", {
3196
751
  "data-test-id": "author-name",
3197
- className: "author-name " + _getClassName("author-name ".concat(textColor), _styleModuleImportMap$a)
752
+ className: "author-name " + _getClassName__default["default"]("author-name ".concat(textColor), _styleModuleImportMap$a)
3198
753
  }, authorName || story["author-name"]), !prefix && isPrefix("rtl")));
3199
754
  };
3200
755
 
3201
756
  function mapStateToProps$1(state) {
3202
757
  return {
3203
- config: get_1(state, ["qt", "config"], {})
758
+ config: lodash.get(state, ["qt", "config"], {})
3204
759
  };
3205
760
  }
3206
761
 
3207
- var Author = connect(mapStateToProps$1)(AuthorBase);
762
+ var Author = reactRedux.connect(mapStateToProps$1)(AuthorBase);
3208
763
  AuthorBase.propTypes = {
3209
764
  /** The Story Object from the API response */
3210
- story: PropTypes.object.isRequired,
765
+ story: PropTypes__default["default"].object.isRequired,
3211
766
 
3212
767
  /** Hide Author Avatar Image */
3213
- hideAuthorImage: PropTypes.bool,
768
+ hideAuthorImage: PropTypes__default["default"].bool,
3214
769
  // fix Author bottom of the storyCard
3215
- isBottom: PropTypes.bool,
770
+ isBottom: PropTypes__default["default"].bool,
3216
771
  // fix prefix before the author name
3217
- prefix: PropTypes.string,
3218
- config: PropTypes.object
772
+ prefix: PropTypes__default["default"].string,
773
+ config: PropTypes__default["default"].object
3219
774
  };
3220
775
  AuthorBase.defaultProps = {
3221
776
  hideAuthorImage: false,
@@ -3236,14 +791,14 @@ var Dot = function Dot(_ref) {
3236
791
  height = _ref$height === void 0 ? "3px" : _ref$height,
3237
792
  _ref$color = _ref.color,
3238
793
  color = _ref$color === void 0 ? "light" : _ref$color;
3239
- return /*#__PURE__*/React.createElement("div", {
3240
- className: _getClassName(color, _styleModuleImportMap$9)
3241
- }, /*#__PURE__*/React.createElement("svg", {
794
+ return /*#__PURE__*/React__default["default"].createElement("div", {
795
+ className: _getClassName__default["default"](color, _styleModuleImportMap$9)
796
+ }, /*#__PURE__*/React__default["default"].createElement("svg", {
3242
797
  xmlns: "http://www.w3.org/2000/svg",
3243
798
  width: width,
3244
799
  height: height,
3245
800
  viewBox: "0 0 3 3"
3246
- }, /*#__PURE__*/React.createElement("circle", {
801
+ }, /*#__PURE__*/React__default["default"].createElement("circle", {
3247
802
  cx: "87",
3248
803
  cy: "9",
3249
804
  r: "1",
@@ -3254,9 +809,9 @@ var Dot = function Dot(_ref) {
3254
809
  };
3255
810
  Dot.propTypes = {
3256
811
  /** height , width and color of the dot icon */
3257
- color: PropTypes.string,
3258
- width: PropTypes.string,
3259
- height: PropTypes.string
812
+ color: PropTypes__default["default"].string,
813
+ width: PropTypes__default["default"].string,
814
+ height: PropTypes__default["default"].string
3260
815
  };
3261
816
 
3262
817
  var _styleModuleImportMap$8 = {
@@ -3272,22 +827,22 @@ var Divider = function Divider(_ref) {
3272
827
  height = _ref$height === void 0 ? "10" : _ref$height,
3273
828
  _ref$color = _ref.color,
3274
829
  color = _ref$color === void 0 ? "light" : _ref$color;
3275
- return /*#__PURE__*/React.createElement("div", {
3276
- className: _getClassName(color, _styleModuleImportMap$8)
3277
- }, /*#__PURE__*/React.createElement("svg", {
830
+ return /*#__PURE__*/React__default["default"].createElement("div", {
831
+ className: _getClassName__default["default"](color, _styleModuleImportMap$8)
832
+ }, /*#__PURE__*/React__default["default"].createElement("svg", {
3278
833
  xmlns: "http://www.w3.org/2000/svg",
3279
834
  width: width,
3280
835
  height: height
3281
- }, /*#__PURE__*/React.createElement("path", {
836
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
3282
837
  fill: "inherit",
3283
838
  d: "M0 0h1v10H0z"
3284
839
  })));
3285
840
  };
3286
841
  Divider.propTypes = {
3287
842
  /** height , width and color of the dot icon */
3288
- color: PropTypes.string,
3289
- width: PropTypes.string,
3290
- height: PropTypes.string
843
+ color: PropTypes__default["default"].string,
844
+ width: PropTypes__default["default"].string,
845
+ height: PropTypes__default["default"].string
3291
846
  };
3292
847
 
3293
848
  var _styleModuleImportMap$7 = {
@@ -3305,28 +860,28 @@ var ReadTime = function ReadTime(_ref) {
3305
860
  _ref$isLightTheme = _ref.isLightTheme,
3306
861
  isLightTheme = _ref$isLightTheme === void 0 ? false : _ref$isLightTheme;
3307
862
  var config = useStateValue() || {};
3308
- var showReadTime = get_1(config, ["showReadTime"]) || get_1(opts, ["showReadTime"], true);
3309
- var readTime = get_1(story, ["read-time"], 0);
863
+ var showReadTime = lodash.get(config, ["showReadTime"]) || lodash.get(opts, ["showReadTime"], true);
864
+ var readTime = lodash.get(story, ["read-time"], 0);
3310
865
  var textColor = isLightTheme ? "light" : getTextColor(config.theme);
3311
866
  if (!showReadTime || !readTime) return null;
3312
- var timeToRead = get_1(opts, ["localizedTimeToRead"]) || "min read";
3313
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("div", {
867
+ var timeToRead = lodash.get(opts, ["localizedTimeToRead"]) || "min read";
868
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("div", {
3314
869
  "data-test-id": "read-time",
3315
- className: "arrow-component arr--read-time " + _getClassName("read-time-wrapper ".concat(textColor), _styleModuleImportMap$7)
3316
- }, /*#__PURE__*/React.createElement("span", {
870
+ className: "arrow-component arr--read-time " + _getClassName__default["default"]("read-time-wrapper ".concat(textColor), _styleModuleImportMap$7)
871
+ }, /*#__PURE__*/React__default["default"].createElement("span", {
3317
872
  className: "read-time-indicator read-time-m_dot-indicator__3Sqh2"
3318
- }, /*#__PURE__*/React.createElement(Dot, {
873
+ }, /*#__PURE__*/React__default["default"].createElement(Dot, {
3319
874
  color: textColor
3320
- })), /*#__PURE__*/React.createElement("span", null, readTime, " ", timeToRead)));
875
+ })), /*#__PURE__*/React__default["default"].createElement("span", null, readTime, " ", timeToRead)));
3321
876
  };
3322
877
  ReadTime.propTypes = {
3323
- story: PropTypes.shape({
3324
- "read-time": PropTypes.number
878
+ story: PropTypes__default["default"].shape({
879
+ "read-time": PropTypes__default["default"].number
3325
880
  }),
3326
- opts: PropTypes.shape({
3327
- showReadTime: PropTypes.bool
881
+ opts: PropTypes__default["default"].shape({
882
+ showReadTime: PropTypes__default["default"].bool
3328
883
  }),
3329
- isLightTheme: PropTypes.bool
884
+ isLightTheme: PropTypes__default["default"].bool
3330
885
  };
3331
886
 
3332
887
  var _styleModuleImportMap$6 = {
@@ -3348,42 +903,42 @@ var AuthorWithTime = function AuthorWithTime(_ref) {
3348
903
  config = _ref$config === void 0 ? {} : _ref$config,
3349
904
  isLightTheme = _ref.isLightTheme;
3350
905
  var configState = useStateValue() || {};
3351
- var isAuthor = get_1(config, ["showAuthor"], get_1(configState, ["showAuthor"], true));
3352
- var isTime = get_1(config, ["showTime"], get_1(configState, ["showTime"], true));
3353
- var isReadTime = get_1(configState, ["showReadTime"], true);
906
+ var isAuthor = lodash.get(config, ["showAuthor"], lodash.get(configState, ["showAuthor"], true));
907
+ var isTime = lodash.get(config, ["showTime"], lodash.get(configState, ["showTime"], true));
908
+ var isReadTime = lodash.get(configState, ["showReadTime"], true);
3354
909
  var isBottomClasses = isBottom ? "bottom-fix" : "";
3355
910
  var seperatorStyle = separator === "dot" ? "dot" : "dash";
3356
911
  var textColor = isLightTheme ? "light" : getTextColor(configState.theme);
3357
912
 
3358
913
  var getSeparator = function getSeparator() {
3359
914
  if (separator === "divider") {
3360
- return /*#__PURE__*/React.createElement(Divider, {
915
+ return /*#__PURE__*/React__default["default"].createElement(Divider, {
3361
916
  color: textColor
3362
917
  });
3363
918
  }
3364
919
 
3365
- return /*#__PURE__*/React.createElement(Dot, {
920
+ return /*#__PURE__*/React__default["default"].createElement(Dot, {
3366
921
  color: textColor
3367
922
  });
3368
923
  };
3369
924
 
3370
925
  var getTimeStamp = function getTimeStamp() {
3371
926
  if (!isTime) return null;
3372
- return /*#__PURE__*/React.createElement(React.Fragment, null, isAuthor && /*#__PURE__*/React.createElement("span", {
3373
- className: "arr-separator " + _getClassName("".concat(seperatorStyle), _styleModuleImportMap$6)
3374
- }, getSeparator()), /*#__PURE__*/React.createElement(TimeStamp, {
927
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, isAuthor && /*#__PURE__*/React__default["default"].createElement("span", {
928
+ className: "arr-separator " + _getClassName__default["default"]("".concat(seperatorStyle), _styleModuleImportMap$6)
929
+ }, getSeparator()), /*#__PURE__*/React__default["default"].createElement(TimeStamp, {
3375
930
  story: story,
3376
931
  config: config
3377
- }), isReadTime && /*#__PURE__*/React.createElement(ReadTime, {
932
+ }), isReadTime && /*#__PURE__*/React__default["default"].createElement(ReadTime, {
3378
933
  story: story,
3379
934
  opts: config,
3380
935
  isLightTheme: isLightTheme
3381
936
  }));
3382
937
  };
3383
938
 
3384
- return /*#__PURE__*/React.createElement("div", {
3385
- className: "arr--author-time " + _getClassName("author-time-wrapper ".concat(isBottomClasses), _styleModuleImportMap$6)
3386
- }, isAuthor ? /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Author, {
939
+ return /*#__PURE__*/React__default["default"].createElement("div", {
940
+ className: "arr--author-time " + _getClassName__default["default"]("author-time-wrapper ".concat(isBottomClasses), _styleModuleImportMap$6)
941
+ }, isAuthor ? /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement(Author, {
3387
942
  story: story,
3388
943
  isBottom: true,
3389
944
  hideAuthorImage: hideAuthorImage,
@@ -3391,19 +946,19 @@ var AuthorWithTime = function AuthorWithTime(_ref) {
3391
946
  }), getTimeStamp()) : getTimeStamp());
3392
947
  };
3393
948
  AuthorWithTime.propTypes = {
3394
- story: PropTypes.object,
949
+ story: PropTypes__default["default"].object,
3395
950
 
3396
951
  /** Style of separator between the Author & Timestamp */
3397
- separator: PropTypes.oneOf(["dot", "divider"]),
952
+ separator: PropTypes__default["default"].oneOf(["dot", "divider"]),
3398
953
 
3399
954
  /** hide the author image */
3400
- hideAuthorImage: PropTypes.bool,
955
+ hideAuthorImage: PropTypes__default["default"].bool,
3401
956
  // fix author and time at the end
3402
- isBottom: PropTypes.bool,
957
+ isBottom: PropTypes__default["default"].bool,
3403
958
  // fix prefix before the author name
3404
- prefix: PropTypes.string,
3405
- config: PropTypes.object,
3406
- isLightTheme: PropTypes.bool
959
+ prefix: PropTypes__default["default"].string,
960
+ config: PropTypes__default["default"].object,
961
+ isLightTheme: PropTypes__default["default"].bool
3407
962
  };
3408
963
  AuthorWithTime.defaultProps = {
3409
964
  separator: "dot",
@@ -3413,67 +968,6 @@ AuthorWithTime.defaultProps = {
3413
968
  isLightTheme: false
3414
969
  };
3415
970
 
3416
- function _arrayWithHoles(arr) {
3417
- if (Array.isArray(arr)) return arr;
3418
- }
3419
-
3420
- function _iterableToArrayLimit(arr, i) {
3421
- var _i = arr == null ? null : typeof Symbol !== "undefined" && arr[Symbol.iterator] || arr["@@iterator"];
3422
-
3423
- if (_i == null) return;
3424
- var _arr = [];
3425
- var _n = true;
3426
- var _d = false;
3427
-
3428
- var _s, _e;
3429
-
3430
- try {
3431
- for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) {
3432
- _arr.push(_s.value);
3433
-
3434
- if (i && _arr.length === i) break;
3435
- }
3436
- } catch (err) {
3437
- _d = true;
3438
- _e = err;
3439
- } finally {
3440
- try {
3441
- if (!_n && _i["return"] != null) _i["return"]();
3442
- } finally {
3443
- if (_d) throw _e;
3444
- }
3445
- }
3446
-
3447
- return _arr;
3448
- }
3449
-
3450
- function _arrayLikeToArray(arr, len) {
3451
- if (len == null || len > arr.length) len = arr.length;
3452
-
3453
- for (var i = 0, arr2 = new Array(len); i < len; i++) {
3454
- arr2[i] = arr[i];
3455
- }
3456
-
3457
- return arr2;
3458
- }
3459
-
3460
- function _unsupportedIterableToArray(o, minLen) {
3461
- if (!o) return;
3462
- if (typeof o === "string") return _arrayLikeToArray(o, minLen);
3463
- var n = Object.prototype.toString.call(o).slice(8, -1);
3464
- if (n === "Object" && o.constructor) n = o.constructor.name;
3465
- if (n === "Map" || n === "Set") return Array.from(o);
3466
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);
3467
- }
3468
-
3469
- function _nonIterableRest() {
3470
- throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
3471
- }
3472
-
3473
- function _slicedToArray(arr, i) {
3474
- return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest();
3475
- }
3476
-
3477
971
  var ImageFallbackIcon = function ImageFallbackIcon(_ref) {
3478
972
  var _ref$width = _ref.width,
3479
973
  width = _ref$width === void 0 ? 40 : _ref$width,
@@ -3481,27 +975,27 @@ var ImageFallbackIcon = function ImageFallbackIcon(_ref) {
3481
975
  height = _ref$height === void 0 ? 30 : _ref$height,
3482
976
  _ref$iconColor = _ref.iconColor,
3483
977
  iconColor = _ref$iconColor === void 0 ? "#99B0CB" : _ref$iconColor;
3484
- return /*#__PURE__*/React.createElement("svg", {
978
+ return /*#__PURE__*/React__default["default"].createElement("svg", {
3485
979
  width: width,
3486
980
  height: height,
3487
981
  viewBox: "0 0 102 76",
3488
982
  version: "1.1"
3489
- }, /*#__PURE__*/React.createElement("g", {
983
+ }, /*#__PURE__*/React__default["default"].createElement("g", {
3490
984
  id: "demo-home-copy",
3491
985
  stroke: "none",
3492
986
  strokeWidth: "1",
3493
987
  fill: "none",
3494
988
  fillRule: "evenodd",
3495
989
  transform: "translate(-377.000000, -314.000000)"
3496
- }, /*#__PURE__*/React.createElement("g", {
990
+ }, /*#__PURE__*/React__default["default"].createElement("g", {
3497
991
  id: "Group-13",
3498
992
  transform: "translate(377.000000, 314.000000)"
3499
- }, /*#__PURE__*/React.createElement("path", {
993
+ }, /*#__PURE__*/React__default["default"].createElement("path", {
3500
994
  d: "M43.2,49.7 L62.2,19.2 L87.2,59.4 L17,59.4 L32.8,39.4 L43.2,49.7 Z M29.9,28.6 C25.8683213,28.6 22.6,25.3316787 22.6,21.3 C22.6,17.2683213 25.8683213,14 29.9,14 C33.9316787,14 37.2,17.2683213 37.2,21.3 C37.2,25.3316787 33.9316787,28.6 29.9,28.6 Z",
3501
995
  id: "Combined-Shape",
3502
996
  fill: iconColor,
3503
997
  fillRule: "nonzero"
3504
- }), /*#__PURE__*/React.createElement("rect", {
998
+ }), /*#__PURE__*/React__default["default"].createElement("rect", {
3505
999
  id: "Rectangle-19",
3506
1000
  stroke: iconColor,
3507
1001
  strokeWidth: "3",
@@ -3513,24 +1007,24 @@ var ImageFallbackIcon = function ImageFallbackIcon(_ref) {
3513
1007
  }))));
3514
1008
  };
3515
1009
  ImageFallbackIcon.propTypes = {
3516
- width: PropTypes.object,
3517
- height: PropTypes.object,
3518
- iconColor: PropTypes.object
1010
+ width: PropTypes__default["default"].object,
1011
+ height: PropTypes__default["default"].object,
1012
+ iconColor: PropTypes__default["default"].object
3519
1013
  };
3520
1014
 
3521
1015
  var imageFallback = function imageFallback() {
3522
- return /*#__PURE__*/React.createElement("div", {
1016
+ return /*#__PURE__*/React__default["default"].createElement("div", {
3523
1017
  className: "arr--fallback-image fallback-m_image__1GYCJ fallback-m_image-position__3KddP"
3524
- }, /*#__PURE__*/React.createElement("figure", {
1018
+ }, /*#__PURE__*/React__default["default"].createElement("figure", {
3525
1019
  className: "arr--fallback-svg fallback-m_fallback-svg__tK9fL"
3526
- }, /*#__PURE__*/React.createElement(ImageFallbackIcon, null)));
1020
+ }, /*#__PURE__*/React__default["default"].createElement(ImageFallbackIcon, null)));
3527
1021
  };
3528
1022
 
3529
1023
  var FallbackImage = function FallbackImage(_ref) {
3530
1024
  var slug = _ref.slug;
3531
1025
 
3532
1026
  if (slug) {
3533
- return /*#__PURE__*/React.createElement(Link, {
1027
+ return /*#__PURE__*/React__default["default"].createElement(components.Link, {
3534
1028
  href: slug,
3535
1029
  "aria-label": "image-fallback"
3536
1030
  }, imageFallback());
@@ -3539,23 +1033,23 @@ var FallbackImage = function FallbackImage(_ref) {
3539
1033
  }
3540
1034
  };
3541
1035
  FallbackImage.propTypes = {
3542
- slug: PropTypes.string
1036
+ slug: PropTypes__default["default"].string
3543
1037
  };
3544
1038
 
3545
1039
  var HyperLinkIcon = function HyperLinkIcon() {
3546
- return /*#__PURE__*/React.createElement("svg", {
1040
+ return /*#__PURE__*/React__default["default"].createElement("svg", {
3547
1041
  xmlns: "http://www.w3.org/2000/svg",
3548
1042
  width: "36",
3549
1043
  height: "28"
3550
- }, /*#__PURE__*/React.createElement("g", {
1044
+ }, /*#__PURE__*/React__default["default"].createElement("g", {
3551
1045
  fill: "none",
3552
1046
  fillRule: "evenodd"
3553
- }, /*#__PURE__*/React.createElement("rect", {
1047
+ }, /*#__PURE__*/React__default["default"].createElement("rect", {
3554
1048
  width: "36",
3555
1049
  height: "28",
3556
1050
  fill: "#3D6FCF",
3557
1051
  rx: "4"
3558
- }), /*#__PURE__*/React.createElement("path", {
1052
+ }), /*#__PURE__*/React__default["default"].createElement("path", {
3559
1053
  stroke: "#FFF",
3560
1054
  strokeLinecap: "round",
3561
1055
  strokeLinejoin: "round",
@@ -3568,16 +1062,16 @@ var HyperLink = function HyperLink(_ref) {
3568
1062
  var _ref$hyperLink = _ref.hyperLink,
3569
1063
  hyperLink = _ref$hyperLink === void 0 ? "" : _ref$hyperLink;
3570
1064
  if (!hyperLink) return null;
3571
- return /*#__PURE__*/React.createElement(Link, {
1065
+ return /*#__PURE__*/React__default["default"].createElement(components.Link, {
3572
1066
  href: hyperLink,
3573
1067
  "aria-label": "hyperlink-button",
3574
1068
  className: "arr--hyperlink-button hyperlink-m_hyperlink-button__1CqWx",
3575
1069
  target: "_blank",
3576
1070
  rel: "noopener noreferrer"
3577
- }, /*#__PURE__*/React.createElement(HyperLinkIcon, null));
1071
+ }, /*#__PURE__*/React__default["default"].createElement(HyperLinkIcon, null));
3578
1072
  };
3579
1073
  HyperLink.propTypes = {
3580
- hyperLink: PropTypes.string
1074
+ hyperLink: PropTypes__default["default"].string
3581
1075
  };
3582
1076
 
3583
1077
  var _styleModuleImportMap$5 = {
@@ -3613,8 +1107,8 @@ var HeroImage = function HeroImage(_ref) {
3613
1107
  StoryTemplateIcon = _config$StoryTemplate === void 0 ? function () {
3614
1108
  return null;
3615
1109
  } : _config$StoryTemplate;
3616
- var showImagePlaceholder = useSelector(function (state) {
3617
- return get_1(state, ["qt", "config", "showPlaceholder"]);
1110
+ var showImagePlaceholder = reactRedux.useSelector(function (state) {
1111
+ return lodash.get(state, ["qt", "config", "showPlaceholder"]);
3618
1112
  });
3619
1113
  var getPlaceholderStyleName = showImagePlaceholder ? "placeholder" : "";
3620
1114
  var fullBleed = FullBleed ? "" : "with-padding";
@@ -3623,7 +1117,7 @@ var HeroImage = function HeroImage(_ref) {
3623
1117
  var heroImageMobClasses = isHorizontalMobile ? "right-padding-mob" : "";
3624
1118
 
3625
1119
  var getPadding = function getPadding(aspectRatio) {
3626
- var _aspectRatio = _slicedToArray(aspectRatio, 2),
1120
+ var _aspectRatio = _slicedToArray__default["default"](aspectRatio, 2),
3627
1121
  height = _aspectRatio[0],
3628
1122
  width = _aspectRatio[1];
3629
1123
 
@@ -3635,7 +1129,7 @@ var HeroImage = function HeroImage(_ref) {
3635
1129
  return 0;
3636
1130
  };
3637
1131
 
3638
- var _aspectRatio2 = _slicedToArray(aspectRatio, 2),
1132
+ var _aspectRatio2 = _slicedToArray__default["default"](aspectRatio, 2),
3639
1133
  mobileAspectRatio = _aspectRatio2[0],
3640
1134
  _aspectRatio2$ = _aspectRatio2[1],
3641
1135
  desktopAspectRatio = _aspectRatio2$ === void 0 ? mobileAspectRatio : _aspectRatio2$;
@@ -3643,43 +1137,43 @@ var HeroImage = function HeroImage(_ref) {
3643
1137
  var isMobile = clientWidth("mobile");
3644
1138
  var imageAspectRatio = isMobile ? mobileAspectRatio : desktopAspectRatio;
3645
1139
  var imagePadding = isMobile ? getPadding(mobileAspectRatio) : getPadding(desktopAspectRatio);
3646
- var slug = get_1(story, ["hero-image-s3-key"]) || get_1(story, ["alternative", "home", "default", "hero-image", "hero-image-s3-key"]);
3647
- var hyperLink = get_1(story, ["hero-image-hyperlink"], "");
1140
+ var slug = lodash.get(story, ["hero-image-s3-key"]) || lodash.get(story, ["alternative", "home", "default", "hero-image", "hero-image-s3-key"]);
1141
+ var hyperLink = lodash.get(story, ["hero-image-hyperlink"], "");
3648
1142
 
3649
1143
  var fallbackImage = function fallbackImage() {
3650
1144
  if (!slug) {
3651
1145
  if (fallbackImageUrl && !isStoryPageImage) {
3652
- return /*#__PURE__*/React.createElement("figure", {
1146
+ return /*#__PURE__*/React__default["default"].createElement("figure", {
3653
1147
  style: {
3654
1148
  paddingTop: imagePadding + "%"
3655
1149
  },
3656
- className: "arr--responsive-hero-image " + _getClassName("image ".concat(getPlaceholderStyleName), _styleModuleImportMap$5)
3657
- }, /*#__PURE__*/React.createElement("img", {
1150
+ className: "arr--responsive-hero-image " + _getClassName__default["default"]("image ".concat(getPlaceholderStyleName), _styleModuleImportMap$5)
1151
+ }, /*#__PURE__*/React__default["default"].createElement("img", {
3658
1152
  className: "qt-image",
3659
1153
  "data-src": "".concat(fallbackImageUrl),
3660
1154
  alt: "image-fallback"
3661
1155
  }));
3662
1156
  }
3663
1157
 
3664
- return /*#__PURE__*/React.createElement(React.Fragment, null, defaultFallback ? /*#__PURE__*/React.createElement("div", {
1158
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, defaultFallback ? /*#__PURE__*/React__default["default"].createElement("div", {
3665
1159
  "data-test-id": "arr--fallback-hero-image",
3666
1160
  style: {
3667
1161
  paddingTop: imagePadding + "%"
3668
1162
  },
3669
- className: "arr--fallback-hero-image " + _getClassName("image ".concat(getPlaceholderStyleName), _styleModuleImportMap$5)
3670
- }, /*#__PURE__*/React.createElement(StoryTemplateIcon, {
1163
+ className: "arr--fallback-hero-image " + _getClassName__default["default"]("image ".concat(getPlaceholderStyleName), _styleModuleImportMap$5)
1164
+ }, /*#__PURE__*/React__default["default"].createElement(StoryTemplateIcon, {
3671
1165
  storyTemplate: story["story-template"]
3672
- }), /*#__PURE__*/React.createElement(FallbackImage, null)) : null);
1166
+ }), /*#__PURE__*/React__default["default"].createElement(FallbackImage, null)) : null);
3673
1167
  }
3674
1168
 
3675
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement("figure", {
1169
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, /*#__PURE__*/React__default["default"].createElement("figure", {
3676
1170
  style: {
3677
1171
  paddingTop: imagePadding + "%"
3678
1172
  },
3679
- className: "arr--responsive-hero-image " + _getClassName("image ".concat(getPlaceholderStyleName), _styleModuleImportMap$5)
3680
- }, /*#__PURE__*/React.createElement(StoryTemplateIcon, {
1173
+ className: "arr--responsive-hero-image " + _getClassName__default["default"]("image ".concat(getPlaceholderStyleName), _styleModuleImportMap$5)
1174
+ }, /*#__PURE__*/React__default["default"].createElement(StoryTemplateIcon, {
3681
1175
  storyTemplate: story["story-template"]
3682
- }), /*#__PURE__*/React.createElement(ResponsiveHeroImage, {
1176
+ }), /*#__PURE__*/React__default["default"].createElement(components.ResponsiveHeroImage, {
3683
1177
  story: story,
3684
1178
  aspectRatio: imageAspectRatio,
3685
1179
  defaultWidth: defaultWidth,
@@ -3688,48 +1182,48 @@ var HeroImage = function HeroImage(_ref) {
3688
1182
  auto: ["format", "compress"],
3689
1183
  fit: "max"
3690
1184
  }
3691
- })), isStoryPageImage && hyperLink && /*#__PURE__*/React.createElement(HyperLink, {
1185
+ })), isStoryPageImage && hyperLink && /*#__PURE__*/React__default["default"].createElement(HyperLink, {
3692
1186
  hyperLink: hyperLink
3693
1187
  }));
3694
1188
  };
3695
1189
 
3696
- return story && (isStoryPageImage ? /*#__PURE__*/React.createElement("div", {
1190
+ return story && (isStoryPageImage ? /*#__PURE__*/React__default["default"].createElement("div", {
3697
1191
  "data-test-id": "arr--hero-image",
3698
- className: "arr--hero-image " + _getClassName("".concat(heroImageClass, " ").concat(fullBleed, " ").concat(heroImageMobClasses), _styleModuleImportMap$5)
3699
- }, fallbackImage()) : /*#__PURE__*/React.createElement(Link, {
1192
+ className: "arr--hero-image " + _getClassName__default["default"]("".concat(heroImageClass, " ").concat(fullBleed, " ").concat(heroImageMobClasses), _styleModuleImportMap$5)
1193
+ }, fallbackImage()) : /*#__PURE__*/React__default["default"].createElement(components.Link, {
3700
1194
  "data-test-id": "arr--hero-image",
3701
1195
  href: getStoryUrl(story, "/".concat(story.slug)),
3702
1196
  externalLink: isExternalStory(story),
3703
1197
  "aria-label": "fallback-hero-image",
3704
- className: "arr--hero-image " + _getClassName("".concat(heroImageClass, " ").concat(fullBleed, " ").concat(heroImageMobClasses), _styleModuleImportMap$5)
1198
+ className: "arr--hero-image " + _getClassName__default["default"]("".concat(heroImageClass, " ").concat(fullBleed, " ").concat(heroImageMobClasses), _styleModuleImportMap$5)
3705
1199
  }, fallbackImage()));
3706
1200
  };
3707
1201
  HeroImage.propTypes = {
3708
1202
  /** The Story Object from the API response */
3709
- story: PropTypes.object.isRequired,
1203
+ story: PropTypes__default["default"].object.isRequired,
3710
1204
 
3711
1205
  /** Removes the Hero Image padding for the image to bleed over the margin */
3712
- FullBleed: PropTypes.bool,
1206
+ FullBleed: PropTypes__default["default"].bool,
3713
1207
 
3714
1208
  /** The default width for the image, in case the browser does not support srcset */
3715
- defaultWidth: PropTypes.number,
1209
+ defaultWidth: PropTypes__default["default"].number,
3716
1210
 
3717
1211
  /** The list of available widths */
3718
- widths: PropTypes.array,
1212
+ widths: PropTypes__default["default"].array,
3719
1213
  // fatch the correct hero image
3720
- aspectRatio: PropTypes.array,
1214
+ aspectRatio: PropTypes__default["default"].array,
3721
1215
  // Hints for the browser to choose the best size
3722
1216
 
3723
1217
  /** This prop is responsible for adding padding-right of the image and remove padding bottom of the image */
3724
- isHorizontal: PropTypes.bool,
1218
+ isHorizontal: PropTypes__default["default"].bool,
3725
1219
 
3726
1220
  /** This prop is responsible for adding padding-bottom in desktop and padding-right in mobile */
3727
- isHorizontalMobile: PropTypes.bool,
1221
+ isHorizontalMobile: PropTypes__default["default"].bool,
3728
1222
  // this prop is responsive for rendering fallback image on story page
3729
- defaultFallback: PropTypes.bool,
3730
- isHorizontalWithImageLast: PropTypes.bool,
3731
- isStoryPageImage: PropTypes.bool,
3732
- config: PropTypes.object
1223
+ defaultFallback: PropTypes__default["default"].bool,
1224
+ isHorizontalWithImageLast: PropTypes__default["default"].bool,
1225
+ isStoryPageImage: PropTypes__default["default"].bool,
1226
+ config: PropTypes__default["default"].object
3733
1227
  };
3734
1228
  HeroImage.defaultProps = {
3735
1229
  FullBleed: true,
@@ -3764,9 +1258,9 @@ var SectionTag = function SectionTag(_ref) {
3764
1258
  borderColor = _ref$borderColor === void 0 ? "" : _ref$borderColor,
3765
1259
  isLightTheme = _ref.isLightTheme;
3766
1260
  var config = useStateValue() || {};
3767
- var isSection = get_1(config, ["showSection"], true);
3768
- var templateFromRowContext = get_1(config, ["sectionTagTemplate"]);
3769
- var section = get_1(story, ["sections", 0], "");
1261
+ var isSection = lodash.get(config, ["showSection"], true);
1262
+ var templateFromRowContext = lodash.get(config, ["sectionTagTemplate"]);
1263
+ var section = lodash.get(story, ["sections", 0], "");
3770
1264
  var supportedTemplates = ["borderBottomSml", "borderLeft", "solid"];
3771
1265
  var getUrl = section ? section["section-url"] : "/";
3772
1266
  var colorToApplyContrast = template === "solid" || templateFromRowContext === "solid" ? borderColor : config.theme;
@@ -3779,22 +1273,22 @@ var SectionTag = function SectionTag(_ref) {
3779
1273
  }
3780
1274
 
3781
1275
  if (!isSection) return null;
3782
- return /*#__PURE__*/React.createElement(Link, {
1276
+ return /*#__PURE__*/React__default["default"].createElement(components.Link, {
3783
1277
  href: getUrl,
3784
1278
  className: "arrow-component arr--section-name",
3785
1279
  "aria-label": "section-name"
3786
- }, /*#__PURE__*/React.createElement("div", {
1280
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
3787
1281
  "data-test-id": "sectionTag",
3788
1282
  style: {
3789
1283
  backgroundColor: templateStyle.includes("section-solid") ? sectionTagBorderColor : ""
3790
1284
  },
3791
- className: "section-tag arrow-component " + _getClassName("".concat(textColor, " ").concat(templateStyle), _styleModuleImportMap$4)
3792
- }, templateStyle.includes("section-borderLeft") && /*#__PURE__*/React.createElement("span", {
1285
+ className: "section-tag arrow-component " + _getClassName__default["default"]("".concat(textColor, " ").concat(templateStyle), _styleModuleImportMap$4)
1286
+ }, templateStyle.includes("section-borderLeft") && /*#__PURE__*/React__default["default"].createElement("span", {
3793
1287
  className: "section-m_border-left__2oUyp",
3794
1288
  style: {
3795
1289
  color: sectionTagBorderColor
3796
1290
  }
3797
- }), section["display-name"] || section["name"], /*#__PURE__*/React.createElement("div", {
1291
+ }), section["display-name"] || section["name"], /*#__PURE__*/React__default["default"].createElement("div", {
3798
1292
  className: "section-m_border-bottom__3cRoD",
3799
1293
  style: {
3800
1294
  backgroundColor: "".concat(template === "solid" ? "" : sectionTagBorderColor)
@@ -3803,13 +1297,13 @@ var SectionTag = function SectionTag(_ref) {
3803
1297
  };
3804
1298
  SectionTag.propTypes = {
3805
1299
  /** The Story Object from the API response */
3806
- story: PropTypes.object.isRequired,
1300
+ story: PropTypes__default["default"].object.isRequired,
3807
1301
 
3808
1302
  /** The style template for section tag */
3809
- template: PropTypes.oneOf(["", "borderBottomSml", "borderLeft", "solid"]),
3810
- borderColor: PropTypes.string,
3811
- solidBorderColor: PropTypes.string,
3812
- isLightTheme: PropTypes.bool
1303
+ template: PropTypes__default["default"].oneOf(["", "borderBottomSml", "borderLeft", "solid"]),
1304
+ borderColor: PropTypes__default["default"].string,
1305
+ solidBorderColor: PropTypes__default["default"].string,
1306
+ isLightTheme: PropTypes__default["default"].bool
3813
1307
  };
3814
1308
  SectionTag.defaultProps = {
3815
1309
  template: "",
@@ -3858,7 +1352,7 @@ var StoryCard = function StoryCard(_ref) {
3858
1352
  prefix = _ref.prefix,
3859
1353
  config = _ref.config,
3860
1354
  isHorizontalWithImageLast = _ref.isHorizontalWithImageLast;
3861
- if (!story || isEmpty(story)) return /*#__PURE__*/React.createElement("div", null);
1355
+ if (!story || isEmpty(story)) return /*#__PURE__*/React__default["default"].createElement("div", null);
3862
1356
  var borderOptions = ["default", "full", "bottom", "boxShadow"];
3863
1357
  var borderTemplate = borderOptions.includes(border) ? "border-".concat(border) : ""; // TODO optimize conditions
3864
1358
 
@@ -3868,7 +1362,7 @@ var StoryCard = function StoryCard(_ref) {
3868
1362
  var bgImgContentOverlapClass = bgImgContentOverlap ? "content-overlap" : "";
3869
1363
  var textColor = getTextColor(theme);
3870
1364
  var horizontalMobileClasses = isHorizontalMobile ? "horizontal-mob" : "";
3871
- var defaultStorycard = /*#__PURE__*/React.createElement(DefaultStoryCard, {
1365
+ var defaultStorycard = /*#__PURE__*/React__default["default"].createElement(DefaultStoryCard, {
3872
1366
  story: story,
3873
1367
  aspectRatio: aspectRatio,
3874
1368
  border: border,
@@ -3882,13 +1376,13 @@ var StoryCard = function StoryCard(_ref) {
3882
1376
  config: config,
3883
1377
  isHorizontalWithImageLast: isHorizontalWithImageLast
3884
1378
  });
3885
- return /*#__PURE__*/React.createElement("div", {
1379
+ return /*#__PURE__*/React__default["default"].createElement("div", {
3886
1380
  "data-test-id": "story-card",
3887
1381
  style: {
3888
1382
  backgroundColor: theme,
3889
1383
  color: textColor
3890
1384
  },
3891
- className: "arr--story-card " + _getClassName("card ".concat(horizontalCardStyle, " ").concat(borderTemplate, " ").concat(textColor, " ").concat(bgImageClasses, " ").concat(bgImgContentOverlapClass, " ").concat(horizontalMobileClasses), _styleModuleImportMap$3)
1385
+ className: "arr--story-card " + _getClassName__default["default"]("card ".concat(horizontalCardStyle, " ").concat(borderTemplate, " ").concat(textColor, " ").concat(bgImageClasses, " ").concat(bgImgContentOverlapClass, " ").concat(horizontalMobileClasses), _styleModuleImportMap$3)
3892
1386
  }, children || defaultStorycard);
3893
1387
  };
3894
1388
 
@@ -3911,91 +1405,91 @@ var DefaultStoryCard = function DefaultStoryCard(_ref2) {
3911
1405
  var SectionTagborderColor = rgbToHex(borderColor);
3912
1406
  var _config$localizationC = config.localizationConfig,
3913
1407
  localizationConfig = _config$localizationC === void 0 ? {} : _config$localizationC;
3914
- return /*#__PURE__*/React.createElement(React.Fragment, null, isHorizontal ? /*#__PURE__*/React.createElement(HeroImage, {
1408
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, isHorizontal ? /*#__PURE__*/React__default["default"].createElement(HeroImage, {
3915
1409
  config: config,
3916
1410
  story: story,
3917
1411
  isHorizontal: true,
3918
1412
  isHorizontalMobile: isHorizontalMobile,
3919
1413
  aspectRatio: aspectRatio
3920
- }) : isHorizontalWithImageLast ? /*#__PURE__*/React.createElement(HeroImage, {
1414
+ }) : isHorizontalWithImageLast ? /*#__PURE__*/React__default["default"].createElement(HeroImage, {
3921
1415
  config: config,
3922
1416
  story: story,
3923
1417
  isHorizontalWithImageLast: true,
3924
1418
  isHorizontalMobile: isHorizontalMobile,
3925
1419
  aspectRatio: aspectRatio
3926
- }) : /*#__PURE__*/React.createElement(HeroImage, {
1420
+ }) : /*#__PURE__*/React__default["default"].createElement(HeroImage, {
3927
1421
  story: story,
3928
1422
  config: config,
3929
1423
  isHorizontalMobile: isHorizontalMobile,
3930
1424
  aspectRatio: aspectRatio
3931
- }), /*#__PURE__*/React.createElement("div", {
3932
- className: "arr--story-content " + _getClassName("content ".concat(alignment), _styleModuleImportMap$3)
3933
- }, /*#__PURE__*/React.createElement(SectionTag, {
1425
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
1426
+ className: "arr--story-content " + _getClassName__default["default"]("content ".concat(alignment), _styleModuleImportMap$3)
1427
+ }, /*#__PURE__*/React__default["default"].createElement(SectionTag, {
3934
1428
  story: story,
3935
1429
  borderColor: SectionTagborderColor
3936
- }), /*#__PURE__*/React.createElement(Headline, {
1430
+ }), /*#__PURE__*/React__default["default"].createElement(Headline, {
3937
1431
  story: story,
3938
1432
  headerLevel: headerLevel,
3939
1433
  premiumStoryIconConfig: config
3940
- }), /*#__PURE__*/React.createElement(AuthorWithTime, {
1434
+ }), /*#__PURE__*/React__default["default"].createElement(AuthorWithTime, {
3941
1435
  config: localizationConfig,
3942
1436
  story: story,
3943
1437
  isBottom: true,
3944
1438
  prefix: prefix,
3945
1439
  hideAuthorImage: hideAuthorImage
3946
- }), /*#__PURE__*/React.createElement(Subheadline, {
1440
+ }), /*#__PURE__*/React__default["default"].createElement(Subheadline, {
3947
1441
  story: story
3948
1442
  })));
3949
1443
  };
3950
1444
 
3951
1445
  DefaultStoryCard.propTypes = {
3952
- story: PropTypes.object.isRequired,
3953
- border: PropTypes.oneOfType([PropTypes.string]),
3954
- isBottom: PropTypes.bool,
3955
- isHorizontal: PropTypes.bool,
3956
- aspectRatio: PropTypes.oneOfType([PropTypes.array]),
3957
- isHorizontalMobile: PropTypes.bool,
3958
- centerAlign: PropTypes.bool,
3959
- headerLevel: PropTypes.string,
3960
- borderColor: PropTypes.string,
3961
- hideAuthorImage: PropTypes.bool,
3962
- prefix: PropTypes.string,
3963
- config: PropTypes.object,
3964
- isHorizontalWithImageLast: PropTypes.bool
1446
+ story: PropTypes__default["default"].object.isRequired,
1447
+ border: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string]),
1448
+ isBottom: PropTypes__default["default"].bool,
1449
+ isHorizontal: PropTypes__default["default"].bool,
1450
+ aspectRatio: PropTypes__default["default"].oneOfType([PropTypes__default["default"].array]),
1451
+ isHorizontalMobile: PropTypes__default["default"].bool,
1452
+ centerAlign: PropTypes__default["default"].bool,
1453
+ headerLevel: PropTypes__default["default"].string,
1454
+ borderColor: PropTypes__default["default"].string,
1455
+ hideAuthorImage: PropTypes__default["default"].bool,
1456
+ prefix: PropTypes__default["default"].string,
1457
+ config: PropTypes__default["default"].object,
1458
+ isHorizontalWithImageLast: PropTypes__default["default"].bool
3965
1459
  };
3966
1460
  StoryCard.propTypes = {
3967
1461
  /** The Story Object from the API response */
3968
- story: PropTypes.object.isRequired,
3969
- children: PropTypes.node,
1462
+ story: PropTypes__default["default"].object.isRequired,
1463
+ children: PropTypes__default["default"].node,
3970
1464
 
3971
1465
  /** Flip the Story Card to Horizonal mode */
3972
- isHorizontal: PropTypes.bool,
1466
+ isHorizontal: PropTypes__default["default"].bool,
3973
1467
 
3974
1468
  /** Add border to the Story Card */
3975
- border: PropTypes.oneOfType([PropTypes.string]),
1469
+ border: PropTypes__default["default"].oneOfType([PropTypes__default["default"].string]),
3976
1470
  // story card with background image
3977
- useImageAsBackground: PropTypes.bool,
1471
+ useImageAsBackground: PropTypes__default["default"].bool,
3978
1472
  // story card content overlap with image
3979
- bgImgContentOverlap: PropTypes.bool,
1473
+ bgImgContentOverlap: PropTypes__default["default"].bool,
3980
1474
 
3981
1475
  /** add aspect ratio for hero image */
3982
- aspectRatio: PropTypes.oneOfType([PropTypes.array]),
1476
+ aspectRatio: PropTypes__default["default"].oneOfType([PropTypes__default["default"].array]),
3983
1477
 
3984
1478
  /** add theme(dark /light/custom color) for storycard */
3985
- theme: PropTypes.string,
1479
+ theme: PropTypes__default["default"].string,
3986
1480
 
3987
1481
  /** flip the story card mobile design horizontal */
3988
- isHorizontalMobile: PropTypes.bool,
1482
+ isHorizontalMobile: PropTypes__default["default"].bool,
3989
1483
  // make content center align in desktop and left align in mobile
3990
- centerAlign: PropTypes.bool,
3991
- headerLevel: PropTypes.string,
3992
- borderColor: PropTypes.string,
1484
+ centerAlign: PropTypes__default["default"].bool,
1485
+ headerLevel: PropTypes__default["default"].string,
1486
+ borderColor: PropTypes__default["default"].string,
3993
1487
  // handle author image through storycard
3994
- hideAuthorImage: PropTypes.bool,
1488
+ hideAuthorImage: PropTypes__default["default"].bool,
3995
1489
  // handle author prefix through storycard
3996
- prefix: PropTypes.string,
3997
- config: PropTypes.object,
3998
- isHorizontalWithImageLast: PropTypes.bool
1490
+ prefix: PropTypes__default["default"].string,
1491
+ config: PropTypes__default["default"].object,
1492
+ isHorizontalWithImageLast: PropTypes__default["default"].bool
3999
1493
  };
4000
1494
  StoryCard.defaultProps = {
4001
1495
  isHorizontal: false,
@@ -4032,7 +1526,7 @@ var CollectionNameBase = function CollectionNameBase(_ref) {
4032
1526
  _ref$navigate = _ref.navigate,
4033
1527
  navigate = _ref$navigate === void 0 ? true : _ref$navigate;
4034
1528
  var collectionTitle = useStateValue() || {};
4035
- var showRowTitle = get_1(collectionTitle, ["showRowTitle"], true);
1529
+ var showRowTitle = lodash.get(collectionTitle, ["showRowTitle"], true);
4036
1530
  var supportedTemplates = ["borderLeft", "borderBottom", "crossLine", "borderBottomFull"];
4037
1531
  var templateStyle = supportedTemplates.includes(collectionNameTemplate) ? " collection-".concat(collectionNameTemplate) : "";
4038
1532
  var slug = navigate && collection && getSlug(collection, config) || "";
@@ -4043,7 +1537,7 @@ var CollectionNameBase = function CollectionNameBase(_ref) {
4043
1537
  var borderBottomFullStyle = templateStyle.includes("collection-borderBottomFull") ? "4px solid ".concat(CollectionNameBorderColor) : "";
4044
1538
 
4045
1539
  var borderBottomStyle = function borderBottomStyle() {
4046
- return templateStyle.includes("collection-borderBottom") && !templateStyle.includes("collection-borderBottomFull") ? /*#__PURE__*/React.createElement("div", {
1540
+ return templateStyle.includes("collection-borderBottom") && !templateStyle.includes("collection-borderBottomFull") ? /*#__PURE__*/React__default["default"].createElement("div", {
4047
1541
  className: "collection-name-m_border-bottom__1MnlV",
4048
1542
  style: {
4049
1543
  borderBottom: "4px solid ".concat(CollectionNameBorderColor)
@@ -4103,40 +1597,40 @@ var CollectionNameBase = function CollectionNameBase(_ref) {
4103
1597
  }
4104
1598
  };
4105
1599
 
4106
- return /*#__PURE__*/React.createElement(React.Fragment, null, showRowTitle && collectionName && /*#__PURE__*/React.createElement("div", {
1600
+ return /*#__PURE__*/React__default["default"].createElement(React__default["default"].Fragment, null, showRowTitle && collectionName && /*#__PURE__*/React__default["default"].createElement("div", {
4107
1601
  style: {
4108
1602
  borderBottom: borderBottomFullStyle
4109
1603
  },
4110
1604
  "data-test-id": "collection-name",
4111
- className: ("arr--collection-name arrow-component ".concat(templateStyle) ? "arr--collection-name arrow-component ".concat(templateStyle) + " " : "") + _getClassName("collection ".concat(textColor, " ").concat(templateStyle), _styleModuleImportMap$2)
4112
- }, templateStyle.includes("collection-borderLeft") && /*#__PURE__*/React.createElement("span", {
1605
+ className: ("arr--collection-name arrow-component ".concat(templateStyle) ? "arr--collection-name arrow-component ".concat(templateStyle) + " " : "") + _getClassName__default["default"]("collection ".concat(textColor, " ").concat(templateStyle), _styleModuleImportMap$2)
1606
+ }, templateStyle.includes("collection-borderLeft") && /*#__PURE__*/React__default["default"].createElement("span", {
4113
1607
  className: "arr-collection-name-border-left collection-name-m_border-left__3_pYw",
4114
1608
  style: {
4115
1609
  color: CollectionNameBorderColor,
4116
1610
  fontSize: getBorderHeight()
4117
1611
  }
4118
- }), slug && !slug.includes(undefined) ? /*#__PURE__*/React.createElement(Link, {
1612
+ }), slug && !slug.includes(undefined) ? /*#__PURE__*/React__default["default"].createElement(components.Link, {
4119
1613
  href: slug,
4120
1614
  "aria-label": "collection-name"
4121
- }, /*#__PURE__*/React.createElement(HeaderTag, null, collectionName)) : /*#__PURE__*/React.createElement(HeaderTag, null, collectionName), borderBottomStyle()));
1615
+ }, /*#__PURE__*/React__default["default"].createElement(HeaderTag, null, collectionName)) : /*#__PURE__*/React__default["default"].createElement(HeaderTag, null, collectionName), borderBottomStyle()));
4122
1616
  };
4123
1617
  CollectionNameBase.propTypes = {
4124
1618
  /** Collection name border color */
4125
- collectionNameBorderColor: PropTypes$1.string,
1619
+ collectionNameBorderColor: PropTypes.PropTypes.string,
4126
1620
 
4127
1621
  /** The Collection Object from the API response */
4128
- collection: PropTypes$1.object,
1622
+ collection: PropTypes.PropTypes.object,
4129
1623
 
4130
1624
  /** The publisher config from the API response */
4131
- config: PropTypes$1.object,
1625
+ config: PropTypes.PropTypes.object,
4132
1626
 
4133
1627
  /** The style template for the component */
4134
- collectionNameTemplate: PropTypes$1.oneOf(["", "borderLeft", "borderBottom", "crossLine", "borderBottomFull"]),
1628
+ collectionNameTemplate: PropTypes.PropTypes.oneOf(["", "borderLeft", "borderBottom", "crossLine", "borderBottomFull"]),
4135
1629
 
4136
1630
  /** Header tags ranging h1-h6, where h[headerLevel] */
4137
- headerLevel: PropTypes$1.string,
4138
- customCollectionName: PropTypes$1.string,
4139
- navigate: PropTypes$1.bool
1631
+ headerLevel: PropTypes.PropTypes.string,
1632
+ customCollectionName: PropTypes.PropTypes.string,
1633
+ navigate: PropTypes.PropTypes.bool
4140
1634
  };
4141
1635
  CollectionNameBase.defaultProps = {
4142
1636
  collectionNameTemplate: "",
@@ -4145,11 +1639,11 @@ CollectionNameBase.defaultProps = {
4145
1639
 
4146
1640
  function mapStateToProps(state) {
4147
1641
  return {
4148
- config: get_1(state, ["qt", "config"], {})
1642
+ config: lodash.get(state, ["qt", "config"], {})
4149
1643
  };
4150
1644
  }
4151
1645
 
4152
- var CollectionName = connect(mapStateToProps)(CollectionNameBase);
1646
+ var CollectionName = reactRedux.connect(mapStateToProps)(CollectionNameBase);
4153
1647
 
4154
1648
  var _styleModuleImportMap$1 = {
4155
1649
  "./storycardContent.m.css": {
@@ -4172,14 +1666,14 @@ var StorycardContent = function StorycardContent(_ref) {
4172
1666
  var SectionTagborderColor = rgbToHex(borderColor);
4173
1667
  var borderTemplate = borderOptions.includes(border) ? "border-".concat(border) : "";
4174
1668
  var horizontalCard = isHorizontalMobile ? "horizontal-content-wrapper" : "";
4175
- return /*#__PURE__*/React.createElement("div", {
1669
+ return /*#__PURE__*/React__default["default"].createElement("div", {
4176
1670
  "data-test-id": "story-card-content",
4177
1671
  style: {
4178
1672
  backgroundColor: theme,
4179
1673
  color: textColor
4180
1674
  },
4181
- className: "arr--content-wrapper " + _getClassName("wrapper ".concat(borderTemplate, " ").concat(horizontalCard), _styleModuleImportMap$1)
4182
- }, children || /*#__PURE__*/React.createElement(DefaultStoryCardContent, {
1675
+ className: "arr--content-wrapper " + _getClassName__default["default"]("wrapper ".concat(borderTemplate, " ").concat(horizontalCard), _styleModuleImportMap$1)
1676
+ }, children || /*#__PURE__*/React__default["default"].createElement(DefaultStoryCardContent, {
4183
1677
  story: story,
4184
1678
  headerLevel: headerLevel,
4185
1679
  isHorizontalMobile: isHorizontalMobile,
@@ -4197,54 +1691,39 @@ var DefaultStoryCardContent = function DefaultStoryCardContent(_ref2) {
4197
1691
  var SectionTagborderColor = rgbToHex(borderColor);
4198
1692
  var _config$localizationC = config.localizationConfig,
4199
1693
  localizationConfig = _config$localizationC === void 0 ? {} : _config$localizationC;
4200
- return /*#__PURE__*/React.createElement("div", null, /*#__PURE__*/React.createElement(SectionTag, {
1694
+ return /*#__PURE__*/React__default["default"].createElement("div", null, /*#__PURE__*/React__default["default"].createElement(SectionTag, {
4201
1695
  story: story,
4202
1696
  borderColor: SectionTagborderColor
4203
- }), /*#__PURE__*/React.createElement(Headline, {
1697
+ }), /*#__PURE__*/React__default["default"].createElement(Headline, {
4204
1698
  story: story,
4205
1699
  headerLevel: headerLevel,
4206
1700
  premiumStoryIconConfig: config
4207
- }), /*#__PURE__*/React.createElement(AuthorWithTime, {
1701
+ }), /*#__PURE__*/React__default["default"].createElement(AuthorWithTime, {
4208
1702
  config: localizationConfig,
4209
1703
  story: story
4210
1704
  }));
4211
1705
  };
4212
1706
 
4213
1707
  DefaultStoryCardContent.propTypes = {
4214
- story: PropTypes.object.isRequired,
4215
- border: PropTypes.string,
4216
- theme: PropTypes.string,
4217
- isHorizontalMobile: PropTypes.bool,
4218
- headerLevel: PropTypes.string,
4219
- borderColor: PropTypes.string,
4220
- config: PropTypes.object
1708
+ story: PropTypes__default["default"].object.isRequired,
1709
+ border: PropTypes__default["default"].string,
1710
+ theme: PropTypes__default["default"].string,
1711
+ isHorizontalMobile: PropTypes__default["default"].bool,
1712
+ headerLevel: PropTypes__default["default"].string,
1713
+ borderColor: PropTypes__default["default"].string,
1714
+ config: PropTypes__default["default"].object
4221
1715
  };
4222
1716
  StorycardContent.propTypes = {
4223
- story: PropTypes.object.isRequired,
4224
- children: PropTypes.node,
4225
- theme: PropTypes.string,
4226
- border: PropTypes.string,
4227
- isHorizontalMobile: PropTypes.bool,
4228
- headerLevel: PropTypes.string,
4229
- borderColor: PropTypes.string,
4230
- config: PropTypes.object
1717
+ story: PropTypes__default["default"].object.isRequired,
1718
+ children: PropTypes__default["default"].node,
1719
+ theme: PropTypes__default["default"].string,
1720
+ border: PropTypes__default["default"].string,
1721
+ isHorizontalMobile: PropTypes__default["default"].bool,
1722
+ headerLevel: PropTypes__default["default"].string,
1723
+ borderColor: PropTypes__default["default"].string,
1724
+ config: PropTypes__default["default"].object
4231
1725
  };
4232
1726
 
4233
- function _defineProperty(obj, key, value) {
4234
- if (key in obj) {
4235
- Object.defineProperty(obj, key, {
4236
- value: value,
4237
- enumerable: true,
4238
- configurable: true,
4239
- writable: true
4240
- });
4241
- } else {
4242
- obj[key] = value;
4243
- }
4244
-
4245
- return obj;
4246
- }
4247
-
4248
1727
  var _styleModuleImportMap = {
4249
1728
  "./load-more.m.css": {
4250
1729
  "button": "load-more-m_button__1mmf1",
@@ -4256,7 +1735,7 @@ var _styleModuleImportMap = {
4256
1735
 
4257
1736
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
4258
1737
 
4259
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
1738
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty__default["default"](target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
4260
1739
  var LoadmoreButton = function LoadmoreButton(_ref) {
4261
1740
  var _ref$config = _ref.config,
4262
1741
  config = _ref$config === void 0 ? {} : _ref$config,
@@ -4277,26 +1756,26 @@ var LoadmoreButton = function LoadmoreButton(_ref) {
4277
1756
  if (!showButton) return null;
4278
1757
  var textColor = getTextColor(theme);
4279
1758
  var slug = customUrlPath ? "/".concat(customUrlPath) : generateNavigateSlug(collection, _objectSpread(_objectSpread({}, qtConfig), config));
4280
- return template === "SubsequentLoadCount" ? /*#__PURE__*/React.createElement("div", {
1759
+ return template === "SubsequentLoadCount" ? /*#__PURE__*/React__default["default"].createElement("div", {
4281
1760
  onClick: onClick,
4282
1761
  "data-test-id": "load-more",
4283
- className: "arr--button " + _getClassName("button ".concat(textColor, " default"), _styleModuleImportMap)
4284
- }, buttonText) : /*#__PURE__*/React.createElement(LinkBase, {
1762
+ className: "arr--button " + _getClassName__default["default"]("button ".concat(textColor, " default"), _styleModuleImportMap)
1763
+ }, buttonText) : /*#__PURE__*/React__default["default"].createElement(components.LinkBase, {
4285
1764
  href: slug,
4286
1765
  navigateTo: navigate,
4287
1766
  "data-test-id": "load-more",
4288
1767
  "aria-label": "load-more"
4289
- }, /*#__PURE__*/React.createElement("div", {
4290
- className: "arr--button " + _getClassName("button ".concat(textColor, " default"), _styleModuleImportMap)
1768
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
1769
+ className: "arr--button " + _getClassName__default["default"]("button ".concat(textColor, " default"), _styleModuleImportMap)
4291
1770
  }, buttonText));
4292
1771
  };
4293
1772
  LoadmoreButton.propTypes = {
4294
- collection: PropTypes.object,
4295
- template: PropTypes.string,
4296
- config: PropTypes.object,
4297
- onClick: PropTypes.func,
4298
- navigate: PropTypes.func,
4299
- qtConfig: PropTypes.object
1773
+ collection: PropTypes__default["default"].object,
1774
+ template: PropTypes__default["default"].string,
1775
+ config: PropTypes__default["default"].object,
1776
+ onClick: PropTypes__default["default"].func,
1777
+ navigate: PropTypes__default["default"].func,
1778
+ qtConfig: PropTypes__default["default"].object
4300
1779
  };
4301
1780
 
4302
1781
  var ListComponentBase = function ListComponentBase(_ref) {
@@ -4308,7 +1787,7 @@ var ListComponentBase = function ListComponentBase(_ref) {
4308
1787
  hideButton = _ref.hideButton,
4309
1788
  _ref$authorPrefix = _ref.authorPrefix,
4310
1789
  authorPrefix = _ref$authorPrefix === void 0 ? "By" : _ref$authorPrefix;
4311
- var storyItems = collectionToStories(collection);
1790
+ var storyItems = components.collectionToStories(collection);
4312
1791
 
4313
1792
  if (storyItems.length < 1) {
4314
1793
  return null;
@@ -4328,18 +1807,18 @@ var ListComponentBase = function ListComponentBase(_ref) {
4328
1807
  footerButton = _config$footerButton === void 0 ? "" : _config$footerButton,
4329
1808
  _config$localizationC = config.localizationConfig,
4330
1809
  localizationConfig = _config$localizationC === void 0 ? {} : _config$localizationC;
4331
- var dispatch = useDispatch();
4332
- var qtConfig = useSelector(function (state) {
4333
- return get_1(state, ["qt", "config"], {});
1810
+ var dispatch = reactRedux.useDispatch();
1811
+ var qtConfig = reactRedux.useSelector(function (state) {
1812
+ return lodash.get(state, ["qt", "config"], {});
4334
1813
  });
4335
1814
  var url = generateNavigateSlug(collection, qtConfig);
4336
1815
 
4337
1816
  var borderHandler = function borderHandler(story) {
4338
1817
  switch (border) {
4339
1818
  case "bottom":
4340
- return /*#__PURE__*/React.createElement("div", {
1819
+ return /*#__PURE__*/React__default["default"].createElement("div", {
4341
1820
  className: "list-component-m_one-col-border-bottom__2kY47"
4342
- }, /*#__PURE__*/React.createElement(StoryCard, {
1821
+ }, /*#__PURE__*/React__default["default"].createElement(StoryCard, {
4343
1822
  story: story,
4344
1823
  theme: theme,
4345
1824
  headerLevel: "4",
@@ -4352,43 +1831,43 @@ var ListComponentBase = function ListComponentBase(_ref) {
4352
1831
  }));
4353
1832
 
4354
1833
  case "full":
4355
- return /*#__PURE__*/React.createElement("div", {
1834
+ return /*#__PURE__*/React__default["default"].createElement("div", {
4356
1835
  className: "list-component-m_one-col-border-full__gOJiU"
4357
- }, /*#__PURE__*/React.createElement(StoryCard, {
1836
+ }, /*#__PURE__*/React__default["default"].createElement(StoryCard, {
4358
1837
  story: story,
4359
1838
  border: border,
4360
1839
  theme: theme,
4361
1840
  isHorizontal: true,
4362
1841
  borderColor: borderColor,
4363
1842
  config: config
4364
- }, /*#__PURE__*/React.createElement(HeroImage, {
1843
+ }, /*#__PURE__*/React__default["default"].createElement(HeroImage, {
4365
1844
  story: story,
4366
1845
  isHorizontal: true,
4367
1846
  aspectRatio: [[16, 9]]
4368
- }), /*#__PURE__*/React.createElement("div", {
1847
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
4369
1848
  className: "list-component-m_story-card-content-wrapper__1yhqY"
4370
- }, /*#__PURE__*/React.createElement(StorycardContent, {
1849
+ }, /*#__PURE__*/React__default["default"].createElement(StorycardContent, {
4371
1850
  story: story,
4372
1851
  borderColor: borderColor,
4373
1852
  config: config
4374
- }, /*#__PURE__*/React.createElement(SectionTag, {
1853
+ }, /*#__PURE__*/React__default["default"].createElement(SectionTag, {
4375
1854
  story: story
4376
- }), /*#__PURE__*/React.createElement(Headline, {
1855
+ }), /*#__PURE__*/React__default["default"].createElement(Headline, {
4377
1856
  story: story,
4378
1857
  headerLevel: "4",
4379
1858
  premiumStoryIconConfig: config
4380
- }), /*#__PURE__*/React.createElement(Subheadline, {
1859
+ }), /*#__PURE__*/React__default["default"].createElement(Subheadline, {
4381
1860
  story: story
4382
- }), /*#__PURE__*/React.createElement(AuthorWithTime, {
1861
+ }), /*#__PURE__*/React__default["default"].createElement(AuthorWithTime, {
4383
1862
  config: localizationConfig,
4384
1863
  story: story,
4385
1864
  prefix: authorPrefix
4386
1865
  })))));
4387
1866
 
4388
1867
  default:
4389
- return /*#__PURE__*/React.createElement("div", {
1868
+ return /*#__PURE__*/React__default["default"].createElement("div", {
4390
1869
  className: "list-component-m_one-col-border-default__19mC9"
4391
- }, /*#__PURE__*/React.createElement(StoryCard, {
1870
+ }, /*#__PURE__*/React__default["default"].createElement(StoryCard, {
4392
1871
  story: story,
4393
1872
  theme: theme,
4394
1873
  headerLevel: "4",
@@ -4403,31 +1882,31 @@ var ListComponentBase = function ListComponentBase(_ref) {
4403
1882
  };
4404
1883
 
4405
1884
  var textColor = getTextColor(theme);
4406
- return /*#__PURE__*/React.createElement("div", {
1885
+ return /*#__PURE__*/React__default["default"].createElement("div", {
4407
1886
  className: "full-width-with-padding arrow-component",
4408
1887
  style: {
4409
1888
  backgroundColor: theme,
4410
1889
  color: textColor
4411
1890
  }
4412
- }, /*#__PURE__*/React.createElement("div", {
1891
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
4413
1892
  className: "list-component-m_list-wrapper__28Xog"
4414
- }, /*#__PURE__*/React.createElement(CollectionName, {
1893
+ }, /*#__PURE__*/React__default["default"].createElement(CollectionName, {
4415
1894
  collection: collection,
4416
1895
  collectionNameTemplate: collectionNameTemplate,
4417
1896
  collectionNameBorderColor: collectionNameBorderColor
4418
- }), /*#__PURE__*/React.createElement("div", {
1897
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
4419
1898
  className: "list-component-m_wrapper__2DapZ",
4420
1899
  style: {
4421
1900
  backgroundColor: theme,
4422
1901
  color: textColor
4423
1902
  }
4424
- }, /*#__PURE__*/React.createElement("div", {
1903
+ }, /*#__PURE__*/React__default["default"].createElement("div", {
4425
1904
  className: "list-component-m_list__MRP6o"
4426
1905
  }, storyItems.slice(0, limit).map(function (story, index) {
4427
- return /*#__PURE__*/React.createElement("div", {
1906
+ return /*#__PURE__*/React__default["default"].createElement("div", {
4428
1907
  key: "default-".concat(index)
4429
1908
  }, borderHandler(story));
4430
- }))), !hideButton && /*#__PURE__*/React.createElement("div", null, getMoreStories ? /*#__PURE__*/React.createElement(LoadmoreButton, {
1909
+ }))), !hideButton && /*#__PURE__*/React__default["default"].createElement("div", null, getMoreStories ? /*#__PURE__*/React__default["default"].createElement(LoadmoreButton, {
4431
1910
  onClick: getMoreStories,
4432
1911
  template: footerButton,
4433
1912
  config: config,
@@ -4439,24 +1918,25 @@ var ListComponentBase = function ListComponentBase(_ref) {
4439
1918
  };
4440
1919
  ListComponentBase.propTypes = {
4441
1920
  /** collection is the array of objects which is returning by API */
4442
- collection: PropTypes.object.isRequired,
1921
+ collection: PropTypes__default["default"].object.isRequired,
4443
1922
 
4444
1923
  /** The config for the Row */
4445
- config: PropTypes.shape({
4446
- borderColor: PropTypes.string,
4447
- theme: PropTypes.string,
4448
- border: PropTypes.string,
4449
- footerButton: PropTypes.string,
1924
+ config: PropTypes__default["default"].shape({
1925
+ borderColor: PropTypes__default["default"].string,
1926
+ theme: PropTypes__default["default"].string,
1927
+ border: PropTypes__default["default"].string,
1928
+ footerButton: PropTypes__default["default"].string,
4450
1929
  // row title style
4451
- collectionNameTemplate: PropTypes.string,
1930
+ collectionNameTemplate: PropTypes__default["default"].string,
4452
1931
  // row title style colour
4453
- collectionNameBorderColor: PropTypes.string
1932
+ collectionNameBorderColor: PropTypes__default["default"].string
4454
1933
  }),
4455
- getMoreStories: PropTypes.object.isRequired,
4456
- limit: PropTypes.number,
4457
- hideButton: PropTypes.bool,
4458
- authorPrefix: PropTypes.string
1934
+ getMoreStories: PropTypes__default["default"].object.isRequired,
1935
+ limit: PropTypes__default["default"].number,
1936
+ hideButton: PropTypes__default["default"].bool,
1937
+ authorPrefix: PropTypes__default["default"].string
4459
1938
  };
4460
1939
  var ListComponent = StateProvider(ListComponentBase);
4461
1940
 
4462
- export { ListComponent, ListComponentBase };
1941
+ exports.ListComponent = ListComponent;
1942
+ exports.ListComponentBase = ListComponentBase;