@bright.global/arboretum-sdk 0.0.6

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 (218) hide show
  1. package/README.md +223 -0
  2. package/dist/arboretum-client.js +2 -0
  3. package/dist/clients/contentful-client/contentful-client.js +2 -0
  4. package/dist/clients/contentful-client/impl/contentful-client-impl.js +54 -0
  5. package/dist/es6/arboretum-client.js +1 -0
  6. package/dist/es6/clients/contentful-client/contentful-client.js +1 -0
  7. package/dist/es6/clients/contentful-client/impl/contentful-client-impl.js +50 -0
  8. package/dist/es6/impl/arboretum-client.impl.js +182 -0
  9. package/dist/es6/impl/data/content-types.js +136 -0
  10. package/dist/es6/impl/data/helpers/__mocks__/mocked-contentful-entries-client-api.js +66 -0
  11. package/dist/es6/impl/data/helpers/entry-status.js +19 -0
  12. package/dist/es6/impl/data/helpers/get-all-entries-recursively.js +113 -0
  13. package/dist/es6/impl/data/helpers/get-all-entries-recursively.test.js +114 -0
  14. package/dist/es6/impl/data/helpers/home-pages-by-tag-id.js +66 -0
  15. package/dist/es6/impl/data/helpers/home-pages-by-tag-id.test.js +105 -0
  16. package/dist/es6/impl/data/helpers/locale-codes-from-metadata.js +7 -0
  17. package/dist/es6/impl/data/helpers/locale-codes-from-metadata.test.js +52 -0
  18. package/dist/es6/impl/data/helpers/parse-locale-tag.js +24 -0
  19. package/dist/es6/impl/data/helpers/parse-locale-tag.test.js +19 -0
  20. package/dist/es6/impl/data/helpers/validate-content-types.js +112 -0
  21. package/dist/es6/impl/data/helpers/validate-content-types.test.js +103 -0
  22. package/dist/es6/impl/data/home-page.js +75 -0
  23. package/dist/es6/impl/data/locales.js +60 -0
  24. package/dist/es6/impl/data/page-entries.js +169 -0
  25. package/dist/es6/impl/data/page-entries.test.js +170 -0
  26. package/dist/es6/impl/data/redirect-entries.js +163 -0
  27. package/dist/es6/impl/data/sitemap-data.js +109 -0
  28. package/dist/es6/impl/sitemap/adapters/page-entry-adapter.js +27 -0
  29. package/dist/es6/impl/sitemap/adapters/redirect-entry-adapter.js +26 -0
  30. package/dist/es6/impl/sitemap/adapters/redirect-to-arboretum-page-adapter.js +11 -0
  31. package/dist/es6/impl/sitemap/adapters/to-arboretum-page-adapter.js +14 -0
  32. package/dist/es6/impl/sitemap/adapters/to-arboretum-page-adapter.test.js +100 -0
  33. package/dist/es6/impl/sitemap/adapters/to-arboretum-page-with-missing-data-adapter.js +16 -0
  34. package/dist/es6/impl/sitemap/helpers/__mocks__/mocked-localized-sitemap.js +186 -0
  35. package/dist/es6/impl/sitemap/helpers/build-localized-sitemap.js +128 -0
  36. package/dist/es6/impl/sitemap/helpers/build-localized-sitemap.test.js +208 -0
  37. package/dist/es6/impl/sitemap/helpers/build-pages-by-tag-eagerly.js +7 -0
  38. package/dist/es6/impl/sitemap/helpers/build-sitemap-eagerly.js +32 -0
  39. package/dist/es6/impl/sitemap/helpers/find-ancestors.js +42 -0
  40. package/dist/es6/impl/sitemap/helpers/find-ancestors.test.js +33 -0
  41. package/dist/es6/impl/sitemap/helpers/find-children.js +9 -0
  42. package/dist/es6/impl/sitemap/helpers/find-children.test.js +39 -0
  43. package/dist/es6/impl/sitemap/helpers/is-root.js +1 -0
  44. package/dist/es6/impl/sitemap/helpers/localize-contentful-field.js +22 -0
  45. package/dist/es6/impl/sitemap/helpers/localize-contentful-field.test.js +137 -0
  46. package/dist/es6/impl/sitemap/helpers/localized-pages-by-tag-id.js +79 -0
  47. package/dist/es6/impl/sitemap/helpers/localized-path.js +4 -0
  48. package/dist/es6/impl/sitemap/helpers/page-ancestors.js +8 -0
  49. package/dist/es6/impl/sitemap/helpers/page-children.js +10 -0
  50. package/dist/es6/impl/sitemap/methods/cached-data.js +7 -0
  51. package/dist/es6/impl/sitemap/methods/home-page.js +27 -0
  52. package/dist/es6/impl/sitemap/methods/page-by-id.js +29 -0
  53. package/dist/es6/impl/sitemap/methods/page-by-path.js +52 -0
  54. package/dist/es6/impl/sitemap/methods/pages-by-ids.js +6 -0
  55. package/dist/es6/impl/sitemap/methods/pages-by-paths.js +6 -0
  56. package/dist/es6/impl/sitemap/methods/pages-by-tag-id.js +37 -0
  57. package/dist/es6/impl/sitemap/methods/pages.js +75 -0
  58. package/dist/es6/impl/sitemap/methods/regenerate.js +64 -0
  59. package/dist/es6/impl/sitemap/methods/search.js +97 -0
  60. package/dist/es6/impl/sitemap/methods/status.js +47 -0
  61. package/dist/es6/index.js +2 -0
  62. package/dist/es6/utils/array-to-map.js +7 -0
  63. package/dist/es6/utils/fp-utils.js +5 -0
  64. package/dist/es6/utils/group-by.js +13 -0
  65. package/dist/es6/utils/json-stringify-map-replacer.js +6 -0
  66. package/dist/es6/utils/string-similarity.js +59 -0
  67. package/dist/impl/arboretum-client.impl.js +189 -0
  68. package/dist/impl/data/content-types.js +140 -0
  69. package/dist/impl/data/helpers/__mocks__/mocked-contentful-entries-client-api.js +72 -0
  70. package/dist/impl/data/helpers/entry-status.js +23 -0
  71. package/dist/impl/data/helpers/get-all-entries-recursively.js +117 -0
  72. package/dist/impl/data/helpers/get-all-entries-recursively.test.js +116 -0
  73. package/dist/impl/data/helpers/home-pages-by-tag-id.js +70 -0
  74. package/dist/impl/data/helpers/home-pages-by-tag-id.test.js +107 -0
  75. package/dist/impl/data/helpers/locale-codes-from-metadata.js +11 -0
  76. package/dist/impl/data/helpers/locale-codes-from-metadata.test.js +54 -0
  77. package/dist/impl/data/helpers/parse-locale-tag.js +28 -0
  78. package/dist/impl/data/helpers/parse-locale-tag.test.js +21 -0
  79. package/dist/impl/data/helpers/validate-content-types.js +117 -0
  80. package/dist/impl/data/helpers/validate-content-types.test.js +105 -0
  81. package/dist/impl/data/home-page.js +79 -0
  82. package/dist/impl/data/locales.js +64 -0
  83. package/dist/impl/data/page-entries.js +173 -0
  84. package/dist/impl/data/page-entries.test.js +172 -0
  85. package/dist/impl/data/redirect-entries.js +168 -0
  86. package/dist/impl/data/sitemap-data.js +113 -0
  87. package/dist/impl/sitemap/adapters/page-entry-adapter.js +31 -0
  88. package/dist/impl/sitemap/adapters/redirect-entry-adapter.js +30 -0
  89. package/dist/impl/sitemap/adapters/redirect-to-arboretum-page-adapter.js +15 -0
  90. package/dist/impl/sitemap/adapters/to-arboretum-page-adapter.js +18 -0
  91. package/dist/impl/sitemap/adapters/to-arboretum-page-adapter.test.js +102 -0
  92. package/dist/impl/sitemap/adapters/to-arboretum-page-with-missing-data-adapter.js +20 -0
  93. package/dist/impl/sitemap/helpers/__mocks__/mocked-localized-sitemap.js +189 -0
  94. package/dist/impl/sitemap/helpers/build-localized-sitemap.js +133 -0
  95. package/dist/impl/sitemap/helpers/build-localized-sitemap.test.js +210 -0
  96. package/dist/impl/sitemap/helpers/build-pages-by-tag-eagerly.js +11 -0
  97. package/dist/impl/sitemap/helpers/build-sitemap-eagerly.js +36 -0
  98. package/dist/impl/sitemap/helpers/find-ancestors.js +46 -0
  99. package/dist/impl/sitemap/helpers/find-ancestors.test.js +35 -0
  100. package/dist/impl/sitemap/helpers/find-children.js +13 -0
  101. package/dist/impl/sitemap/helpers/find-children.test.js +41 -0
  102. package/dist/impl/sitemap/helpers/is-root.js +5 -0
  103. package/dist/impl/sitemap/helpers/localize-contentful-field.js +26 -0
  104. package/dist/impl/sitemap/helpers/localize-contentful-field.test.js +139 -0
  105. package/dist/impl/sitemap/helpers/localized-pages-by-tag-id.js +84 -0
  106. package/dist/impl/sitemap/helpers/localized-path.js +8 -0
  107. package/dist/impl/sitemap/helpers/page-ancestors.js +12 -0
  108. package/dist/impl/sitemap/helpers/page-children.js +14 -0
  109. package/dist/impl/sitemap/methods/cached-data.js +11 -0
  110. package/dist/impl/sitemap/methods/home-page.js +31 -0
  111. package/dist/impl/sitemap/methods/page-by-id.js +33 -0
  112. package/dist/impl/sitemap/methods/page-by-path.js +56 -0
  113. package/dist/impl/sitemap/methods/pages-by-ids.js +10 -0
  114. package/dist/impl/sitemap/methods/pages-by-paths.js +10 -0
  115. package/dist/impl/sitemap/methods/pages-by-tag-id.js +41 -0
  116. package/dist/impl/sitemap/methods/pages.js +79 -0
  117. package/dist/impl/sitemap/methods/regenerate.js +68 -0
  118. package/dist/impl/sitemap/methods/search.js +101 -0
  119. package/dist/impl/sitemap/methods/status.js +51 -0
  120. package/dist/index.js +8 -0
  121. package/dist/types/arboretum-client.d.ts +110 -0
  122. package/dist/types/clients/contentful-client/contentful-client.d.ts +95 -0
  123. package/dist/types/clients/contentful-client/impl/contentful-client-impl.d.ts +3 -0
  124. package/dist/types/impl/arboretum-client.impl.d.ts +107 -0
  125. package/dist/types/impl/data/content-types.d.ts +11 -0
  126. package/dist/types/impl/data/helpers/__mocks__/mocked-contentful-entries-client-api.d.ts +7 -0
  127. package/dist/types/impl/data/helpers/entry-status.d.ts +2 -0
  128. package/dist/types/impl/data/helpers/get-all-entries-recursively.d.ts +6 -0
  129. package/dist/types/impl/data/helpers/get-all-entries-recursively.test.d.ts +1 -0
  130. package/dist/types/impl/data/helpers/home-pages-by-tag-id.d.ts +15 -0
  131. package/dist/types/impl/data/helpers/home-pages-by-tag-id.test.d.ts +1 -0
  132. package/dist/types/impl/data/helpers/locale-codes-from-metadata.d.ts +2 -0
  133. package/dist/types/impl/data/helpers/locale-codes-from-metadata.test.d.ts +1 -0
  134. package/dist/types/impl/data/helpers/parse-locale-tag.d.ts +3 -0
  135. package/dist/types/impl/data/helpers/parse-locale-tag.test.d.ts +1 -0
  136. package/dist/types/impl/data/helpers/validate-content-types.d.ts +5 -0
  137. package/dist/types/impl/data/helpers/validate-content-types.test.d.ts +1 -0
  138. package/dist/types/impl/data/home-page.d.ts +3 -0
  139. package/dist/types/impl/data/locales.d.ts +10 -0
  140. package/dist/types/impl/data/page-entries.d.ts +3 -0
  141. package/dist/types/impl/data/page-entries.test.d.ts +1 -0
  142. package/dist/types/impl/data/redirect-entries.d.ts +4 -0
  143. package/dist/types/impl/data/sitemap-data.d.ts +17 -0
  144. package/dist/types/impl/sitemap/adapters/page-entry-adapter.d.ts +6 -0
  145. package/dist/types/impl/sitemap/adapters/redirect-entry-adapter.d.ts +4 -0
  146. package/dist/types/impl/sitemap/adapters/redirect-to-arboretum-page-adapter.d.ts +3 -0
  147. package/dist/types/impl/sitemap/adapters/to-arboretum-page-adapter.d.ts +3 -0
  148. package/dist/types/impl/sitemap/adapters/to-arboretum-page-adapter.test.d.ts +1 -0
  149. package/dist/types/impl/sitemap/adapters/to-arboretum-page-with-missing-data-adapter.d.ts +3 -0
  150. package/dist/types/impl/sitemap/helpers/__mocks__/mocked-localized-sitemap.d.ts +16 -0
  151. package/dist/types/impl/sitemap/helpers/build-localized-sitemap.d.ts +5 -0
  152. package/dist/types/impl/sitemap/helpers/build-localized-sitemap.test.d.ts +1 -0
  153. package/dist/types/impl/sitemap/helpers/build-pages-by-tag-eagerly.d.ts +3 -0
  154. package/dist/types/impl/sitemap/helpers/build-sitemap-eagerly.d.ts +3 -0
  155. package/dist/types/impl/sitemap/helpers/find-ancestors.d.ts +2 -0
  156. package/dist/types/impl/sitemap/helpers/find-ancestors.test.d.ts +1 -0
  157. package/dist/types/impl/sitemap/helpers/find-children.d.ts +2 -0
  158. package/dist/types/impl/sitemap/helpers/find-children.test.d.ts +1 -0
  159. package/dist/types/impl/sitemap/helpers/is-root.d.ts +2 -0
  160. package/dist/types/impl/sitemap/helpers/localize-contentful-field.d.ts +4 -0
  161. package/dist/types/impl/sitemap/helpers/localize-contentful-field.test.d.ts +1 -0
  162. package/dist/types/impl/sitemap/helpers/localized-pages-by-tag-id.d.ts +4 -0
  163. package/dist/types/impl/sitemap/helpers/localized-path.d.ts +1 -0
  164. package/dist/types/impl/sitemap/helpers/page-ancestors.d.ts +3 -0
  165. package/dist/types/impl/sitemap/helpers/page-children.d.ts +5 -0
  166. package/dist/types/impl/sitemap/methods/cached-data.d.ts +3 -0
  167. package/dist/types/impl/sitemap/methods/home-page.d.ts +3 -0
  168. package/dist/types/impl/sitemap/methods/page-by-id.d.ts +3 -0
  169. package/dist/types/impl/sitemap/methods/page-by-path.d.ts +3 -0
  170. package/dist/types/impl/sitemap/methods/pages-by-ids.d.ts +3 -0
  171. package/dist/types/impl/sitemap/methods/pages-by-paths.d.ts +3 -0
  172. package/dist/types/impl/sitemap/methods/pages-by-tag-id.d.ts +3 -0
  173. package/dist/types/impl/sitemap/methods/pages.d.ts +3 -0
  174. package/dist/types/impl/sitemap/methods/regenerate.d.ts +3 -0
  175. package/dist/types/impl/sitemap/methods/search.d.ts +3 -0
  176. package/dist/types/impl/sitemap/methods/status.d.ts +3 -0
  177. package/dist/types/index.d.ts +6 -0
  178. package/dist/types/utils/array-to-map.d.ts +1 -0
  179. package/dist/types/utils/fp-utils.d.ts +11 -0
  180. package/dist/types/utils/group-by.d.ts +1 -0
  181. package/dist/types/utils/json-stringify-map-replacer.d.ts +1 -0
  182. package/dist/types/utils/string-similarity.d.ts +9 -0
  183. package/dist/utils/array-to-map.js +11 -0
  184. package/dist/utils/fp-utils.js +10 -0
  185. package/dist/utils/group-by.js +17 -0
  186. package/dist/utils/json-stringify-map-replacer.js +10 -0
  187. package/dist/utils/string-similarity.js +63 -0
  188. package/docs/.nojekyll +1 -0
  189. package/docs/assets/highlight.css +78 -0
  190. package/docs/assets/main.js +58 -0
  191. package/docs/assets/search.js +1 -0
  192. package/docs/assets/style.css +1367 -0
  193. package/docs/functions/createArboretumClient.html +72 -0
  194. package/docs/functions/createArboretumClientFromCdaClient.html +72 -0
  195. package/docs/functions/createArboretumClientFromCdaParams.html +72 -0
  196. package/docs/functions/createArboretumClientFromCma.html +72 -0
  197. package/docs/index.html +228 -0
  198. package/docs/modules.html +88 -0
  199. package/docs/types/ArboretumAliasT.html +70 -0
  200. package/docs/types/ArboretumClientConfigFromCdaParamsT.html +74 -0
  201. package/docs/types/ArboretumClientConfigFromCdaT.html +79 -0
  202. package/docs/types/ArboretumClientConfigFromCmaT.html +79 -0
  203. package/docs/types/ArboretumClientConfigT.html +63 -0
  204. package/docs/types/ArboretumClientContentfulConfigOptionsT.html +93 -0
  205. package/docs/types/ArboretumClientOptions.html +72 -0
  206. package/docs/types/ArboretumClientOptionsT.html +63 -0
  207. package/docs/types/ArboretumClientT.html +235 -0
  208. package/docs/types/ArboretumPageNodeT.html +63 -0
  209. package/docs/types/ArboretumPageT.html +76 -0
  210. package/docs/types/ArboretumRedirectT.html +70 -0
  211. package/docs/types/CachedDataT.html +63 -0
  212. package/docs/types/Either.html +70 -0
  213. package/docs/types/EitherL.html +75 -0
  214. package/docs/types/EitherR.html +75 -0
  215. package/docs/types/LocaleT.html +63 -0
  216. package/docs/types/OptionsT.html +70 -0
  217. package/logo.svg +12 -0
  218. package/package.json +47 -0
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.findChildren = void 0;
4
+ var findChildren = function (sitemap) {
5
+ return function (page) {
6
+ return page.childPages.flatMap(function (_a) {
7
+ var id = _a.sys.id;
8
+ var childPage = sitemap.get(id);
9
+ return childPage ? [childPage] : [];
10
+ });
11
+ };
12
+ };
13
+ exports.findChildren = findChildren;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ var find_children_1 = require("./find-children");
29
+ var mocked_localized_sitemap_1 = require("./__mocks__/mocked-localized-sitemap");
30
+ describe(find_children_1.findChildren, function () {
31
+ test('Home page children with redirects', function () {
32
+ expect((0, find_children_1.findChildren)(mocked_localized_sitemap_1.mockedLocalizedSitemap.sitemap)(mocked_localized_sitemap_1.mockedRoot)).toEqual(__spreadArray([
33
+ mocked_localized_sitemap_1.mockedPage1,
34
+ mocked_localized_sitemap_1.mockedPage2,
35
+ mocked_localized_sitemap_1.mockedPage3
36
+ ], __read(mocked_localized_sitemap_1.mockedRedirects), false));
37
+ });
38
+ test('Nested page children', function () {
39
+ expect((0, find_children_1.findChildren)(mocked_localized_sitemap_1.mockedLocalizedSitemap.sitemap)(mocked_localized_sitemap_1.mockedPage1_1)).toEqual([mocked_localized_sitemap_1.mockedPage1_1_1, mocked_localized_sitemap_1.mockedPage1_1_2]);
40
+ });
41
+ });
@@ -0,0 +1,5 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.isRoot = void 0;
4
+ var isRoot = function (page) { return !page.parent; };
5
+ exports.isRoot = isRoot;
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.localizeField = void 0;
4
+ var localizedValue = function (localesMap, locale, field) {
5
+ var maybeFieldValue = field[locale.code];
6
+ if (maybeFieldValue) {
7
+ return maybeFieldValue;
8
+ }
9
+ else {
10
+ var maybeFallbackLocale = locale.fallbackCode
11
+ ? localesMap.get(locale.fallbackCode)
12
+ : undefined;
13
+ return maybeFallbackLocale
14
+ ? localizedValue(localesMap, maybeFallbackLocale, field)
15
+ : undefined;
16
+ }
17
+ };
18
+ var localizeField = function (_a, locale) {
19
+ var defaultLocaleCode = _a.defaultLocaleCode, locales = _a.locales;
20
+ return function (isFieldLocalized, field) {
21
+ return isFieldLocalized
22
+ ? localizedValue(locales, locale, field || {})
23
+ : field === null || field === void 0 ? void 0 : field[defaultLocaleCode];
24
+ };
25
+ };
26
+ exports.localizeField = localizeField;
@@ -0,0 +1,139 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ var localize_contentful_field_1 = require("./localize-contentful-field");
4
+ var enLocale = {
5
+ code: 'en',
6
+ default: true,
7
+ fallbackCode: null,
8
+ name: 'English',
9
+ };
10
+ var enAtLocale = {
11
+ code: 'en-At',
12
+ default: true,
13
+ fallbackCode: enLocale.code,
14
+ name: 'English',
15
+ };
16
+ var deLocale = {
17
+ code: 'de',
18
+ default: false,
19
+ fallbackCode: null,
20
+ name: 'German',
21
+ };
22
+ var deDeLocale = {
23
+ code: 'de-DE',
24
+ default: true,
25
+ fallbackCode: deLocale.code,
26
+ name: 'German',
27
+ };
28
+ var deAtLocale = {
29
+ code: 'de-AT',
30
+ default: true,
31
+ fallbackCode: deDeLocale.code,
32
+ name: 'German',
33
+ };
34
+ var esLocale = {
35
+ code: 'es',
36
+ default: true,
37
+ fallbackCode: deDeLocale.code,
38
+ name: 'Spanish',
39
+ };
40
+ var frLocale = {
41
+ code: 'fr',
42
+ default: false,
43
+ fallbackCode: null,
44
+ name: 'French',
45
+ };
46
+ var singleEnLocale = {
47
+ defaultLocaleCode: enLocale.code,
48
+ locales: new Map([[enLocale.code, enLocale]]),
49
+ };
50
+ var multipleIndependentLocales = {
51
+ defaultLocaleCode: enLocale.code,
52
+ locales: new Map([
53
+ [enLocale.code, enLocale],
54
+ [esLocale.code, esLocale],
55
+ [frLocale.code, frLocale],
56
+ ]),
57
+ };
58
+ var multipleLocales = {
59
+ defaultLocaleCode: enLocale.code,
60
+ locales: new Map([
61
+ [enLocale.code, enLocale],
62
+ [enAtLocale.code, enAtLocale],
63
+ [deLocale.code, deLocale],
64
+ [deDeLocale.code, deDeLocale],
65
+ [deAtLocale.code, deAtLocale],
66
+ [frLocale.code, frLocale],
67
+ ]),
68
+ };
69
+ describe(localize_contentful_field_1.localizeField, function () {
70
+ test('Get value from empty field', function () {
71
+ var valueResult = (0, localize_contentful_field_1.localizeField)(singleEnLocale, enLocale)(false, {});
72
+ expect(valueResult).toBeUndefined();
73
+ var valueEnResult = (0, localize_contentful_field_1.localizeField)(singleEnLocale, enLocale)(true, {});
74
+ expect(valueEnResult).toBeUndefined();
75
+ });
76
+ test('Get value from not localized field', function () {
77
+ var _a, _b;
78
+ var stringValue = 'test';
79
+ var stringValueEnResult = (0, localize_contentful_field_1.localizeField)(singleEnLocale, enLocale)(false, (_a = {},
80
+ _a[enLocale.code] = stringValue,
81
+ _a));
82
+ expect(stringValueEnResult).toEqual(stringValue);
83
+ var stringValueDeResult = (0, localize_contentful_field_1.localizeField)(multipleIndependentLocales, deLocale)(false, (_b = {},
84
+ _b[enLocale.code] = stringValue,
85
+ _b));
86
+ expect(stringValueDeResult).toEqual(stringValue);
87
+ });
88
+ test('Localize field single locale', function () {
89
+ var _a, _b;
90
+ var stringValue = 'test';
91
+ var stringValueResult = (0, localize_contentful_field_1.localizeField)(singleEnLocale, enLocale)(true, (_a = {},
92
+ _a[enLocale.code] = stringValue,
93
+ _a));
94
+ expect(stringValueResult).toEqual(stringValue);
95
+ var objectValue = { v: stringValue };
96
+ var objectValueResult = (0, localize_contentful_field_1.localizeField)(singleEnLocale, enLocale)(true, (_b = {},
97
+ _b[enLocale.code] = objectValue,
98
+ _b));
99
+ expect(objectValueResult).toMatchObject(objectValue);
100
+ });
101
+ test('Localize field multiple indendent locales', function () {
102
+ var _a;
103
+ var enStringValue = 'enTest';
104
+ var esStringValue = 'esTest';
105
+ var frStringValue = 'frTest';
106
+ var field = (_a = {},
107
+ _a[enLocale.code] = enStringValue,
108
+ _a[esLocale.code] = esStringValue,
109
+ _a[frLocale.code] = frStringValue,
110
+ _a);
111
+ var enValueResult = (0, localize_contentful_field_1.localizeField)(multipleIndependentLocales, enLocale)(true, field);
112
+ expect(enValueResult).toEqual(enStringValue);
113
+ var esValueResult = (0, localize_contentful_field_1.localizeField)(multipleIndependentLocales, esLocale)(true, field);
114
+ expect(esValueResult).toEqual(esStringValue);
115
+ var frValueResult = (0, localize_contentful_field_1.localizeField)(multipleIndependentLocales, frLocale)(true, field);
116
+ expect(frValueResult).toEqual(frStringValue);
117
+ });
118
+ test('Localize field multiple locales with fallbacks', function () {
119
+ var _a;
120
+ var enStringValue = 'enTest';
121
+ var deStringValue = 'deTest';
122
+ var field = (_a = {},
123
+ _a[enLocale.code] = enStringValue,
124
+ _a[deLocale.code] = deStringValue,
125
+ _a);
126
+ var enValueResult = (0, localize_contentful_field_1.localizeField)(multipleLocales, enLocale)(true, field);
127
+ expect(enValueResult).toEqual(enStringValue);
128
+ var deValueResult = (0, localize_contentful_field_1.localizeField)(multipleLocales, deLocale)(true, field);
129
+ expect(deValueResult).toEqual(deStringValue);
130
+ var frValueResult = (0, localize_contentful_field_1.localizeField)(multipleLocales, frLocale)(true, field);
131
+ expect(frValueResult).toBeUndefined();
132
+ var enAtValueResult = (0, localize_contentful_field_1.localizeField)(multipleLocales, enAtLocale)(true, field);
133
+ expect(enAtValueResult).toEqual(enStringValue);
134
+ var deDeValueResult = (0, localize_contentful_field_1.localizeField)(multipleLocales, deDeLocale)(true, field);
135
+ expect(deDeValueResult).toEqual(deStringValue);
136
+ var deAtValueResult = (0, localize_contentful_field_1.localizeField)(multipleLocales, deAtLocale)(true, field);
137
+ expect(deAtValueResult).toEqual(deStringValue);
138
+ });
139
+ });
@@ -0,0 +1,84 @@
1
+ "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.localizedPagesByTagIdFromCacheOrBuildEff = exports.buildLocalizedPagesByTagId = void 0;
29
+ var build_localized_sitemap_1 = require("./build-localized-sitemap");
30
+ var fp_utils_1 = require("../../../utils/fp-utils");
31
+ var parse_locale_tag_1 = require("../../data/helpers/parse-locale-tag");
32
+ var group_by_1 = require("../../../utils/group-by");
33
+ var tagFilterPredicate = function (localeTagIdPrefix, localeCode, metadata) {
34
+ return function (tagId) {
35
+ var maybeLocaleCodes = metadata.tags.flatMap(function (_a) {
36
+ var sys = _a.sys;
37
+ var locale = (0, parse_locale_tag_1.parseLocaleTag)(localeTagIdPrefix)(sys.id);
38
+ return locale ? [locale.localeCode] : [];
39
+ });
40
+ var localesCondition = maybeLocaleCodes && maybeLocaleCodes.length > 0
41
+ ? !!maybeLocaleCodes.find(function (code) { return localeCode === code; })
42
+ : true;
43
+ var tagCondition = !!metadata.tags.find(function (_a) {
44
+ var sys = _a.sys;
45
+ return sys.id === tagId;
46
+ });
47
+ return localesCondition && tagCondition;
48
+ };
49
+ };
50
+ var buildLocalizedPagesByTagId = function (ctx, locale) {
51
+ var sitemap = (0, build_localized_sitemap_1.localizedSitemapFromCacheOrBuildEff)(ctx, locale);
52
+ if (sitemap._tag === 'Right') {
53
+ var pages = __spreadArray([], __read(sitemap.right.sitemap.values()), false);
54
+ var tagFilterF_1 = function (metadata, tagId) {
55
+ return tagFilterPredicate(ctx.localeTagIdPrefix, locale.code, metadata)(tagId);
56
+ };
57
+ var tagIdPageRefArr = pages.flatMap(function (page) {
58
+ var _a;
59
+ return ((_a = page === null || page === void 0 ? void 0 : page.metadata) === null || _a === void 0 ? void 0 : _a.tags.flatMap(function (t) {
60
+ return page.metadata && tagFilterF_1(page.metadata, t.sys.id)
61
+ ? [{ tagId: t.sys.id, sys: { id: page.sys.id } }]
62
+ : [];
63
+ })) || [];
64
+ });
65
+ var pagesGroupedByTagId = (0, fp_utils_1.right)((0, group_by_1.groupBy)(function (_a) {
66
+ var tagId = _a.tagId;
67
+ return tagId;
68
+ })(tagIdPageRefArr));
69
+ return pagesGroupedByTagId;
70
+ }
71
+ else {
72
+ return sitemap;
73
+ }
74
+ };
75
+ exports.buildLocalizedPagesByTagId = buildLocalizedPagesByTagId;
76
+ var localizedPagesByTagIdFromCacheOrBuildEff = function (ctx, locale) {
77
+ var cachedLocalizedPagesByTagId = ctx.pagesByTagId.get(locale.code);
78
+ var localizedPageByTagId = cachedLocalizedPagesByTagId
79
+ ? cachedLocalizedPagesByTagId
80
+ : (0, exports.buildLocalizedPagesByTagId)(ctx, locale);
81
+ ctx.pagesByTagId.set(locale.code, localizedPageByTagId);
82
+ return localizedPageByTagId;
83
+ };
84
+ exports.localizedPagesByTagIdFromCacheOrBuildEff = localizedPagesByTagIdFromCacheOrBuildEff;
@@ -0,0 +1,8 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.localizedPath = void 0;
4
+ var localizedPath = function (localeCode, path) {
5
+ var pathLocalePrefix = "/" + localeCode;
6
+ return path ? pathLocalePrefix + path : pathLocalePrefix;
7
+ };
8
+ exports.localizedPath = localizedPath;
@@ -0,0 +1,12 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pageAncestors = void 0;
4
+ var to_arboretum_page_with_missing_data_adapter_1 = require("../adapters/to-arboretum-page-with-missing-data-adapter");
5
+ var find_ancestors_1 = require("./find-ancestors");
6
+ var pageAncestors = function (localeCode, sitemap, page) {
7
+ var ancestors = (0, find_ancestors_1.findAncestors)(sitemap, page);
8
+ return ancestors === null || ancestors === void 0 ? void 0 : ancestors.map(function (ancestor) {
9
+ return (0, to_arboretum_page_with_missing_data_adapter_1.toArboretumPageWithMissingData)(localeCode)(ancestor, undefined, undefined);
10
+ });
11
+ };
12
+ exports.pageAncestors = pageAncestors;
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pageChildren = void 0;
4
+ var redirect_to_arboretum_page_adapter_1 = require("../adapters/redirect-to-arboretum-page-adapter");
5
+ var to_arboretum_page_with_missing_data_adapter_1 = require("../adapters/to-arboretum-page-with-missing-data-adapter");
6
+ var find_children_1 = require("./find-children");
7
+ var pageChildren = function (localeCode, sitemap, page) {
8
+ return (0, find_children_1.findChildren)(sitemap)(page).map(function (childPage) {
9
+ return childPage.type === 'page'
10
+ ? (0, to_arboretum_page_with_missing_data_adapter_1.toArboretumPageWithMissingData)(localeCode)(childPage, undefined, undefined)
11
+ : (0, redirect_to_arboretum_page_adapter_1.redirectToArboretumPage)(localeCode)(childPage);
12
+ });
13
+ };
14
+ exports.pageChildren = pageChildren;
@@ -0,0 +1,11 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.cachedData = void 0;
4
+ var cachedData = function (ctx) {
5
+ return function () { return ({
6
+ data: ctx.data,
7
+ sitemap: ctx.sitemap,
8
+ pagesByTagId: ctx.pagesByTagId,
9
+ }); };
10
+ };
11
+ exports.cachedData = cachedData;
@@ -0,0 +1,31 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.homePage = void 0;
4
+ var fp_utils_1 = require("../../../utils/fp-utils");
5
+ var build_localized_sitemap_1 = require("../helpers/build-localized-sitemap");
6
+ var to_arboretum_page_adapter_1 = require("../adapters/to-arboretum-page-adapter");
7
+ var homePage = function (ctx) {
8
+ return function (localeCode, options) {
9
+ var locale = ctx.data.locales.get(localeCode);
10
+ if (locale) {
11
+ var sitemap = (0, build_localized_sitemap_1.localizedSitemapFromCacheOrBuildEff)(ctx, locale);
12
+ if (sitemap._tag === "Right") {
13
+ var id = sitemap.right.root.sys.id;
14
+ var page = sitemap.right.sitemap.get(id);
15
+ if (page && page.type === "page") {
16
+ return (0, fp_utils_1.right)((0, to_arboretum_page_adapter_1.toArboretumPage)(sitemap.right, localeCode, options)(page));
17
+ }
18
+ else {
19
+ return (0, fp_utils_1.left)("Failed to find home page by id: ".concat(id, " and locale: ").concat(locale.code));
20
+ }
21
+ }
22
+ else {
23
+ return (0, fp_utils_1.left)(sitemap.left);
24
+ }
25
+ }
26
+ else {
27
+ return (0, fp_utils_1.left)("Failed to find locale by code: ".concat(localeCode));
28
+ }
29
+ };
30
+ };
31
+ exports.homePage = homePage;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pageById = void 0;
4
+ var fp_utils_1 = require("../../../utils/fp-utils");
5
+ var build_localized_sitemap_1 = require("../helpers/build-localized-sitemap");
6
+ var to_arboretum_page_adapter_1 = require("../adapters/to-arboretum-page-adapter");
7
+ var redirect_to_arboretum_page_adapter_1 = require("../adapters/redirect-to-arboretum-page-adapter");
8
+ var pageById = function (ctx) {
9
+ return function (localeCode, id, options) {
10
+ var locale = ctx.data.locales.get(localeCode);
11
+ if (locale) {
12
+ var sitemap = (0, build_localized_sitemap_1.localizedSitemapFromCacheOrBuildEff)(ctx, locale);
13
+ if (sitemap._tag === 'Right') {
14
+ var page = sitemap.right.sitemap.get(id);
15
+ if (page) {
16
+ return (0, fp_utils_1.right)(page.type === 'page'
17
+ ? (0, to_arboretum_page_adapter_1.toArboretumPage)(sitemap.right, localeCode, options)(page)
18
+ : (0, redirect_to_arboretum_page_adapter_1.redirectToArboretumPage)(locale.code)(page));
19
+ }
20
+ else {
21
+ return (0, fp_utils_1.left)("Failed to find page by id: ".concat(id, " and locale: ").concat(locale.code));
22
+ }
23
+ }
24
+ else {
25
+ return (0, fp_utils_1.left)(sitemap.left);
26
+ }
27
+ }
28
+ else {
29
+ return (0, fp_utils_1.left)("Failed to find locale by code: ".concat(localeCode));
30
+ }
31
+ };
32
+ };
33
+ exports.pageById = pageById;
@@ -0,0 +1,56 @@
1
+ "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ Object.defineProperty(exports, "__esModule", { value: true });
19
+ exports.pageByPath = void 0;
20
+ var fp_utils_1 = require("../../../utils/fp-utils");
21
+ var build_localized_sitemap_1 = require("../helpers/build-localized-sitemap");
22
+ var to_arboretum_page_adapter_1 = require("../adapters/to-arboretum-page-adapter");
23
+ var redirect_to_arboretum_page_adapter_1 = require("../adapters/redirect-to-arboretum-page-adapter");
24
+ var pageByPath = function (ctx) {
25
+ return function (path, options) {
26
+ if (path.length) {
27
+ var _a = __read(path.split('/').filter(function (slug) { return !!slug; }), 1), localeCode = _a[0];
28
+ var locale = ctx.data.locales.get(localeCode);
29
+ if (locale) {
30
+ var sitemap = (0, build_localized_sitemap_1.localizedSitemapFromCacheOrBuildEff)(ctx, locale);
31
+ if (sitemap._tag === 'Right') {
32
+ var pageId = sitemap.right.pageIdByPath.get(path.startsWith("/") ? path : "/" + path);
33
+ var page = pageId ? sitemap.right.sitemap.get(pageId) : undefined;
34
+ if (page) {
35
+ return (0, fp_utils_1.right)(page.type === 'page'
36
+ ? (0, to_arboretum_page_adapter_1.toArboretumPage)(sitemap.right, localeCode, options)(page)
37
+ : (0, redirect_to_arboretum_page_adapter_1.redirectToArboretumPage)(locale.code)(page));
38
+ }
39
+ else {
40
+ return (0, fp_utils_1.left)("Failed to find page by path: ".concat(path));
41
+ }
42
+ }
43
+ else {
44
+ return (0, fp_utils_1.left)(sitemap.left);
45
+ }
46
+ }
47
+ else {
48
+ return (0, fp_utils_1.left)("Failed to find locale by code: ".concat(localeCode));
49
+ }
50
+ }
51
+ else {
52
+ return (0, fp_utils_1.left)("Path can't be empty");
53
+ }
54
+ };
55
+ };
56
+ exports.pageByPath = pageByPath;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pagesByIds = void 0;
4
+ var page_by_id_1 = require("./page-by-id");
5
+ var pagesByIds = function (ctx) {
6
+ return function (localeCode, ids, options) {
7
+ return ids.map(function (id) { return (0, page_by_id_1.pageById)(ctx)(localeCode, id, options); });
8
+ };
9
+ };
10
+ exports.pagesByIds = pagesByIds;
@@ -0,0 +1,10 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pagesByPaths = void 0;
4
+ var page_by_path_1 = require("./page-by-path");
5
+ var pagesByPaths = function (ctx) {
6
+ return function (paths, options) {
7
+ return paths.map(function (path) { return (0, page_by_path_1.pageByPath)(ctx)(path, options); });
8
+ };
9
+ };
10
+ exports.pagesByPaths = pagesByPaths;
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.pagesByTagId = void 0;
4
+ var fp_utils_1 = require("../../../utils/fp-utils");
5
+ var build_localized_sitemap_1 = require("../helpers/build-localized-sitemap");
6
+ var to_arboretum_page_adapter_1 = require("../adapters/to-arboretum-page-adapter");
7
+ var redirect_to_arboretum_page_adapter_1 = require("../adapters/redirect-to-arboretum-page-adapter");
8
+ var localized_pages_by_tag_id_1 = require("../helpers/localized-pages-by-tag-id");
9
+ var pagesByTagId = function (ctx) {
10
+ return function (localeCode, tagId, options) {
11
+ var _a;
12
+ var locale = ctx.data.locales.get(localeCode);
13
+ if (locale) {
14
+ var pagesByTagId_1 = (0, localized_pages_by_tag_id_1.localizedPagesByTagIdFromCacheOrBuildEff)(ctx, locale);
15
+ var sitemap_1 = (0, build_localized_sitemap_1.localizedSitemapFromCacheOrBuildEff)(ctx, locale);
16
+ if (pagesByTagId_1._tag === 'Left') {
17
+ return pagesByTagId_1;
18
+ }
19
+ else if (sitemap_1._tag === 'Left') {
20
+ return sitemap_1;
21
+ }
22
+ else {
23
+ var pages = ((_a = pagesByTagId_1.right.get(tagId)) === null || _a === void 0 ? void 0 : _a.flatMap(function (_a) {
24
+ var sys = _a.sys;
25
+ var page = sitemap_1.right.sitemap.get(sys.id);
26
+ var arboretumPage = (page === null || page === void 0 ? void 0 : page.type) === 'page'
27
+ ? (0, to_arboretum_page_adapter_1.toArboretumPage)(sitemap_1.right, locale.code, options)(page)
28
+ : page
29
+ ? (0, redirect_to_arboretum_page_adapter_1.redirectToArboretumPage)(locale.code)(page)
30
+ : undefined;
31
+ return arboretumPage ? [arboretumPage] : [];
32
+ })) || [];
33
+ return (0, fp_utils_1.right)(pages);
34
+ }
35
+ }
36
+ else {
37
+ return (0, fp_utils_1.left)("Failed to find locale by code: ".concat(localeCode));
38
+ }
39
+ };
40
+ };
41
+ exports.pagesByTagId = pagesByTagId;
@@ -0,0 +1,79 @@
1
+ "use strict";
2
+ var __read = (this && this.__read) || function (o, n) {
3
+ var m = typeof Symbol === "function" && o[Symbol.iterator];
4
+ if (!m) return o;
5
+ var i = m.call(o), r, ar = [], e;
6
+ try {
7
+ while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
8
+ }
9
+ catch (error) { e = { error: error }; }
10
+ finally {
11
+ try {
12
+ if (r && !r.done && (m = i["return"])) m.call(i);
13
+ }
14
+ finally { if (e) throw e.error; }
15
+ }
16
+ return ar;
17
+ };
18
+ var __spreadArray = (this && this.__spreadArray) || function (to, from, pack) {
19
+ if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
20
+ if (ar || !(i in from)) {
21
+ if (!ar) ar = Array.prototype.slice.call(from, 0, i);
22
+ ar[i] = from[i];
23
+ }
24
+ }
25
+ return to.concat(ar || Array.prototype.slice.call(from));
26
+ };
27
+ Object.defineProperty(exports, "__esModule", { value: true });
28
+ exports.pages = void 0;
29
+ var fp_utils_1 = require("../../../utils/fp-utils");
30
+ var build_localized_sitemap_1 = require("../helpers/build-localized-sitemap");
31
+ var to_arboretum_page_adapter_1 = require("../adapters/to-arboretum-page-adapter");
32
+ var redirect_to_arboretum_page_adapter_1 = require("../adapters/redirect-to-arboretum-page-adapter");
33
+ var singleOrAllLocalesE = function (locales) {
34
+ return function (localeCode) {
35
+ if (localeCode) {
36
+ var locale = locales.get(localeCode);
37
+ return locale
38
+ ? (0, fp_utils_1.right)([locale])
39
+ : (0, fp_utils_1.left)("Failed to find locale by code: ".concat(localeCode));
40
+ }
41
+ else {
42
+ return (0, fp_utils_1.right)(__spreadArray([], __read(locales.values()), false));
43
+ }
44
+ };
45
+ };
46
+ var pages = function (ctx) {
47
+ return function (options) {
48
+ var localeCode = options === null || options === void 0 ? void 0 : options.localeCode;
49
+ var localesE = singleOrAllLocalesE(ctx.data.locales)(localeCode);
50
+ var skip = typeof (options === null || options === void 0 ? void 0 : options.skip) !== 'undefined' ? options.skip : 0;
51
+ if (localesE._tag === 'Right') {
52
+ var pages_1 = localesE.right
53
+ .flatMap(function (locale) {
54
+ var localizedSitemapE = (0, build_localized_sitemap_1.localizedSitemapFromCacheOrBuildEff)(ctx, locale);
55
+ var pages = localizedSitemapE._tag === 'Right'
56
+ ? __spreadArray([], __read(localizedSitemapE.right.sitemap.values()), false).map(function (p) {
57
+ return p.type === 'page'
58
+ ? (0, to_arboretum_page_adapter_1.toArboretumPage)(localizedSitemapE.right, locale.code, options)(p)
59
+ : (0, redirect_to_arboretum_page_adapter_1.redirectToArboretumPage)(locale.code)(p);
60
+ })
61
+ : [];
62
+ return pages;
63
+ })
64
+ .sort(function (p1, p2) {
65
+ if (p1.id < p2.id)
66
+ return -1;
67
+ if (p1.id > p2.id)
68
+ return 1;
69
+ return 0;
70
+ })
71
+ .slice(skip, options === null || options === void 0 ? void 0 : options.limit);
72
+ return (0, fp_utils_1.right)(pages_1);
73
+ }
74
+ else {
75
+ return localesE;
76
+ }
77
+ };
78
+ };
79
+ exports.pages = pages;