@mjhls/mjh-framework 1.0.588 → 1.0.589

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 (216) hide show
  1. package/README.md +172 -172
  2. package/dist/cjs/AD.js +9 -10
  3. package/dist/cjs/AD300x250.js +7 -8
  4. package/dist/cjs/AD300x250x600.js +7 -8
  5. package/dist/cjs/AD728x90.js +10 -11
  6. package/dist/cjs/ADFloatingFooter.js +14 -15
  7. package/dist/cjs/ADFooter.js +8 -9
  8. package/dist/cjs/ADGutter.js +11 -12
  9. package/dist/cjs/{ADInfeed-fdbd80ea.js → ADInfeed-17a378db.js} +9 -11
  10. package/dist/cjs/ADSkyscraper.js +11 -12
  11. package/dist/cjs/ADSponsoredResources.js +10 -11
  12. package/dist/cjs/ADWebcast.js +10 -11
  13. package/dist/cjs/ADWelcome.js +15 -16
  14. package/dist/cjs/{ADlgInfeed-ecd2642c.js → ADlgInfeed-070d911c.js} +6 -7
  15. package/dist/cjs/AccordionPanel.js +22 -24
  16. package/dist/cjs/AdSlot.js +13 -15
  17. package/dist/cjs/AdSlotsProvider.js +5 -6
  18. package/dist/cjs/AlphabeticList.js +15 -16
  19. package/dist/cjs/ArticleQueue.js +112 -115
  20. package/dist/cjs/Auth.js +593 -430
  21. package/dist/cjs/{AuthorComponent-5bb8f868.js → AuthorComponent-cb8b8128.js} +12 -13
  22. package/dist/cjs/{BlockContent-8b494587.js → BlockContent-f942392e.js} +24 -26
  23. package/dist/cjs/Breadcrumbs.js +21 -23
  24. package/dist/cjs/CMEDeck.js +61 -61
  25. package/dist/cjs/Column1.js +11 -14
  26. package/dist/cjs/Column2.js +19 -22
  27. package/dist/cjs/Column3.js +32 -35
  28. package/dist/cjs/ConferenceArticleCard.js +33 -34
  29. package/dist/cjs/ConferenceBanner-4a16fddc.js +23 -0
  30. package/dist/cjs/DeckContent.js +81 -85
  31. package/dist/cjs/DeckQueue.js +69 -73
  32. package/dist/cjs/{Dfp-a06d722a.js → Dfp-fbe32b96.js} +20 -22
  33. package/dist/cjs/EventsDeck.js +106 -113
  34. package/dist/cjs/ExternalResources.js +41 -42
  35. package/dist/cjs/Feature.js +24 -26
  36. package/dist/cjs/ForbesHero.js +33 -34
  37. package/dist/cjs/GridContent.js +145 -149
  38. package/dist/cjs/GridHero.js +34 -35
  39. package/dist/cjs/GroupDeck.js +37 -38
  40. package/dist/cjs/HamMagazine.js +113 -118
  41. package/dist/cjs/Header.js +11 -13
  42. package/dist/cjs/Hero.js +10 -11
  43. package/dist/cjs/HighlightenVideo.js +16 -17
  44. package/dist/cjs/HorizontalHero.js +24 -25
  45. package/dist/cjs/{InscreenSensor-1f9f7db4.js → InscreenSensor-3aec8492.js} +7 -8
  46. package/dist/cjs/IssueContentDeck.js +64 -69
  47. package/dist/cjs/IssueDeck.js +59 -64
  48. package/dist/cjs/IssueLanding.js +46 -47
  49. package/dist/cjs/KMTracker.js +15 -15
  50. package/dist/cjs/LeftNav.js +20 -22
  51. package/dist/cjs/MasterDeck.js +59 -60
  52. package/dist/cjs/NavDvm.js +63 -68
  53. package/dist/cjs/{NavFooter-3dcd99a8.js → NavFooter-76c913e3.js} +14 -15
  54. package/dist/cjs/NavMagazine.js +147 -155
  55. package/dist/cjs/NavNative.js +103 -111
  56. package/dist/cjs/NavNormal.js +36 -41
  57. package/dist/cjs/OncliveHero.js +18 -18
  58. package/dist/cjs/OncliveLargeHero.js +58 -59
  59. package/dist/cjs/PageFilter.js +8 -9
  60. package/dist/cjs/PartnerDetailListing.js +69 -1267
  61. package/dist/cjs/PdfDownload.js +8 -9
  62. package/dist/cjs/PopUpModal.js +13 -15
  63. package/dist/cjs/PublicationDeck.js +58 -63
  64. package/dist/cjs/PublicationLanding.js +81 -85
  65. package/dist/cjs/QueueDeckExpanded.js +217 -217
  66. package/dist/cjs/RelatedContent.js +46 -47
  67. package/dist/cjs/RelatedTopicsDropdown.js +29 -32
  68. package/dist/cjs/RolesDeck.js +27 -32
  69. package/dist/cjs/Search.js +12 -16
  70. package/dist/cjs/SideFooter.js +23 -24
  71. package/dist/cjs/SocialIcons.js +9 -10
  72. package/dist/cjs/{SocialNavFooter-d9ab4d17.js → SocialNavFooter-9a07520f.js} +17 -18
  73. package/dist/cjs/SocialShare.js +29 -31
  74. package/dist/cjs/TaxonomyCard.js +54 -59
  75. package/dist/cjs/TemplateNormal.js +35 -36
  76. package/dist/cjs/ThumbnailCard.js +17 -19
  77. package/dist/cjs/Ustream.js +20 -21
  78. package/dist/cjs/VerticalHero.js +16 -17
  79. package/dist/cjs/VideoSeriesFilter.js +10 -10
  80. package/dist/cjs/VideoSeriesListing.js +37 -38
  81. package/dist/cjs/View.js +161 -166
  82. package/dist/cjs/YahooHero.js +29 -30
  83. package/dist/cjs/YoutubeGroup.js +45 -46
  84. package/dist/cjs/{brightcove-react-player-loader.es-5c98aec7.js → brightcove-react-player-loader.es-156bd4d6.js} +8 -10
  85. package/dist/cjs/getQuery.js +1 -1
  86. package/dist/cjs/getRelatedArticle.js +6 -355
  87. package/dist/cjs/getSerializers.js +271 -270
  88. package/dist/cjs/{getTargeting-86e68d62.js → getTargeting-b15993cb.js} +9 -9
  89. package/dist/cjs/getTargeting.js +1 -1
  90. package/dist/cjs/iconBase-68959171.js +3 -0
  91. package/dist/cjs/{index-99edf08a.js → index-5be2866f.js} +1 -1
  92. package/dist/cjs/{index-44481153.js → index-f7ee1612.js} +8 -10
  93. package/dist/cjs/{index-8a3fb0bc.js → index-fa0fb52c.js} +10 -13
  94. package/dist/cjs/{index.es-f3e47207.js → index.es-ab3f2690.js} +11 -28
  95. package/dist/cjs/{index.esm-d02b6c3d.js → index.esm-0e5c6a9e.js} +3 -2
  96. package/dist/cjs/{index.esm-3b9b8952.js → index.esm-66ffa47a.js} +9 -4
  97. package/dist/cjs/{index.esm-55da9104.js → index.esm-89fabc47.js} +6 -3
  98. package/dist/cjs/{index.esm-99553d28.js → index.esm-fbd1f7e9.js} +15 -6
  99. package/dist/cjs/index.js +33 -32
  100. package/dist/cjs/{inherits-4a2f1cc3.js → inherits-14962339.js} +4 -4
  101. package/dist/cjs/{lodash-7fd85bcf.js → lodash-fc2922d0.js} +22 -71
  102. package/dist/cjs/{main-c50facd7.js → main-bc4db521.js} +43 -48
  103. package/dist/cjs/{moment-ca3bd9fb.js → moment-66a6a284.js} +8 -10
  104. package/dist/cjs/{react-social-icons-07939b41.js → react-social-icons-cd0d9d3b.js} +11 -13
  105. package/dist/cjs/{typeof-583cdc4b.js → typeof-1869832c.js} +1 -1
  106. package/dist/cjs/urlFor.js +2 -2
  107. package/dist/cjs/{visibility-sensor-8b54af99.js → visibility-sensor-0c45a583.js} +5 -7
  108. package/dist/esm/AD.js +7 -7
  109. package/dist/esm/AD300x250.js +5 -5
  110. package/dist/esm/AD300x250x600.js +5 -5
  111. package/dist/esm/AD728x90.js +8 -8
  112. package/dist/esm/ADFloatingFooter.js +12 -12
  113. package/dist/esm/ADFooter.js +6 -6
  114. package/dist/esm/ADGutter.js +9 -9
  115. package/dist/esm/{ADInfeed-ed104a2b.js → ADInfeed-c7dba95f.js} +5 -5
  116. package/dist/esm/ADSkyscraper.js +9 -9
  117. package/dist/esm/ADSponsoredResources.js +8 -8
  118. package/dist/esm/ADWebcast.js +8 -8
  119. package/dist/esm/ADWelcome.js +13 -13
  120. package/dist/esm/{ADlgInfeed-dfde985e.js → ADlgInfeed-8bfd6d58.js} +4 -4
  121. package/dist/esm/AccordionPanel.js +17 -17
  122. package/dist/esm/AdSlot.js +5 -5
  123. package/dist/esm/AdSlotsProvider.js +3 -3
  124. package/dist/esm/AlphabeticList.js +13 -13
  125. package/dist/esm/ArticleQueue.js +97 -97
  126. package/dist/esm/Auth.js +578 -411
  127. package/dist/esm/{AuthorComponent-f67cb027.js → AuthorComponent-158226c9.js} +10 -10
  128. package/dist/esm/{BlockContent-d05b5b23.js → BlockContent-a614acdf.js} +3 -3
  129. package/dist/esm/Breadcrumbs.js +11 -11
  130. package/dist/esm/CMEDeck.js +58 -58
  131. package/dist/esm/Column1.js +5 -5
  132. package/dist/esm/Column2.js +12 -12
  133. package/dist/esm/Column3.js +24 -24
  134. package/dist/esm/ConferenceArticleCard.js +28 -28
  135. package/dist/esm/{ConferenceBanner-9162d0ca.js → ConferenceBanner-8792ebd2.js} +4 -4
  136. package/dist/esm/DeckContent.js +61 -61
  137. package/dist/esm/DeckQueue.js +46 -46
  138. package/dist/esm/{Dfp-0557840a.js → Dfp-ae9336e2.js} +10 -10
  139. package/dist/esm/EventsDeck.js +64 -64
  140. package/dist/esm/ExternalResources.js +35 -35
  141. package/dist/esm/Feature.js +16 -16
  142. package/dist/esm/ForbesHero.js +27 -27
  143. package/dist/esm/GridContent.js +106 -106
  144. package/dist/esm/GridHero.js +28 -28
  145. package/dist/esm/GroupDeck.js +33 -33
  146. package/dist/esm/HamMagazine.js +86 -86
  147. package/dist/esm/Header.js +7 -7
  148. package/dist/esm/Hero.js +6 -6
  149. package/dist/esm/HighlightenVideo.js +14 -14
  150. package/dist/esm/HorizontalHero.js +20 -20
  151. package/dist/esm/{InscreenSensor-3e1fe82a.js → InscreenSensor-280b2b10.js} +5 -5
  152. package/dist/esm/IssueContentDeck.js +40 -40
  153. package/dist/esm/IssueDeck.js +33 -33
  154. package/dist/esm/IssueLanding.js +44 -44
  155. package/dist/esm/KMTracker.js +15 -15
  156. package/dist/esm/LeftNav.js +16 -16
  157. package/dist/esm/MasterDeck.js +53 -53
  158. package/dist/esm/NavDvm.js +43 -43
  159. package/dist/esm/{NavFooter-c29526b7.js → NavFooter-e27bd93b.js} +12 -12
  160. package/dist/esm/NavMagazine.js +114 -114
  161. package/dist/esm/NavNative.js +78 -78
  162. package/dist/esm/NavNormal.js +21 -21
  163. package/dist/esm/OncliveHero.js +14 -13
  164. package/dist/esm/OncliveLargeHero.js +51 -51
  165. package/dist/esm/PageFilter.js +6 -6
  166. package/dist/esm/PartnerDetailListing.js +65 -1261
  167. package/dist/esm/PdfDownload.js +6 -6
  168. package/dist/esm/PopUpModal.js +8 -8
  169. package/dist/esm/PublicationDeck.js +34 -34
  170. package/dist/esm/PublicationLanding.js +61 -61
  171. package/dist/esm/QueueDeckExpanded.js +197 -197
  172. package/dist/esm/RelatedContent.js +42 -42
  173. package/dist/esm/RelatedTopicsDropdown.js +21 -21
  174. package/dist/esm/RolesDeck.js +13 -13
  175. package/dist/esm/Search.js +5 -5
  176. package/dist/esm/SideFooter.js +21 -21
  177. package/dist/esm/SocialIcons.js +7 -7
  178. package/dist/esm/{SocialNavFooter-1a531144.js → SocialNavFooter-4fb16720.js} +15 -15
  179. package/dist/esm/SocialShare.js +25 -25
  180. package/dist/esm/TaxonomyCard.js +35 -35
  181. package/dist/esm/TemplateNormal.js +29 -29
  182. package/dist/esm/ThumbnailCard.js +9 -9
  183. package/dist/esm/Ustream.js +18 -18
  184. package/dist/esm/VerticalHero.js +12 -12
  185. package/dist/esm/VideoSeriesFilter.js +7 -7
  186. package/dist/esm/VideoSeriesListing.js +32 -32
  187. package/dist/esm/View.js +140 -140
  188. package/dist/esm/YahooHero.js +24 -24
  189. package/dist/esm/YoutubeGroup.js +36 -36
  190. package/dist/esm/{brightcove-react-player-loader.es-4abff0b1.js → brightcove-react-player-loader.es-83f53e4e.js} +6 -7
  191. package/dist/esm/getQuery.js +1 -1
  192. package/dist/esm/getRelatedArticle.js +6 -355
  193. package/dist/esm/getSerializers.js +228 -221
  194. package/dist/esm/{getTargeting-1f2c61e3.js → getTargeting-1a0bd08d.js} +9 -9
  195. package/dist/esm/getTargeting.js +1 -1
  196. package/dist/esm/{index-c5fd0af5.js → index-5f9f807a.js} +4 -4
  197. package/dist/esm/{index-1819118a.js → index-93ec3c59.js} +3 -3
  198. package/dist/esm/{index-fa2ffe86.js → index-d2f90501.js} +1 -1
  199. package/dist/esm/{index.es-c6222053.js → index.es-938a3a58.js} +9 -25
  200. package/dist/esm/{index.esm-cc28490f.js → index.esm-16536e81.js} +3 -2
  201. package/dist/esm/{index.esm-116f3274.js → index.esm-4b1d94b7.js} +15 -6
  202. package/dist/esm/{index.esm-16e9450c.js → index.esm-9a4c8813.js} +6 -3
  203. package/dist/esm/{index.esm-d6f88d94.js → index.esm-b08f4b04.js} +9 -4
  204. package/dist/esm/index.js +28 -27
  205. package/dist/esm/{inherits-2758cc14.js → inherits-b8e4c697.js} +1 -1
  206. package/dist/esm/{lodash-ec8c6b48.js → lodash-17fdfebb.js} +22 -71
  207. package/dist/esm/{main-b722e2e2.js → main-7255814e.js} +44 -48
  208. package/dist/esm/{moment-b6f49411.js → moment-12415288.js} +8 -10
  209. package/dist/esm/{react-social-icons-3822f1ce.js → react-social-icons-a7d5c5c7.js} +5 -5
  210. package/dist/esm/{typeof-7e72fee0.js → typeof-5f046efd.js} +1 -1
  211. package/dist/esm/urlFor.js +1 -1
  212. package/dist/esm/{visibility-sensor-082c757b.js → visibility-sensor-0baa4eea.js} +2 -2
  213. package/package.json +107 -107
  214. package/dist/cjs/ConferenceBanner-6c9e718a.js +0 -24
  215. package/dist/cjs/index-bd6c9f56.js +0 -211
  216. package/dist/esm/index-db3bb315.js +0 -207
@@ -1,366 +1,17 @@
1
1
  'use strict';
2
2
 
3
- var _commonjsHelpers = require('./_commonjsHelpers-06173234.js');
3
+ require('./_commonjsHelpers-06173234.js');
4
4
  require('./_to-object-329a650b.js');
5
5
  require('./core.get-iterator-method-41e87ec1.js');
6
6
  require('./_library-dd23b178.js');
7
7
  require('./_iter-detect-4d0352f8.js');
8
8
  require('./web.dom.iterable-43c3e277.js');
9
- require('./moment-ca3bd9fb.js');
9
+ require('./moment-66a6a284.js');
10
10
  var asyncToGenerator = require('./asyncToGenerator-8e707718.js');
11
11
  require('./_set-species-4458e975.js');
12
- var index = require('./index-bd6c9f56.js');
12
+ var nookies = require('nookies');
13
13
  var getQuery = require('./getQuery.js');
14
14
 
15
- var defaultParseOptions = {
16
- decodeValues: true,
17
- map: false,
18
- silent: false,
19
- };
20
-
21
- function isNonEmptyString(str) {
22
- return typeof str === "string" && !!str.trim();
23
- }
24
-
25
- function parseString(setCookieValue, options) {
26
- var parts = setCookieValue.split(";").filter(isNonEmptyString);
27
- var nameValue = parts.shift().split("=");
28
- var name = nameValue.shift();
29
- var value = nameValue.join("="); // everything after the first =, joined by a "=" if there was more than one part
30
-
31
- options = options
32
- ? Object.assign({}, defaultParseOptions, options)
33
- : defaultParseOptions;
34
-
35
- var cookie = {
36
- name: name, // grab everything before the first =
37
- value: options.decodeValues ? decodeURIComponent(value) : value, // decode cookie value
38
- };
39
-
40
- parts.forEach(function (part) {
41
- var sides = part.split("=");
42
- var key = sides.shift().trimLeft().toLowerCase();
43
- var value = sides.join("=");
44
- if (key === "expires") {
45
- cookie.expires = new Date(value);
46
- } else if (key === "max-age") {
47
- cookie.maxAge = parseInt(value, 10);
48
- } else if (key === "secure") {
49
- cookie.secure = true;
50
- } else if (key === "httponly") {
51
- cookie.httpOnly = true;
52
- } else if (key === "samesite") {
53
- cookie.sameSite = value;
54
- } else {
55
- cookie[key] = value;
56
- }
57
- });
58
-
59
- return cookie;
60
- }
61
-
62
- function parse(input, options) {
63
- options = options
64
- ? Object.assign({}, defaultParseOptions, options)
65
- : defaultParseOptions;
66
-
67
- if (!input) {
68
- if (!options.map) {
69
- return [];
70
- } else {
71
- return {};
72
- }
73
- }
74
-
75
- if (input.headers && input.headers["set-cookie"]) {
76
- // fast-path for node.js (which automatically normalizes header names to lower-case
77
- input = input.headers["set-cookie"];
78
- } else if (input.headers) {
79
- // slow-path for other environments - see #25
80
- var sch =
81
- input.headers[
82
- Object.keys(input.headers).find(function (key) {
83
- return key.toLowerCase() === "set-cookie";
84
- })
85
- ];
86
- // warn if called on a request-like object with a cookie header rather than a set-cookie header - see #34, 36
87
- if (!sch && input.headers.cookie && !options.silent) {
88
- console.warn(
89
- "Warning: set-cookie-parser appears to have been called on a request object. It is designed to parse Set-Cookie headers from responses, not Cookie headers from requests. Set the option {silent: true} to suppress this warning."
90
- );
91
- }
92
- input = sch;
93
- }
94
- if (!Array.isArray(input)) {
95
- input = [input];
96
- }
97
-
98
- options = options
99
- ? Object.assign({}, defaultParseOptions, options)
100
- : defaultParseOptions;
101
-
102
- if (!options.map) {
103
- return input.filter(isNonEmptyString).map(function (str) {
104
- return parseString(str, options);
105
- });
106
- } else {
107
- var cookies = {};
108
- return input.filter(isNonEmptyString).reduce(function (cookies, str) {
109
- var cookie = parseString(str, options);
110
- cookies[cookie.name] = cookie;
111
- return cookies;
112
- }, cookies);
113
- }
114
- }
115
-
116
- /*
117
- Set-Cookie header field-values are sometimes comma joined in one string. This splits them without choking on commas
118
- that are within a single set-cookie field-value, such as in the Expires portion.
119
-
120
- This is uncommon, but explicitly allowed - see https://tools.ietf.org/html/rfc2616#section-4.2
121
- Node.js does this for every header *except* set-cookie - see https://github.com/nodejs/node/blob/d5e363b77ebaf1caf67cd7528224b651c86815c1/lib/_http_incoming.js#L128
122
- React Native's fetch does this for *every* header, including set-cookie.
123
-
124
- Based on: https://github.com/google/j2objc/commit/16820fdbc8f76ca0c33472810ce0cb03d20efe25
125
- Credits to: https://github.com/tomball for original and https://github.com/chrusart for JavaScript implementation
126
- */
127
- function splitCookiesString(cookiesString) {
128
- if (Array.isArray(cookiesString)) {
129
- return cookiesString;
130
- }
131
- if (typeof cookiesString !== "string") {
132
- return [];
133
- }
134
-
135
- var cookiesStrings = [];
136
- var pos = 0;
137
- var start;
138
- var ch;
139
- var lastComma;
140
- var nextStart;
141
- var cookiesSeparatorFound;
142
-
143
- function skipWhitespace() {
144
- while (pos < cookiesString.length && /\s/.test(cookiesString.charAt(pos))) {
145
- pos += 1;
146
- }
147
- return pos < cookiesString.length;
148
- }
149
-
150
- function notSpecialChar() {
151
- ch = cookiesString.charAt(pos);
152
-
153
- return ch !== "=" && ch !== ";" && ch !== ",";
154
- }
155
-
156
- while (pos < cookiesString.length) {
157
- start = pos;
158
- cookiesSeparatorFound = false;
159
-
160
- while (skipWhitespace()) {
161
- ch = cookiesString.charAt(pos);
162
- if (ch === ",") {
163
- // ',' is a cookie separator if we have later first '=', not ';' or ','
164
- lastComma = pos;
165
- pos += 1;
166
-
167
- skipWhitespace();
168
- nextStart = pos;
169
-
170
- while (pos < cookiesString.length && notSpecialChar()) {
171
- pos += 1;
172
- }
173
-
174
- // currently special character
175
- if (pos < cookiesString.length && cookiesString.charAt(pos) === "=") {
176
- // we found cookies separator
177
- cookiesSeparatorFound = true;
178
- // pos is inside the next cookie, so back up and return it.
179
- pos = nextStart;
180
- cookiesStrings.push(cookiesString.substring(start, lastComma));
181
- start = pos;
182
- } else {
183
- // in param ',' or param separator ';',
184
- // we continue from that comma
185
- pos = lastComma + 1;
186
- }
187
- } else {
188
- pos += 1;
189
- }
190
- }
191
-
192
- if (!cookiesSeparatorFound || pos >= cookiesString.length) {
193
- cookiesStrings.push(cookiesString.substring(start, cookiesString.length));
194
- }
195
- }
196
-
197
- return cookiesStrings;
198
- }
199
-
200
- var setCookie = parse;
201
- var parse_1 = parse;
202
- var parseString_1 = parseString;
203
- var splitCookiesString_1 = splitCookiesString;
204
- setCookie.parse = parse_1;
205
- setCookie.parseString = parseString_1;
206
- setCookie.splitCookiesString = splitCookiesString_1;
207
-
208
- var dist = _commonjsHelpers.createCommonjsModule(function (module, exports) {
209
- var __assign = (_commonjsHelpers.commonjsGlobal && _commonjsHelpers.commonjsGlobal.__assign) || function () {
210
- __assign = Object.assign || function(t) {
211
- for (var s, i = 1, n = arguments.length; i < n; i++) {
212
- s = arguments[i];
213
- for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
214
- t[p] = s[p];
215
- }
216
- return t;
217
- };
218
- return __assign.apply(this, arguments);
219
- };
220
- Object.defineProperty(exports, "__esModule", { value: true });
221
- exports.destroyCookie = exports.setCookie = exports.parseCookies = void 0;
222
-
223
-
224
- var isBrowser = function () { return typeof window !== 'undefined'; };
225
- function hasSameProperties(a, b) {
226
- var aProps = Object.getOwnPropertyNames(a);
227
- var bProps = Object.getOwnPropertyNames(b);
228
- if (aProps.length !== bProps.length) {
229
- return false;
230
- }
231
- for (var i = 0; i < aProps.length; i++) {
232
- var propName = aProps[i];
233
- if (a[propName] !== b[propName]) {
234
- return false;
235
- }
236
- }
237
- return true;
238
- }
239
- /**
240
- * Compare the cookie and return true if the cookies has equivalent
241
- * options and the cookies would be overwritten in the browser storage.
242
- *
243
- * @param a first Cookie for comparison
244
- * @param b second Cookie for comparison
245
- */
246
- function areCookiesEqual(a, b) {
247
- var sameSiteSame = a.sameSite === b.sameSite;
248
- if (typeof a.sameSite === 'string' && typeof b.sameSite === 'string') {
249
- sameSiteSame = a.sameSite.toLowerCase() === b.sameSite.toLowerCase();
250
- }
251
- return (hasSameProperties(__assign(__assign({}, a), { sameSite: undefined }), __assign(__assign({}, b), { sameSite: undefined })) && sameSiteSame);
252
- }
253
- /**
254
- * Create an instance of the Cookie interface
255
- *
256
- * @param name name of the Cookie
257
- * @param value value of the Cookie
258
- * @param options Cookie options
259
- */
260
- function createCookie(name, value, options) {
261
- var sameSite = options.sameSite;
262
- if (sameSite === true) {
263
- sameSite = 'strict';
264
- }
265
- if (sameSite === undefined || sameSite === false) {
266
- sameSite = 'lax';
267
- }
268
- var cookieToSet = __assign(__assign({}, options), { sameSite: sameSite });
269
- delete cookieToSet.encode;
270
- return __assign({ name: name, value: value }, cookieToSet);
271
- }
272
- /**
273
- *
274
- * Parses cookies.
275
- *
276
- * @param ctx
277
- * @param options
278
- */
279
- function parseCookies(ctx, options) {
280
- if (ctx && ctx.req && ctx.req.headers && ctx.req.headers.cookie) {
281
- return index.cookie.parse(ctx.req.headers.cookie, options);
282
- }
283
- if (isBrowser()) {
284
- return index.cookie.parse(document.cookie, options);
285
- }
286
- return {};
287
- }
288
- exports.parseCookies = parseCookies;
289
- /**
290
- *
291
- * Sets a cookie.
292
- *
293
- * @param ctx
294
- * @param name
295
- * @param value
296
- * @param options
297
- */
298
- function setCookie$1(ctx, name, value, options) {
299
- if (ctx && ctx.res && ctx.res.getHeader && ctx.res.setHeader) {
300
- var cookies = ctx.res.getHeader('Set-Cookie') || [];
301
- if (typeof cookies === 'string')
302
- cookies = [cookies];
303
- if (typeof cookies === 'number')
304
- cookies = [];
305
- var parsedCookies = setCookie.parse(cookies);
306
- var cookiesToSet_1 = [];
307
- parsedCookies.forEach(function (parsedCookie) {
308
- if (!areCookiesEqual(parsedCookie, createCookie(name, value, options))) {
309
- cookiesToSet_1.push(index.cookie.serialize(parsedCookie.name, parsedCookie.value, __assign({}, parsedCookie)));
310
- }
311
- });
312
- cookiesToSet_1.push(index.cookie.serialize(name, value, options));
313
- if (!ctx.res.finished) {
314
- ctx.res.setHeader('Set-Cookie', cookiesToSet_1);
315
- }
316
- }
317
- if (isBrowser()) {
318
- if (options && options.httpOnly) {
319
- throw new Error('Can not set a httpOnly cookie in the browser.');
320
- }
321
- document.cookie = index.cookie.serialize(name, value, options);
322
- }
323
- return {};
324
- }
325
- exports.setCookie = setCookie$1;
326
- /**
327
- *
328
- * Destroys a cookie with a particular name.
329
- *
330
- * @param ctx
331
- * @param name
332
- * @param options
333
- */
334
- function destroyCookie(ctx, name, options) {
335
- var opts = __assign(__assign({}, (options || {})), { maxAge: -1 });
336
- if (ctx && ctx.res && ctx.res.setHeader && ctx.res.getHeader) {
337
- var cookies = ctx.res.getHeader('Set-Cookie') || [];
338
- if (typeof cookies === 'string')
339
- cookies = [cookies];
340
- if (typeof cookies === 'number')
341
- cookies = [];
342
- cookies.push(index.cookie.serialize(name, '', opts));
343
- ctx.res.setHeader('Set-Cookie', cookies);
344
- }
345
- if (isBrowser()) {
346
- document.cookie = index.cookie.serialize(name, '', opts);
347
- }
348
- return {};
349
- }
350
- exports.destroyCookie = destroyCookie;
351
- exports.default = {
352
- set: setCookie$1,
353
- get: parseCookies,
354
- destroy: destroyCookie,
355
- };
356
-
357
- });
358
-
359
- _commonjsHelpers.unwrapExports(dist);
360
- var dist_1 = dist.destroyCookie;
361
- var dist_2 = dist.setCookie;
362
- var dist_3 = dist.parseCookies;
363
-
364
15
  var _this = undefined;
365
16
 
366
17
  var getRelatedArticle = function () {
@@ -413,13 +64,13 @@ var getRelatedArticle = function () {
413
64
  conditions = '';
414
65
 
415
66
  if (ctx && url) {
416
- cookies = dist_3(ctx);
67
+ cookies = nookies.parseCookies(ctx);
417
68
  prevSlugs = cookies['prevSlugs'];
418
69
 
419
70
  if (!!prevSlugs) {
420
- dist_2(ctx, 'prevSlugs', prevSlugs + ',"' + url + '"', {});
71
+ nookies.setCookie(ctx, 'prevSlugs', prevSlugs + ',"' + url + '"', {});
421
72
  conditions = '&& !(url.current in [' + prevSlugs + '])';
422
- } else dist_2(ctx, 'prevSlugs', '"' + url + '"', {});
73
+ } else nookies.setCookie(ctx, 'prevSlugs', '"' + url + '"', {});
423
74
  }
424
75
 
425
76
  relatedArticleQuery = getQuery('related', conditions);