@newskit-render/feed 0.20.0 → 0.21.0-alpha.0

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 (67) hide show
  1. package/dist/cjs/rss/__tests__/mocks.d.ts +161 -39
  2. package/dist/cjs/rss/__tests__/mocks.js +178 -11
  3. package/dist/cjs/rss/__tests__/mocks.js.map +1 -1
  4. package/dist/cjs/rss/contentEncodedUtils/createBlockElements.d.ts +9 -0
  5. package/dist/cjs/rss/contentEncodedUtils/createBlockElements.js +47 -0
  6. package/dist/cjs/rss/contentEncodedUtils/createBlockElements.js.map +1 -0
  7. package/dist/cjs/rss/contentEncodedUtils/createContentEncoded.js +9 -11
  8. package/dist/cjs/rss/contentEncodedUtils/createContentEncoded.js.map +1 -1
  9. package/dist/cjs/rss/contentEncodedUtils/createParagraph.js +3 -9
  10. package/dist/cjs/rss/contentEncodedUtils/createParagraph.js.map +1 -1
  11. package/dist/cjs/rss/contentEncodedUtils/createSummary.js +1 -1
  12. package/dist/cjs/rss/contentEncodedUtils/createSummary.js.map +1 -1
  13. package/dist/cjs/rss/contentEncodedUtils/index.d.ts +1 -0
  14. package/dist/cjs/rss/contentEncodedUtils/index.js +1 -0
  15. package/dist/cjs/rss/contentEncodedUtils/index.js.map +1 -1
  16. package/dist/cjs/rss/helpers/articleHelper.d.ts +4 -5
  17. package/dist/cjs/rss/helpers/articleHelper.js +3 -5
  18. package/dist/cjs/rss/helpers/articleHelper.js.map +1 -1
  19. package/dist/cjs/rss/helpers/buildBodyDataTypesMap.d.ts +2 -0
  20. package/dist/cjs/rss/helpers/buildBodyDataTypesMap.js +33 -0
  21. package/dist/cjs/rss/helpers/buildBodyDataTypesMap.js.map +1 -0
  22. package/dist/cjs/rss/helpers/buildLists.d.ts +4 -0
  23. package/dist/cjs/rss/helpers/buildLists.js +33 -0
  24. package/dist/cjs/rss/helpers/buildLists.js.map +1 -0
  25. package/dist/cjs/rss/helpers/index.d.ts +2 -0
  26. package/dist/cjs/rss/helpers/index.js +2 -0
  27. package/dist/cjs/rss/helpers/index.js.map +1 -1
  28. package/dist/cjs/rss/queries/getArticleList.js +1 -1
  29. package/dist/cjs/rss/queries/getArticleList.js.map +1 -1
  30. package/dist/cjs/rss/types.d.ts +87 -5
  31. package/dist/cjs/rss/types.js +26 -0
  32. package/dist/cjs/rss/types.js.map +1 -1
  33. package/dist/esm/rss/__tests__/mocks.d.ts +161 -39
  34. package/dist/esm/rss/__tests__/mocks.js +177 -10
  35. package/dist/esm/rss/__tests__/mocks.js.map +1 -1
  36. package/dist/esm/rss/contentEncodedUtils/createBlockElements.d.ts +9 -0
  37. package/dist/esm/rss/contentEncodedUtils/createBlockElements.js +36 -0
  38. package/dist/esm/rss/contentEncodedUtils/createBlockElements.js.map +1 -0
  39. package/dist/esm/rss/contentEncodedUtils/createContentEncoded.js +9 -11
  40. package/dist/esm/rss/contentEncodedUtils/createContentEncoded.js.map +1 -1
  41. package/dist/esm/rss/contentEncodedUtils/createParagraph.js +1 -7
  42. package/dist/esm/rss/contentEncodedUtils/createParagraph.js.map +1 -1
  43. package/dist/esm/rss/contentEncodedUtils/createRSSFeed.js +1 -1
  44. package/dist/esm/rss/contentEncodedUtils/createRSSFeed.js.map +1 -1
  45. package/dist/esm/rss/contentEncodedUtils/createSummary.js +1 -1
  46. package/dist/esm/rss/contentEncodedUtils/createSummary.js.map +1 -1
  47. package/dist/esm/rss/contentEncodedUtils/index.d.ts +1 -0
  48. package/dist/esm/rss/contentEncodedUtils/index.js +1 -0
  49. package/dist/esm/rss/contentEncodedUtils/index.js.map +1 -1
  50. package/dist/esm/rss/helpers/articleHelper.d.ts +4 -5
  51. package/dist/esm/rss/helpers/articleHelper.js +3 -5
  52. package/dist/esm/rss/helpers/articleHelper.js.map +1 -1
  53. package/dist/esm/rss/helpers/buildBodyDataTypesMap.d.ts +2 -0
  54. package/dist/esm/rss/helpers/buildBodyDataTypesMap.js +30 -0
  55. package/dist/esm/rss/helpers/buildBodyDataTypesMap.js.map +1 -0
  56. package/dist/esm/rss/helpers/buildLists.d.ts +4 -0
  57. package/dist/esm/rss/helpers/buildLists.js +27 -0
  58. package/dist/esm/rss/helpers/buildLists.js.map +1 -0
  59. package/dist/esm/rss/helpers/index.d.ts +2 -0
  60. package/dist/esm/rss/helpers/index.js +2 -0
  61. package/dist/esm/rss/helpers/index.js.map +1 -1
  62. package/dist/esm/rss/queries/getArticleList.js +1 -1
  63. package/dist/esm/rss/queries/getArticleList.js.map +1 -1
  64. package/dist/esm/rss/types.d.ts +87 -5
  65. package/dist/esm/rss/types.js +25 -1
  66. package/dist/esm/rss/types.js.map +1 -1
  67. package/package.json +4 -2
@@ -1 +1 @@
1
- {"version":3,"file":"createContentEncoded.js","sourceRoot":"","sources":["../../../../src/rss/contentEncodedUtils/createContentEncoded.ts"],"names":[],"mappings":";;;AACA,sBAAgD;AAEzC,IAAM,oBAAoB,GAAG,UAClC,IAAY,EACZ,gBAAgC;IAEhC,IAAM,YAAY,GAAa,EAAE,CAAA;IACjC,IAAI;QACF,IAAI,CAAC,OAAO,CAAC,UAAC,IAAI;YAChB,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;gBAC7B,YAAY,CAAC,IAAI,CAAC,IAAA,kBAAe,EAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAA;aAClD;YACD,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE;gBACzB,YAAY,CAAC,IAAI,CAAC,IAAA,cAAW,EAAC,IAAI,EAAE,gBAAgB,CAAC,CAAC,CAAA;aACvD;QACH,CAAC,CAAC,CAAA;IACJ,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAfY,QAAA,oBAAoB,wBAehC"}
1
+ {"version":3,"file":"createContentEncoded.js","sourceRoot":"","sources":["../../../../src/rss/contentEncodedUtils/createContentEncoded.ts"],"names":[],"mappings":";;;AACA,0EAAmE;AAC5D,IAAM,oBAAoB,GAAG,UAClC,IAAY,EACZ,gBAAgC;IAEhC,IAAM,YAAY,GAAG,IAAI,CAAC,GAAG,CAAC,UAAC,QAAQ;QACrC,IAAI,QAAQ,CAAC,IAAI,KAAK,OAAO,EAAE;YAC7B,OAAO,wCAAgB,CAAC,KAAK,CAAC,QAAsB,EAAE,gBAAgB,CAAC,CAAA;SACxE;QACD,IAAI,wCAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE;YACnC,OAAO,wCAAgB,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAA;SACjD;IACH,CAAC,CAAC,CAAA;IACF,OAAO,YAAY,CAAA;AACrB,CAAC,CAAA;AAbY,QAAA,oBAAoB,wBAahC"}
@@ -1,21 +1,15 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.createParagraph = void 0;
4
- var createTextBlock = function (textBlock) {
5
- // prettier-ignore
6
- return "" + (textBlock.bold ? '<strong>' : '') + (textBlock.italic ? "<em>" : '') + (textBlock.underline ? '<u>' : '') + textBlock.text + (textBlock.underline ? '</u>' : '') + (textBlock.italic ? "</em>" : '') + (textBlock.bold ? '</strong>' : '');
7
- };
8
- var createHyperlinkBlock = function (hyperlinkBlock) {
9
- return "<a href=\"" + hyperlinkBlock.url + "\">" + hyperlinkBlock.text + "</a>";
10
- };
4
+ var createBlockElements_1 = require("./createBlockElements");
11
5
  var createParagraph = function (content) {
12
6
  var paraArray = [];
13
7
  content.forEach(function (data) {
14
8
  if (data.type === 'text') {
15
- paraArray.push(createTextBlock(data));
9
+ paraArray.push((0, createBlockElements_1.createTextBlock)(data));
16
10
  }
17
11
  if (data.type === 'hyperlink') {
18
- paraArray.push(createHyperlinkBlock(data));
12
+ paraArray.push((0, createBlockElements_1.createHyperlinkBlock)(data));
19
13
  }
20
14
  });
21
15
  return "<p>" + paraArray.join('') + "</p>";
@@ -1 +1 @@
1
- {"version":3,"file":"createParagraph.js","sourceRoot":"","sources":["../../../../src/rss/contentEncodedUtils/createParagraph.ts"],"names":[],"mappings":";;;AAEA,IAAM,eAAe,GAAG,UAAC,SAAoB;IAC3C,kBAAkB;IAClB,OAAO,MAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,KAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,IAAG,SAAS,CAAC,IAAI,IAAG,SAAS,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,KAAG,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,CAAE,CAAA;AAC7O,CAAC,CAAA;AAED,IAAM,oBAAoB,GAAG,UAAC,cAA8B;IAC1D,OAAO,eAAY,cAAc,CAAC,GAAG,WAAK,cAAc,CAAC,IAAI,SAAM,CAAA;AACrE,CAAC,CAAA;AAEM,IAAM,eAAe,GAAG,UAAC,OAAiC;IAC/D,IAAM,SAAS,GAAa,EAAE,CAAA;IAC9B,OAAO,CAAC,OAAO,CAAC,UAAC,IAAI;QACnB,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;YACxB,SAAS,CAAC,IAAI,CAAC,eAAe,CAAC,IAAiB,CAAC,CAAC,CAAA;SACnD;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;YAC7B,SAAS,CAAC,IAAI,CAAC,oBAAoB,CAAC,IAAsB,CAAC,CAAC,CAAA;SAC7D;IACH,CAAC,CAAC,CAAA;IACF,OAAO,QAAM,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,SAAM,CAAA;AACvC,CAAC,CAAA;AAXY,QAAA,eAAe,mBAW3B"}
1
+ {"version":3,"file":"createParagraph.js","sourceRoot":"","sources":["../../../../src/rss/contentEncodedUtils/createParagraph.ts"],"names":[],"mappings":";;;AACA,6DAA6E;AAEtE,IAAM,eAAe,GAAG,UAAC,OAAiC;IAC/D,IAAM,SAAS,GAAa,EAAE,CAAA;IAC9B,OAAO,CAAC,OAAO,CAAC,UAAC,IAAI;QACnB,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,EAAE;YACxB,SAAS,CAAC,IAAI,CAAC,IAAA,qCAAe,EAAC,IAAiB,CAAC,CAAC,CAAA;SACnD;QACD,IAAI,IAAI,CAAC,IAAI,KAAK,WAAW,EAAE;YAC7B,SAAS,CAAC,IAAI,CAAC,IAAA,0CAAoB,EAAC,IAAsB,CAAC,CAAC,CAAA;SAC7D;IACH,CAAC,CAAC,CAAA;IACF,OAAO,QAAM,SAAS,CAAC,IAAI,CAAC,EAAE,CAAC,SAAM,CAAA;AACvC,CAAC,CAAA;AAXY,QAAA,eAAe,mBAW3B"}
@@ -8,7 +8,7 @@ var createSummary = function (body, summary) {
8
8
  }
9
9
  var firstParagraph = body && body.find(function (data) { return data.type === 'paragraph'; });
10
10
  if (firstParagraph && firstParagraph.type === 'paragraph') {
11
- var paragraph = (0, createParagraph_1.createParagraph)(firstParagraph.children);
11
+ var paragraph = (0, createParagraph_1.createParagraph)(firstParagraph.paragraphs);
12
12
  return "<description><![CDATA[" + paragraph + "]]></description>";
13
13
  }
14
14
  return '<description><![CDATA[]]></description>';
@@ -1 +1 @@
1
- {"version":3,"file":"createSummary.js","sourceRoot":"","sources":["../../../../src/rss/contentEncodedUtils/createSummary.ts"],"names":[],"mappings":";;;AACA,qDAAmD;AAE5C,IAAM,aAAa,GAAG,UAAC,IAAY,EAAE,OAAiB;IAC3D,IAAI,OAAO,EAAE;QACX,OAAO,2BAAyB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,sBAAmB,CAAA;KAC5E;IACD,IAAM,cAAc,GAAG,IAAI,IAAI,IAAI,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,WAAW,EAAzB,CAAyB,CAAC,CAAA;IAC7E,IAAI,cAAc,IAAI,cAAc,CAAC,IAAI,KAAK,WAAW,EAAE;QACzD,IAAM,SAAS,GAAG,IAAA,iCAAe,EAAC,cAAc,CAAC,QAAQ,CAAC,CAAA;QAC1D,OAAO,2BAAyB,SAAS,sBAAmB,CAAA;KAC7D;IACD,OAAO,yCAAyC,CAAA;AAClD,CAAC,CAAA;AAVY,QAAA,aAAa,iBAUzB"}
1
+ {"version":3,"file":"createSummary.js","sourceRoot":"","sources":["../../../../src/rss/contentEncodedUtils/createSummary.ts"],"names":[],"mappings":";;;AACA,qDAAmD;AAE5C,IAAM,aAAa,GAAG,UAAC,IAAY,EAAE,OAAiB;IAC3D,IAAI,OAAO,EAAE;QACX,OAAO,2BAAyB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,sBAAmB,CAAA;KAC5E;IACD,IAAM,cAAc,GAClB,IAAI,IAAK,IAAI,CAAC,IAAI,CAAC,UAAC,IAAI,IAAK,OAAA,IAAI,CAAC,IAAI,KAAK,WAAW,EAAzB,CAAyB,CAAoB,CAAA;IAC5E,IAAI,cAAc,IAAI,cAAc,CAAC,IAAI,KAAK,WAAW,EAAE;QACzD,IAAM,SAAS,GAAG,IAAA,iCAAe,EAAC,cAAc,CAAC,UAAU,CAAC,CAAA;QAC5D,OAAO,2BAAyB,SAAS,sBAAmB,CAAA;KAC7D;IACD,OAAO,yCAAyC,CAAA;AAClD,CAAC,CAAA;AAXY,QAAA,aAAa,iBAWzB"}
@@ -1,3 +1,4 @@
1
1
  export * from './createParagraph';
2
2
  export * from './createImage';
3
3
  export * from './createSummary';
4
+ export * from './createBlockElements';
@@ -13,4 +13,5 @@ Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./createParagraph"), exports);
14
14
  __exportStar(require("./createImage"), exports);
15
15
  __exportStar(require("./createSummary"), exports);
16
+ __exportStar(require("./createBlockElements"), exports);
16
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/rss/contentEncodedUtils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAiC;AACjC,gDAA6B;AAC7B,kDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/rss/contentEncodedUtils/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,oDAAiC;AACjC,gDAA6B;AAC7B,kDAA+B;AAC/B,wDAAqC"}
@@ -1,7 +1,6 @@
1
- export declare const buildArticleCategories: (categories: any[]) => string;
2
- export declare const createArticleLink: (id: string | number, headline: string, categories: {
3
- slug: string;
4
- }[]) => string;
1
+ import { Article, ArticleCategory } from '../types';
2
+ export declare const buildArticleCategories: (categories: ArticleCategory[]) => string;
3
+ export declare const createArticleLink: (id: string | number, headline: string, categories: ArticleCategory[]) => string;
5
4
  export declare const getFromDate: (num: number) => string;
6
- export declare const getLastUpdated: (articleList: any) => string;
5
+ export declare const getLastUpdated: (articleList: Article[]) => string;
7
6
  export declare const getLastBuildDate: () => string;
@@ -34,16 +34,14 @@ var createArticleLink = function (id, headline, categories) {
34
34
  exports.createArticleLink = createArticleLink;
35
35
  var getFromDate = function (num) {
36
36
  var date = new Date(new Date().setDate(new Date().getDate() - num));
37
- var year = date.getFullYear();
38
- var month = ("0" + (date.getMonth() + 1)).slice(-2);
39
- var day = ("0" + date.getDate()).slice(-2);
40
- return year + "-" + month + "-" + day;
37
+ var localeFormattedDate = date.toLocaleDateString('sv-SE');
38
+ return localeFormattedDate;
41
39
  };
42
40
  exports.getFromDate = getFromDate;
43
41
  var getLastUpdated = function (articleList) {
44
42
  return new Date(Math.max.apply(Math, articleList.map(function (_a) {
45
43
  var updatedDateTime = _a.updatedDateTime;
46
- return new Date(updatedDateTime);
44
+ return new Date(updatedDateTime).valueOf();
47
45
  }))).toUTCString();
48
46
  };
49
47
  exports.getLastUpdated = getLastUpdated;
@@ -1 +1 @@
1
- {"version":3,"file":"articleHelper.js","sourceRoot":"","sources":["../../../../src/rss/helpers/articleHelper.ts"],"names":[],"mappings":";;;AACA,IAAM,mBAAmB,GAAG,UAAC,KAAa;IACxC,OAAA,KAAK;SACF,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;SAC7B,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,WAAW,EAAE;SACb,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;SAClB,IAAI,EAAE;AALT,CAKS,CAAA;AAEX,IAAM,eAAe,GAAG,UAAC,UAA8B;IACrD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QACvD,OAAO,eAAe,CAAA;IACxB,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,eAAe,CAAA;AAC9C,CAAC,CAAA;AAEM,IAAM,sBAAsB,GAAG,UAAC,UAAiB;IACtD,OAAA,UAAU,CAAC,MAAM,KAAK,CAAC;QACrB,CAAC,CAAC,UAAU;aACP,GAAG,CAAC,UAAC,EAAQ;gBAAN,IAAI,UAAA;YACV,OAAO,IAAI;gBACT,CAAC,CAAC,wBAAsB,IAAI,mBAAgB;gBAC5C,CAAC,CAAC,gDAAgD,CAAA;QACtD,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC;QACb,CAAC,CAAC,gDAAgD;AARpD,CAQoD,CAAA;AATzC,QAAA,sBAAsB,0BASmB;AAE/C,IAAM,iBAAiB,GAAG,UAC/B,EAAmB,EACnB,QAAgB,EAChB,UAA8B;IAE9B,IAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,CAAC,CAAA;IAC5C,OAAO,MAAI,QAAQ,SAAI,EAAE,SAAI,mBAAmB,CAAC,QAAQ,CAAG,CAAA;AAC9D,CAAC,CAAA;AAPY,QAAA,iBAAiB,qBAO7B;AAEM,IAAM,WAAW,GAAG,UAAC,GAAW;IACrC,IAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,CAAC,CAAA;IAErE,IAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,CAAA;IAC/B,IAAM,KAAK,GAAG,CAAA,OAAI,IAAI,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAE,CAAA,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IACjD,IAAM,GAAG,GAAG,CAAA,MAAI,IAAI,CAAC,OAAO,EAAI,CAAA,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAA;IAC1C,OAAU,IAAI,SAAI,KAAK,SAAI,GAAK,CAAA;AAClC,CAAC,CAAA;AAPY,QAAA,WAAW,eAOvB;AAEM,IAAM,cAAc,GAAG,UAAC,WAAW;IACxC,OAAA,IAAI,IAAI,CACN,IAAI,CAAC,GAAG,OAAR,IAAI,EACC,WAAW,CAAC,GAAG,CAChB,UAAC,EAA4B;YAA1B,eAAe,qBAAA;QAAgB,OAAA,IAAI,IAAI,CAAC,eAAe,CAAC;IAAzB,CAAyB,CAC5D,EAEJ,CAAC,WAAW,EAAE;AANf,CAMe,CAAA;AAPJ,QAAA,cAAc,kBAOV;AAEV,IAAM,gBAAgB,GAAG,cAAM,OAAA,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAxB,CAAwB,CAAA;AAAjD,QAAA,gBAAgB,oBAAiC"}
1
+ {"version":3,"file":"articleHelper.js","sourceRoot":"","sources":["../../../../src/rss/helpers/articleHelper.ts"],"names":[],"mappings":";;;AACA,IAAM,mBAAmB,GAAG,UAAC,KAAa;IACxC,OAAA,KAAK;SACF,OAAO,CAAC,gBAAgB,EAAE,EAAE,CAAC;SAC7B,OAAO,CAAC,QAAQ,EAAE,GAAG,CAAC;SACtB,WAAW,EAAE;SACb,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;SAClB,IAAI,EAAE;AALT,CAKS,CAAA;AAEX,IAAM,eAAe,GAAG,UAAC,UAA6B;IACpD,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,UAAU,CAAC,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;QACvD,OAAO,eAAe,CAAA;IACxB,OAAO,UAAU,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,eAAe,CAAA;AAC9C,CAAC,CAAA;AAEM,IAAM,sBAAsB,GAAG,UAAC,UAA6B;IAClE,OAAA,UAAU,CAAC,MAAM,KAAK,CAAC;QACrB,CAAC,CAAC,UAAU;aACP,GAAG,CAAC,UAAC,EAAQ;gBAAN,IAAI,UAAA;YACV,OAAO,IAAI;gBACT,CAAC,CAAC,wBAAsB,IAAI,mBAAgB;gBAC5C,CAAC,CAAC,gDAAgD,CAAA;QACtD,CAAC,CAAC;aACD,IAAI,CAAC,EAAE,CAAC;QACb,CAAC,CAAC,gDAAgD;AARpD,CAQoD,CAAA;AATzC,QAAA,sBAAsB,0BASmB;AAE/C,IAAM,iBAAiB,GAAG,UAC/B,EAAmB,EACnB,QAAgB,EAChB,UAA6B;IAE7B,IAAM,QAAQ,GAAG,eAAe,CAAC,UAAU,CAAC,CAAA;IAC5C,OAAO,MAAI,QAAQ,SAAI,EAAE,SAAI,mBAAmB,CAAC,QAAQ,CAAG,CAAA;AAC9D,CAAC,CAAA;AAPY,QAAA,iBAAiB,qBAO7B;AAEM,IAAM,WAAW,GAAG,UAAC,GAAW;IACrC,IAAM,IAAI,GAAG,IAAI,IAAI,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,CAAC,IAAI,IAAI,EAAE,CAAC,OAAO,EAAE,GAAG,GAAG,CAAC,CAAC,CAAA;IACrE,IAAM,mBAAmB,GAAG,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAA;IAC5D,OAAO,mBAAmB,CAAA;AAC5B,CAAC,CAAA;AAJY,QAAA,WAAW,eAIvB;AAEM,IAAM,cAAc,GAAG,UAAC,WAAsB;IACnD,OAAA,IAAI,IAAI,CACN,IAAI,CAAC,GAAG,OAAR,IAAI,EACC,WAAW,CAAC,GAAG,CAAC,UAAC,EAA4B;YAA1B,eAAe,qBAAA;QACnC,OAAA,IAAI,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,EAAE;IAAnC,CAAmC,CACpC,EAEJ,CAAC,WAAW,EAAE;AANf,CAMe,CAAA;AAPJ,QAAA,cAAc,kBAOV;AAEV,IAAM,gBAAgB,GAAG,cAAc,OAAA,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAxB,CAAwB,CAAA;AAAzD,QAAA,gBAAgB,oBAAyC"}
@@ -0,0 +1,2 @@
1
+ import { BodyDataTypesMap } from '../types';
2
+ export declare const bodyDataTypesMap: BodyDataTypesMap;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ var _a;
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.bodyDataTypesMap = void 0;
5
+ var contentEncodedUtils_1 = require("../contentEncodedUtils");
6
+ var createBlockElements_1 = require("../contentEncodedUtils/createBlockElements");
7
+ var types_1 = require("../types");
8
+ var buildLists_1 = require("./buildLists");
9
+ exports.bodyDataTypesMap = (_a = {},
10
+ _a[types_1.BodyBlockTypes.Paragraph] = function (data) {
11
+ return (0, contentEncodedUtils_1.createParagraph)(data.paragraphs);
12
+ },
13
+ _a[types_1.BodyBlockTypes.Image] = function (data, imageSourceSizes) {
14
+ return (0, contentEncodedUtils_1.createImage)(data, imageSourceSizes);
15
+ },
16
+ _a[types_1.BodyBlockTypes.UnorderedListBlock] = function (list) {
17
+ return (0, buildLists_1.createUnorderedList)(list);
18
+ },
19
+ _a[types_1.BodyBlockTypes.OrderedListBlock] = function (list) {
20
+ return (0, buildLists_1.createOrderedList)(list);
21
+ },
22
+ _a[types_1.BodyBlockTypes.Heading] = function (data) { return (0, createBlockElements_1.createHeadingBlock)(data); },
23
+ _a[types_1.BodyBlockTypes.Tweet] = function (data) { return (0, createBlockElements_1.createTweetBlock)(data.id); },
24
+ _a[types_1.BodyBlockTypes.Youtube] = function (data) { return (0, createBlockElements_1.createYoutubeBlock)(data.id); },
25
+ _a[types_1.BodyBlockTypes.Instagram] = function (data) {
26
+ return (0, createBlockElements_1.createInstagramBlock)(data.id);
27
+ },
28
+ _a[types_1.BodyBlockTypes.VideoBrightcove] = function (data) {
29
+ return (0, createBlockElements_1.createVideoBrightcoveBlock)(data.id, data.accountId, data.playerId);
30
+ },
31
+ _a[types_1.BodyBlockTypes.Embed] = function (data) { return (0, createBlockElements_1.createEmbedBlock)(data.url); },
32
+ _a);
33
+ //# sourceMappingURL=buildBodyDataTypesMap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildBodyDataTypesMap.js","sourceRoot":"","sources":["../../../../src/rss/helpers/buildBodyDataTypesMap.ts"],"names":[],"mappings":";;;;AACA,8DAAqE;AACrE,kFAOmD;AACnD,kCAYiB;AACjB,2CAAqE;AAExD,QAAA,gBAAgB;IAC3B,GAAC,sBAAc,CAAC,SAAS,IAAG,UAAC,IAAoB;QAC/C,OAAA,IAAA,qCAAe,EAAC,IAAI,CAAC,UAAU,CAAC;IAAhC,CAAgC;IAClC,GAAC,sBAAc,CAAC,KAAK,IAAG,UAAC,IAAgB,EAAE,gBAA2B;QACpE,OAAA,IAAA,iCAAW,EAAC,IAAI,EAAE,gBAAgB,CAAC;IAAnC,CAAmC;IACrC,GAAC,sBAAc,CAAC,kBAAkB,IAAG,UAAC,IAAmB;QACvD,OAAA,IAAA,gCAAmB,EAAC,IAAI,CAAC;IAAzB,CAAyB;IAC3B,GAAC,sBAAc,CAAC,gBAAgB,IAAG,UAAC,IAAiB;QACnD,OAAA,IAAA,8BAAiB,EAAC,IAAI,CAAC;IAAvB,CAAuB;IACzB,GAAC,sBAAc,CAAC,OAAO,IAAG,UAAC,IAAkB,IAAK,OAAA,IAAA,wCAAkB,EAAC,IAAI,CAAC,EAAxB,CAAwB;IAC1E,GAAC,sBAAc,CAAC,KAAK,IAAG,UAAC,IAAgB,IAAK,OAAA,IAAA,sCAAgB,EAAC,IAAI,CAAC,EAAE,CAAC,EAAzB,CAAyB;IACvE,GAAC,sBAAc,CAAC,OAAO,IAAG,UAAC,IAAkB,IAAK,OAAA,IAAA,wCAAkB,EAAC,IAAI,CAAC,EAAE,CAAC,EAA3B,CAA2B;IAC7E,GAAC,sBAAc,CAAC,SAAS,IAAG,UAAC,IAAoB;QAC/C,OAAA,IAAA,0CAAoB,EAAC,IAAI,CAAC,EAAE,CAAC;IAA7B,CAA6B;IAC/B,GAAC,sBAAc,CAAC,eAAe,IAAG,UAAC,IAA0B;QAC3D,OAAA,IAAA,gDAA0B,EAAC,IAAI,CAAC,EAAE,EAAE,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,QAAQ,CAAC;IAAlE,CAAkE;IACpE,GAAC,sBAAc,CAAC,KAAK,IAAG,UAAC,IAAgB,IAAK,OAAA,IAAA,sCAAgB,EAAC,IAAI,CAAC,GAAG,CAAC,EAA1B,CAA0B;QACzE"}
@@ -0,0 +1,4 @@
1
+ import { UnorderedList, OrderedList, ListItem } from '../types';
2
+ export declare const createUnorderedList: (unorderedList: UnorderedList) => string;
3
+ export declare const createOrderedList: (orderedList: OrderedList) => string;
4
+ export declare const listItemsSwitcher: (item: ListItem) => string;
@@ -0,0 +1,33 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.listItemsSwitcher = exports.createOrderedList = exports.createUnorderedList = void 0;
4
+ var contentEncodedUtils_1 = require("../contentEncodedUtils");
5
+ var types_1 = require("../types");
6
+ var createUnorderedList = function (unorderedList) {
7
+ return "<ul>" + unorderedList.items
8
+ .map(function (item) { return "<li>" + (0, exports.listItemsSwitcher)(item) + "</li>"; })
9
+ .join('') + "</ul>";
10
+ };
11
+ exports.createUnorderedList = createUnorderedList;
12
+ var createOrderedList = function (orderedList) {
13
+ return "<ol>" + orderedList.items
14
+ .map(function (item) { return "<li>" + (0, exports.listItemsSwitcher)(item) + "</li>"; })
15
+ .join('') + "</ol>";
16
+ };
17
+ exports.createOrderedList = createOrderedList;
18
+ var listItemsSwitcher = function (item) {
19
+ switch (item.type) {
20
+ case types_1.ListItemTypes.Text:
21
+ return (0, contentEncodedUtils_1.createTextBlock)(item);
22
+ case types_1.ListItemTypes.Hyperlink:
23
+ return (0, contentEncodedUtils_1.createHyperlinkBlock)(item);
24
+ case types_1.ListItemTypes.UnorderedList:
25
+ return (0, exports.createUnorderedList)(item);
26
+ case types_1.ListItemTypes.OrderedList:
27
+ return (0, exports.createOrderedList)(item);
28
+ default:
29
+ return '';
30
+ }
31
+ };
32
+ exports.listItemsSwitcher = listItemsSwitcher;
33
+ //# sourceMappingURL=buildLists.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"buildLists.js","sourceRoot":"","sources":["../../../../src/rss/helpers/buildLists.ts"],"names":[],"mappings":";;;AAAA,8DAA8E;AAC9E,kCAA8E;AAEvE,IAAM,mBAAmB,GAAG,UAAC,aAA4B;IAC9D,OAAA,SAAO,aAAa,CAAC,KAAK;SACvB,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,SAAO,IAAA,yBAAiB,EAAC,IAAI,CAAC,UAAO,EAArC,CAAqC,CAAC;SACpD,IAAI,CAAC,EAAE,CAAC,UAAO;AAFlB,CAEkB,CAAA;AAHP,QAAA,mBAAmB,uBAGZ;AAEb,IAAM,iBAAiB,GAAG,UAAC,WAAwB;IACxD,OAAA,SAAO,WAAW,CAAC,KAAK;SACrB,GAAG,CAAC,UAAC,IAAI,IAAK,OAAA,SAAO,IAAA,yBAAiB,EAAC,IAAI,CAAC,UAAO,EAArC,CAAqC,CAAC;SACpD,IAAI,CAAC,EAAE,CAAC,UAAO;AAFlB,CAEkB,CAAA;AAHP,QAAA,iBAAiB,qBAGV;AAEb,IAAM,iBAAiB,GAAG,UAAC,IAAc;IAC9C,QAAQ,IAAI,CAAC,IAAI,EAAE;QACjB,KAAK,qBAAa,CAAC,IAAI;YACrB,OAAO,IAAA,qCAAe,EAAC,IAAI,CAAC,CAAA;QAC9B,KAAK,qBAAa,CAAC,SAAS;YAC1B,OAAO,IAAA,0CAAoB,EAAC,IAAI,CAAC,CAAA;QACnC,KAAK,qBAAa,CAAC,aAAa;YAC9B,OAAO,IAAA,2BAAmB,EAAC,IAAI,CAAC,CAAA;QAClC,KAAK,qBAAa,CAAC,WAAW;YAC5B,OAAO,IAAA,yBAAiB,EAAC,IAAI,CAAC,CAAA;QAChC;YACE,OAAO,EAAE,CAAA;KACZ;AACH,CAAC,CAAA;AAbY,QAAA,iBAAiB,qBAa7B"}
@@ -1 +1,3 @@
1
1
  export * from './articleHelper';
2
+ export * from './buildLists';
3
+ export * from './buildBodyDataTypesMap';
@@ -11,4 +11,6 @@ var __exportStar = (this && this.__exportStar) || function(m, exports) {
11
11
  };
12
12
  Object.defineProperty(exports, "__esModule", { value: true });
13
13
  __exportStar(require("./articleHelper"), exports);
14
+ __exportStar(require("./buildLists"), exports);
15
+ __exportStar(require("./buildBodyDataTypesMap"), exports);
14
16
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/rss/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/rss/helpers/index.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,kDAA+B;AAC/B,+CAA4B;AAC5B,0DAAuC"}
@@ -6,6 +6,6 @@ var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cook
6
6
  Object.defineProperty(exports, "__esModule", { value: true });
7
7
  exports.GET_ARTICLE_LIST = void 0;
8
8
  var client_1 = require("@apollo/client");
9
- exports.GET_ARTICLE_LIST = (0, client_1.gql)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n query getArticleList(\n $publisher: Publisher!\n $from: Date\n $to: Date\n $cursor: String\n ) {\n articleList(\n publisher: $publisher\n from: $from\n to: $to\n cursor: $cursor\n limit: 20\n ) {\n pageCursors {\n next\n }\n data {\n categories {\n slug\n }\n bylines {\n ... on AuthorByline {\n name\n }\n }\n publisher\n publishedDateTime\n updatedDateTime\n headline\n id\n body {\n ... on ImageBlock {\n alt\n caption\n credit\n height\n width\n type\n url\n }\n ... on ParagraphBlock {\n children {\n ... on TextBlock {\n bold\n italic\n monospace\n text\n type\n underline\n }\n ... on HyperlinkBlock {\n text\n type\n url\n }\n }\n type\n }\n }\n }\n meta {\n countTotal\n }\n }\n }\n"], ["\n query getArticleList(\n $publisher: Publisher!\n $from: Date\n $to: Date\n $cursor: String\n ) {\n articleList(\n publisher: $publisher\n from: $from\n to: $to\n cursor: $cursor\n limit: 20\n ) {\n pageCursors {\n next\n }\n data {\n categories {\n slug\n }\n bylines {\n ... on AuthorByline {\n name\n }\n }\n publisher\n publishedDateTime\n updatedDateTime\n headline\n id\n body {\n ... on ImageBlock {\n alt\n caption\n credit\n height\n width\n type\n url\n }\n ... on ParagraphBlock {\n children {\n ... on TextBlock {\n bold\n italic\n monospace\n text\n type\n underline\n }\n ... on HyperlinkBlock {\n text\n type\n url\n }\n }\n type\n }\n }\n }\n meta {\n countTotal\n }\n }\n }\n"])));
9
+ exports.GET_ARTICLE_LIST = (0, client_1.gql)(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n query getArticleList(\n $publisher: Publisher!\n $from: Date\n $to: Date\n $cursor: String\n ) {\n articleList(\n publisher: $publisher\n from: $from\n to: $to\n cursor: $cursor\n limit: 20\n ) {\n pageCursors {\n next\n }\n data {\n categories {\n slug\n }\n bylines {\n ... on AuthorByline {\n name\n }\n }\n publisher\n publishedDateTime\n updatedDateTime\n headline\n id\n body {\n ... on ImageBlock {\n alt\n caption\n credit\n height\n width\n type\n url\n }\n ... on ParagraphBlock {\n paragraphs: children {\n ... on TextBlock {\n bold\n italic\n monospace\n text\n type\n underline\n }\n ... on HyperlinkBlock {\n text\n type\n url\n }\n }\n type\n }\n ... on TextBlock {\n type\n text\n bold\n italic\n }\n ... on HeadingBlock {\n type\n level\n }\n ... on FormStackBlock {\n type\n id\n }\n ... on TweetBlock {\n type\n id\n }\n ... on InstagramBlock {\n type\n id\n }\n ... on YoutubeBlock {\n type\n id\n }\n ... on VideoBrightcoveBlock {\n type\n id\n accountId\n playerId\n }\n ... on OrderedListBlock {\n type\n items {\n ... on HyperlinkBlock {\n type\n url\n text\n }\n ... on TextBlock {\n type\n text\n bold\n italic\n }\n }\n }\n ... on UnorderedListBlock {\n type\n items {\n ... on HyperlinkBlock {\n type\n url\n text\n }\n ... on TextBlock {\n type\n text\n bold\n italic\n }\n }\n }\n ... on EmbedBlock {\n type\n url\n }\n ... on HeadingBlock {\n type\n level\n children {\n ... on TextBlock {\n type\n text\n bold\n italic\n }\n }\n }\n }\n }\n meta {\n countTotal\n }\n }\n }\n"], ["\n query getArticleList(\n $publisher: Publisher!\n $from: Date\n $to: Date\n $cursor: String\n ) {\n articleList(\n publisher: $publisher\n from: $from\n to: $to\n cursor: $cursor\n limit: 20\n ) {\n pageCursors {\n next\n }\n data {\n categories {\n slug\n }\n bylines {\n ... on AuthorByline {\n name\n }\n }\n publisher\n publishedDateTime\n updatedDateTime\n headline\n id\n body {\n ... on ImageBlock {\n alt\n caption\n credit\n height\n width\n type\n url\n }\n ... on ParagraphBlock {\n paragraphs: children {\n ... on TextBlock {\n bold\n italic\n monospace\n text\n type\n underline\n }\n ... on HyperlinkBlock {\n text\n type\n url\n }\n }\n type\n }\n ... on TextBlock {\n type\n text\n bold\n italic\n }\n ... on HeadingBlock {\n type\n level\n }\n ... on FormStackBlock {\n type\n id\n }\n ... on TweetBlock {\n type\n id\n }\n ... on InstagramBlock {\n type\n id\n }\n ... on YoutubeBlock {\n type\n id\n }\n ... on VideoBrightcoveBlock {\n type\n id\n accountId\n playerId\n }\n ... on OrderedListBlock {\n type\n items {\n ... on HyperlinkBlock {\n type\n url\n text\n }\n ... on TextBlock {\n type\n text\n bold\n italic\n }\n }\n }\n ... on UnorderedListBlock {\n type\n items {\n ... on HyperlinkBlock {\n type\n url\n text\n }\n ... on TextBlock {\n type\n text\n bold\n italic\n }\n }\n }\n ... on EmbedBlock {\n type\n url\n }\n ... on HeadingBlock {\n type\n level\n children {\n ... on TextBlock {\n type\n text\n bold\n italic\n }\n }\n }\n }\n }\n meta {\n countTotal\n }\n }\n }\n"])));
10
10
  var templateObject_1;
11
11
  //# sourceMappingURL=getArticleList.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"getArticleList.js","sourceRoot":"","sources":["../../../../src/rss/queries/getArticleList.ts"],"names":[],"mappings":";;;;;;;AAAA,yCAAoC;AAEvB,QAAA,gBAAgB,OAAG,YAAG,yxCAAA,qtCAkElC,KAAA"}
1
+ {"version":3,"file":"getArticleList.js","sourceRoot":"","sources":["../../../../src/rss/queries/getArticleList.ts"],"names":[],"mappings":";;;;;;;AAAA,yCAAoC;AAEvB,QAAA,gBAAgB,OAAG,YAAG,w+FAAA,o6FAkJlC,KAAA"}
@@ -1,5 +1,6 @@
1
1
  import { NextApiResponse } from 'next';
2
2
  import { Publisher } from '@newskit-render/api';
3
+ import { VideoBrightcoveBlock } from 'helpers/types';
3
4
  export declare type UpdatePeriod = 'hourly' | 'daily' | 'weekly' | 'monthly' | 'yearly';
4
5
  export declare type TiteAttributes = {
5
6
  title: string;
@@ -33,7 +34,12 @@ export declare type HyperlinkBlock = {
33
34
  export declare type ParagraphBlockChildren = TextBlock | HyperlinkBlock;
34
35
  export declare type ParagraphBlock = {
35
36
  type: 'paragraph';
36
- children: ParagraphBlockChildren[];
37
+ paragraphs: ParagraphBlockChildren[];
38
+ };
39
+ export declare type HeadingBlock = {
40
+ type: 'heading';
41
+ level: number;
42
+ children: TextBlock[];
37
43
  };
38
44
  export declare type ImageBlock = {
39
45
  alt: string;
@@ -44,18 +50,70 @@ export declare type ImageBlock = {
44
50
  url: string;
45
51
  type: 'image';
46
52
  };
47
- export declare type Body = ParagraphBlock | ImageBlock;
53
+ export declare type TweetBlock = {
54
+ id: string;
55
+ type: 'tweet';
56
+ };
57
+ export declare type FormStackBlock = {
58
+ id: string;
59
+ type: string;
60
+ };
61
+ export declare type EmbedBlock = {
62
+ type: 'embed';
63
+ url: string;
64
+ };
65
+ export declare type InstagramBlock = {
66
+ id: string;
67
+ type: 'instagram';
68
+ };
69
+ export declare type YoutubeBlock = {
70
+ id: 'youtube';
71
+ type: string;
72
+ };
73
+ export declare type Body = TextBlock | ParagraphBlock | ImageBlock | HeadingBlock | EmbedBlock | FormStackBlock | InstagramBlock | VideoBrightcoveBlock | UnorderedList | OrderedList;
48
74
  export declare type Summary = {
49
75
  children: {
50
76
  text: string;
51
77
  }[];
52
78
  };
79
+ export declare type ListItem = UnorderedList | OrderedList | TextBlock | HyperlinkBlock;
80
+ export declare enum ListTypes {
81
+ UnorderedList = "unordered-list",
82
+ OrderedList = "ordered-list"
83
+ }
84
+ export declare type UnorderedList = {
85
+ type: 'unordered-list';
86
+ items: [ListItem];
87
+ };
88
+ export declare type OrderedList = {
89
+ type: 'ordered-list';
90
+ items: [ListItem];
91
+ };
92
+ export declare enum ListItemTypes {
93
+ UnorderedList = "unordered-list",
94
+ OrderedList = "ordered-list",
95
+ Text = "text",
96
+ Hyperlink = "hyperlink"
97
+ }
98
+ /**
99
+ * the Category type, as returned from the API has the following shape:
100
+ * {
101
+ id: string
102
+ parentId: string
103
+ slug: string
104
+ title: string
105
+ type: 'category'
106
+ }
107
+ we're cirrently only using slug, but we might need to use more in the future.
108
+ I have exported the type as it is used now to be able to type an argument in the code properly
109
+ */
110
+ export declare type ArticleCategory = {
111
+ slug: string;
112
+ };
53
113
  export declare type Article = {
54
114
  id: string | number;
55
115
  headline: string;
56
- categories: {
57
- slug: string;
58
- }[];
116
+ categories: ArticleCategory[];
59
117
  bylines?: {
60
118
  name: string;
61
119
  }[];
@@ -65,3 +123,27 @@ export declare type Article = {
65
123
  body: Body[];
66
124
  };
67
125
  export declare type ArticleList = Article[];
126
+ export declare enum BodyBlockTypes {
127
+ Paragraph = "paragraph",
128
+ Image = "image",
129
+ Heading = "heading",
130
+ Tweet = "tweet",
131
+ Youtube = "youtube",
132
+ Instagram = "instagram",
133
+ Embed = "embed",
134
+ VideoBrightcove = "video-brightcove",
135
+ UnorderedListBlock = "unordered-list",
136
+ OrderedListBlock = "ordered-list"
137
+ }
138
+ export declare type BodyDataTypesMap = {
139
+ [BodyBlockTypes.Paragraph]: (data: ParagraphBlock) => string;
140
+ [BodyBlockTypes.Image]: (data: ImageBlock, imageSourceSizes?: string[]) => string;
141
+ [BodyBlockTypes.UnorderedListBlock]: (list: UnorderedList) => string;
142
+ [BodyBlockTypes.OrderedListBlock]: (list: OrderedList) => string;
143
+ [BodyBlockTypes.Heading]: (data: HeadingBlock) => string;
144
+ [BodyBlockTypes.Tweet]: (data: TweetBlock) => string;
145
+ [BodyBlockTypes.Youtube]: (data: YoutubeBlock) => string;
146
+ [BodyBlockTypes.Instagram]: (data: InstagramBlock) => string;
147
+ [BodyBlockTypes.VideoBrightcove]: (data: VideoBrightcoveBlock) => string;
148
+ [BodyBlockTypes.Embed]: (data: EmbedBlock) => string;
149
+ };
@@ -1,3 +1,29 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.BodyBlockTypes = exports.ListItemTypes = exports.ListTypes = void 0;
4
+ var ListTypes;
5
+ (function (ListTypes) {
6
+ ListTypes["UnorderedList"] = "unordered-list";
7
+ ListTypes["OrderedList"] = "ordered-list";
8
+ })(ListTypes = exports.ListTypes || (exports.ListTypes = {}));
9
+ var ListItemTypes;
10
+ (function (ListItemTypes) {
11
+ ListItemTypes["UnorderedList"] = "unordered-list";
12
+ ListItemTypes["OrderedList"] = "ordered-list";
13
+ ListItemTypes["Text"] = "text";
14
+ ListItemTypes["Hyperlink"] = "hyperlink";
15
+ })(ListItemTypes = exports.ListItemTypes || (exports.ListItemTypes = {}));
16
+ var BodyBlockTypes;
17
+ (function (BodyBlockTypes) {
18
+ BodyBlockTypes["Paragraph"] = "paragraph";
19
+ BodyBlockTypes["Image"] = "image";
20
+ BodyBlockTypes["Heading"] = "heading";
21
+ BodyBlockTypes["Tweet"] = "tweet";
22
+ BodyBlockTypes["Youtube"] = "youtube";
23
+ BodyBlockTypes["Instagram"] = "instagram";
24
+ BodyBlockTypes["Embed"] = "embed";
25
+ BodyBlockTypes["VideoBrightcove"] = "video-brightcove";
26
+ BodyBlockTypes["UnorderedListBlock"] = "unordered-list";
27
+ BodyBlockTypes["OrderedListBlock"] = "ordered-list";
28
+ })(BodyBlockTypes = exports.BodyBlockTypes || (exports.BodyBlockTypes = {}));
3
29
  //# sourceMappingURL=types.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/rss/types.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"types.js","sourceRoot":"","sources":["../../../src/rss/types.ts"],"names":[],"mappings":";;;AAuGA,IAAY,SAGX;AAHD,WAAY,SAAS;IACnB,6CAAgC,CAAA;IAChC,yCAA4B,CAAA;AAC9B,CAAC,EAHW,SAAS,GAAT,iBAAS,KAAT,iBAAS,QAGpB;AAUD,IAAY,aAKX;AALD,WAAY,aAAa;IACvB,iDAAgC,CAAA;IAChC,6CAA4B,CAAA;IAC5B,8BAAa,CAAA;IACb,wCAAuB,CAAA;AACzB,CAAC,EALW,aAAa,GAAb,qBAAa,KAAb,qBAAa,QAKxB;AA8BD,IAAY,cAWX;AAXD,WAAY,cAAc;IACxB,yCAAuB,CAAA;IACvB,iCAAe,CAAA;IACf,qCAAmB,CAAA;IACnB,iCAAe,CAAA;IACf,qCAAmB,CAAA;IACnB,yCAAuB,CAAA;IACvB,iCAAe,CAAA;IACf,sDAAoC,CAAA;IACpC,uDAAqC,CAAA;IACrC,mDAAiC,CAAA;AACnC,CAAC,EAXW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAWzB"}
@@ -1,4 +1,4 @@
1
- import { TiteAttributes } from '../types';
1
+ import { Body, TiteAttributes } from '../types';
2
2
  export declare const domainMock = "https://demo.com";
3
3
  export declare const lastBuildDateMock: string;
4
4
  export declare const updatedDateTimeMock = "Tue, 12 Apr 2022 11:17:09 GMT";
@@ -17,6 +17,7 @@ export declare const articleListMock: ({
17
17
  updatedDateTime: string;
18
18
  headline: string;
19
19
  id: string;
20
+ body: Body[];
20
21
  } | {
21
22
  categories: {
22
23
  slug: string;
@@ -34,6 +35,7 @@ export declare const articleListMock: ({
34
35
  updatedDateTime: string;
35
36
  headline: string;
36
37
  id: string;
38
+ body: Body[];
37
39
  } | {
38
40
  categories: {
39
41
  name: string;
@@ -49,6 +51,7 @@ export declare const articleListMock: ({
49
51
  updatedDateTime: string;
50
52
  headline: string;
51
53
  id: string;
54
+ body: Body[];
52
55
  })[];
53
56
  export declare const rssMock: string;
54
57
  export declare const articleListWithBodyMock: {
@@ -64,47 +67,166 @@ export declare const articleListWithBodyMock: {
64
67
  updatedDateTime: string;
65
68
  headline: string;
66
69
  id: string;
67
- body: ({
70
+ body: Body[];
71
+ }[];
72
+ export declare const rssWithBodyMock: string;
73
+ export declare const mockBodyBlocks: ({
74
+ type: string;
75
+ paragraphs: ({
76
+ bold: boolean;
77
+ italic: boolean;
78
+ underline: boolean;
79
+ text: string;
68
80
  type: string;
69
- children: ({
70
- bold: boolean;
71
- italic: boolean;
72
- underline: boolean;
73
- text: string;
74
- type: string;
75
- url?: undefined;
76
- } | {
77
- url: string;
78
- text: string;
79
- type: string;
80
- bold?: undefined;
81
- italic?: undefined;
82
- underline?: undefined;
83
- })[];
84
- alt?: undefined;
85
- caption?: undefined;
86
- credit?: undefined;
87
- height?: undefined;
88
- width?: undefined;
81
+ monospace: boolean;
89
82
  url?: undefined;
90
83
  } | {
91
- type: string;
92
- alt: string;
93
- caption: string;
94
- credit: string;
95
- height: string;
96
- width: string;
97
84
  url: string;
98
- children?: undefined;
99
- } | {
85
+ text: string;
100
86
  type: string;
101
- alt: null;
102
- caption: null;
103
- credit: null;
104
- height: string;
105
- width: string;
106
- url: string;
107
- children?: undefined;
87
+ bold?: undefined;
88
+ italic?: undefined;
89
+ underline?: undefined;
90
+ monospace?: undefined;
108
91
  })[];
109
- }[];
110
- export declare const rssWithBodyMock: string;
92
+ alt?: undefined;
93
+ caption?: undefined;
94
+ credit?: undefined;
95
+ height?: undefined;
96
+ width?: undefined;
97
+ url?: undefined;
98
+ id?: undefined;
99
+ playerId?: undefined;
100
+ accountId?: undefined;
101
+ level?: undefined;
102
+ children?: undefined;
103
+ items?: undefined;
104
+ } | {
105
+ type: string;
106
+ alt: string;
107
+ caption: string;
108
+ credit: string;
109
+ height: number;
110
+ width: number;
111
+ url: string;
112
+ paragraphs?: undefined;
113
+ id?: undefined;
114
+ playerId?: undefined;
115
+ accountId?: undefined;
116
+ level?: undefined;
117
+ children?: undefined;
118
+ items?: undefined;
119
+ } | {
120
+ type: string;
121
+ id: string;
122
+ paragraphs?: undefined;
123
+ alt?: undefined;
124
+ caption?: undefined;
125
+ credit?: undefined;
126
+ height?: undefined;
127
+ width?: undefined;
128
+ url?: undefined;
129
+ playerId?: undefined;
130
+ accountId?: undefined;
131
+ level?: undefined;
132
+ children?: undefined;
133
+ items?: undefined;
134
+ } | {
135
+ type: string;
136
+ url: string;
137
+ paragraphs?: undefined;
138
+ alt?: undefined;
139
+ caption?: undefined;
140
+ credit?: undefined;
141
+ height?: undefined;
142
+ width?: undefined;
143
+ id?: undefined;
144
+ playerId?: undefined;
145
+ accountId?: undefined;
146
+ level?: undefined;
147
+ children?: undefined;
148
+ items?: undefined;
149
+ } | {
150
+ type: string;
151
+ id: string;
152
+ playerId: string;
153
+ accountId: string;
154
+ paragraphs?: undefined;
155
+ alt?: undefined;
156
+ caption?: undefined;
157
+ credit?: undefined;
158
+ height?: undefined;
159
+ width?: undefined;
160
+ url?: undefined;
161
+ level?: undefined;
162
+ children?: undefined;
163
+ items?: undefined;
164
+ } | {
165
+ type: string;
166
+ level: number;
167
+ children: {
168
+ type: string;
169
+ text: string;
170
+ bold: boolean;
171
+ italic: boolean;
172
+ }[];
173
+ paragraphs?: undefined;
174
+ alt?: undefined;
175
+ caption?: undefined;
176
+ credit?: undefined;
177
+ height?: undefined;
178
+ width?: undefined;
179
+ url?: undefined;
180
+ id?: undefined;
181
+ playerId?: undefined;
182
+ accountId?: undefined;
183
+ items?: undefined;
184
+ } | {
185
+ type: string;
186
+ items: {
187
+ type: string;
188
+ text: string;
189
+ bold: boolean;
190
+ italic: boolean;
191
+ }[];
192
+ paragraphs?: undefined;
193
+ alt?: undefined;
194
+ caption?: undefined;
195
+ credit?: undefined;
196
+ height?: undefined;
197
+ width?: undefined;
198
+ url?: undefined;
199
+ id?: undefined;
200
+ playerId?: undefined;
201
+ accountId?: undefined;
202
+ level?: undefined;
203
+ children?: undefined;
204
+ })[];
205
+ export declare const expectedBodyBlocks: string[];
206
+ export declare const mockList: ({
207
+ type: string;
208
+ text: string;
209
+ bold: boolean;
210
+ italic: boolean;
211
+ url?: undefined;
212
+ items?: undefined;
213
+ } | {
214
+ url: string;
215
+ text: string;
216
+ type: string;
217
+ bold?: undefined;
218
+ italic?: undefined;
219
+ items?: undefined;
220
+ } | {
221
+ type: string;
222
+ items: {
223
+ type: string;
224
+ text: string;
225
+ bold: boolean;
226
+ italic: boolean;
227
+ }[];
228
+ text?: undefined;
229
+ bold?: undefined;
230
+ italic?: undefined;
231
+ url?: undefined;
232
+ })[];