{"_id":"@mentor-medier/article-body-block","_rev":"74-4820cac365b419bc7210e5dbd0ac6bb7","name":"@mentor-medier/article-body-block","dist-tags":{"latest":"5.13.3","canary":"0.0.0-canary.b3b3816","beta":"0.0.0-beta.0be28ab.20210705141632","stable":"5.13.3"},"versions":{"5.9.15":{"name":"@mentor-medier/article-body-block","version":"5.9.15","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"d7550d1ab57f0b256e433c4902738a28e2322eba","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@5.9.15","_nodeVersion":"12.18.3","_npmVersion":"lerna/3.22.1/node@v12.18.3+x64 (darwin)","dist":{"integrity":"sha512-XBtBbYdfj7Eh5398t1q1Trfjkrbo+l7/FgeBZ6g35X3i/kHxaKO8FMBgKWVrXBgOYUguKVyX3xhP9J39M7gL0g==","shasum":"71b08eee9df728047ad0f98905b3a84aea445cde","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-5.9.15.tgz","fileCount":18,"unpackedSize":38389,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgAEZvCRA9TVsSAnZWagAAw58P+wZVkencFdE7lHA+/5zT\nV8sTLHckj59HmVpzGrAkMHNRcMPzHFrsWBA1oeBxYLHfiT9n7Pk+N0WB8IPm\neTENU0XllYUAV6cOxBFaWLf2bnq+5Wkg4Uw/EnLyVMzwSWa6fdO18UXZtOTK\nBT248pfz5IMoJG1oja8h6mRCVlzNdZJMAXdYmnuujkH9W/ex3ddjXfFKdwVh\nWIrQJBdotm0Ke3tjf/bN4qfxiYiRhhfetT1EqnhvLmuXXQwEBouJX5gIgN7k\n3s7QcELlPP1+GxEujr4o6vrLqDUPaNaxrCtGKgaCTJU4Qrp0qi2aF21Ep3CV\nrD1bSO0bTIyBQzp5g4vO5Q4Zr+uX1OZL+QRJ0Lt5i9mipQxKUPYylk2vrwbA\n1smwK2+7IBFlQPzY1ar/f5vwIf6BU4jgnKFH7/cEDTwwCoPllUmHqj36ASeq\nC6rbD/bCb5tBakmkyoxbngArbwBwxZ1b6cw3Kz+OMSKW8SO8kDw8RfJzeCL+\nyqyL3E4WE9BfwfYyTtMljMxI/S1XnvNS8g/uGzJSzcXl1mi5YePTX+kdXkq0\nL2sK4XGuaMR/s0Mo3YNDJu5niJPD1yxS9yQ8rp8lgdHb6PetrhjQ9FxeDQwf\ne2rgzvrvOjB4XN1RdHNaJ7O1bcVCCplSi5n5FyGRyDHRUmVaGHXO80hyeoz+\nFiNP\r\n=XH9X\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCZLXKq2vQccJIs9tekTcXl3Y9PqiQicKJzcdCa4SPDTgIgdolPEUWjvN8b0jF/e90Q2seXc1NHVuPqLC2UASyO/Cw="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_5.9.15_1610630767086_0.01330421225521472"},"_hasShrinkwrap":false},"0.0.0-canary.cc9c836f":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.cc9c836f","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"cc9c836f37f601c82a727a19725b1aef304180e7","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.cc9c836f","_nodeVersion":"12.18.3","_npmVersion":"lerna/3.22.1/node@v12.18.3+x64 (darwin)","dist":{"integrity":"sha512-wrcaauWrjCegBAFikScT2VIMk0ZDmQ7oW64G8uUxad0vp7u8ueB//3B5RE41Cm87Y1z6GfvKMb91aDMskWu33g==","shasum":"ef18fdfba49739081679a206fe5f497ca69c421f","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.cc9c836f.tgz","fileCount":18,"unpackedSize":38541,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgAXBeCRA9TVsSAnZWagAAViAP+QGdCikEy3b+mp9lxsq/\nWPMjCqaqBNL87fh6K3GYREPwNqCkA9sAJgt2/ssIREPM9l6ITSleF6+zJLZR\nriD2dzT0cp2VIcUeluyX0vQd5U83q8di7n2M7BaNGQ0e8JgHi4J3+sbyOVI8\nc416OrskafWNvOpYcnoXWXoGCfy1uECMRF3bmEuA6BZx+rZmQp2G6mwa8sfi\nqULAyLnM4mht7sYf/6Dbn1zu6quVRRcwqhPyA5c1ynyK53jcHyIUE4G3ESyX\nKSXRxnZ67c2aY5Lg8ZBQGWJr26DoVqEF8Gqm/miHTiEBakyy0xSmprXf8J7Z\nK6yNhmsryUAhGigm/ri94wvQVhuYu2ckbtH0Yw4gZ29Pjqn4rSbwDj1UjI6V\n5bwu2vsdj/V4TjrY2xl00V5e4vM7E/k4vQ5ExlPCGpUVk6CZ9naP6E+megkd\ndDhQf4FrLAHMhUXy9CB9Fp1BYmoyl0Z1M+srFX5pD6d/aaF6MI7N4IX+MBkM\nyxxyrbFanTHIkfTe32ThS85pnSr0Ng/I6w9YdCrS//SNQHtfU/zr7T2+qRFB\nXrxNnxSuSM6ThlGMqYlq+mYfnoE1HBPRan1shHNSRJtDhsyLr+mIHE9NcdBR\nQqatysf54kL5ANqR23WV31b07OSkTu4CVbq3B6m3jiR2YWcR8FTCIH6CMmX+\ncgkx\r\n=omIr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCyLOKEiHURUMAKWUX+8b7vkysQG+Iuo8WplK15f5l+pgIhAMMz0v9AeruTR1dw349Pw+wmC4p5t7N9/NOSEnMmXOVE"}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.cc9c836f_1610707038439_0.608365113711103"},"_hasShrinkwrap":false},"0.0.0-canary.1b51d14":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.1b51d14","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"1b51d14d9805c3a3aa1d1104f28baf4eddfd086e","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.1b51d14","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-7y4JkvcwSoY7jCHN7xDNt+iUjjtaQbiNBQPGv6fBDBZG4ajNBIRiOdt3JYCKWYlpgacg/wgGReAFCyE+BLOlPw==","shasum":"50def1c336b4877772a607779b0daf06ba200993","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.1b51d14.tgz","fileCount":18,"unpackedSize":38629,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgE9OQCRA9TVsSAnZWagAA/QsP/AmCyBK+aPu7a1CXp73w\nkw+fiWI0rE3BFtt4DrBfjPV9VlwluSyruMjTMlcpP9MDZqEOQjg+XV3A0I+c\nnWlaBp0jGaWrtaSCJyd9IIOYy62LicWbMgop+CBgAauawLM/KT++k8KA43K1\nXQKIoV0LycT/9KhEViKuSXZUKVSWgL5KB6wDkAhQyA9TFEWkSC0eF3s3fylW\nduO5KcE91NwJPXamDM4SVSF8ONZVRhLpZenLOM8BK8l9qKUEeUgr3HUF5YE8\nLf3mruwhiBLt7kvRf+WxwdP/gVsoWMkN8tgJMbiAa0ltbVozpwLgaGvKJE2W\nEOAPfeIbWG3Wee2eyGo0SkSvtdbqY/rZi7Dtwnk6h7qlTam0aUK0kVP1gdld\nqFNAduQQkWtElCLrq3dwwj+tRRgK5L6iTG849nolLThcpdWnA92LLa81IJEv\nbPPWkt9sSKl6c7QotxqIiWBYsLNDMTcMT4W1q8lJrIMxanqEJRz5fJN9p7Ex\nY5d8vyCqHezGWNyUpZExJXuv+srPxnxLMyPflV3bfeepcv9j7KPoEI8A2gTe\nKKj5lASFT/nfvlKptablrs29uwmweIpBUm8jRJu0FoqeyA+U/efdRSygNZqL\nj292OKZE13jR8xOB1oAFl97cGSnmyaA6yC47YX5HT9kZtvpVqDhvidrLxoY1\nPapM\r\n=/Ea4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEMCIFScR0pAnNw34Y3lG2ChKki72x+y06CFzkuAnumc5GBpAh9rgjYTcLMvTtjHXEU8lXnOyAIq645f+zO6X6DFOcuI"}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.1b51d14_1611912080315_0.024299509651322104"},"_hasShrinkwrap":false},"0.0.0-canary.e7e4f64":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.e7e4f64","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"e7e4f641dfc96ff6be23a711c6c782ade671d7f2","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.e7e4f64","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-vIGu65pKNAGixNSzMs7dUoPX1sIZdIs3yvFUSwshAYY2TdD6aZfyxurJHZTjXL0lXbP5ZCSpW+Dm05arhhTpeg==","shasum":"5ed212c2d59a00aa8872c85464a76be9246b797e","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.e7e4f64.tgz","fileCount":18,"unpackedSize":38629,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgE9UxCRA9TVsSAnZWagAAuK0P/2tqE+aKA+E6GGU09O1U\nqxviRK2Ibfl1I8H8xCNI43oP0x2SzQl3qE1H6gAgltgbd5BdClLE1nirDfM6\ne02M8NP/75bXlpt/uCeO8rN99+80kqifP7FIuWhOBA67KlYDWOqELiMTVU/I\nS1OcPsV83+2MINz1ADifZk8gyXSjVBr3JcwQgU+Q5yZYaxIjc0yOGNLhvB/Q\nN3ZWoOmeezLe+XQW1NcIJ2nEf6DGdVr9UTMZnFMAq4fzNRXCOAIsFgG6vbse\n6Fh5IcMv3oz8hditbYSHcGFA7VYAr8GKRKhaDZP5cnY+/kMHlIopDUWbIBIh\nxpGcyKlBf/SXRlZH/RR6uTEFibMYGJbVoyWR6cTFxBPAVi79PCxNU5u1MW6/\nQ42px6mXG0MRow6XMLeU5f1uDNjJBsy+nP239wFN0+/sC2v1Ug99QpChiKcQ\n3It8ATC3eJZQZz3nhytIUNDjodAJTLaDVxs9+/Hom6aCqJ58DgvJARDbctnZ\nXOSuffIJSRIOiXvM13HYRzQ6AIdlyff7okBbPIft/9irRIWfRvVDp1dQv8hl\notppefvZGIETWgfGdeqWTDf1MO4hIVj4EW2hpyWIMhSJ7cYZPioiKH5TnVrk\nMLnSioz1xYLdZsxTktmNxBuyfVTgDJm+oZCFmzfMpWsyoaIunUHmQ4+wX8tj\nK7Jr\r\n=LzF3\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIG3zwE3aNJWfpHUYkNjwZbnaRTYZ5guZto7OLYJv5kZuAiEA+69J6fsS2AHfR0cTG4jzxVKafAQlSp6pj+Yp3ZZ7CHo="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.e7e4f64_1611912497461_0.8707541060946098"},"_hasShrinkwrap":false},"0.0.0-beta.078772c":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.078772c","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"078772c6573a91ba7c8d93d55b3b9cc56d8f1d47","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.078772c","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-Bl1tnbJk3c8IFV8gySe5fV4hJ9HLFUSCzbm6ZBDYYQRCWYkbUX53Xd4MG0Le1p60VSg7YMc+H96Xcs6q1KYr1g==","shasum":"5f01c7624703a9bcf051caab659cc0fe693023d7","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.078772c.tgz","fileCount":18,"unpackedSize":38929,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgE+dOCRA9TVsSAnZWagAALJoP/j6aHSZuINodfP9aMLp7\nX/QcU+HMsuHgWHz/oIjJN6vRkRsqnqJ/C0Xm86mYT7t7pzHTQq4huiRczLMm\n0I7APXHlqpwmLQptCUSLOnxKrgejioI25L775wS7yCfjXoVgEyn2XItRj236\ndTPgWi6WEpQ6qdX7EoXDxJpr3pd84jQx2/VLmgCwm7iDaz4cFpusa0QXSLoU\nYwHzv1mS5pDMQoCs4WYljZRWo56xgrI+UrwFI5cbCOFlvKVzU2DWjph8P8Ao\norTl2+7IkhYAvTLCylynrYxz0SODVQLsg2sewoEeQIu8IOr0FjNqcQp4nJ0U\nMGhDxfOBBWpkdAph3nsSf2kqdbiBvIWsZrGmNY6TITlSzqvlYTWTeZykm1/+\niEOmy+S5dd5mmey0Twl4fVqECwBgSCOmjnGPa0lm/WY6R65l2wtu4+AGqbng\nsQWO8o31o9Op1wVmCqHoWQau+sZ+2j1BnWzxGMN992YMF9JY7wKohHnn6LAv\nwb+SDVb2Q6uUHzW5I7bL2R1xuHfFuf3aZEc3da9sEGEdBel7xd4va5FUGsbY\nK+5eE4l6VV5LdpmlCSMhmnjjSUBC9HRb21a/BSPaQqAuIKMq3rxwsM3HbIfR\n8Hk31H0EPLDZRFnkSw5ZPCBehTFHmzfapvcWAtJwt8eKLEt3x5KS/3ydRume\nvIun\r\n=IldX\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAwqJC+4d2HB/br6RwqgCAyxiWlsZJMpWpm15QEqxztHAiEA6V7Y7qxGe7TvmZIZgfOAwHVsLUSth0xnPgpN6Hb8VbE="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.078772c_1611917134365_0.393556628145878"},"_hasShrinkwrap":false},"0.0.0-canary.078772c":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.078772c","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"078772c6573a91ba7c8d93d55b3b9cc56d8f1d47","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.078772c","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-T1tiL3hjLL3qagsYPLnPEzqV1EMcTW18dhZh/GPogl+WHc5zpIuw+T6n9e//1y0U5Cz02aGq/zAUKZRkd6+NpQ==","shasum":"20d1541497e192d58627d26c61b79411398df1dd","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.078772c.tgz","fileCount":18,"unpackedSize":38931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgE+rfCRA9TVsSAnZWagAAfD8P/0TLFp7vALtQsM+XokzI\nqYziEStU8W+4N/o2+jgEEYd7//bRcrgaTbFD3xaUm0ymIpmDiJfdQKHf83wV\n3N11dxisuhctrMT2yM+/Y9PJ+v592lTY5lOSR3vaA+djwHcIJZp87mrKDD9o\nHVLtM9eRcXYDBNYzDOaaXOjpnjYEDpJ0oOrcVbY+VNzJOdwpoPk4pTAgsvSK\nYCuqhG7Ni70yOd7pCvN4y5Yr6W5obHSXGVQe22mGOJUlpkB7hC0qBQevoF/B\n5QN0ZmRGhygNMIY4ajD6M46iEv6fGLXmjxmeXA2QYIziUQohlfWk6BsAB1j8\nMeJcq3gFEo/S8jC24DQcy64YMt57UlBZOGPKpCnatpAwGg80jz8GZuN7gFdG\n2V1/7vAejc3XIaE4pDvSPgsHP4MJKDnWRBSEbMFCjOM7RAEHTjl8y4BjaM4s\n8/PVU/5T0FjiHjRRe9U3hvbOh4EKWTY+DuQfavu9rSpYHMqgQUN+79AjfBt9\nsLv5LG9VJ31Ry02Lxs48nceQ9a/YCSQ8f5pH+FSntdN03N2/rbtsTOF5r04/\nbIvzd7nCc9Ru9dWJQSVra+O/Zjey0oYfCqWXuccQpxU8lw+2ZbP/wwKMO/v1\niuPi6wSZOKPgtxQez1kF9O20mkH4BqjYy8EGtMF6IY8tfgIc+pxjY5Z5Rejr\nlVW4\r\n=j2j4\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIGK7mv6+nKfaYCKdE4MGtX1QSrtxfKJ0uwAQ8Me9VR+uAiBWzLo9gm5Lbaaq8eq/ffvqLHDuAnOkM9whtZrsUtF0Pg=="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.078772c_1611918047349_0.5274660959258184"},"_hasShrinkwrap":false},"0.0.0-canary.024ff7e":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.024ff7e","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"024ff7e35abf3d5d7cd99c681dc574b1fd6d4ca6","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.024ff7e","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-sfVSoTOqCS0CI1M2SexJDUVJ/n1DNUjV+2ZIi5GTS38drTtROkmm5W2W1by9a6AhWLOrihEjJcUX6ZdesTAlTA==","shasum":"038b75f256d17b9f36bf2861fcf1a0e03d12080f","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.024ff7e.tgz","fileCount":18,"unpackedSize":38931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgE/gZCRA9TVsSAnZWagAAxjEP/itbO9R8jkBzX9zBYvQS\nQDQr9X0fZD8o7nnTXO1k0IPFQb0mPUzgTKG0V0+ngO7ueDITOJ+FLl9HLddk\nyxaPVA0deU29/XgmRmGqmg5eVheLv8YZj2JA72xJA/KZxLQYNjVY0ZmTYB7d\nVUp1EIEwzZuQuFUJ9+Iv/dxQbuzyH7qrIP0e1YhE+0IsN1DOxVhvODqJB0p8\noA0znQVr2MAfe2Q9myD5v2bVAJUT3PK86ouXjE+YDs+tZoyoTQOFile99+dJ\nwE7X3oPeBRg0kUxfGsQ2E1lWHMlVLfd20S23tfGR4I2V0HR3D4yGHb6RPBd2\n49ZdTpS8SIW/wuZn8yQjxzHKLZ2hna8+/Qk0QyFXmfieKB+0SlFvlLv2hicq\n3oq7cZP+hQxygEcBTjVBlV+PIn1Fi0uMrFkMzDNV7EoYYffM7bvOgPMD3Y/J\nVyMg77iHk/5B2ldG6YAPu1lkE2f0m8++DxsLsFcDFBUhc0mv7Z3W1QVt6l4Q\nlhwdF0LdJYOFxvFny7YWdw1dHsN2YIyN8Oi5OnBP/YtLUHUTXBV0dbcBvyRa\nuL05sLPjl6f41fWrVJ26umfWNkfqWWT6VDo5glCvLrQhHH0AnS4mgWrnsCdf\nV2uIT0u5XGrSV81tUhMDAn9fAbYRwqXWEqapY9//o3UI1xciY6qezbR/xBel\nbc3S\r\n=lQYU\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIDW4+Kkj5+4D6WCPWcBvFQ4/gppZO/ei4XqiPK3R45sLAiAp8JaHWf/pgnBP+9FGqElWo6C7d3EW/wWTkTKHFAeFUQ=="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.024ff7e_1611921432943_0.20055890583533276"},"_hasShrinkwrap":false},"0.0.0-canary.2aa4bd9":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.2aa4bd9","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"2aa4bd947b0122c6dff62c80fee328af55df9351","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.2aa4bd9","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-fDdhckycFPmJG3z+zj6YjqqgH4NTgYYEz2QM7qcTJIiBzrnS4cXsjF3u6ulolMdsRjTdSTr42tKTRFDxgAJjyQ==","shasum":"7f164e9b07f1047631482496168ebaeead1e98b9","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.2aa4bd9.tgz","fileCount":18,"unpackedSize":38931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgF/XTCRA9TVsSAnZWagAA+Y4P/2dlzhzuoZQlZlgMuKb9\nEkGWeiqA/BeZSb3r6cGjOaVbmF3qgY3Z9hwnaJBWS4aoUE13oNFAYndx/xaX\n2tUoHzy1kcxy7Ep72UngpTcx2eku9j5FxyBjyID38f7wFUkWT0lqoQ/nXSzI\nAEGereKWR19ttW2ASEvf47JMgolfEdihpHCyhvTTxRiCRMp0YRTKVrVFhomG\nu9Q/lnYIX5mLEA6Ig6RSy2xqQ0+Mi4Cc8Y4z4I2ky5x2Z/pr3dsyrqa+0wQE\n4SGeEuyLpk7G5KH8t9HFMtKEaCUfbyzCXB7JfVzJsLCfNcxJOznbjU3n9mfu\nkFiGW/w6E1ydrhiww6cYlMwkzGD4qZxce6QxOSIqEM6D7d9rBc4mxOcI8wEW\n/6/A3l3wsw9VyTHq+C1TKpk1RjABs9eZX27vDzgeyXuV+eh9q3jwl8xO79tD\n22tzPtYgdzHeCDBWE1lVMN0Rlwtz1S3Cx4lh4Ea+migrZZbIUMMqbm8e2NlH\neqen8QbzE8uYaUIO7UYhpr0Fs8A3u07C+/tWtwEAatgbBtbKchI3luwOxTrf\nxHp65iKxQP8tAKclY5A9MgMw6umz0Gh+kvKLbCtlwZoFHOpB7uYam91K7UqG\nvUVLqngoXLeca9bhBL44FlwtA8/Na7ywpJ8kZFEtBoalsyItXf7LGhC0SZW8\n7uZH\r\n=SiRv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICuNxA9aST/sh/0wFXK8xikVOzIeWrmUdvvMT8ySB9KXAiB0U/oRhNH3jtZchnJPhjXiRvCLTPcZ8jFhJTl14+WHaw=="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.2aa4bd9_1612182994807_0.9788873105369136"},"_hasShrinkwrap":false},"0.0.0-canary.fe8fb7a":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.fe8fb7a","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"fe8fb7a3eeaa8072960332adafaf0d47d4dcafef","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.fe8fb7a","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-3CRE9ANzQ5Dth5WQz19f2cVm0MM2VRdyfwQzJo8JTQxxlzudEhIUiT2YuqCcin832oRZ1CCgzxld4WAUWy8upA==","shasum":"a43821a573bb75049a363ed673b42eef5ec63650","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.fe8fb7a.tgz","fileCount":18,"unpackedSize":38931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgGCTbCRA9TVsSAnZWagAAxuAQAJfzZb6KTUQmkFRh/pE9\nJRjZ0J7wOThIbKT1r4hc4itbJZTsFoJbO9Ve8gxa7aGdsw/BQZbIErryKuhn\ncf9pHyFPWr6P94+E5jcQTynisNuDmZeDsem8righA87+p3RPSHgPc701dhEB\nEpvvsYOjvBhoJq9dB+WSl9JxjGx5JnIySpuzjJcA4E6Ai69tBEoJUrzF8qzR\nyrdBZrMNOsMxeTUTrQp7vYED5M4xOBCXFBrVB6hiiFo3MkQ+DuaGwv7jR7p3\nytMwVXNR0kx3aoimc3vxGGGFkXxU9WkRqB3vNorYbkLxnmm1iE4v+sDYlgMu\n6TzqvDXXRdQEQbF8tUYR/6uqkEa3Da6mLnSvHRwLAUTrI1iFwnA+wKTduMoC\nFcSsFdnIWqSBoxng77TnOchDMnA7WGAS8ZM9FzfOEQl9oFR4SVYQvBDxdKLR\n3u4+Nzd9GHAXmoHggQSsWcquNtCzLgLb9IEqxrPgaanu2Wpen60CvozdUZ4F\nQh+ky1j2MbV5JREu9fFMRrUlla/SImOSX89mhobtxG1IKTd0YZZBrumocRaE\nP10kJx/DVjgQ8wesNOPpS7nhyS1c2TOi0UQVtEd/v9K1vbA8bxElLKRP/V4a\nk8M2rvMCKHNVcZBIt54oA/3nN7zTr1RfGU1wOyphbX2y4CSliokaa/Fu7do+\nHfYv\r\n=FtyO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIHyXq07Csx4nLlMXl6rBNClOTFNAsPY2jBOgPH9TwVQ2AiEA1BpFL4jTV3daIvD/zXLzPjyuWoFlE287cHJU964Q7ig="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.fe8fb7a_1612195034678_0.8223270008816295"},"_hasShrinkwrap":false},"0.0.0-canary.46b66ee":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.46b66ee","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"46b66ee3397aa67e442776a54661c7990d7435b0","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.46b66ee","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-YmlQzWthqbOb0htOfMmBtWqohlIDdFqJTRt95h7TiM0vkOJ2aUzJ8Wq42l+BDRxmOsSjSm3Ky6ygtJ+Esx4svQ==","shasum":"22eb011be0ddb852a8c9ca63ed0e7374ec20385d","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.46b66ee.tgz","fileCount":18,"unpackedSize":38931,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgG/CWCRA9TVsSAnZWagAAnTMP/0z3ybEfe2TSI8oQWVNM\n6989B2dKYAVhWyT6mUoXsrKTnlywb4r4DtQoQgQKLR45ZqOohVHFgDU5iepY\nC5NDSiSXohBB0Jn6/7EduPUkzRxr9cbassDVTS6w2zmnoPPcc6kM2I4l5Mx0\nVjzuBmakFGlQzJheKKBUIkfpOT+i75aTlYN/vgQqHKJRV589a1TizH67DauU\nbc6zyT+17Ot72HEaR4lCl3tImmTKWIdWrZlL3mba64QhNJGJAKPDEKyXDR1l\n7u6DGGIcnoci01rzz3tJeekeQGmGcC+eHS4ZQZY7+t/PEybCJTDC4UOTz3IA\nEsJhb6PwwpMKfR6AYIRmLQ/fVndgx4cMwoZv/OGSUXNmQKBv5HhDZ7g6qFq8\nsGe9bD7NME8c555bRxLIrUVIEeSW0x2ngC2u41E9tz+Fj7Oi8obyGFCUBM07\nn57pAwgdeYAb6AM2gXBRRR3Y38Ngz10aFKIj+poUwTs5blbbIjoq0fqoYmAC\nYmIep3svM87GRjVqFgCDFBuMrcNnJsW6kVDN0naYBj6cUjgsF/UsxJp6VScJ\nXlGYQq+l6MFOEGexHpVA/yljD4ZFdBpXh0t9AVJ8nsrvfOUDEYN+ZNEqyH7d\nMVY/dPZagl/JkLqiRrwGJcHS+Wm4FfvpbkrdiUGGkBZ2RjrD8pch6EDVddb7\nTzJm\r\n=eGtt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCZtCyb0JkSlRHYqP3m0v4xGXnjJeLGteSqLUuPjoLxXQIhAKBKAmTrhsHCBWNdnQwYtpyBzUOSocO9CpSSebffZdx0"}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.46b66ee_1612443798233_0.8469481697833454"},"_hasShrinkwrap":false},"0.0.0-canary.46b66ee3":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.46b66ee3","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"46b66ee3397aa67e442776a54661c7990d7435b0","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.46b66ee3","_nodeVersion":"12.18.3","_npmVersion":"lerna/3.22.1/node@v12.18.3+x64 (darwin)","dist":{"integrity":"sha512-3mWKpCWN9bYBZnOSlWrwXFJO3cJHyYeoSsWlXGL9hAnd5yi1BsCoCLGMcQ67TKZElvjWEDI078IFLRTxutOa4g==","shasum":"51c385ec2f227c16b2b67544694c83f034054b3d","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.46b66ee3.tgz","fileCount":18,"unpackedSize":38932,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJOgjCRA9TVsSAnZWagAAj6sQAIGXSSRM1fuCR9qKASei\nIQN9Fh7qZITJMZZzwKxGkY+F6coOB4xmFB10dwoRD6PQMKk8yCYW48eItkro\neKWkrTA23oU/7IzuesND5MzvoLFuVkNyIPq4K9mFF5pliJMzoY7Blg7p8Hue\nUiaWhMm5vjLqfSd+Nz45efHiEZn4DtxqxcFkvlWwwLDRgiIlDiTGDcYP5NKO\nxRBy8cTdUWhNaaR5XA16qrLSwHPnmZCKP7hPvm5GfQ0itNYDaGSkNcqRbSZo\nTZhyLZMrgnvG4RgxZnl3hKRwkaLNPsm5gE4MSmcpo8m9Zeezdh2XXhkHcfEt\nrLlSFJET0wefG0JPSdxv4MId8+jXYZqnqIg22DZ/eYZcMkg5onGrYqJMhmFY\ndoY8IilgtqBcxaD09g5R48Qrcxg7Lvp88Olm4m0rhWeRzwrTBlW/gM9+Jnnh\nOku7AQ5VXvPb5f7I8wgzrX6YbCBxOGEDCegtH7XfQLhTputQQDnulB6J+XaN\nyMJe8RQnbjbFgiHNMUT3imAXYUIDamev+FHthYfHu0R0cqLo86qmiLdHUHi0\nxaLR+BmbR8qNihqtKy1fmiz6YyjdcC3r95XLmi5+1XY5+AZtz/NJv7jAH/Jq\nLpxE48Z1F0F0LCVVvMGS7y1lK/G70N1IVRllHMZj89xZdRMjAueEmqwVggOi\ntrk9\r\n=dPe0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCOQhrproCn3tUUFdRSld5VRsd46A+v5yC7Jg6TBECbwAIhAJQs/oIVeafThoG5DT2+gNLvOlaC5cLfmSBQkRHJ3xoI"}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.46b66ee3_1613031458908_0.6634167742278143"},"_hasShrinkwrap":false},"0.0.0-canary.95ff3f78":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.95ff3f78","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"95ff3f788093f6ac040b40ebecaca8835ff8e40c","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.95ff3f78","_nodeVersion":"12.18.3","_npmVersion":"lerna/3.22.1/node@v12.18.3+x64 (darwin)","dist":{"integrity":"sha512-Wagf8jZsx1VInrFMWEyi66uButl+hGoREn/kDZ38HB90uiebqzPfQGfa2gry5RUVVMAuADSvqerNfIt0DDBumg==","shasum":"d88aa4a46689a4c4810aeb5e9fd215da70bda2f7","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.95ff3f78.tgz","fileCount":18,"unpackedSize":38932,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJQRnCRA9TVsSAnZWagAAnr8P+gPNbaRJqAw6jqQWJk2P\n+3HejCwBw/CO2eMoKDmydM7alp3evtPvugS5ztUpqxt9E/3G5fs18jrBwBEo\n6eEIsjI8yPI25DODW496vy30i964+sALGTs1mmFvFPKmOL7K663X8J4gdvGy\nWa2UPSXO8K4NZe6LFDneRAPT8Y6fo9BC0a9l/6vVnc/EW1m0Bb8lI3vEi3pD\ns7xptpqJGxMFnvyhxdHLHeIiCDCbdp8YQ9MUDRcEizyAuTeni0wpy/UjZtM/\nO7PbuM3S8pqXHuzeQf7V+rv5EENVNOD7ofmvFVilPoquHkRfvRyAy+9E7kEU\nzdsQpPPl/wkLJsLORCFSVeu4ecBffhBqbXVM5Huj75XwNq6MV22NuKeA/I0q\nTrPcvLUJe4yeGAhCIMJIzssVVJBntmsYWJ+0KtZueqrXiQFyzqlSSv7UbevQ\nB3P9yWq+qLYJ6EEqcND0xVh+F0zj3PtK34pNq8Rf9Gnhv//iltmAoJlL2s1i\njQAkokH6OfC1O7fW8+PVCQDaM2MfYWtSJ/CL9sTkAxssI7QWex8k+g2+E73t\niotx0B3YxAQDEalhixeQGKigjJdbejUP1jkoT9YXw7urDlHAthizwWstOaPd\nAAhCsNF1aMjrkr0qUTkezh7y2uFSrr38BR9O02g3KLBsyv7RkLiEegSsToBk\nohNR\r\n=DtJt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCssnHyNtuJpUgy7hsPVMqBzCDs7IO6tDKVuNdOAd6daAIhAKqeKM0n726xuCCE+V12/D5w5XmdJH+PDqpiJkApEu3b"}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.95ff3f78_1613038695547_0.4998844262654132"},"_hasShrinkwrap":false},"0.0.0-canary.51aee2a":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.51aee2a","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"51aee2a6d8e7fa8fdc36e2dd9ac10509c318e5c9","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.51aee2a","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-BYP+MORRgmA5ify8gm43gljX6LNLasVOjHufBwe+lWVC3CEx4Rd5yt60Nig/O8Jlu0iB3VwRdfl1SUuFqlvfyw==","shasum":"6a51cf959d0042f002b44b87ca5d2afc13cb799f","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.51aee2a.tgz","fileCount":18,"unpackedSize":38935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJTOFCRA9TVsSAnZWagAAB1sQAKRjGn8NkI6tzy4tLbZu\nlE6Mr8zkQD3mvgt4aCUgXO4h55qq4Ifng7sk/fn6iaPpgFjuSIkc93ezwS4D\nefKw9i/ci9JQVcRmO85mtRsa0IWQRPe22Watkkue441dgTzu9uJudrir2+AV\nslKFd2JEslNvo5kedqBxw0C/ThNCMEnAthpwxdDD8GjvHyyQ0g+GKcBGEtvT\n5h853CIO5cFSHmTVcxfbuZ8tbH+/pPeqwN+/HITUTY+8iDkplh9Neqg0fkh3\n+BYMMDfqZfwhTsWkgwecsLMvETCrkRmazfAOn17bXQ4+350y9imfSC4ywYpi\nlpX43F1zvR797tD6vKR5mZVf6RP52wYtfShXeATR00ylJonnHON4o6m2KED2\nb9o5ohBxAYb1vNCT5Xn8pWRfIbtq8UzqUW7bgxpa59mEb5um/16ROWMKv/fq\nXcJjaakgIfxEYTbY6QkKgdOjkQpYWSOwM481avYWR/YlscMYlK7/+QgGU75/\nzv9IeiZN7s9Db7g5ORfb5Ty/DB1epPCVoYWl4EeqJzd4asFDSg4KLlJnLjS2\ninfct/ZzbspVYtbrHMgNYm2Wy2LnfPfxrAeR1BrL5UDI57NyVDRRHdBeDErk\ncQ4KN+TChYbVJTvQts7tHCqAlM1bPr/leUJ2S7PWA09p9O5vZ8abA42qegQy\nXsDz\r\n=KcMt\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIGqua9qpv8yZomjbBurC5+lwvbhLkNAIt6vQFA6HEe3mAiEAg/2df6sDCDg6gDfFU3YNvZhWDYNXyJ9NsUD/KkLQdAQ="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.51aee2a_1613050756972_0.5435749872274214"},"_hasShrinkwrap":false},"0.0.0-canary.357b239":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.357b239","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"357b239848e51d3730fd513c535302194be7c8be","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.357b239","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-1K1MLPgHwuza2Foa1SNpHm5ET84p+LG2VZIZnzq9OZX9dmuTuu7i+ZOuFe7ElrE3aaE9hlb/MXe1U5bnspGctA==","shasum":"955326e111c865f8547f12031de53bf7b96a6ef0","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.357b239.tgz","fileCount":18,"unpackedSize":38935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJTeRCRA9TVsSAnZWagAAvOUP/jAxFwVpnMbsPlWfmins\n+uzhsDap5oCRnSp2IL/hjbQltBh7MYyGV+o8AvD/J8PCXcM2xGW4kzM7i69S\nBLNwUGDu1I7MFQSVJkqYcMC4bDxbMs9PwItvn1SvCYLNC6AHo54slGoS0N/y\nsy6U5kdp2h5BGU/T619hVwIGTWGKjVhovlHvYVXXBofCTQwhWiTEza8IyaZ7\nASRA2wq7gLVFvQhDIrtan+K83KyscdI3v0eQLt/2wCaWZeaL+PEsiMGcpQxX\nXVgKNGqel/grAila5Eu5CzROt+xGiq/mlk0AIz+Ts5W+3PXg5VQtwQuRjl8b\n30Ii6x80nIxnwbAsZGuTP0ZLxNK1oDtSd6sFS/8l7D6Bu6jRqyfSJzYBB/md\nbs0/t1Ny6U6Afgs96Oh347/P2KmwNJGMzsKkf4leB9zz5HAS7eBCyx06gR0n\nLunE/ASoTOBL/HK2PyAeSuTx6JKUlMFtX3fQ4a9WBRolrMb/LquWkME2OMrC\nyA7XMqsr2UBjzYqcwWg/fzLBa5rBmTEZ1n2elAz5RzCNs0XWv0eg2ie8WFAX\nLES3F5hW8/BOmEn1GYDwncsdklz1fDm6tEyC5Lu2rXjXkLOZFs1kwNGwmfOi\nj/u0ijr4JOPNu+rvV6N1zjHH3sbEVGFqqDw6zoZJJSY7l5KJzLpTaBvNw2eR\nlEFK\r\n=Gfhk\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD9KeNM6+nstjwpMPaLygTVLAwpWZb487+LH3YOHcdWLQIgfT90JV6yFV8g2a00oxY8DJ/uC0X4QyDVRhSvJL7k9V8="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.357b239_1613051793393_0.08423116536001851"},"_hasShrinkwrap":false},"0.0.0-canary.ec2e143":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.ec2e143","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"ec2e143c5527044192233a3f9ff5ce03099b73e5","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.ec2e143","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-9+Sui4B+WuPZJ8uWhfjEDYUap0mVn2rWPIeujBHklt5C1qZxAFPt+xIqM5jwgtkS2eTNidG1VtL2cHeGBgaVHA==","shasum":"392c00cba2bc806ce648787fdaa01cb56c208fee","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.ec2e143.tgz","fileCount":18,"unpackedSize":38935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJTsUCRA9TVsSAnZWagAATYwP/j5rIJJ3Pa/hVNGzE3e3\nK8nI1aEXLLvb43mxYOAsKpXTZ1Mupmifkj+rc97K8/EORQEmXYDiXaFyrCFy\n0WqXpye5q4JCH3+xocvqunkwtMTEVjcg8Haek6uISvUPs+99TNNX3+nyEW+1\nf7sbE4FVL99OrOnTnW/pA5giG6pYKbh0FXu1MBha8uGIgEgF7/QBakXUAVO+\nRKjz0TD8X8huN3j10evoc5ad1F3kkK54ymcKZLox3tnhHZWJHzRFFjL1QyNB\npFBSm3Ncnzc422gVAB5kpqTlTBhwjBuBA/8OqrAMoWel/8bTxV7Xczp0fLY6\nTdZ0UZJDo1jSTlre4kOw+wF4zmXR34uIylCVuU0mgQrDT8rW/f3f60OVwV18\ne3Ct8XDA+FhNY0eEevnsVZb2bpb5Ipy3mQRoTEHisqNj3Db5WrUDsXveNBKV\nBZnI6EI7wdTBlnykaKNOnyXIhGI6RUUXFtfRtrNxo/iV+tX0StTLZ048okph\ni5birH11vFL6NtumDjnntjh1VwV8wzCCCX5rmAF8OCjkhWU7APc1zFX96gEl\nQFseJNMFEO8BGWbEh7WDs1L59ysja/ppbH2fKpqscm54nXCzYa+Oeg8gpUSF\nB3vp7YydvvHpRvb43hI8VJbe4UznC5d+ZRebmfqj4wIWghnun+Tz8fio0/qy\nXEou\r\n=HHvr\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCwT8pOQ2rkfhd29LIK7mEInoZNBYUxoz7rM2+nRpPB4gIgCZK3dQisMCuaHgK6SVryp/sv2/tdM7yW/pQFWrGNm9Q="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.ec2e143_1613052692095_0.793700688553491"},"_hasShrinkwrap":false},"0.0.0-canary.ec2e143c":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.ec2e143c","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"ec2e143c5527044192233a3f9ff5ce03099b73e5","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.ec2e143c","_nodeVersion":"12.18.3","_npmVersion":"lerna/3.22.1/node@v12.18.3+x64 (darwin)","dist":{"integrity":"sha512-A3yXOZ5a8dWLSrWvBGw+Ji17JX5h8/dd72oOFfpLrqEnM6DDp9a7VzCrLa0KFmtG03gmt7f2TkVjow/+Kum+WA==","shasum":"5739dfa9dbea1b5087d5f2c7851fec08e4e7c228","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.ec2e143c.tgz","fileCount":18,"unpackedSize":38936,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJT04CRA9TVsSAnZWagAAJbsP/jGBxli6odtQBtfvhpiy\nBWsyyD+Y5EKiA84Lui3z3Ta2dSFDXhxQdrZ2A9MHpnWCIOLyF7XmYGBFfcNL\n5s+tell/jNmbgqDMlHUWQ39c5tuxQDsY5ZoFFv+IuW8a94yiwJfips13aVQW\nNg1zZRdCeidNto7pYEcMNn2KB5626a7rOEJUJRr7mpIIjxfClk28Oc2erAys\n0vQzaHTyUWGwqYy8x/W4bQseusgYqmq8toJ449rn082ASlS8ubuVOxoms3OB\nrsPCFGDmSBTVcmbBoY4jYrbQTNC6o3U0jFHx9NwagoN/XTJzsffNFUTM/a7+\n3oclujOgmsQVOVZgRd4AWNos1uSMlgS118QWT2u3qsZlqEr0XTRs1L1kZ+av\nKCLPrL5oBqgv6+0c7qd5XT/inyyM64UXPVEUHvXr1vbMcs15WV8SpmtjjjHG\nEqCmOQPLCrdqC2RrzFx2+/EZhTtuUvuwtXiRasu9lvhnXywdP9lTQK4YZDMs\nD3D+97OsLBab78RN9hdHaguktMUvs1jWwe1krsc2d7y0wsdFtC1G/7A6dCGg\nvI2B5ZzjIOdKa5i85QXtBnM3IGz4/sQAzTHjJrqtax/gJbGcPtTrLMEmTqu4\nj+oxW04GeZV+Ejxr1yx3Y3nWSdii0/eX99zJsRhzRu7I0aOEbPMxDk7f0i8k\naqrQ\r\n=yM4k\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBwdE7Fe8Bu0mHWcPjL603arEI0qs2rhtqq6uG/IslgwIgedEf8nZHUcCE8xMSpVVepGhB8eKIU4stVwok7k2g//g="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.ec2e143c_1613053239739_0.8785965016740869"},"_hasShrinkwrap":false},"0.0.0-canary.a096a2a1":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.a096a2a1","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"a096a2a1346cb4050294f54283998c818f82dd6d","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.a096a2a1","_nodeVersion":"12.18.3","_npmVersion":"lerna/3.22.1/node@v12.18.3+x64 (darwin)","dist":{"integrity":"sha512-V0BzZAeJfKtXzNurEFh2mFcgB6/dENvDhaN6aF8eOeKgzkD7vaIu6k7ljiIEFgAX4NfC0W/MGeRguRwGQ8CdMg==","shasum":"0fedba1f546079b7bd0728c16059fcf76fde65af","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.a096a2a1.tgz","fileCount":18,"unpackedSize":38936,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJVJDCRA9TVsSAnZWagAAl98P/0e/ZPr1EGGurAw87dKY\nZK/8rU1/RYfJ0wxDZrNZH/f4AuqTsBFywrVvIKl6vvcb2RKpzrSIDS2SM5z4\nXnCf7Y1Z6FcESa0z7T9Wm9oalUCqX4fhanE1ZRiGHD5qXseW/WkUfSWkOv+F\nTD5k/ODUIw9huu5diMZnLINBHTbboHzKNdu68sv2zQU/X6VKhFMQ0TLQWIaQ\n/XMqCO3uViCE0Vu/nZ8yXAlQqWuzbf/DuCWS2pDDrrVDTBFHlfpvDF4R5KGN\nnh7kcqMDZBXvO8UVaL5ETQh4jNxgEu5IePX9WIZlG7Vcy977ZRqaFpdcOyod\nXz1Fl7K+pw2ygPfNy8l8n1mATv14Oo6lDRaNxvly7sxT1Rg1LIUtCS2Foimn\nZi9nDjPd8M8/yKKSb8Iw1Gp8AYcQWLq9qkF6mAzxD8hn6RYzFrl9GQZrc6tj\nTAibojJtuQK76dnQgHWMwjDfH/nrE81NZSN5rfszXeWrSLkCB5vY6ZFbiWN1\n5yR4DOU2ik83rPLarXMaqi6Gj0iggPJ/ghTh54d1qpbubt41kwcIPEusNCYF\ndzagNMA5v/BxqWK2Ulwo3vl0SgrF7RiEs2j1hPt666/VTJ8P5KzyF/GruDhI\nAvl3HPbDvQGXj6grG+acNpQN/xJyCg4eqIlTBCvEAfteMpUCMhWz5r6uwKFo\nBkgW\r\n=NZWg\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCC9QhqeL7qKTBRFsDEN/g1MPDdLKD2hPN0QLoZQaiA9gIhALFVGQN6B16WrEG9pZixTHrchn7x2frBcRhSWdWcvE0o"}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.a096a2a1_1613058626605_0.8617385320931412"},"_hasShrinkwrap":false},"0.0.0-canary.6cd5c7d":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.6cd5c7d","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"6cd5c7d9127de7b453ef92fffec745690425a85c","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.6cd5c7d","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-7OkWvNzUab3Cykjp6e5ceNB0350C2EJatx8cQAOWnsFAn3tHuhpT5gBLLXEr17ez1Y0dnP8sKJbLbY53nawzXQ==","shasum":"8a8897198860cc50aa058198cf66efe4f9fe4320","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.6cd5c7d.tgz","fileCount":18,"unpackedSize":38935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJX8CCRA9TVsSAnZWagAAGTsP/3V9e8EZMQvOqtiivIls\nFppaNu6EOzEKJeGZctuFMIIGhaFApEsbfEVgGxS5eimcPvFCKFKg7nUE9KCX\nnWbC79d9Ln10IcW0RdyptBtDJFgU81mBGn/VmZq6E/02k6neePD+PH7t4Cmx\nYq5GtHmBhawoLSyN8h+MkRc+/b2By5BDqZ+UqufJJs1iFph9Bfft7RhVv8zy\n9MY9Bl043G3TKoqf7zl42Ok8gNkX3QfAbc/wYXxZRMIsjvIQyantTrYEV94y\nMFjw1KXzQcvijoU7eqi+b4xm2hWh9t5+YDA7RlptBwZkyHDWfqYKkVVZD3jb\nFhvldv/xpqkUbEvr4ddtb9pB3Jjf5M/6NXHWULu60gTlXLRVzW6IPNEzrXFY\nu6SvG22zqBlqqJ2FJBBgFbVVqRcmes5MyvQlO942BXWpz/YU2Ai/qzFXgfly\nXuF1k9Pm11hpFCIjc91bGqVRHCXt+G6zDPZHuUaB7LA87kMgPx75oMidW9zL\neVMRxdRvx4/KkY8KvLfiDbQJSoi1Ub5d8TkwWNzKGmowjcHC+3rdv03QB32T\nCxFswtKOkAiA4Yie2xmqabXBWHZ1rO3mRLSN1c7OSCyOFGQWNVSO+HQh2p84\nL8wAfEM3ugkPKgzrvDwiHuh40Cd3nxYgoQfBwTkAwF2WFIliLuOfCfmXgz+x\nelS8\r\n=YSij\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDNT3p64vw59KZPILADtcwTXGH+gms9a4og8ADwHNAiTgIgSabynedubmFFPY7nIeinVgD0V8OpOk957vA0YDRyk7A="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.6cd5c7d_1613070081574_0.28306250562739366"},"_hasShrinkwrap":false},"0.0.0-canary.b3b3816":{"name":"@mentor-medier/article-body-block","version":"0.0.0-canary.b3b3816","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"b3b38167e124fcf3f3c6a507301fb0ab8b142128","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-canary.b3b3816","_nodeVersion":"12.20.1","_npmVersion":"lerna/3.22.1/node@v12.20.1+x64 (linux)","dist":{"integrity":"sha512-XZtW2YfT6k49fnk9hhgjh5flkFXWITngvz5XyoBYdkkHa/D+ilraHQxMQSHlsUHnzDuLSUZ1fMVBwA+dagujzQ==","shasum":"32f36771811556a621016a0bb289c24a6e3f8af4","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-canary.b3b3816.tgz","fileCount":18,"unpackedSize":38935,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgJYIqCRA9TVsSAnZWagAAfvwP/RfJC7VD4Ypkvo9boQvc\n+pm3ShweCLlYfgm81iXtq+GCjFKKf4MsmcPUmzIEXj1hPJSVKazd5pBCV0u1\nvdN2XOQpjg255AWvm6WKFV63sBGuUvAv99JseaHXOHmEC6I4CXIJh8vdUHms\nYberpGM2RtwAm5xc70dapYpwczTtKfqYKWP6sjNGbSwR7qmQPt+o4TRGNfyE\nGjnFIXGlZ39jQOpzbiPPhO/yZCRgNhdUFD7DToRm4CTI4/PuJQ0tB+BTXlIp\nUNnSWyQIuzwXKTqa1m0bNCPHxmCuRIzCel6yC5mOqZqQsgj/q7o5+q1cmCOn\n8iCw1vrk4VWoRLdjUZ+zFRkAVlncT94KE4eC3JYMxXflEohYQEebDYI8jbc1\naMdlXbHfKVF6wJwkyynEaQYtNzhNFVr5cya3aBX6wStBqksVU6iWD1plg6NS\ngJ2iUwdl1akFKNc+Mvv9r+AM5ZmaYdjuhj4EEi7uuDRghgvtJXPkiPKbZ7Cz\nQT+/MSteKQrHxBulACKZUg+MC3JLljMXrUpntnmIfeK0SaXknJOEhcuOpRdg\nnOeEZt68ACQOmYBf0SLvwG1G9wHm9yaIhuiOP0q6elEuH30GWYRM5mu5/QEK\na9slpdrIplWYCNFkHtQg+WqNgB2wNNo8K8wFF2W557pYpak9WIKKh/BJEir4\nKjQS\r\n=BbIz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDBbJFE52e8n4AIuFieA9NhPGNSJ6yuiRgTKEYfOP2CWgIgZBPO9GE4JSkK4O3A6t7+miDxKXFVkYHco0HgB78X2J4="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-canary.b3b3816_1613070890546_0.9122826665300725"},"_hasShrinkwrap":false},"0.0.0-beta.40eb7cb":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.40eb7cb","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"40eb7cb7459a2ef4b52aed9ab878132f4d304e33","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.40eb7cb","_nodeVersion":"12.20.2","_npmVersion":"lerna/3.22.1/node@v12.20.2+x64 (linux)","dist":{"integrity":"sha512-PquCSoDzC00hhkUukQsddGM/9JnMqC0NppUkNUV/GJQZOdB+kYPWCEtbC6MIfVvMv9GLd4TORfiuxdDn8NRoig==","shasum":"2f553c0c4025a23c9a3f43d0a8ddf85b14849113","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.40eb7cb.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPen2CRA9TVsSAnZWagAAcLoP/iBJFla1J36IJ+EH+1rP\n0/YaJNZnqHjTgIJtUCcRK20YuSq8Ar3gv5taGDjsngbZSOCD43+JwMTjbHQI\nvnw9I/4UJvd5Qozj6Gs//EceWthbZBGv3Il1imH8tAP2FYaVqRIS8du7s9/P\nJ+dk+9WvtMSAvGqqbFVCAFfxAVPb7VfAVqLINHS9ieFBsrDh46ww+mEtmBWl\n+bYTan4YWMME3gdvGfPrFaO7BtIcKt+F7eA1sdHPKFWohg4mOEtPCLIVY/bm\nc4Iwfn9fD41FBfyFyzGRdPteI9o9vJ9MLVtdPKsIlLQ4bEQCckZRM1i6mzVQ\naXtZE9PkzxlEO5TWm4eMvGIzunrLXKW4l7T2Kuh7k51ZcozM2I371Fr1Wehh\nL84F4e6cv6E/C+R80vTGxrEYeC9VcgXODpPMbCx82VNbHU6h86lrPiHk97VN\nJFQH5UJOpOhYvbTXoCUh/x96+F7M5T5+M0T+XOkiwVgy/JpDy+LHcrrUnr2I\n737Hbdj7qom8pwIKryynbfvvnAxxXOPva/BAEi5xzFXybvn+cvvqYH/9fgFF\n0BW53542He+zzXe3NcHywd+f93nO3K85LdsVTPvfir94PSNbudfByqncwPrP\n6ToO358uXi6Pp2FXG0CzcSWst37wW8uLbEx6/0CihQgDJuVElonMGYbYyuLp\nFLNF\r\n=zRKs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBuG3NgZS8uofXdryjeHS3YgxngbjRM0S16UFQheTtziAiB14Ozs+5X7FQUyjRdp7YIA2fdeDD6eIK8lJE5jR0q+2w=="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.40eb7cb_1614670326495_0.1871828919590901"},"_hasShrinkwrap":false},"0.0.0-beta.40eb7cb7":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.40eb7cb7","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"40eb7cb7459a2ef4b52aed9ab878132f4d304e33","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.40eb7cb7","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (darwin)","dist":{"integrity":"sha512-xJKeFcdA7NWTWWlK7V7SyX/9WeYy06P2SggcA8sEzY1oey8uvyv/uVsSK30roGww/VHm4OoXwSLx1OETXgUw6Q==","shasum":"62f2f7082c354bbce439ab1de6adda61cb2dd8b9","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.40eb7cb7.tgz","fileCount":18,"unpackedSize":38934,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPe49CRA9TVsSAnZWagAA/zEP/1x90OyKAwz6hyR0O5lZ\nW1Bnq+TAqyTa1GitCeG0BJ/IijaEvvTVqyIxNuR9S9kLheJdlOvB6VtIERHj\n5NLXI55tQA3aokMxhsPUfOaVi3Gy+ypC3rduDZrv41oDfPoRySJMkBGhEXtY\nunYTltekXl4sf2ZwBGmyycvcxkBxZUIyNdxfI7ecs9LLXpswreTsq64zEISr\nht0tOOgJE5THmWXR9/KjRzC09oxMi0Q2+BnePQwqWp41nIBFy4lTZkIV2P44\n++iOkO6UMgGBwhtlgkN/5DmNtPaRTGNhwRAcpEFvdQEnKsb3O11YpvjcN3W2\nZCrF2FzbZoRurXMcvQjmWTLygTMd6Sc74HbpPbxB9Fow4M40l2O/zYculIeS\nelmEbPwVnNyidNFNL/0WXVklsAIwtMEJlL5KW79HAAZfCekr5zCtc9JJju7k\nEfgIu0s1dlhwBxDqRliYI/XTMxizxhM5gAV0jj74hX0vr9XsRq46ySxYVRIh\njVwtCtYCmd1G0FxqRlkxQl3mqW+p3foV+4YcA7ISv4sb0MPBA4jQQoygYzY4\noqoIlAkGLe7zyKOmY8tWG3xTH+tRZOLtEKDmfFyRHytHn3Rc7qAyTHqtfwKk\nyhOWrTbE0YZCZACEF1Zc82r+9BNw4WrZ9qLGaZRAUND9sMNEXlOBEjoptrb3\nlBCF\r\n=HHMs\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICjBBoi7RaAk4EP8kB0yYfHzgb3SHnGjkJOSh3xdE3fwAiEAlECQWEY4tSrKU6hjzrf/FdAKG9Mm9fW38nWzKaef8po="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.40eb7cb7_1614671420827_0.329075969276418"},"_hasShrinkwrap":false},"0.0.0-beta.6749b76":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.6749b76","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"6749b76490e71e563949ae25dd9cefa7a802bbf4","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.6749b76","_nodeVersion":"12.20.2","_npmVersion":"lerna/3.22.1/node@v12.20.2+x64 (linux)","dist":{"integrity":"sha512-NLRWtiLHMO9afvEowbpGAASIfbzgvuDZKCW3rtJpqitN+7SzlEikkZHKsT6bNPQIwCTjqbSHryeS9m+OKoiciw==","shasum":"c8818864f2d745ebe425dd036b0e6b480495b15e","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.6749b76.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPfGGCRA9TVsSAnZWagAAk4sP/3+VlKaiGptDV6dXqLYk\nUIA5HgM2pQ98MXWez2uboBSRMQhqiItnneNapeXoICqnR4sv9LSugBp6xcNE\n6GBu56DVykMwu78Rp89BLXMrGI+LxmQVB96PYoGCF3mo20QVtpdNR2DT2SHH\nzzucxiXpY8UnPA2kGnGQ4yYE75/WN9QCNjg9r1jCx4HKnOry3sQtbURHGfyl\np1lqZcIdqUPk3BNaIS/n9GRZ6Gl4OaUUTmDzhp1tNkgvCHcvrDD9mz08V+JS\nz/kFKdLf/yCYR1Lo+gzUUIy+jdGM1tWS9wyHpBxSgTl3hC5EPziVHYgkoTiW\nCom476S234xF/O9jG9oSvUrrbD+hF/AOrRhmuUwzpk5YgenpuK9MA1pZ9eku\nlKAK+38hCJeDkZpjn9cF7vSL5R9JjXofof0a3t7wSy6+cb9Jwc2m7Jo9jMT4\nDwnbWisqRkzHZaMHe8BQXFdDRo6bCHEr8biVfgOKby2Uk/6MWhJx8RxEb7B+\nXsIE3KTCiEtX1l9U8FsqqxTpK3w3v1Uvmw4PswgR3HxJuSXvEW9VHHm6KYh3\nYZeC7icz34ECYy2m0w670c0BKxZ8ioVI7EgdKavz+WqujnVCwOKQdiumD/k9\nFXwHFyaM1c//SEky0xHXjb2gqMejz+IKDnfAcKAoZrZpzFXLwYinzssqlKWI\n50S5\r\n=Sn3m\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBYD00JKLf1HL+IP8H+YhT7fBWYv+MEbzOWabBlx+kFoAiBtDUl0c9O/3OETF3sWAjckcwfvNrxjv87oNg5e1M/gCQ=="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.6749b76_1614672261859_0.10060940328926682"},"_hasShrinkwrap":false},"0.0.0-beta.ca076a3":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.ca076a3","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"ca076a353f20c39f418f98067c1c535405de8287","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.ca076a3","_nodeVersion":"12.20.2","_npmVersion":"lerna/3.22.1/node@v12.20.2+x64 (linux)","dist":{"integrity":"sha512-9v9eLGlPblRUATykwu40zVro/B16sCVFR/vvRAWl9jp4kK9Ur46kdifdeHDHCFBMscTpJUoPsexSud25LMF+dw==","shasum":"c8e412b8818fd6929d1eb35598f595d95949b436","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.ca076a3.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPfSjCRA9TVsSAnZWagAARHAP/Ah0SkzwSAZDt8wiMfrw\nZ22xaMegUcS/2lUWF7HCA6oCC9bc75554dNs6/nYrBX4S9KhBN3cE448wqss\nQAVNqzkRPQoWykVFbGcyCdwchtvEs8ksm3sAac2kKgwa/1NJOHt4Ug7i8tqg\nmuMWfaNH32fMZP/t7TRQHaamzW4DMNiPF0Ua1IBVVo18J2/knLjh8PrEgyQb\nJ2v2V2TTQ0p0ZPopOHj/PiZ1qWe36qb0UlqHbGJoAre/tym8kS+KIOZo9KNc\n8romEp9Qlg/0d6jA073gwsOD+zi5vH957RVnTKA2gmUdKZQYpXFU5PiRTDkQ\nvD1O9HG9tIrOtmka43ABeD04stsb9OEX727DEGLHjGJnIOaZYSmrI+HWLelb\naHm+fnZ0m4W8Z2s5sHR1NGxEe0C+OYUZabDXoRCZzO3PGNRLHIrm9OMiXPi+\nFmRIzhZ8o1peGdQohYueQ46FG9nXjJwR1hPve+Hgm3KXPR+BmV6F/U3LD3ul\np1yN9wlJzfOVgVKGHyozXiBnbiNJHD9frrTo7oN7McSWb1JPJ6btF3UskEuV\ne93O0UqrW5IhnyRAjnxmS+XjLxlZ52WthKGKgn2TeLxppHycaBFwchuZfwUq\n+XbAITJi2Eb6qbRPpmAGqIUuIrkdci5X0x29D1EnWXk7EcqPbDxpbcmKzhk5\nUdWI\r\n=cEy9\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCQfvLhKWczyHsYA9xG0CF/qCwW+wx2ya9ldsA2DU3UsAIgXEERxY+ut4RI1oq9gR2Kup0t2w59gOaLsNRyYVPgw04="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.ca076a3_1614673059220_0.9957810282986232"},"_hasShrinkwrap":false},"0.0.0-beta.1d45441":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.1d45441","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"1d45441fe304d635fbb529bc6830e5c275839dfb","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.1d45441","_nodeVersion":"12.20.2","_npmVersion":"lerna/3.22.1/node@v12.20.2+x64 (linux)","dist":{"integrity":"sha512-v3MEvX1b7YD7VenfnTVpVPv4h2YMp1nAbcaKI6U/oPF7sKgjhvhujKW9uh/Hy+OTQx9Dq/F8+p1u6ACydhw6kw==","shasum":"f417b6165b60b9305a561f2d85673f9b054f4aea","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.1d45441.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgPf8cCRA9TVsSAnZWagAAuXcP/RLXFcugz6HQDClfuFJ4\no/zy+LCUxIhuuY0SD1I9sZhhT0LSdpAh9ZzOf6JmKAM/QTmrP3h2iYTcbKaO\nSawF39RbefnyqXqikvTNdnDHaK/pHeK8qdfx77fPjqRC9XUAxM9d854KJeDQ\n2g9L/kw1cpAmDh5CFKndhwKPVKnOZxHb8MxKAmUMczuwPrz5dC5EbqwI659L\nkn1aoGb3+YD/Ii9y/6SIYl1Y+GQLTiyvz6MhUHSc3qyFPczhZFSRmm2gylu4\nwXGB9Y2Vf+2yECF7WyO5du3UaqbLPbSrH2Jyt0Xee/TQ/OYlcXr8Qs9tqJTW\neaPmXJ0hVap6Qx8f1PUCHZMYi5/wOcRK5NCoZr9C3L0IQHVHNX9vrrTCFnqk\nS+TQmpncHoBF9uZdlTX/bhGH51xRtueTVQojZOhYNyXhlSvpNrDQQdYJOUoF\nI0Hz4Ngi57HwHrohA0DhO6IXt53OT/lcAV08GelG6ANc7u/7REK26pOJ4mKH\nywWpuzcB3ry8zMKy4u7VjBfWZUbwaDMgu9UbsAQJ3t0ZbfMpwzFaCCGM4zgh\ncocnb8428xz1MEX2XFTnuBDDA5s2+8G7vvJgecx2fBr4lODs/1sIdD3rfy4n\nxfSOcWgjp6FrL1ML+BsbYkFQQEzN+1/PbKFEy3BV8nlSlwi44rXAlpkMP6pD\nbpOb\r\n=RY6L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDL7b99iXV2LmnRgTtJ6kxGz7CpTYP/lNKDEXU6ucfpiAIhALHSK1UEOfNjD8wNIkToIsaf5B61/dRDSkDJ5fOUhXQc"}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.1d45441_1614675739858_0.5631205891865845"},"_hasShrinkwrap":false},"0.0.0-beta.f00b1dd4":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.f00b1dd4","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"f00b1dd46e405bbbb6909c3e3ebad88e95ea6bd5","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.f00b1dd4","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (darwin)","dist":{"integrity":"sha512-/jIlY/NgvWPwQodIM711mmH8uBlnwxJpvmu/plY7WJYWEHclScLsYUqsDF+J1crz8/q/jcmmLnOo2vcrjzig5g==","shasum":"0bf9b95d88ed0471ac91b1e5e77270c65134c5b3","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.f00b1dd4.tgz","fileCount":18,"unpackedSize":38934,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQSzGCRA9TVsSAnZWagAArlwQAJJ3rAYQ41O6ocYLR1ZK\ns8JjuFVMFxW800zujMCKHUQdISkL1gabsJZ4syOIqOW6Q1XcssjPNuDcqr2A\nWqCJ9MevEQPJIR15vjtfeHq07W3o7uGeeGLYVK35JY3eM13EWDIqytbls8A5\n2YWGJkypYgGX/1SAVubok2YaW1BfzMcQ4aPWhBAMb7yVdmX3W2YRjKLwvWzG\nKPgm4CTKda3tlFt9vBEwXHmUnxLZuoO8zHd9jw2HVDAt+H/oLn3DKgoCY2vk\neilOEFRs1YhSzcAC4GM4CYwf2sPVqNTMB4e8QlqeJ6faUAv4bDBAokTiaPO3\nTbVH59OE5ZIem+/admMbEXoLRi4RHN3TEJVCoOaX2o6FfEKf/PupTcc7vLaT\nknX6DhqeK9dUpSMKgAuzDXEYsJsAeE81UBqKlBfLHDDyumQnSAR+PDIEBbDC\n8xHIqw8juZiLyjOzgdMcN/14oGGGAsxK9AufuSEuEZwx4ViHz2ufMNgwnHpz\nnQkMeswRAW2tEwf+UX4Dv0uNpkLo6b0kyaNQxZynkQTy0zAacQCEv/TiuHeG\nSQ3B1/9qCA7uXS2arLDOhGcoIO1NOEAwilbrPZAXnL+rRm4oTCkt/ktheV2p\nAyT0jv5gmqJGIWO5zwlkxckTQtZool30LmOcAOkCsO2aGAh/2BBJIa+SUrqc\nfoDt\r\n=v1+b\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIAYyAuP6ZFtD01D5YI0RIwz/8Z4KaKkZJsiMnlStJ2G2AiEA53ys3sh4h8rV0ZjJp+neHf1syFcFpTTraw7rRKbkcrk="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.f00b1dd4_1614884038514_0.7900094674748908"},"_hasShrinkwrap":false},"0.0.0-beta.57bd532":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.57bd532","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"57bd5321bbc6f6c87cd619386093d06b4a299839","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.57bd532","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-sTj6FtnbQs6LqnpUbBUn03pQw/YOMM/QDbWizU4+E7xTj6eUi3yYjsYLsmp7sDjMoa+LdnRaYK7cA747J5cRjg==","shasum":"401101bdca976c9957c5edd40b87586df03a689b","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.57bd532.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQTDiCRA9TVsSAnZWagAA5nkP/194i2bCRMfb4Qfn/5MN\nnlJRnU+8qRV6xgeP439fhSLgSAliqPqzQLyenInhO679YMZdmm8Q47WpOcQb\n6D+NrNahD6eXYhpspf1um2zpuzfQ+hX3Eb5qA8OvIip77LGbgHzqNqK4PNdu\nqa54InHbpHOgFxd+eC7SisbOQD2/mLPqdTponhaQPKrh18H+dc1rH2LqhXzj\n1RQ9m3QSGnPsbUUqGdpapqCr+lJ4njPoXpaJ00LyzbYGwlLtf81XfDAsQy+U\nNyRxThc77OQ59my4ljWpKYo1wXV6TD96KRyuXsZ81nVQuf6DR4Tct6S9tvxO\nx1qLm0C6q+Sq+zSQ+/xW5a1ZSS8IAn76ZJA+eGKQCJyyt+Vr7y1USB45bzbO\nb5virXzNk8mJqa9FtwbqRr/P+5V3VGxoc1bIXxNzKI0hOoj4zV/GAcSlapDL\n77maEGE6UfSP+lVWKvsvM/14jFGjacS37ZyjP0xMljKCLhXo7bvS1oqAY4IZ\nbRkA3JfZ8ImX0o8Yu5sxDjOToWiI1JYUFQb2IgIivvJ5o+n1XL/AglpyMNFb\nakLLk+CLvUXMfolkwKpU/uAXW1bY04JhYFOiPurFZtOuLfHcJMRug0Rfc/it\nl34Ier05wavrs6tQ8B84wmJeDvYfBKVi37h8osa344nV4mfeCy/tjyXYOXGw\nxcJH\r\n=zXa0\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCCoRf1f/rJYZn3kj2r+x36ON18RJsvMZyIElJTxhMAvAIgatJ7xvelSD7Oc4C9SQ1np8mRB9i+qgGdPt8lk570OGE="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.57bd532_1614885089916_0.5566365285916635"},"_hasShrinkwrap":false},"0.0.0-beta.57bd5321":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.57bd5321","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"57bd5321bbc6f6c87cd619386093d06b4a299839","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.57bd5321","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (darwin)","dist":{"integrity":"sha512-tc0ABxB1v1RnShqR9Li8aqx4TedzeNwrTe8vr/eoDf59vkQPT5TA5RepqXLkwosXG0xBGiv+LsM6iktjgaSp6g==","shasum":"ec35be202f9b66f80b9070294ecc62a2bba4c344","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.57bd5321.tgz","fileCount":18,"unpackedSize":38934,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQTQFCRA9TVsSAnZWagAA4yoP/3+AlGwwTBlr2CdTUm1m\niY04UQflJ0yo4mBfgRV2HATQ3kTcETO1gwnMxC+NtGuIdGevBipWDcap1fIM\nYbWXVFTbWSWm1Eb17qkZJwBF9LH64VFMUbX+kiTjkuiVuyZywbHfs0pnGuFv\nHOnglPYMmZOYi5Plwfxkx+xnJujxMp0Yiz17HWT0vgk3orl5Qlsrpf/QlIiq\nDAWGCwe62utIPF6wiqJrmpwy8UgIhSXDja5YZ+AUQ/+U+ozf0BjY3YMHFJtT\nUFFbyrADBcemVcsWbQDcHWpGjcJY1214KLMCzliqVDDgnB2MO6Y/G3QfxLjZ\ntw32MZwuMwDz3Q+/F9gNyQH39lCjRp/aqW1e4uOT8GI7Wx/+pvMpJdYbwoHo\nLIpmkfSbNDr1zpO/ngQJaBUu1j51Om27RCg+Cx5r+Hrw9So0gCjHNmb9SqcM\nInCQS+ye4+cULgDqH84Cg5IDLagUPViRnPm3OXn3EwilBGRiCluTXD0G63sf\nbKuiOmlDlzT0Hu4irnjxn3UlqV549KwlBacuNVHuihgna4gIPnvYReKAr6OQ\nJWLlh72rV2Wtoj1EkOaE+NN8xF1uyvbK7TdkythcLWbjLxdFjB9d2m+X2ngc\nhCn5eLUzzEVYvZvLg1BkgzZTcvxcaq5gvRJqF+P8UUwtuC2kzQ7T4O4+MWak\nWLj9\r\n=bYAG\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCfHEha8GsHOGYm2Bpp66No98tH8nvqfDwhdm89VyOU2wIhALDwDbX4Kygg70gRg9hMKnQsmRlLCVowZ9KL5apJWqUP"}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.57bd5321_1614885893572_0.32273281121491815"},"_hasShrinkwrap":false},"0.0.0-beta.9d2b94e":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.9d2b94e","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"9d2b94ea1c14a167d5bf11195e820ab69cf61396","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.9d2b94e","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-BaTIHr5jeAh9o34TRLZGqS8rCyfZzqaaZep/w0gdvEYDn4gTirHMZo5pgnuHNBoM/1Rbt6fSGnJdaJ9e0CYOyQ==","shasum":"25489b22b23d38ac0e51daa70d1eca511f4f7ff8","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.9d2b94e.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQUqDCRA9TVsSAnZWagAAyq4P/3q+mTOnL1/O0gLrspDG\nEKbXz0I2yfA4YGAX9WW3YJuVa9tMHK1qrP2tUVVHBxQb9GLO8w0AMuE2HveX\nX7TD9Z0tOpigrJVUCAwwr/bvjJECSBYsxiOF/vuDSTZnrUwykvD+SI689PjT\nJ1AnV4b4FduyvPRdOcz80pLmRC1ALl/HAH4PGDxDJ3m4BH56Vyo8hZ6V1C28\nKGwKby0nZVgZfvAgIBqd4lL/k3kw/KuIbSuB3Pp/6yELgoz+cu1jxsaMyGgb\nl4X3i2PfoNv1RTYEPjvRmrfVysKuCAhwpcVUZagCMzT/Dibs6R4fREpwefE9\nDNF3ggpFF/apbnv4g9kFb3oOE1LFrA57DxTfFZ+gRG7QhTGFNMssUciEB/4T\nDBpKgUGc0DgntprRDaJBW0V+BJYIsYEFOWTdIY4fxXLg91ZIW1m7HD+Ggg+K\n6WqCkz1TmS5fzsJol/OkrKUM919HQ3O66Grk6m1fNlm0IiMf0V59uE46TW4v\nq7u+ks94QI6qrGQEVTEt1o9aXB+sMo7FnLwmG3xsQc6cwGXEwysFmN4tNvm0\ngHIDqIbyIgnWth+mYIrsCV9NGcJFcMLeHugsYuaIGVU9pVnrrvsSx13ikvEu\nJ8b/O8YkxReE/wypb7weFHBr5FaETuWqanpkuqielZGCpICZzF0SHEJc9LiE\nIpiM\r\n=JtPw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQD5pW6a5WS4p+kY/HinpyW+eHQ3RwUAYB7GSYzPYRw9wwIhAOnfcFuDUNysGPFjxzJd7THHgzULFAnpul6GOshUj4Dw"}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.9d2b94e_1614891650925_0.07510355517288403"},"_hasShrinkwrap":false},"0.0.0-beta.9a4082d":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.9a4082d","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"9a4082d79cb66c23454d8a3ff83809b4e13f760c","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.9a4082d","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-xs8zVjtCcX8Cius/FXaT6wMyuBiVdAgej3oNnVGFn0NIG//cQ8Gr4MEJ2phUKTzOdgh/m6GPHT674jgIoJjdLg==","shasum":"921e2aef76bfb238d8b3f006ed4c53454efbcb3d","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.9a4082d.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQUyECRA9TVsSAnZWagAAzyEP/Ag8huEUDRYm+gudW0VV\nRLlQLwg1CRdy+Ovc5ahgXZqwTJ0jt0P1O7jJ2qdP3v+6T0iilvoIT4IWFI1C\nvd3QW9X+cv9WAIy3otEBefw3w5L7DK+0uq9Mh/ASgL7F38aiNuT1lDdfdKoC\n6045lEaCYZdryhF6Gf7H6INVGYZ09DpXWHq2ibW6nEeGxjFiMwWjc6XPW92J\n9a7dDKo9npYAL13RGi2p2IvsNj5Y5/xhEuDpjjVh5NoeIdmIx3qkdjy9FTjK\nE6CE1F7mnx5x8t5xft8vA9Ft4GCnSUsowh0Yp+rbRdrvXufBqlBJplcX3b9Q\nY2ATxRc0h37OtkR3IQ3U1CICjQPhznIQJg2BU1r7I9ZT1Rjhp6EWZDbCPzxa\nI3f59WcmJqgDIs20+lFwY9TTw8zI3c3ADRjBj0z//xWLWsureaBIeUtc22Hc\nDHpo91XZ15buc1bS9Ipk4JedobpjMDtuYQRns0V2gL3jFojQ3hcjVIPWzvds\nPVbOaPibhB1pJIVp21H3kX29AcVqzK4yUDAo4UZ0XkYd9+rlEeRa4oJicuxh\nYU/enMQASYuOQxIayTbjtx19xnqfbGluExd2dDbDI3ju0PiwVPza+ijyI2RX\n1byCsi/vsu3L5Tt1GJ6Rwq2cq+9JPpJrxeY0fNntfjnKGSWCf6L6twL4+3cy\nZQPa\r\n=wcW/\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCH1VF5wOfZXIXhB1brtNdw+MDp0reVi/vRHdpBDyX2FICIQD0TsLMTTm3yYI4N/dddNvOrPCMz222yHPgaZWTwOKXBg=="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.9a4082d_1614892164058_0.3205553827591914"},"_hasShrinkwrap":false},"0.0.0-beta.9a4082d7":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.9a4082d7","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"9a4082d79cb66c23454d8a3ff83809b4e13f760c","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.9a4082d7","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (darwin)","dist":{"integrity":"sha512-aTjXuNQua4LWSp4jFZvh4+q9p1BiFjiJMVVTf3e/eobk64HHy2UMsXl4rHOkHOgcw5+ZGVuzVQZzm48sGHEq6w==","shasum":"474ca05d019d2cbacf65569b5f3882427a8a3076","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.9a4082d7.tgz","fileCount":18,"unpackedSize":38934,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQVJgCRA9TVsSAnZWagAAHy8P/jqjGKjFr2vxkxdI2NR5\nlJVkT2vFnd4PimoNZ3PilGCqEQaKwsa1u3uXWTgawNWHVw25jAWKpGHJRXQN\n/adrQZ4t3lT5z+oZrsO5VW0pAEgF6aU3WbDP+9LKh/Ub7KynxjlZ+8/Q1qfx\nwuGWYzLQ4Ll4FcYmK0zDbQQJPuJkbkzkdtdt0eMbYYVCSXwAVNBGBwO7EeTZ\n780I7jE7gbg7nGgI7Bij5kCe3W+u5ZWYltv9SYOZ6Ucy9zAeOIw5uZKtaxzg\nMR5wPwqVsfEkMPcbfORRzVjyqS/MZ4+gaGaZfe07lxnXXVjl4lmt7LfR9mCA\nei+3NnwBBTxNwzqAbynIzXKZbMTJOKJKgTgs03aFssDMRqdgmNvPcRHJDRr/\ntwjiWRDDHsDU5mEJmnH4aoFEswVXpxD01tgZiHQoWSmvr4sAh8zmF/nxMMRb\nQROJ+z/hS2bCut1bNS+8gcUMW71nkD+0Al4D/nSZcZpO/z/IVVRzYa2r4L2M\nS/v6gNQxDEAA1CNIj99weeVqVtBGKCf3ztf4saXWAKwOcvCgJjCfXaOShrKw\nMX3/JKc3+zO99JvGG2w7Q3ijU6vxmUbTW0wDy6K60zO4B7oN1iABCVhMhuKT\nN0mbF6nVTjmo6QW0/la8MCRDH1Mq7ShzCHza8joyiuquBkQbL9uxLWznVX+W\nfHBC\r\n=qqtO\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD7KYqWXx7jgsdDbgRycuKkgp2jJSOxMTNx+RKZaI0MWwIgefoTsZR2D3/GE0t8XnrUazEx9K3lWLCTsCpX10rnjyk="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.9a4082d7_1614893664499_0.1666022065857835"},"_hasShrinkwrap":false},"0.0.0-beta.6a5c821":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.6a5c821","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"6a5c8212bf224a7929f2df1b6415c587d715ebe9","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.6a5c821","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-fq/I5qQy//2SWraqqjbKQTWf1w2PAWZnMtN4byu3iWTJxBm9ieO3V8tWJr2QxfBZeu3rDac8BGIZ2UVJ7fWNhw==","shasum":"1f95abd8786858fe6eb3a53123f48919741f5a97","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.6a5c821.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgQewECRA9TVsSAnZWagAAqEMP/REuWyxgwI8kbLUhrGwP\nGYf1DlUreXaZBgiuyxOW8iD4Ag9oHikg6IVZwwvkZd1BkP6bhYFXuQpwV79O\ndiLK99BxuAxZx4gXBJosVeuOQhgHdwmz99j2Dqyays4sC3ZyOAprXwaOECvS\nLFPzFJLI0MCBbWXgN4kUBhnufddPRqYVIoLJ1rJe9IDJz0xUAH81Y0tSvbTD\nmNMJuN3K/LEu0uoP8ey3h5TnF79ErECsNWulMx6mZLxe/miPV7oEc/jRAQBS\nDn/BcGIgUjOo92ZY3HHiCtVrw2BNHNBCRmWALGZS33kwUsmmxuJCxwTLZz37\nbk0Auha8GPn4s9om91f2zq3IO2BqrzzBjMx82/3PWukCu4kw5s/20VhgO+vx\nQft40RAIula+rS9xm64ysmXX2P5Bt3mDFMeqyZTj9jO9kBBZ8L6+sd3AH6M3\nP6O+UqKFeku15IQ7V4CJQJPofeINq4u8kxs7PoQaUqXx1GSjvwR4U2TckIbd\nIhQV+zwEbCiTMeqoL6Yvx4kH3QBtrxAX5N6jD8nTsJKoicHr4zVLurJD8Xvp\nP8BQR5RjwHBj2dXDodOaUrU+0jD41ESncI9PM9AORRU+5/L8vcVXcFrRAA7D\nuhIS0Vid1QhVO0eFMD1KHoh9E8nP+tSI2ju/6kkGxHF9XlTrRymnorv22ryA\nVevl\r\n=4xEo\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCb5cWhRAzQkfzc0Yte4CQk+Z5EdIegi4QfHlGS0b718QIgZG/DNBg1TmqO09ev5FCnfLwRMqKnzIlobSEY2XLkwzo="}]},"_npmUser":{"name":"mentor-devops","email":"devops@mentordigital.no"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"devops@mentordigital.no"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.6a5c821_1614932996245_0.7422258094839309"},"_hasShrinkwrap":false},"0.0.0-beta.55d3437":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.55d3437","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"55d34373a89a86e5783f0904624dbc393a27aa17","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.55d3437","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-C0hWSLihGa6rXNQ4XYUxnCeVjE9FkVyrSYyZg1rdG92x2c+9+txK+i1T6ohC23HPJqdaLtxzA+hNy9TZ8tGGog==","shasum":"ea18a1ba1ac93da8b9d54fab4085ac55a46d9608","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.55d3437.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR39TCRA9TVsSAnZWagAARH4P/0Jphpwgbr7y/RpciKt6\nJUJQXEmwsNDEDvRl3wDoOjxFSV6JYuNBMYYoScTsn4BD2S4PcuMdxNP5G3AX\nMrfCb5bdoPlgP9uLLE5Wsbt0HsJEItSU6xEVv3NmKp84L6Bkx2yjeh/dMVgI\nl8HEjaQ0alqe8oZgC0FVB2CX1TNepEykk/7k5a2AN1G7BT/F3uzJy1IiP19o\n9pYkL3ss+WH9VN8EUklGEDHCI3Tj20CkvWAXq7pW92ZAjh5V049s4m3KJL02\nS65g2Iz9NrlcwXF7OnOtKGin1XXBSYT4LCpJaFJxoQlkw/54Rja6qIiD53Wo\n73n+mW4T6GJV3N61TM0bmEBSk/tzlKmX5ws8276I/kp3x/dzTFYcwCT1qUio\n/jHg6Y836V9e+IAZH6/5VPdXUmRZ3qI3/X1fBQvuZz8gy0dSsHGBynIisnFy\nRRGPWpPzH4ndNpKHEhDE71h45pL30JlkHAHySotPmLiYfrH+sdL9UiSqI8+D\navVxJs5KhKjzyshPkPWjz+d0PK18z5aEGy8lD/sTtiNKEtjiEW/JdYsWN2Y0\nmqESsM+piww+FBGf1bZgx1wpkHs2sXchrj5DOAKDThkzDmnwE1fr0omKmsJi\n1/7QwYOyYyBLMpcT4WZaGvQsUlzxQo41CbeAg5ZL+WOm4YcJUF917Do08gPy\nsONH\r\n=Rdft\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCICZga92X362IIeIE1xy68RWrRw5WiFmU/5SGcVfZASt+AiAb4xXVAbJgqffw+oBI8aX2qnO2QLzi52dqjtlPSZs3Sw=="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.55d3437_1615298387129_0.14080962757737092"},"_hasShrinkwrap":false},"5.10.0":{"name":"@mentor-medier/article-body-block","version":"5.10.0","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"a1e15e287ef31a6ef84a2d884bd2111defb74f3c","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@5.10.0","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (darwin)","dist":{"integrity":"sha512-SvuOxl2SX2mrfu6fUnQp5kE77bRjKdU9jUOPL4Ba2vLkW+O/mxxk07Vah97MzMwFbrdj1W6NTfeL3GHYE7zDLw==","shasum":"71ea8cfd5b826efdc65cdc5a0332c0a8f8990ed1","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-5.10.0.tgz","fileCount":18,"unpackedSize":38921,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR4AaCRA9TVsSAnZWagAA9BEP/3fPAebWpUJUMOaq/GlC\nQEYQOU3Fhw/vQ9JQcWzWRPSbTSyaVsy1GpfDd08gfsynTaM7P7uUW5rUi7te\nC978or0TtEBzL3xMHmEuwQzbooTYOc81949UHp19oxqaLbAAShLloh9Ls41W\nLsYXEO3q2eJCOaIPeQFG20p2mp0yRh+86qaimSue/XRFGn3SnSjNn9bBvUkB\nCwNL5KnpSuIz1dkc3Gu/DPdwdDmqDwju7Mk4OEsn0PRdGrk8J8ga0j5IflEL\nOBd+IoikhsLm9SYxoISqtl2XJgRZ+Mu/8zntBl4dTQBLIJrEDeYCrtKcdQp6\nJH612fi2k4l5TikPv1F9jcC4+PepidbZz/zzDinC1ro4Xj6lmuZTobJq8KaN\nm61N8cntrVrEAJDMar6NgqWwHdPH1M4+mTvLoUzEqprF5GmKqEkJBUQ/a0nh\nKXm3SjRzVJNovaovCpQMRAaz/zwxjIqSqPcy7NszF+E/1dGSBG4olGQd/Q1j\nrB/u/UuGTY2UKKA9vnH91yVYYm3QczRisNLe2xhxKZ2fyfxsucfYJrYy/c6Y\nWTH2xcSZikdecYzK+h/Gm72W+d1yn+MZdR4sxCw2y2SfWHSP+XNlAvQrLMwP\ndxWt8IAPpdEbH44/d2BDPgiAT/VIYMA1sCHruPgmsWnfpPgknkds05qanVpE\nzl9T\r\n=1SMR\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDR//fZ+vLHVJhZAn5gQG8atgCaD13+di8QFVzZ+TYmhQIgbbF3c1br74hKtqbOLKVA4c/NcVUnXlJa1c/mPb/Ae6Q="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_5.10.0_1615298585653_0.3253808887691221"},"_hasShrinkwrap":false},"0.0.0-beta.a1e15e2":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.a1e15e2","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"a1e15e287ef31a6ef84a2d884bd2111defb74f3c","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.a1e15e2","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-IimLasIeljYZ2bBWbZ9ciWBMMNzWs8EFEs1yELE6Guvo+yGkjIPrXnu43rlGHGotHvSEG51X7PYcRO2hBXlSaw==","shasum":"6edafde7d5506ae3ef43e661c4373cba79893336","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.a1e15e2.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR4EtCRA9TVsSAnZWagAAMH4P/AqZVPDSidMWrwDRxeK+\no4cwi3ggirDhM4Ev2ZxmPku+Uoy6YghNZgQByEg5QdU1fbFkEHt5+LMRd+Sx\nCLN7oYIcPW3kkMNRajdpuhtIE24LLQsPRFv8v1b7V0RP/ShZ3XX7I3P4+dfW\n0Ige9+qJQvjv1Yz8+XPV/B3sAwKNc1ZbpNHb2YRcW5z+NL4Y1VsWSQx2S6v2\nfaFvJXP3MXTSXx0QJXwJ1tsonyZUc6H3QGYEERSj6/ACjPSD8QR28ZF0IIzu\nAEA3jioAe5KdyRDdhJp0iA9OHUk0QBA3NQ0t9w6R3hxxcq9hkHpCwnwHfNgX\n5rtlphxWKNDUTufFIrcdgZXV9dqu7LlB1R2Z51AuXlkDh6YMOYB8kbfY+xP0\nABX7/8x7cL890aq6HNVTJ3gwihwIwxiyjgIeglc7FrI71kQ3USYL01b+QRPB\nVByg/iMFw7ySoFRPDHPRsBqzJovEhvBXJzbr2imPQY+EJPUcmJNtpKwsjOVm\nRt7x0os0IL9HqJU4/Ctmb3JL3Q6RQ7S1uQ5OwUEuTIusN3YGvgVNfBj7Uc8f\nktJQ8pAEixsi2mWZ26DHkxTmKsiiCCVLa5S12tZcCNlNta++FNgDxNUbGuwQ\nRBsM7r+4/zXaoFlljilFkXir8USQUStmwX58YvonD80wapbI9MvWm8jIJT5w\ncHoU\r\n=gDCx\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCgRGVuuRGy799+DbsO5RHEnBM7E/gysFB11KEct3X17AIhALM8lKRK9ZxbHsr+PzqzGxkFHrlOYyMrYCawu/9bwOP8"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.a1e15e2_1615298861280_0.25279260376533363"},"_hasShrinkwrap":false},"0.0.0-beta.1f7c3a6":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.1f7c3a6","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"1f7c3a6e6bc73e8030d17ac3c1d6dfd3e55fc26b","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.1f7c3a6","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-u7qfdYJhw5Gp5RvNSjWrGY5m5ioxWhMY5zrLbIPkdneW9redKKo/kOzT7hvhmYmj062u0SRip7F5JTBkzOl3Xw==","shasum":"130a44083a35a5edca374a30e030ff102f07af52","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.1f7c3a6.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgR4RDCRA9TVsSAnZWagAAyMoP+QD/6d6XBGAGgnr3ZNXW\nYSaCElAjUAjHQi/wnTxRZZf1BfhOKmBEqy47ulEwwLs+sH6hMGTHhQXhiISo\nsMVzkb0L3syx/Fhi21m71LvnGOI+JAX/uTCniHULLO8U1VYVpX3UFegwXlpe\nh0PtQfxQZu3ZTuy+DNbQDWF1V+q5uNQTdET85tiqz7YuzMF4zZboVfku7bcD\nBJQbRfzcinAlm4u7VWNQyu5Ysvt5fnZySc3YT5qBHPe3UKrIC9NMhr7pC63S\nEJJC2MKuXT2Q+9E5ObQMmTLF6r/geaAfMoFP/DjFT3yX5bJK//dqboI7Yz8g\nIHPvbBg5aoXn4kQcNJATytIwV3CxO5TGAXptY0bZIx48remrD+xifdt8BwBA\ndAOtv70UX7XTdHNRZXub0uOwjTJ8SFGnqAvV2oxjGdk/QzK+b7aIvIEyQVse\nkSPH6Gptjz0M1nBgXiOUH82adGxkPN/D//kkxl42zmYfCmcFY+dfxosDHEwe\nfVSlwXQkQeHaTYckXnzpxN8VASWCBks2yXzIda2RNsduM2fbVWXMlvG9qgp1\n/0WjEEGvg7oqGXWnEG8tyNArceVoBRftQQ046854LeizUZTiAHBpdi9rqJ4m\nvRZnggeT3oq1xLE9ATMAuBa6NxmczQTrgQjYBTMvGAZ1bAalvUnMvwBM19SR\nCONL\r\n=/nFv\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBDOx3N4EGS3AMl6ztsOJpcCtGeBNuqiHaN29Khv39nBAiAVj0b/69AKFiXvQ3eYPDfpyZQ5sCDt5VFQIXvRFXpmWQ=="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.1f7c3a6_1615299650985_0.1686087218789849"},"_hasShrinkwrap":false},"0.0.0-beta.2f66b88":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.2f66b88","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"2f66b88ff190572fbadd85a120086d5aa8699088","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.2f66b88","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-wm4Or7JiwxOFaS9OXNT67Jp5mYXbWa+Jzbn1Jv1dxXjMVTM5KQPYYFOaitSYROpOgY7y1BOfneAW2oKssA2eBg==","shasum":"f12375e85f38df1e1d8b2ae6a6ebdcf7daece748","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.2f66b88.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSS2gCRA9TVsSAnZWagAA9cUP/3h2piaX7z6WdMEc1Jn7\nmtzgm3u7diWTS5j5GhAQEhx20GOc86z8zeVZ11fsd9z4SfiTdaz0qWkn8fzs\nt1p2ITPnVEqDG/Z7voqf17DFXoMCze067BKOPZanoka4vwCAcrz6hliYQAm2\nkbX5g+KZlMw7XZ1dVadb8UZ1iun4K/KI1zHQN7vLLQx+cb+o6p3xIAszZw5k\nng1oMTuhBEkSSugGFrBx9t5eH6AIb7acJb1C5tMaaNX+aqvza9ibAIJzlPc0\nBcuYNHETwxvTnF7xay/IUYynwknp/4kyY7o5gLIWangf5orc2fjMba1LzSmO\nov3F+QqFvbjz/CjzEm1Z9e1xru/kn3beWMPRqLCMJt0kkkwvZm/BRqSmkRRA\nPpX6EMmyk+LdIWYOGtNxuD4mMNLbl+PIDpcz0ihWVDSW7erw8f2kG9kcTNPM\nbMnt5UootjrSKK7bC+EjaPEAYrQexfnSqgl3TqDduPjSIjLse5mjx96hrMvO\nonehG5Xj2VXUld1MJNflED69l0U3XMpIpiJsHCp2lTBTF2WS6GsPTOvtiZ+c\n06CMOK/HxLxypGSOeRUj8qjMEGAW4lP+6MS1Z1lUf7AaUG4RDay41w2MXggq\nWcTRFulmB8LsxZLooVLVAh+e9ri4c4OYFnkesW/OHFxkINE4mb74NW7+wqvP\n5tEw\r\n=hGad\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDzy+BLZwGOYDGj0erUzU5/Q7Y4tbRVIzrw7ilSujaJGgIhAK1Eb0ncMpMz5DfhLVOBCoZMe00C2gF1aZkG/Uydbb5m"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.2f66b88_1615408543455_0.6473232698236706"},"_hasShrinkwrap":false},"0.0.0-beta.23ddae7":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.23ddae7","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"23ddae7e306f3ce5203ff4593c5addb228f6d680","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.23ddae7","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-pRU/2idrKaTyGeehavEYwXLshB8xUCvW93tuBvEZ/PPiT410TpPYrysCKedq9SCx6FUGtv2NvxtZ7O1S6oPRTQ==","shasum":"8a7a49246e9dcd575261c816734d8816c25c742f","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.23ddae7.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSTG2CRA9TVsSAnZWagAAdI4P/AtnGNM0b3RLIHFtdIvz\n2VjOESMaYMSaayRpROb7nagSnEQmflMkXPdw1NEFOxXTwrJkt8yu10A/lyeV\nJ0YIi5hqhRssUS4Ux6IOBBqG0OMdDJ20+1Zq0Yuh2r51aS7si/I6V8Ms2Fbx\nk9bE5u73v/wSnbQ5DUr/enYd81mwvX4N65Z72X3zycFfMEznQ9rzHkOeSqW6\nB3GLAyVdcpBqdH/7CitpDTi0JijpDtKqpb0oYZ643ZYV5Ghbd2v1ganSA8Dp\nCF/iKw57qzgq6GbV1a4nXqKUuQxTJGdPa+4If+6y2t/346QO/O3V6tIF9n3v\nq743vSz8sdKn9ozRqVYvnSz+sgfXVVtjY15BkpuhzuZZmDowW40cssio8gjl\nt8pZov+eFP6qBw5KVI2DpIAB31BzNGudkB3276JZ1bxrsuaoR/lSvXhkErv/\n1NjwvJYjAhJZ0fN9HZS4mLxuCvjvtxGlB8I4XicN998wiaeM9rWjzxs/QjyX\nVDSWKfN/REaQ4q51JpOpdSPFHW4Kc0cgaLGJT2Zp/XmmB2GvnaugfVxGD61H\n942WVzcqqZfN494Xwmnx84H/ofLLffpWVxsptq+49BgVw2JBqTCPx/k8I3Ov\n1jwHmbE+LnYc/sUXYZT3E++Q2U4lEuFXlDbt5EUErH5ak2KgEhJocv/Nb+pw\nhX5w\r\n=+Q4G\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD0j/bqcgdEACgIr9SLBLqSbQw2K8hrFYwdLNItB7OBhgIgTPfNGMa+UA4T81zgSRM7eD+bsR/DNm9c+N2cj6Bq1q8="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.23ddae7_1615409590233_0.2570669117013866"},"_hasShrinkwrap":false},"5.10.2":{"name":"@mentor-medier/article-body-block","version":"5.10.2","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"c6169a9f71aa63ff05eec5e9ee269ade1384bbf9","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@5.10.2","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (darwin)","dist":{"integrity":"sha512-P2fn04Y9ds3yiubjiY5jYi8d6MwzeJTGtYGnq7dOh5zX6dK1X45mlDVduyQ4pOB1+ZfVDtJXvFjBqTBovKkh2A==","shasum":"eb98e537caac4aaecc97c4d165e94845b4661701","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-5.10.2.tgz","fileCount":18,"unpackedSize":39223,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSTVTCRA9TVsSAnZWagAAF48P/RYt/ssbSWD4vxCFToQe\nR/pck5hndiEXdrnsbAsSFH1UE+8RfDyI4bCBeFf/ypG7rHCFiA/hhgBHps3U\nNbgCvzihRo4b3RISLqWiS6cwiT/CItTExldJ5FR4JxCC/M2vDnaGmyoVTFm3\nfXDlAduxCjbj0+a10ObGKCNct1gRrBQWmeb0+i7GuzAPIJaIQeMjjH540NM7\nyYKcjTUekmbTptBWjnkpKsL4jYiH5ch/r01ai7S4ArHT2ILlzVz314uxTRwk\nUei4Zl1NDI5ASP4AoLrLHWrzcej6Aqoy8QusbLnS4e3Mi4gSk+OgqKIXpD7F\nwJC6aE6H3cWpHWiW+McPfJaraTUCwSqZaNY7m/TH5Rk5k/NOlq6iC52yUAFZ\nRfoFaGz+WTW8fSHAfZkfOPeggIiTlX4xB40CVSU/Durc1jjaZbtJAtrsKEF8\nmxQ9R4W9U5Col7bdBlzlcvAGUYB0f+VH62xNkw8OsMrN2RiHSZcWWbPrfopE\nB7tzYjFPVLm/p0d+mXpn5xLuO2dL/JFgIL0tfQnXu98qohH3gDjgWvNhl93b\nVYQExhcbxk/EFti7myxLM70p8uFCF+XswBjmNTg1S2NcWd9931ozLNuYLYiM\nnewDjDMAk8M6o2yE7meGqdbwfLP3HpCBUDr7f7a5OORw7k/AkcbAhMYQ6eG7\ni0yq\r\n=fhLT\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD1T1tUzFFiwwTSTr47r7Knu62ZgweK8gupDs7e7GlybgIgaV7R8m9JexJ7wTn/ZGHR9/l6cmpaepgXIFMfnSjKkXs="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_5.10.2_1615410515163_0.23863664584318434"},"_hasShrinkwrap":false},"0.0.0-beta.ef20da3":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.ef20da3","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"ef20da3b0ac89d019a0f5bd494dff8dbb663faff","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.ef20da3","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-hqR1ZuxgrE7RwC8fNtNFMw+cld9kS5OahclfdKMy1vlZYhSX55gSjuL1G5VhynqI58S27JGkXK7wvEyw7y8DXw==","shasum":"9215dd8c6918bc070cd0f1538944015573106f9b","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.ef20da3.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSnhqCRA9TVsSAnZWagAAtjEQAJAJSWaXmsv0cmANl1Jv\nJFO+7vH6jHrCXGBCpZ6eC/4bon93C3LK6RGZMUdlIOSN1mdTeUDgQ5s/XArf\nVxa9qfzD1xDh7DwthkK/WXebMruZcRamHSXmYVmgnBSmOmgAldQASMBCbgUa\noFB7Zq3rdepGzDqUb7Nb4fl91/KILkLyu79RPazaGhrwWh2AWL0YZ+jXWYI2\njdR0WSvYgdKBeezZFguzcFYMjNPyo4taCyuVnhbtgfQct2JBU5v7r92JlO4X\n+UQTswyh5M0uxyq5vCTHELHGz8nKqG4gJBVCp2jwQQuZbP8jCLuRVX5X3JTc\nmy6ms9ebf0Syt05t6ZlQi6nx7G7NGnXlP9dCxpkodQDu1Sz/qy9usb7piCK+\nA+rriDwQA8Rc3Q073rGpwu3Z/Wf95kMegWCPhZxLWtGyfBHT111EgGjG8qa2\nXGK46bdiSgv+ILlWU1Ty2dQS7yqBO2ruZJmXEBKB883QacMBlN0jW9H9g5XU\nkiLm515hjGs5wrG0d7qQLDdb4SnFRZVkfQ85vFkdOgmBmTRM/uj874poE8uU\nJ8EOgRljGatrS5SzkeMfqJJf6kI33uZvXsJ7b0okeOeUiiNsMW99SaWGDG+R\n/epNwal8kJ0dRDHOP0PmJiwCewiuLcoXgnX2XKWAdiZlHufY2Rk0ArV5LBtC\nx9kx\r\n=1Mty\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBwTf4OArLWuiMRTPy8uWDADRkvx61Zo+DHD9Pf+XoJxAiAUubN8U6kBg4T8Aj6LhGxfQhyQuS6nd9ySRrDAVLTugA=="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.ef20da3_1615493225662_0.09917381337214048"},"_hasShrinkwrap":false},"0.0.0-beta.9b96a85":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.9b96a85","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"9b96a857ba24aaa846efe858a64964efe506b2b4","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.9b96a85","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-1TIjA0yy6DHNca47u9DDI1N8EZ7DA3DiuGMwTEBrheSj4DypL3fqPgQJFuCgmsv5kioitSWEZeMUjt5wf3/Mxw==","shasum":"4bfc99016edc119c31cbe48c0b63100f30d28969","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.9b96a85.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgSynPCRA9TVsSAnZWagAA9gsQAJJ25jyo9wonMeaw+JuC\n+zU7vLH0urEMePh2VXW3OGZWSjPvfxKEsYeO4+vvJH3n0liNofetzZTJ0IJy\nG874E9ZhbbD6X0/LGwaSTJGpC41PstWKzeXA+mRS7mRGowXOIanBC5ZDESdh\nDQEE6VHqKrhkuIWkh3GFzbTEkcprZ1tp+Nv65qWq4Nj1+FLq5ryfmUaRLRPV\nPc1KU2zWy29C/hiZK1uTHMS8gigF3Vtr8TlAy2Rv8ooHaRH0Xo77GgtgtTZA\nhxp47PS7yXKwMxhbyfvAQAQhATzLfF2c2tC6GU8FnASrdJdOOxvfI8Qh5s7O\ndrEkbc36WDCkzYPGwVHsRoderj2Ob/AKlKi7iyMtfQpXhd13pNPcs2MomLhg\nhA+ZV/XTbaB678dYJ2rSuPF42KBhMq0h7ehXMShqiDa1vJJgRxDVb27QJ6F+\nZ8aZz8bBaUryBQvIaiLRdE3q+FwQwR4cyl0SpSe7dn8RlgZGlzruglK41hP7\nIkDdOdALfmRD8UpHJ81KJRHe65TlyxXmdVDuMHhCcIODVSUQKUg9AF+GtcHG\nxC3se+lr46ZLZMlQ5RyhivPsOU1jLvIwZ0LcqrxQ8e8jowoo9XdVcaIVRyvE\n7QD7N8LkNy68U38a+XcxKT0h8A1CUU06+w9b262tdQ9dl+GPDhnrNU40VzmC\n5KUJ\r\n=Xbiz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2fUykHsSxQC3LS8QPJ58XYTOWgYuqu8l1YtHjaZwJIQIgbFZMZWVikW9hx9RHIZfRdognr4DqPGV3f5j1Wn2Xv6Y="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.9b96a85_1615538639475_0.954415875354828"},"_hasShrinkwrap":false},"0.0.0-beta.d13eafa":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.d13eafa","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"d13eafa97ddf4436d3fe217c18f950f6496372d7","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.d13eafa","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-LYpxiroT4vvgoMM9T4IXnKYLsZxp4laroRrQ5xubCqrdMqPY0r1MA5WEOFuFpPzkhqTt9RGQyLN08IcyrRdPeg==","shasum":"98aa91e9299db35a8f2119a2b72a3009905ea09d","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.d13eafa.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS198CRA9TVsSAnZWagAAEW4P/iEq78yy6k/HtUkM4BEx\n689oIFpqBWXMwdhcQ6OHETl9FWXBtsLEfOws11N3+UhBW5x1WXp0Kn0+SiZd\nuRZG8gPtVcfBYIfFw/0NspHq14mTMdZWtM+1N8SSfPhlNlO0UYs7G/SomacB\nklbP86QnJb4/rQi33/ngjL29/lRFQilS3p/ifdG8OXooxAmrhqMpsTy1ZUYK\ndM033J06sNPFokwYu+Tz1bWZGJnQfAlHsaABLbEHGipj+JluLpGKuqvYsAVR\nvCNWi8m0WvjksV2TdoE6VIRuANBvNp+RdOPcr4Rguy0Z86hdzgNe68Yu5aNW\nH4dF7SUTnN0FnrbMOUXCzEbYt4oEVb8HkaqNt8W5c90daqghBy168YmvruWY\nVA6NSEWcZICktNM6BHlt46iRv+E5mxfYNGDtVI6i+s9BIRcugRzJufKj32P5\na0rVIMCgOp19U0xPk8kclru0wjMCtujcLlnMlEK7utPEudqW+rLNZBk0xa3/\nAINUK/YW8Klk7JDRXWxJkYQz7xuUe5mrdgz9+1BaZiMHqTKHLstl4SJtFDZh\n85+8YmbYdSUw05YzKsqWBD453JEs2rjpa9B53szFjuhcqOExn6Y8EsLc4Qxy\nJRzBVPzZWhGsJXkMdyfZfUuFO7A73C649Oak8RiQ4g5eWh+Co/bs2TQK22L3\nk0Zj\r\n=Aj/M\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCdPuRt/ehytF6CB5XOigedaAqjITfyy67//03uT5tz/QIhAId1mg5ZKA93BeuBqIS2KaGtl0sXPlINo0ZBMeSfS7Tm"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.d13eafa_1615552379786_0.5536086681637744"},"_hasShrinkwrap":false},"0.0.0-beta.e3f417a":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.e3f417a","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"e3f417a6e186da3d365e8ebc70d57d96a0027f04","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.e3f417a","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-ikxVFplOkQHRz08fWeWHoaCuJ67ZscKHgl9Nw7Y8mPuj4CFHH++KJaMXbVBryiwToV1CFt79glP6ql5Z0KtjWg==","shasum":"c3da026868ce91bb078dbb83763b4b2d34865d49","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.e3f417a.tgz","fileCount":18,"unpackedSize":38933,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS1+ZCRA9TVsSAnZWagAAJO4P/j+YW1Ab0/51r65QjEf4\ngPyZ2m8jUSvF6O+L702DKztKgJS08onHAjB8KehHlPmllxRwPT7ESna0xZlM\nbN6AH/uAwABO297/FO3058VCUbi43C5qLH9S73kN82NvketWQNS98PVhodCC\nB+N/ueXe2G4+8LoWIq0UjCcQFzJC6zp09U0Dy0P2k61k+DYR+BbAcjQvMeeT\nOJisvpR2Ob5ZZrVTIkJkwdxfgitbu8Y1MKdRcmnG2nqcjnyeW35WG1AIJV5T\nSottjk13WzSl+wX9ZaE285l4ueXIHyvYWtgIhouSikFeCrJkDZeNMCNsoTV4\nkOQHcZqBale5MgYnRZHkkKpcyB2asOi4yulfh0nnuO4yJQS4wUDtYjCA3TEj\nCCdEVhkO0DZ67mohOnFuz6aEJP3PITxYGlcWgGnBzSQQHzYBfkXg+GGqVbw3\nQ0sN5yhW84BV2anjiYHQeRVGSAlFGtdJXImzyyjMwH7PkJHJQicupqA+WFn9\nibfj/l3zEX16Ztcc9Jau2qL3UYlfYC2zDMo3lzhAe+uHpbWxyuE8ZW9laBom\nrjIJxDUZEraaKeqjjxBAwhv120842z8lW65kHfZgxEfFX566CticUzWlp7DH\n8LDrenfxfV5uWtU1h0VlMdq3ngHi4UlLgrDaJK7jBcEaWNHLwkiP4MlpavA0\nShCb\r\n=0iC+\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDq+0yMwKhBMGjz5ahvZ61q5riiAALx+HYTI/yap60IyAiEA5CChDV59QEZZL0uuA3hFctHvZmZCSswNQfLo/YZvdEc="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.e3f417a_1615552409090_0.9169350121133426"},"_hasShrinkwrap":false},"0.0.0-beta.c29a52c":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.c29a52c","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"c29a52c8c00ac37f5e33b7f0cc3a85b8735018e8","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.c29a52c","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-c2j1mizlfCbsi/WjGntEpsC32OEjaZ83NJPe8udz8FaAQk6sa5uu52mvmtkjLAuR0dytgD2tnK2DaaUoJkvk8w==","shasum":"3c6530631654c607e692a5951a472bb63bce59ac","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.c29a52c.tgz","fileCount":18,"unpackedSize":39726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS46kCRA9TVsSAnZWagAA06gP/Agw7uFQcXEBXoYWBYex\n6ZwWDteROaaMwyDCQkdxzyIYqxdOiC2n9RkKZDC5leACunuko4y9dxvxvxJN\nWjccNTzPE1H7PPuUrzJ4DmKvNDZZAWp3bwdia/kqCGTAHaWVh2ffNc0nk6g7\n0Z/5asBKhetkmlA5lqLogdF7omIjXXXNsK5h+PL5vDd6rq3yPUDFhATURppp\nYuJZnwmE6/L/bnYYFuIHD7P4A9/Wg+lpWde4Pc8VE0C07F7s9ikBT5B3+mP2\nvRe9f7VkAobJeRs4CRnSzq1V0yfcEdrnkdqzTpi/xBsnxW6nO0RjxcWK4pbq\nLBbPEA8R19vPqlc8/8c3m+T+e9wBGhSCFPZ+LPo7E8aMenCGcmzB1bqsVQbp\nBI70Rovt6OIL6p0Km9eLZMnCM7O0wRDLUUxAq6mGpZJTdjZ+0kWcCTquQR39\nEv7hjA1NhYaBDkF8URCDQjkOXCoMPR0aWTRCZGMrRcvqFSiqbLdvmbV+GVP7\nM3EDicNIhSAbF6QzYslmbDTP3JYkfPGD/dbgAY7ZZ0DnCrxUAqfGh8HlzJz5\nF13faBglJ6bICK7MDo5k3BT7ijEtUZJWKADSueIyoTh9UmZM6KTKYycw0nqO\nZw/WkV8YbOeW3MRpU/Yc/aDaEgckohk4aelp0K+23tlz0csDi4ECxij5M2Ya\n/Clp\r\n=cQuf\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCiiXT6kV6/E5vMhBJAlQYdzuw3vYz8bd4lEg5mnVc6IQIhAKzPLZ9mSBdeecEcHSwJijtQCEEW5b9E/inK+m1k5Gzm"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.c29a52c_1615564451660_0.714112634949928"},"_hasShrinkwrap":false},"0.0.0-beta.13c0a0f":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.13c0a0f","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"13c0a0ff04be3038d0b37d195de2f3037a5c0f66","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.13c0a0f","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-cpmo1lkVshLVZ9esNkDjVgAwEB0vQuuSIK6H2dTZX8vG738QBDAKTCkzA0dME4XFalyM/37j0Qi/f4GA0G1eJg==","shasum":"5e7af81d1fd0c12ab0d299733065b3f17f25059e","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.13c0a0f.tgz","fileCount":18,"unpackedSize":39726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS5UECRA9TVsSAnZWagAAqjMP/2XDHnRvfyGNICZmxfYg\nL10IxSXmryLuEYL9tZPDw0VdzLbkywTFWZyrqr7VoM/abqekLMhXRDrgsBNI\nfsS3dH6+d5He1bZ20Ewlx6otIC5Jz9eTzkFiuDBXFKTdXLEQAzQoksZth4cA\nYfM4HgazENdu7RfXRgdnj2ytdh6W6s8TmVv8OQBUOIZ/2oksvX0+f4Ff44I0\n1jHLnS8OQokjmcZTJu2kkiKInT6420VWCgyeHuyH0Rip6E61VyPVXzsbHy25\nuvSlzIs9ecWzpQqxSlTAW4hvOoR9jQGn9njZirAOF4n/Vb/pkRTr7jIj00j8\nIqYagayVrJ8el1FsHEILrj7PW2usLZz+BdQGFSuCaH5LDylwpPf7qOBS/gJF\nrFVsqRA15fW1dbPc3/W4ldkQIEYtZNpo+3T+rfhg2Vrpiuemh9o6T79wFP1X\n0ZHanUhGrH4c+6Vxy5E1M94af3ntxfaak66hmEpTWy/dVDUj3BwJBSgHlmKP\nSZlL74rzx1vleA1ZqUCClLUufnNw4S7c9iVUMqiTMfQszoF4TmfsxLtFVwTJ\nt7EPd1Y1FA5aDYlJ37fShYyo3etxEv1qQZGVDefTzxay2R4x5419ekVeXrov\nBS3U5yni6QcDE+QtpDEdKbTUf6xKaO1GVGgK5aLOLJ/NYcv8TGwEvdikNRJZ\nLh6f\r\n=vR/K\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQC7Pq1hAMhZisYZG2QymnHwJzOkwYGFEWWdM/bYl+TfYQIhAICaXauhW1i4xRXvyTKdzEMnwe+r84bzdgNwQlfYev72"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.13c0a0f_1615566083612_0.5285531540828832"},"_hasShrinkwrap":false},"0.0.0-beta.abd15de":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.abd15de","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"abd15dec95f8214c6afa600371607946ed6061dc","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.abd15de","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-/rwy1otkHGiYfIJEhWY505cSvXbTwxnVhn3zY4QDRiBT3LruYn/kJWdaet8Skh2mRdRvmo04MUU/E2yNTxud8A==","shasum":"eda9c07286fa6f135930650cda7e91afe28e50a4","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.abd15de.tgz","fileCount":18,"unpackedSize":39726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgS5ecCRA9TVsSAnZWagAAJqoP/0wZ8LUAo9yutpLnxsOM\nN2WU1Dj/MV1zFjDESTXsL4Vxc0BfwVqIrah6MGYgKupai7Urj7BI7DYs9Z4R\n0dRdCsvehHBrFgOxxnBWV8qGwQCEzMgO66LPgLvEAEAF41hLdsNUt9CPHtOv\nw7W6e5oo4WPpg04kAGY5nKTesGliJsO97YsO159sOZSVtstLAcMghyFWJmip\nCjogVqOgF/TyB1r5iEyUcEcUA6EFz92Sx6vSBwBpXIo1IcigpFAUHxm5D3EJ\nkt7F7VKI9x34H2kSgQOG+D0CHxOrMX7VbjVF5cHxHctUQlje5f6JCRrzobmI\nNYFW9oqeWr+iFkTnXTRl5i6zxaJWLbXwcjlaTLWHSq5iM4Ud6daDa0oG4vZ/\ntU21s+V0sFcony0OIAExQG8bUrwrc0YspgQFrL6uxp3f9M9k0nHIb5bi7M3O\nYtBlPJma1KZ/Wgqm6Cy+9wYk1qv5UqpRKqKpOHvH02ySPk+4Ahuwr273KO6k\n/5GVem5Hqy90ZxWbImKIe9OxzMQlPvPH2FUGF6euXZOwxsrL8tqQDhN0N2gA\n+ccLmD1cwSUfGEsceYJZHLvddmPxxHm4qLS0iQgw77jTC+lL5Ise/Oy/YRXM\nhpyip0pawC+Tde+ismZp1lN1P44kpEn3doN00CxtyMQoG0ZRfLZDD6wJ5vIa\nhAKM\r\n=5GkC\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDi6sRxl7SHiOPMPMmVOTpWXHUTHUV9uTUcYJJgq2wNKAiEAuqkPk7BhLgCwsLuyZ8nc3zdeXPaUBhpe9VBmpOocFUw="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.abd15de_1615566748388_0.3294947489344917"},"_hasShrinkwrap":false},"5.10.4":{"name":"@mentor-medier/article-body-block","version":"5.10.4","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"c3cc9b9b6651f37f4e6dfd704a068acb9e5e6733","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@5.10.4","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (darwin)","dist":{"integrity":"sha512-dR48TVdpqPRVfkb0geZx7voZ2t1x65GWwydpFJUyUQ5NgACf1vyKClR0oTfv/DqA1taa0Q7v3NVU9R1deo+otA==","shasum":"8bf6516446a2bc05298b128d155439c65b8a9556","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-5.10.4.tgz","fileCount":19,"unpackedSize":43247,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgWz+ACRA9TVsSAnZWagAAOxAQAIi65rLGKhMzTcgQClwz\n5oJUaKjB/l3fQJAnboRcCKc/B0P8gOqGJqk66v4JYA5NCTNrryftz8aOhCcZ\n+e+7I3BG7mLFQzVIVJhQpC+70YHaXFT3ckiXSLo1IYo80OhqDUxRS8T931gU\nwIG9GaTqP0mzYiqGAMYwMvKbNoR5oXRzoKskJDm1dDWgP0SIkXCrWivZn2Qs\nc0yqzPnBsreJI86VYUOqmMuqkbvvkONKsmM0XrGLBsEgzQVmXWl3SZMa3w7Q\nvjaOV9dpkGDmUTxPVd47XCh+VnKJ6WPsLNnO0nXoJjJnm8GriokCy6TqGpP7\nMeH2CFmt8gy9zWu7Aj3kP07EzAEwLOrKu/xts5Hhb/LY+hKsBm7J6HpXo7qI\nFFCrs6CI0AKLxZilrpi8QA/dnL7bpAPV5iOf5S9TFNcfi0CrkgNrH87uBlBV\n4jLy0O3fR2LT4J9A5Glmv+J+jdo8FpM3s9FfTMPy5Z6wk1YEp5k/Q+Qw8jg8\n15KyD21dw8NLg4efEjLYMgeHmZktuIEE/t9kS4hO4o0BDN3wnPZqvnt32WyX\nlgGQQy5HO9QUzPArCmSSEJ7ftIrBeXKnCQcBMybRJvr3Wydk3zdtrRIuTcfn\nTvmF1l8ab++Zt2vvvr46aZ0ZgwyKh7J67xEVLh+VTBSEHVMs4Y4V05zrOTKS\nAj3+\r\n=DtlB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIEefjWTeYFhFMumZ8y5xc/3tk/Kb/qvOGZtXgY7wddnfAiBjSX/DOSC/GxQNHDWSV5L6NyUgfWmU5jlFxJkvx6TPPg=="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_5.10.4_1616592767608_0.7916441078008682"},"_hasShrinkwrap":false},"0.0.0-beta.5875f8e":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.5875f8e","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"5875f8eb78740b4be1a2583a9a74449503eb40a8","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.5875f8e","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-7ikmwGuPPG3QY+vDVhseAiKS5Xhr5sd75bDZJMOOYh8DQFQ/fuV1bQlTkLBCt9JwyRRPBHeEtm/rmGE51f/HJw==","shasum":"ea312ba017d9db31ccff9e1253ba92d9be2f4f81","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.5875f8e.tgz","fileCount":18,"unpackedSize":39726,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZZVkCRA9TVsSAnZWagAAXkgP/RE5zto2ak0fRhArWYTG\nryuSnKnufNoUTH3kZL4YdNufWnaiQta3DQjgRY3SYE2aLP09tRffSUrfHKIz\nzz9EpXcdKjHJcb4GOLHHRBOi8Fqa0dwtZNtjnAWt32s9n4pDBI37CCWafgmP\nklh1nLZh/gzf39BYUQQ2jO5lvWuyz1NwE8OwMQbOtcXcgBsCoaKsDdDLXg0F\nd6dfgy/KVFXNl5MRMpQQrVTNQiBl7DOHXAjXcrVqubGUso/E6EsdfAhPmKg0\n811KG/qrCphqlW0eqv2K1ud07ApOWtJrOCu3QmYnXVF1nSX/0GqHYvTEIgcB\n727/7gg6TlHIdeKvlJtqt90UyafzFFJJDWZzvZQFHxbFd1eX9tdjHnx7DDOx\nxeQSrVE5+TpaWmorcm1DPjukaTgtIFu8XZljYIlYqru/UgKFifKkA/Y8yPey\nW0HOnXZ4U/ISPcGz+SBnQvzXG0sYgnOQCuBOKg4EHpyAXGbUYJtA+/ZU2ssL\n5iXlSiEsbxpqaF90a7B4NI4dKqDjhZ71Xd1PK/yLjfKZzESMphboRNwNPRrG\n3HaiBiQHEbWPDZbVgssSl6vm/Bm4lSUIWqL66I27Kc5pFwWlGZYzLPB10S+k\npU7CuG0d7LgSuqIarpUAkjxRhXD5ys9Zbt9YbvRTZuzju6Ddi2hER0jnHv0q\nSLKE\r\n=Zg6D\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIBRCkCCAIHYmJA8zZD+yxE9R8YK1jg+Vjk+g5K7ml7VWAiBhLYHGDXiUjJaef4U7APLCDc4I11JhrTynUYTkWMjS2Q=="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.5875f8e_1617270116078_0.675432532815796"},"_hasShrinkwrap":false},"0.0.0-beta.04cd935":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.04cd935","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"04cd93578e25b787cb2db5be2fe5a33090373d0f","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.04cd935","_nodeVersion":"12.21.0","_npmVersion":"lerna/3.22.1/node@v12.21.0+x64 (linux)","dist":{"integrity":"sha512-MnPEMQmOjCDI2jbSgcuA8s+m14RcDc7qbC/IYG0DEMRF3GGzf8H/96qZO1mWBmnFhOD8HH59ABc/M0Fp/KeR7w==","shasum":"9061e397f2b16bfceac3d9742e1efbbd3b2b1c50","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.04cd935.tgz","fileCount":18,"unpackedSize":39916,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgZaPwCRA9TVsSAnZWagAAAYYP/1/MGOATW+geH8TAU0MX\nAdwjxkev7UxyJ885Vz/bugIuF5ZKckU0ZewUpqHc9CZf+PjKm9z1bWmZTQVl\nJSzzP1F6plnjDUPPTNqns6sQVqCBdTv1OMbPkD4TkdgxA5rOw4PT+TNUP6nz\ny64Tw51Vt/8C1DSWWWm0n0kGjZvoMrA1OoT+/6ekNHxdthRispxRsHh4ocUs\nvzHiB0BRu+5jUK4eBXK5uHbWvnWKzXclZVcuwOZrykQ/bX+PGwW0tGBOoejZ\nV6cB9t92h3vVBEpjxqCu2iX8izHMjNGWiPd/V9cPIpQlgcgO/23cOL4tO2S4\ngzndtq9XGt1o4Mmjb2O33pvIYg/sIrBb99TvljNsJK2vCDtEYZ240GlWixf3\nl2t2Raa1dPkpeL5vrvR96ow3WmkrzkI4x6hXlyEv1boAESZbBW3SILAzoAZ5\nmD4JCDcE6nz0WYFrqpBrECVAM14uKqNbagJGw0iy8YEYoucl6QWmKU3HRsPM\nI5dgd824yYLfm0QCGLQNVxpNOTJV3DR3aYUyVmg2p0uQvFqnhBGLteK/84Z9\n8Tgj8j5iC3+5O/fqN8Tc4xdpdY29PlHvO5Fxg5laM9QuoLbOcqI3heMTyqkd\nfeOU2qiGQR+RePkR9dmZ5rpiuvKJl/KuDkqhckq6YO7f01JJilCg0xkIur7O\nItIW\r\n=oqe1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDgVt5Dn5+QutYDY+QDdZW8HuHnou9SFxeJ90WcLIBpZwIgP/xulEfOOOvb2j/NFFKaSpo4UikH4hlB6FTz0hwcfbw="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.04cd935_1617273840410_0.1346146472257146"},"_hasShrinkwrap":false},"0.0.0-beta.196b73d":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.196b73d","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"196b73d6ca0a537b52ca3b8ca0be903bf6f9281b","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.196b73d","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-8iCvMRasAhoMnwaVZCUwvzIXaQCWl0iJDHYw2PsO86wUhVxhLh+JyxCRPhdqvq2BQpCizRgfkcbVuIbU0zZaGA==","shasum":"6e4d76a32c407eb4dc87990619ce0bf95bd117e2","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.196b73d.tgz","fileCount":19,"unpackedSize":40851,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkAe/CRA9TVsSAnZWagAAqFEP/255pS4Rp5GpketnpqAz\narApkBfqiMb+IVGBIw5LKFs2C4CmeinoMpv8V5+jz8lghMD1jW7gswO4QaXD\nvqh84ft/AFezMxwvGXtAFkQ1yGtX4cBE5URWz91tEn1Wssk1zXx8yDq86Bzl\nnKI+U+U6ol7jYSR4cdfpc+wzgbxGtGBOjgac0kcj1Or7ESM8JRSeNUiBP6/G\nMshkaeV6PnxbqzfZoT2keFzpLbSL0wyPwPoN8jEKCqiY11ebTOBVyYvyV/OL\n/UEEBroKaVpf7EMIyTrZqLtxwX1hXAUZjXXWf5FEO+7JVvMeYRYCw68v6SYA\nB/kbqOYtnTIuGIH4mmcxu6RyUIOTpBXnFWQyuoC1meqUegrLoJpE1viahmo6\nWnT+Wjk5FEA1IJY/D2BmsJTRFtUM5lRYCAq1T0Yxj4w7lPafirzgs6GFWM3y\n4rOVgon5D2H+xv7Rimh5OpOmq8NuK6AbUC7mGTEdb2FvuMcS+W+L7ZJLKsbh\n+RO85cLvz0cHQZe1UPPLUHegwhtu4Q5OsFvAq90WtvsXDDDPNUtHJARsVgtk\nbWrdHju4m5VtsGKbTxBmDOqorw/gKAoQzgk6PK8VTNARfNLIOnM7VdpHHek6\nu2ca2eoBwBS/FrnY4l7Eozdojs7OXo7lwfFsbkdTbTvz5JZO9bmT7h3nwYNd\nbpaF\r\n=AtT1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCbGFgJPiNjQbOQiOnaNsW/TSLgkVenr2ubeYaLWIDSOwIgI4Eouo3PUTprU3+99vvZw+fhCMpqSDGpHD6XtPGUIbs="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.196b73d_1620051903512_0.7864256751117813"},"_hasShrinkwrap":false},"5.11.2":{"name":"@mentor-medier/article-body-block","version":"5.11.2","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"acb7bb159e0bef164bd1ab1d26cb68707968368d","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@5.11.2","_nodeVersion":"14.16.0","_npmVersion":"lerna/3.22.1/node@v14.16.0+x64 (darwin)","dist":{"integrity":"sha512-UhiWF8BcEAA/36jpLrpHtOtZYI6h15oocg5+y6By+mIWXzGwKECiG7the/ZcJPmR71QaNEuc8Z2WjA3JyGGX5Q==","shasum":"5b2e21f05fd291311d5fc9ab58ab12395def3428","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-5.11.2.tgz","fileCount":20,"unpackedSize":46315,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkBNECRA9TVsSAnZWagAAwZUP/0Z9o+EtCHVZFYsevx3u\n6ikfwL/4pvp1G1I7zZvhSBNNP+Tnw8iTRlPqQtFk3081Umvxj1A54IyFU5T0\naozpfo/uuNm0Aa0AHFUYWiZwEM7cv2okIyjCwEl7CPMoNdyjX8M3knPaReyK\nEO86ftKRKoP3PhYguxYkp2aXJ+WjwBya1Rq7zHPa1+/aP6R1ELpgcfB4tMT8\nYirniLsjyzOwa1STTi50vf4nif6qG6TM+IRheYp2UIvfb8/ry+DJIrp0PpYL\nAYRIKhy+8PP1ndTjHRdt3jt26lclp7so3FKPMNznr1uJuP3g6AO1W6fTyyal\n74IwQ6YoV5JBbPMVs+FgRp+DLh+5o5zMItc7cySFZ4msZtqtHgQhdtYKI+Y/\ngkERKRQYOolnDaaZsOnYYBtkxe24q4yqHQEbPXrBeFggWOdh0UpdP54lEdRc\nUwqnlq6/R/hYwYFhHuLOom0yxHPg7WUvOcqeHekrDlNOqT0F1GxHXSYMfvj3\n7NeHtnpOQsmHkAeXJN4M3Y46GHT3g0YI3tHOV4zVSnWDqmFEDb2DOvqR6OyA\n22HxfRqmIndpqUYBz012r+MCjsEfgvlyRSuSXQICYvNZeahMxAYccVyZB0Sh\nRfG7BdF3kn3HBkGFknv7n9iYf9he8LhFHtX9A2KbFomjI69bBqcoqydQv4KD\nW8wP\r\n=ZS3l\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIA8H0irXK1gaudn9PeBBlZrOIw0ODxsFLK38n1uSFemdAiBwRtbOlG1DWR8qB6JjrmrF+umgIm1gaP/xeBBuiNPfww=="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_5.11.2_1620054851819_0.8426584458370527"},"_hasShrinkwrap":false},"0.0.0-beta.c9cb280":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.c9cb280","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"c9cb28052e565009e2d0dc0ccd67420ea503822a","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.c9cb280","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-//r6KL9dN3Xol6nCUi0yl8aoIbk3KBiTrMEgKxVkDjjT3HK3pNI258xvPdVoH6nEko1vjqBImYAie4D/RkJg0g==","shasum":"2083cf177d013603923064f9e2e4f75f143ad0b0","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.c9cb280.tgz","fileCount":19,"unpackedSize":42128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkGP4CRA9TVsSAnZWagAAYN8P/1Mdfr0p5nP7ZWGEWuqF\npL3abvyA3icGh2y8TyeRfDk779ZitMKdCwplMU+o4hh4eRx7QSmlpwfPwuhn\n5AMah+pPiqf57M9uuZ7Rs6+Faq7sHdFYj/FurIJAU6jfMHG8DxKXdKNdyOwV\n9SeSU8Fuc2Wzn6mnTjffnfcop85wjtcXHmvlqtB9yvTFPhinDppvTuDvN/91\nCQO8LX7KXfNBAgKJxQHXoqrfMcVh8tnzIUXJ2dUFcsSJrFdoHd+x1ED5Ry+U\njCpOhUpkPt/m/2x5Nv/Ay+XuCvJKydZ2czdBgBNUbHGPeLMEDKbWPRHJE6Tu\nRDw5axPX4Jlm6EKqKpCWHB3mMl76xMsKf9XvUGEMCc73UPu5fj12WKlv5PM9\nUBCRvPtM7gUucn5Ke6IJadV8TtDw2bI3Pf3wQlDBfybOoWigW+VWJ+cJz1Zu\nci8dADiRj1tFm9oh9/HrkW+DqZj3u3ALNauYQktIQ823i/K+Rmf7obgRizoh\nCNqOlnLdoMAvNaAL+dSqRhCpN30sFnE3q+chuC2NvJQ/TjaBNGMEeGqjwp/w\n7sEbOeRnt+O0Z0t5XL/TDrX9QnGsH/pNHMdnp6cN9y9EqcwjOIQX9o7dt6QN\n9dbwGmAFCUwFXpnHpJGcTJh8byfSPR53P5p0rhF2m8Jis2bXn87Wa6cOG3VX\ncBw0\r\n=rGa5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQCGGRpaeepYgb9h9jN1Hcj4t4C2Em7hN2MibiwjSPcq1wIgUhE5Og5FFoq/pJOUOLsZiiyjgjqMgECpfGQAOucTAn8="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.c9cb280_1620075512136_0.8508607137756707"},"_hasShrinkwrap":false},"0.0.0-beta.10c101b":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.10c101b","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"10c101b54d6fd8d748a3ac68344c18e1529a78eb","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.10c101b","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-He3NfypKyUrA+HRT6QVGT+RAhY8VjWNqhzv65jfFFCfP6unB69cWfJl1uGaqRECJ+F4QL1pQY1YIZbHvaU8m0w==","shasum":"739bffc3969e50fa6627852b6f92945ddde8ec4e","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.10c101b.tgz","fileCount":19,"unpackedSize":42128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgklKICRA9TVsSAnZWagAAooIQAItbsXQTcBDdRn5i5uCD\nbtMTpdDPDm5BxJeOgtHDEdRDAKO9B+4h++ExRRuUhASBemGFuLJpwPiHLf/L\nr5ft9PSUAokvuyMQ2FKApqiLt0TBEq8Wvf95FrhbPwG0eXNhQhWiWBTifppR\nBa94lx7V/KBtjsMJjh4nDe8woNR6cr28/hiAiCJ1o+XbfcAWkvdwnN6242Jd\n2K7u2Glgot7UVkygjGloBdTwMfewsHFCuqS6d5I4x4+SZDPKwR5VqM1rJRLZ\nIxrmJh7wpn1PNFJE1y9i/0k7NYldriuJDdG1LWl1r+K8DuAhA4pGtjO56DIW\nrfPD40kFIuxt7iU9RCDCrFJjQb67OfErT+5ptNaATejs1CDezxQBcJPiMlP7\nXeCAY4dray12/R8+nmKIeJbWsJxJG2YIsnAVD80gr4Fghtl6BZLbIuj1mQMq\nBpx/ggY/XDibC0xswXlA7JSQPN0BgtyUXSBsAUYtR6uTtvbo7NVufILr499s\nmfgvRzz9Z7nMrRXY/wQ4CwjPpgpqdQbJ95S+ojXGyd2dpy6G8ucs65L6SFik\nHgPgbHiUn1BjeiQrQ4hI4AVrwb3QMXj+JQMp260zyH1YHH3XEBtjN59Acz8B\n+PR4qBF7VT3ZNIN4BWgMa4VZr2JIHHEpHH61HMS8TI1RUTSoMV44/wTlsV4D\nHo2m\r\n=/5Yp\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQD2Otma3hVYItorTe1KPDxSakzm8UGDzFG8SkwPaa4dAgIgTP8HAq7AetQKqqFzDlMRUYgQb3Zx8p92AoEVjdzSQ5Y="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.10c101b_1620202120092_0.5920199951787966"},"_hasShrinkwrap":false},"0.0.0-beta.d6cd4be":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.d6cd4be","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"d6cd4be4ac9312ae2708a22235cc21720dcf2dc9","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.d6cd4be","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-DVSAx193YHVk9VTscy55s8k3b6mEKu54yxB+4uyLCY48LNGepIH2AXTgxzONNF31t/O0mGtJSgwyUfMqunxxMQ==","shasum":"c26b88557183e45c310a9f7bf5207204367b9664","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.d6cd4be.tgz","fileCount":19,"unpackedSize":42128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkmHMCRA9TVsSAnZWagAAB1IP/iiALYd6JQMIO9OvHoKm\n/laiF2fX/SRNat96jGWwdMtjw0Wsf5SaYwQV4VJ/xHBN2g6yxDJ0mj1dc4nx\n7c7TPEXReZ0bjZhPKFqwpxeZWJ2SoQ+vEaMSUV3sdjpMNkKxhWUej6TlwJnY\nN8tWvbSWvhJhmDLI+Kcwg/NqrWqEaT5Tcq+QjBpq+uKV2QgV8IOCOfw2LDvq\nzJM5hK2iNFxMt2lXicYWS0olJ9k2rms7g36/2iCrQ4NswqaWVeTY89CKZKD/\nriIbDngaNqz11qlwM9Ytu1KpAQYqrNILy1r/6MbO4sGB0syhB3Ra9z6EaWdq\nYAqFtET1AAXmndjwnH2v+Xtx+RtyFAddH/GBaeoHQ7he1u6wmynv8BVg1OOr\nCEl6yHwcpNDri9z3n/qkusvGegjMAumQKllBcrStmQZEAF21Pch3JW/eHQWP\nCdQG+haQz21VI/61HSJTLP01gJPZ410Bon6HEkj7Anb9hxTn4ONec/seo0Ho\nKHLCO1HV68WiEediGKU3NXLxQ3uI07OW8gaYbF+elC9D3exOctjhoHf4/tNP\nuNis5nT5l/63Qib+nhZOP3mHWOrDW4HSKxoAliFMftBhgabgm2iHyG6Z3ICa\nr1x0NswH75qMsHZHQepGmIYYmkVJd8n1ZlcqGFfh5L7dHMXrcV4i5qc93ill\nF+Gk\r\n=+ARE\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDhq8HiBbZW27hmYenYtUBd26hnkbD4sarfTGg7G6gZeAiEAoc+IC9uDxQVBNgq+qn8T0tU5Nv5xY1cbCzD9kU7JifQ="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.d6cd4be_1620206028529_0.6898970753140867"},"_hasShrinkwrap":false},"0.0.0-beta.26a07bc":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.26a07bc","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"26a07bc0885a3c2db445ef14e12ee72d64f3feb8","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.26a07bc","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-4XfxCZhpvNj+7Z7beMNJm0SdTSvg3OevWf+vpJlDRe9aZxGn5+UAVLoT3qcocx0tuIr7TLCWGRQQFqyyRDCUqg==","shasum":"81e6b8377c65e83376676b27764e1dfd081958c7","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.26a07bc.tgz","fileCount":19,"unpackedSize":42128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgkmJiCRA9TVsSAnZWagAAi0QP/17tm7PlyTjLE5BUeq2z\nh6FnUbknWXts6S+8s0ZdnxDBnhU/2oZRd/fDtyvX5TUrCz/szQmot6/1hAX0\nx5WneIi7BhvzpVFogWNC10MsAuqXRDS1bdc5Od47M3lkEdQPw8b3KUWfn6Dx\nXZm/O0q4g8khX6+L0QextWDVYTMDka2l0r/H8zy4A6GxHG9/HmPkUaqKRQiE\nrJYXXXnkncrq+h4gMQeyFx1Tc6GPwpXbQD0bxDHt3GZPLCXMIzoE6gWbhLZV\nCAzYmjkUVGvgjTvBPTGspyJ1CWR9cuN1q7XWjWzE0BrxU84ZB2m6wtYchc3q\nDQjo7PjXjyZFKsN0jSxYCEq1dAXzaHFA6muH05UvLnDZvW+QqAoWpB6m2obR\nmeNn4MJCVFwu0JrBLd3Z6w3xG9ITJdg85S7ScuU9Rjg0U2jEo2+okG1jgGU6\n1FaWpHWlSImbUKXM00K3jVFlXO2Nxx6dYNfpabArZ3j3bhxSwiKind593+ns\nQC1SEOgirRSU25ikdLFlKh6WN3VktwjK9Qd/oc4kYyxq4BZDKtrmOXOCboVR\nwTu/pPBIONXcUMLQqSAUO3A3k7QH5sZbLwlWUKz52POeKcD2027pqc7L4hX+\n7TYbm1Qnrd7fLMS0Eh5QI4L/UY+rVwg9p+5QjHmgb7qZZPIu+ZIkJnC5WPLA\nkJSG\r\n=xzRV\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHfIdukVaFKGSdvd188obiv7jmI7OhcUYS3zS+lThBBvAiBpkSIb8ip4igM7p/96Zmg5CgmIGTkgWH+Y6BUd3mpQYA=="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.26a07bc_1620206178150_0.624538638704436"},"_hasShrinkwrap":false},"0.0.0-beta.a2f7906":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.a2f7906","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"a2f79063cf5f3041304a0bf9e62797cc3bb76cdd","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.a2f7906","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-pc/zH33gMlDpaZkQLK80CWwWmDzichAxEfkC3/tbumGbHfJkpQmbasHCSTTJZEu6RJV6KKpYpL4s74j7iNxcxA==","shasum":"4f2569b1d1a24729dcefda3a25b350b282cd0ade","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.a2f7906.tgz","fileCount":19,"unpackedSize":42128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJglVWICRA9TVsSAnZWagAA9nwP/1GO4guL/bXMKXTgLoUh\nJXLZ0jBLCpqWC3tqYfpyMhvMaOWgRpqZbWu0ISF4UdmbPA9zl/V8xyNlRRtP\numIs2Ma7dkpKkvbcmPvDA8m+hWf8HklbOoavxKSfbG9H5D8TdeHl+AMH96dm\njiVpFMW6jLVn2HoIXcXbU2i5taDT/2UcfhzzygqxE4LEzXfN5bfZr6RmTab0\nX7aUy5cnbR6e2eYapRbBXFiQT30vMsCem9AP1BAcPRJ9FkxqCYX9h1iCnfu9\nQKNeeafMvcRKSRmjvhntFwWEZM8+4Zola3NoNCuqi/DJCC6mMKpbm0WA9DMA\nvoDDo0m5hi9k1WoMq5EYKJnwOrQR2ZcTQz3PZu2oOyoH5RvbYtA7YCl2ln5M\n1IuhHY1dU1aMHWBj09bCXk4NNkc2NTPebl5NRT8NbImobfQKr7yGgQYN4udw\nx9KIMkgzk7ex+3IsJRbWoRAQxWSZia9vyw7RdLWCANLzAh8TsiS15qrpFoJd\nhqq0LpkUI/qGc8RmGG1oaHEKgzNRl5Wv+9HfByZY62TRmOmMdy4gXK10IYs3\n73uWZTGtCqIMTWiWzqkoakkOr/BatCGRt7bDFHe/dRTTDreLGPnp34t1uo4Z\na2U6JgmiS3i7ZbRvS1evsJHHWu5t7J6b6bn+SooixmTgB6hVD2DLgPTBu6CT\no/y5\r\n=u13L\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCIj5/j22YAWLtXI3YLb5aNdQZ6a+WdPnxV/ppXEisxSQIhAJ4p1r2yhDAEKCQ9QYf2bY12EPRfhVPzU821kVwX8Pl+"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.a2f7906_1620399496062_0.22615947029564287"},"_hasShrinkwrap":false},"5.11.3":{"name":"@mentor-medier/article-body-block","version":"5.11.3","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"2e03baf469291fb5d092a818b6b5e892f10fa603","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@5.11.3","_nodeVersion":"14.16.1","_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (darwin)","dist":{"integrity":"sha512-tzLDJPD3hDP8+H0ZS7KLkZn5R5p1ZMLIom1t+P+p+76LnD2r255X9AtjurrXWcyWm7Oiznf/qAb86wNYxPWWvQ==","shasum":"b1ed355e1f42ef861e023654ec66f9c110b381f2","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-5.11.3.tgz","fileCount":20,"unpackedSize":46926,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmji1CRA9TVsSAnZWagAAGWAP/Ahh7YTsHqnLgNpX+T6z\ny8iXnC6V1W5b296gB6gi3p3FGkZitm0IRoaT6r8wtj3iUvGWm5V8/V0tuPtd\nz5YRrRkHGqmb6rnGmYlcim7B0/FFxjEQaXQx97vsIArjuGCk+OVJI5pDJZAo\nGPU1BMb1YS80MKefByVvNtHWb8kjt+//A9qf0fmIpEMEfoLdkFmzyE90ppY8\nQWWmxxWugzdzDLvJaqYqkkRB4dPVSCU7eP3/iiI58DH0EETkqOhLB1CO+d9x\nnp+vbS1wvoAXbAFgiRbuEGjuWOlG2VVjAZqDLXw1BSjMJAlE5nCy5HIb2Hwv\nCrLmeGeflLMOfHX3h5TwW3eKgxy2b52F5vFsTjJR5UdGV5jrjnu5GV9h9fhC\ndYuXNc/o2GTbbwRBg9mM7kejjpKEzsz19dEfxy76ubhmPwNCZehAA8vvBu0C\nMyazTBlVEVb7nNU3QFO5WSaU6lV6y5QXT6T6yWWpi6Ar6O7iEKfyjY/5eRWu\nUc1PlTdDp9pIhZz7BMssynuRI5eeWhozj7UoynxgL0V657gKxQBJM/J8YV5I\nrNLTLV2OTJnPCiG2a3GMTUltwNoxfqqxguADWPDiwtFGRoyDlkwSNDg10wB4\nAjvBGRnQgAvs+F9TyA61j85T2PDZ2g2o5UOZfoOcNYNUIXtBanD7Ajf8g8hp\nwvY3\r\n=b7x1\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCICesLL6rloTo4O9G0Iu5s4I0uX7QMLgESp5EttVOkDHiAiEAsvVlPu6ihRP7jkkEusxhe8kmEWd2ts3QfN/OU9s7GqY="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_5.11.3_1620719797167_0.18676639589343913"},"_hasShrinkwrap":false},"0.0.0-beta.3012b7c":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.3012b7c","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"3012b7cad5382a946b7552def32e821488b62bc7","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.3012b7c","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-rJgxDw+B3vras4hzwsMi2O1FzWG7AfejTnhq9XHF8gjldJSEiNCEbygu1Rb9pugtMJjz9JdWDHLoNJE9mBM+OQ==","shasum":"51d8a355704749528be0b7a96ce2139d2f8e44ed","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.3012b7c.tgz","fileCount":19,"unpackedSize":42128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmoAoCRA9TVsSAnZWagAA7SYP/j2CfNTNQbeS3qKq89lT\ndY4wMMIEuDD92aJ/2GEqWSE/NruxA7PuoymFK0u5iAYabAbcArAyUhqtaI8v\ns9ChzyktIuKkn3wKDqI5tXUbjvppoQ8Erf+ukg8BFAnWuvE8eLK2phL5kFEv\nt73CkV+zQW55KyRmlz+4hz+ofu7XHBZErg47CtWxq6Z6CN1BgrfA/2gx7jSg\nFOOcy6nZHnN5BEN/Y54FK5rpcBCqFTz/nB2MO7qyCEt/0Fxd0wKaPl6hu6wt\n1kQD74tLQJ/tPsAgDd3TECSMEylRSZO41SqYtufb8h6KULasGMOhW9+O76fj\nmoBkKKoYfQ7LOCp/e0qnrfZ/OA/llWf2YpNWG961Y9lITfCJshQw988j2MVJ\n4798dY4EXkUyScLvKRgKHGeQabicOJt9SOOuriZmE0hXAXDH/LGV8j5mOOUY\n8LwjPMh9+1eMA/zv4XoBYV3GBn5LYO9Xvko2by5OtL4/bY76tdM8C3tzkoew\nW1YRwwLdqsVUrtFDYnWlae7rfPWsLUHp2kz5kI/vKlk/uRCA5y2kU0S3hLLd\nGSy4jRwWwxEdFI1EEmgpzTT8eC2x/O6+xfr8hIjLVaIa0kcQYHwDEZeoHN+c\nXn0W3HHkqNAA2Qx6JWQYD11xdHVgXo3XKkyxT29eG09+CBZf85g9/1ALMMm+\n46GP\r\n=fF26\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFamOUlQQrRFUezUy/HVlMfX1Pi5EKAxCHdQUHdGxCZ0AiEAvGjYSFLyokabklzLvCE9lecdZskaoX0oVHNuFzJ4+28="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.3012b7c_1620738088478_0.2640588989753361"},"_hasShrinkwrap":false},"0.0.0-beta.362b9c3":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.362b9c3","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"362b9c356e01ae63b6a3ae7011906d4ae32c69d9","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.362b9c3","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-SRobzDFqx2hgiORWil7iZNuYnAk8mmAOXdXZyAK5+MaZxKyvvZvPQdMRDCtidCSW1v6pivjKYrAM49nIXt6A/w==","shasum":"887e31c9c875caf6da278d5a540098a0bac9c262","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.362b9c3.tgz","fileCount":19,"unpackedSize":42128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgmrNgCRA9TVsSAnZWagAA988P/1gv2TvRnVt7Mh2ae2nK\nJC2ktio9GeZjYBuH3yMsIpGjlQeW02uyxyZHsPkZBw3denUZeskYi1KEoRQQ\nG1PGRO7MAUkk3E6voCwMzdCuI0F0vhxEER6hRoQubU6Dfq4F6uxQmQPmCGOt\nOaHKB4rL2S0a+hxIYcbtpDXCRITMLvZTKeQ9iPveszixbqHbf/qDHxaUS3ad\nRuIfTrOZpVottEEXPMAuraXIfqBXOnCQKvK9wKVTfYbEVMkXNC444ZWMKOHw\nxyQCC/zKkv5cpUWHeo55cFGcTmW1Dg+3ibc8YM4hJuAbP0LWlyBzdfBTSt73\n4CxAgsMHKm2JlAPSJFbZlJj/HvcEy1wPs9/tI0bLK57IOtE44yc9x+LechaC\nK/PmfN1gnnv0Uob8h0z9A2CQb69DsnrzGRN+sIvYFA0m1/Ro8OHx6YC8rkJJ\nU8Sv4YAL7Be/xe8ebqRIZMVLrNQ9UgOt0BKNrR1fCSJmPtq1d0nvIn9fUmPY\nxFxnjOGfROzrolYIRtnqLDAxDxoTxeIw+uGm7XCLE/GHFtTO0vLtb9RBBqhC\nYwBWlGpFtd4+lo/mjvRTnzxlWul0FRYehO2XsGEvTMPaI0k/QMqxuPr4W5eO\nOpvKDwGZq3nFoAbDWh/n7FpTAtV56h0QCDPezDyGW5Ou5+gl7GDUnX8SxiR0\nOwCK\r\n=kr/U\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDXSA9O/j7F7n/eeuD2/Q3Kp8OBI4ldNlKG1dBMvo+CcgIhAKTnrs3IbIjO6FfGxVN8A6ZE02dedcxsTqV2u6ulGxdg"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.362b9c3_1620751200179_0.9490710456584481"},"_hasShrinkwrap":false},"0.0.0-beta.2aab3f5":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.2aab3f5","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"2aab3f5986cc8fa116ee692de144b3218f9572dd","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.2aab3f5","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-C3ohNdQOmc3SfLscCNDeCTyfCkDJqTbeQS2T2vvmvbCuenj6x2yNl+vG4fGRAYYeo3+jkSjRHVoAiEwV4eYFNg==","shasum":"1064201b190b003ca6a2c28bf4f25b576cdf577e","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.2aab3f5.tgz","fileCount":19,"unpackedSize":42128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgm5GbCRA9TVsSAnZWagAAjawP/jdPkCJ2h3rcVh1KKdXd\nYIFQwxET5rxVWwU/Usoaank6qsR3bSTB6vJB1H4fPorlmgR0QNLOhNrqWmdU\nYDNca1t4XFBvgBYEG5LdRBo+yYGPDU4rn0RU3eES77w4cYGN96G08+UDxepA\ntaI+sgAB3AQyFNBkHsyMCj0Z6n46TCXJkWZZufg60s1Sx0yB+q44+4fnXGdY\nCR7CKCT8wIXiibFk1zVtZD3uMuhwIWdQikmIriiR0B6C9drTq2nYoK13usua\nIdhiS5C9baNBPleEZ30f/lrKAoBInbk0gjiKX+vCvwVa9TTPIH7T9XJmB2hV\nuYSnQP/HrnJxBeQ2464co2cTQKcONF0nvfDMuvGf46+HjoYyC/RcL60bcKrj\nU6lRe+eGRdVTio/lP5VjYZpMVTI+0FCfrjXPgonbMAGwvMTRJH1QwbvVGxCY\n8LvWWCEhSrLcg8IVeyO969z6Rx8O5uI28S7Sn54xdPr6dM49KtluW5z1C42K\n4SbN+/QAuFxXeNvb8RIMAIeniwae3V9sxlfl0vOiRmoMEmM/jPCohQyecOyV\nEFxXlg02hzlvHBKvLqjz9CUEZPCvXJOA5X8eokbl0kyGnlWhygl2WFtkp5ZY\netfjfTDlrJ9O9l2uft2FjF9Zl8Vqolm1WNldYGXB/tQr7a5zwmNt8sErWgVz\neULR\r\n=nElI\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCqEBE3isJb3cxC+tnEIfbb/Nny0j/Nx6lEgLzmBylJmgIhAJbUjrbPPPUClyX05NgZMFREIC/mlv8mHF9ttYbCRlkp"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.2aab3f5_1620808091101_0.22410167749434495"},"_hasShrinkwrap":false},"0.0.0-beta.7455c82":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.7455c82","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"canary","@wpmedia/news-theme-css":"stable","@wpmedia/video-player-block":"canary","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0"},"gitHead":"7455c821ec4cba28c4f58f56c7eeb948856b1034","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.7455c82","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-fYKspKL4VaFu/c2gfKFkEVi3yWuceSLzLbBsYuqJ2ph7GAx7TvdlgqQOu8fGO/D+rF29JLCLwLC0BoN2BOV7dg==","shasum":"acb4b163a2b1aa56d85044626e85b9d004f57f07","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.7455c82.tgz","fileCount":19,"unpackedSize":42128,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJgpqgWCRA9TVsSAnZWagAAFrIP/jf8HNgILdESZ++F9o7s\nj7mf9ZlxQuBcxqwRVfGHb3DBvSC/WauZVVhLSdvXcDIZPi+Bxx9yA2u+NWxt\nb6qdR26AS5XP86tgmTrnvkeu3NQyPeCgIXNZYGhwFjGsqKBob3zsbJ8E6VRn\nF+WEygF8x62GoBh6439GnedcARIRejke3NyciczZvFp7/wHLOP2++aG339al\n0sEaunxYCggavmZCarB7ZhRMi5crNzsg6+Cy8XmkpH9QUuBHrR9kjWHmcqxS\nYLVq4o+Frrexvx60tzqy7pLlNMp/ajJQfICPiqBAuYUCrwosZ/SMXTu5XiQt\n1xNJFydmGxG1q1AEEgfr6VzDWpCW8vK4Hmj3Fcl+0ffKBKQElYG9P6QibTG2\nGHskQlnSXoKzxxWz0LkJAZXKIdrkFO1KsMs75CLRAVv5V1/O6cgibEWT0U42\nyw2Iyk4VYrejfVvtHLiCWECJzdE1Uv1L8LCp6j2feT71gH/tFfkKSvF3EQHp\naFtkFH223ZDeFteVfGEC3HIyvTRsgAVboB0G4VURV//9sBNCDIzjvYLxyde5\nFfWdYvdZJE8KW1e7xNZZM4szxnvbrsJ34W1ZGqulS93R1KqJ9gQvoP13zZq0\njE/N44hWPMTpX/Ad8LuYb749Ylv8nZ3zcc4FAJBD16KfizZ+ij4RDjJX2D0D\nQCQW\r\n=rPWw\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIDFhv5lT+nkhtKTBFnH47mVhxLv+EAthyPc24UanDkqaAiEAiRET1trU54qKNmfE+if6bpkEY61ntCA4FZtz3eaNYmY="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.7455c82_1621534742178_0.7066413331889774"},"_hasShrinkwrap":false},"0.0.0-beta.0dee386.20210628085431":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.0dee386.20210628085431","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"*","@wpmedia/news-theme-css":"*","@wpmedia/video-player-block":"*","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0","sanitize-html":"^1.18.2"},"gitHead":"0dee3864e95aff5cf6b321a0779e318ed37079fa","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.0dee386.20210628085431","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-IIfT4+jrxV1+3rPA2UON08ejEA9vHwNTtnLQtGUVcVARHjZ/4fEO4B8g7qjT2bscoeVR2aYRArvKuBc88/Uk+w==","shasum":"ac904098c620a1676466d09316af56d28abb6a73","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.0dee386.20210628085431.tgz","fileCount":18,"unpackedSize":41710,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg2Y5ZCRA9TVsSAnZWagAAYnEP/jF9xBAugY5gPnU1hyhg\nCb4bGKYxmq1+3BiDUbzZPfeIM0ay71YN5NsIrtmHQXtvGJkIM10AeQHWvUHg\nuIAFgryLecWWjsBP4rTLU1OUr4zt/f4KJUAtHvEyEu92Rh9olc/Mj/P6Y3ZF\nNK0w3D++TaTV+48DAmp9aBsPLrjXPs602iVhFGbitNO+W2149A5lLGPcfbod\n3uJpT1OAOYzfhAlWZHRCoiMrNysvzHq90CHaWzN+KbMqc/aS6dRHdcPCTHq3\nqUt2IK6rgk51VFejOx+JOFdF0qeHSY/b2ueJOuwzLzX+KVhZTA43+s18sNbx\n8zz4kGCap3Uk0YqZqcvcXoG81tu6TpVFnvtUOaOvB09GTIE8yV1JkmWon15t\nHF4zt46agwj0i+YEzHI2AFGJtssqZ8X5hrX536ZQ5KKh9d+CuZSQLxM2OxR4\nib9dv2PtlgdwhIVElIi8TLHms4/bhW+Sn86osgCIIMba8mZ5zd3ta/p2SM74\nnHDMGBGnvcZJtAsFKIdtUI68G380scV4mwBlm0zgn56C3FpjIyOadtT+kn8v\n3ACiC4fy2DyCK6uBLzPXeq8Uj98ziKlHwd8oDe8UcbPKdnNt/mep2ovTq+E8\n+3d2388ef5Q/ssgl8HombQrIW1TECQcPlwYC/P8N15Nm+eIw348G+vavY/yY\n4sUG\r\n=9/EB\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEQCIHfvSbILDq7/XIUWgAX1EqWZMDkD2nuyzMSXMPqriX1qAiATZKBDbdMySr9OiGEipjoJflRstliDwRC4g523e51pqA=="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.0dee386.20210628085431_1624870489051_0.14608348194321952"},"_hasShrinkwrap":false},"0.0.0-beta.82a454f.20210702074328":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.82a454f.20210702074328","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"*","@wpmedia/news-theme-css":"*","@wpmedia/video-player-block":"*","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0","sanitize-html":"^1.18.2"},"gitHead":"82a454f4bc91210269e52383f7c039013b38d534","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.82a454f.20210702074328","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-JkVT/bGM7setkDuULhY5/DWlOZy9Rc15vpAARlHSgumNLLySSKfl9MVT1DddkBH+Wa5k2Ho0gxCXHgYkyIfOEw==","shasum":"75a11a7951f84b10bca06f28fcf6d87e22a94cd1","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.82a454f.20210702074328.tgz","fileCount":18,"unpackedSize":41710,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg3sO2CRA9TVsSAnZWagAAw5gP/0/JsibWfuDsz3W32eUM\neObLkzssYJoKoSNjleVyTKXDDzr9YZ4oP3hGvaHkZ56wAvrP4kvS19YD94U1\nASnxv94uSC1Yx/o3T+Jt5RmMS8KOb4TihgfbPS08dWcUOI3R9n1HcGu/Zvvk\n97Ojbk61mqXppWVFjjJg9QRUunoNXizwe6Nv51VkCofh1yod5l+2DEZFh358\nA2cFeei/m70wRCfULSM5VaWOMZNVU2Zp/WKMzG3mTm3BUgwvM62gVUmA0yWH\nDtSPBfSaZkH2lD17CQo0rpvkrpxK1aBqWoDBhjYucloUSP25OqPjti0jq2Fi\nznic0IPc87vE7Kf2zymljr++FaksauffLIXizUBWoJUwDnZB0ro7N/ltTb/H\nQEJfi39sXIE3yqyPXd0qeYkGHPX7XKq52EdJ3P197no4pgJSJJ8gjZSJQ7bc\nFZepp6nSyu0qlWmKNq0sByHztORirqpZ14MSMwfNbvhRLIPuHytk4q5ehy4s\n2zQ4+LqqhBdPaLcI8z6+fknydlrQ7kCI0K6MdasWw/w2LQoVcl3ug5H6rgeW\np8jPiR23wh6eN8/OtCcoHEuaQCoGBjUGGT4bmwdT3EVRJTNREN4hRd5NpdDb\nGV5AaCGGx5N3oYSYRHc+xWja0Ix0OkKD0ogG2SaBmQz841HI/JGWpVTiFJOq\nGNvJ\r\n=ArmN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDz/mpQHxi8JW1IFxkH8WKppvkVQ6BTS07QwOMtazRCrQIhAM2NISLNCnLFfPpnrqCU0SsNzqUhWsB+4cedFd4q7DNv"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.82a454f.20210702074328_1625211830115_0.558403300347974"},"_hasShrinkwrap":false},"5.13.2":{"name":"@mentor-medier/article-body-block","version":"5.13.2","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"*","@wpmedia/news-theme-css":"*","@wpmedia/video-player-block":"*","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0","sanitize-html":"^1.18.2"},"gitHead":"f22691e9c9637fcdb26f4c6f38af678e76f76bac","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@5.13.2","_nodeVersion":"14.16.1","_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (darwin)","dist":{"integrity":"sha512-APOqfpal30HkgHC/Im5JIW4JhK/SnmBNPe9nB1CpihJb2KL6r1H7CyBn4odC0dLMHXOizQbi0CLkS1BhNGSFuw==","shasum":"8ed2e7761601983c0d08e84807be71499c1e274b","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-5.13.2.tgz","fileCount":19,"unpackedSize":46836,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4vQbCRA9TVsSAnZWagAACncP/A9xfc6aqQ866ia6hVKw\nzwe95LAXvFPNMGTHz+o0niHkDca4GOHs8MU+woYBHv93bCZ2nCTJqXCJbVLh\nF0WVtS7io0VPsEgnNUabVPAiNoYOpYwL8yxmJM2CC8ektSgzNV2Shx2k9qkN\n63Crq/Dx9AZz+5pjUf+vXMX61qrMZ94J9Tio2hPmCPmttFselK1FWRAuSyb3\na51akZJ2rZ0Myd2dBKf92a9u/fGP4RiGc3AYDG8utm745AvdEzjRB8nd3pKS\n4oKziwdjx8lN4oak7trj6xMMFg1N0TbOHSVx+rQlFI9lt5qDBlzNOURsYiYw\ncHVORPqkK27V+mVAW8Ac45W3FrSPhgg6DkGaymIMxV5/s3TIoOcCclkTCJqK\nFBYRPYTAhLLBTwCzSBTZca3iCeDkWqHvL85AxClBZ5qwJHpmnK//3s4ti1iJ\nuYATamRB33xE2IdNB63fV9oqkeR20mOYhtTC1S80WfzLroEaZ//iBlOG2eoH\n5+seNg9vCKsr9t4G0FCgQSZ21pvVjgDsgN77ajWBC6k1fo8QbsePyN6IPA6s\n2VPVc+tT64O4Pfz+oVVNvrbLHCdG6OS+OwDRSLBRIw5sZ6YGOiZW0f0Y35ap\nkF+GUB0no191s8otgUwE+ZAqxmQeLb284s+nYEk7j9E01nykI+/+0b6lBUJ6\nbH2m\r\n=0WQ5\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDq+oLxAR0wkkGTBClepOsQ69dSFHZAP1FfsXwrpDeFWgIgM+ywdCPnhylF2CprDoKVwQJyv92GuOiuDnU5yJk2+f0="}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_5.13.2_1625486362913_0.563230443815699"},"_hasShrinkwrap":false},"5.13.3":{"name":"@mentor-medier/article-body-block","version":"5.13.3","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"*","@wpmedia/news-theme-css":"*","@wpmedia/video-player-block":"*","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0","sanitize-html":"^1.18.2"},"gitHead":"9eef5e1b167f4668070ad0876bdc6a2db7bf5cfe","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@5.13.3","_nodeVersion":"14.16.1","_npmVersion":"lerna/3.22.1/node@v14.16.1+x64 (darwin)","dist":{"integrity":"sha512-wq/FQGQN311mIjj8rcpx3dHzTnjNRQIwJ3uiAFQFqZiWY1qKPESnfr57D0VPBLJtchLicl4AQqvaRYih5/8O6w==","shasum":"5475ec966985f2721b5d9727f0a84408ec68c3e8","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-5.13.3.tgz","fileCount":19,"unpackedSize":46836,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4xCqCRA9TVsSAnZWagAAncgP/AxmTclPxgXmtySCvvwS\neMjnbUFpCBPrkBBFGfEQYCVghMznsuwdh88VnK7ro0dZ2YFzTVRDH2l2UkER\nzYKRdyhsnw7aS05LQkFPqL28VDgQKXPhYgVsocqsx77TCROdvfJONrUtwaV+\nM+5uLFd5YfPYeRdXNMszpZCXUxTFBgbHYQBSU3u84Ohg8hSs+Qz89gysW4MO\nIXkUSZWIBab8WUeMklrsepDH1LIjIA519m/fLzud/RUm00FbT2n/xon2Vqew\nCuQnW0WZX8Yf/JCbQlNnTQ0QmUJmEu1/ynDi2e6e2emnSdyjm0oSvI0kjGZJ\nEPLbN2oQlK9cIzDPqsFqEqSx7IrhH96BoPQ5dsOEs1d/0V4sYtkrj4VXl6sX\nGj58nXwqR7BPQ/6qDqSBvAiDq6pRkNDmjcu7XvcAWoihRdZQlzr/xBG1z45Z\n2WIxv6B1K6W+aSfpVSdjhWlUUE6kKdHrCVSyTDjAjfxCnmmTix5BBfsy/+Na\ndUTNsGjqlkkovuTlXZH0P7xmM98AVGjb0I8AoN/zsUml7ia5UgHfAI2t7QTJ\no0NE5mDkY4kdFzU5xyHm/y2oUM6krsISUxPdT86D7TfaNld3esmrOokBuDU8\n4Ien2kc+G4HCdC+Uy3mbuiAx0dsxzKbg7hGoMgArGcdOoh0pu2dkg1O4hpd1\n7ZJ9\r\n=tObN\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCA0bT0WVLO/6viCGPyb1xJzZY+uSWa5Oz4TTbTSyTnbgIhAMiqJMQB/Ba5v9N5K4ueSMRwsQH4yOjbbOQ5HaMUT9wR"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_5.13.3_1625493674532_0.4213741743873338"},"_hasShrinkwrap":false},"0.0.0-beta.0be28ab.20210705141632":{"name":"@mentor-medier/article-body-block","version":"0.0.0-beta.0be28ab.20210705141632","description":"Fusion News Theme article body block","author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","license":"CC-BY-NC-ND-4.0","main":"index.js","publishConfig":{"registry":"https://registry.npmjs.org/","access":"public"},"repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"scripts":{"test":"echo \"Error: run tests from root\" && exit 1","lint":"eslint --ext js --ext jsx features"},"peerDependencies":{"@wpmedia/engine-theme-sdk":"*","@wpmedia/news-theme-css":"*","@wpmedia/video-player-block":"*","styled-components":"^4.4.0"},"dependencies":{"react-oembed-container":"^1.0.0","sanitize-html":"^1.18.2"},"gitHead":"0be28abdc5c05448a32570aa22f3481f22333f30","readme":"# `@wpmedia/article-body-block`\n_Fusion News Theme article-body block_\n\n// TODO: add badge for passing/failing tests\n\n## Acceptance Criteria\n- Add AC relevant to the block\n\n## Props\n| **Prop** | **Required** | **Type** | **Description** |\n|---|---|---|---|\n| **required prop** | yes | | |\n| **optional prop** | no | | |\n\n### ANS Schema\n\n## ANS fields\n- Add all ANS fields used in the block\n\n## Internationalization fields\n- Add all internationalization fields used in the block\n\n| Phrase key | Default (English) |\n|---|---|\n|`global.gallery-expand-button`|`Expand`|\n|`global.gallery-autoplay-button`|`%{current} of %{total}`|\n|`global.gallery-pause-autoplay-button`|`Autoplay`|\n|`global.gallery-page-count-text`|`Pause autoplay`|\n\n## Events\nBlocks can emit events. The following is a list of events that are emitted by this block.\n\n| **Event Name** | **Description** |\n|---|---|\n| **eventName** | Describe the event |\n\n### Event Listening\nInclude block specific instructions for event listening.\n\nOR\n\nThis block does not emit any events.\n\n## Additional Considerations\n\n\n### ANS fields\n- `content_elements`\n- `content_elements[x].type` Check how many paragraphs included\n- `content_elements[x].content` Creates article body with included content\n\n```js\n{\n\n  content_elements: [\n    {\n      type: 'text',\n      _id: \"123\",\n      type: \"text\",\n      content: \"<h1>this is my first paragraph</h1>\"\n    },\n    {\n      type: 'not text'\n    }\n  ]\n}\n```\n\n\n\n### Example ANS Schema\n\n```json\n{\n  \"_id\": \"unique ANS id\",\n  \"type\": \"story\",\n  \"version\": \"0.10.1\",\n  \"created_date\": \"2015-06-24T09:50:50.52Z\",\n  \"last_updated_date\": \"2015-06-24T09:50:50.52Z\",\n  \"credits\": {\n    \"by\": [\n      {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"author\",\n          \"service\": \"http://www.credits.com/api\",\n          \"provider\": \"http://www.credits.com/api\",\n          \"id\": \"00001\"\n        }\n      }\n    ],\n    \"additional reporting by\": [\n      {\n        \"type\": \"author\",\n        \"version\": \"0.10.1\",\n        \"name\": \"Greg Engel\",\n        \"byline\": \"Greggo\"\n      }\n    ]\n  },\n\n  \"language\": \"en\",\n\n  \"location\": \"Washington, D.C.\",\n\n  \"geo\": {\n    \"latitude\": 38.9047,\n    \"longitude\": -77.0164\n  },\n\n  \"address\": {\n    \"street_address\": \"1600 Pennsylvania Ave\",\n    \"extended_address\": \"West Wing\",\n    \"locality\": \"Washington\",\n    \"region\": \"D.C.\",\n    \"postal_code\": \"20002\",\n    \"country_name\": \"USA\"\n  },\n\n  \"copyright\": \"(c) 2015 The Washington Post, Inc.\",\n\n  \"canonical_url\": \"http://www.washingtonpost.com/local/anesthesiologist-trashes-sedated-patient-jury-orders-her-to-pay-500000/2015/06/23/cae05c00-18f3-11e5-ab92-c75ae6ab94b5_story.html\",\n\n  \"short_url\": \"http://wapo.st/1Crp6bY\",\n\n  \"headlines\": {\n    \"basic\": \"The basic headline for this story\",\n    \"twitter\": \"Twitter headline!\"\n  },\n\n  \"description\": {\n    \"basic\": \"A Vienna man went in for a colonoscopy and intended to record his doctor\"\n  },\n\n  \"related_content\": {\n    \"basic\": [\n      {\n        \"_id\": \"some other unique ANS id\",\n        \"type\": \"story\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"1\",\n          \"type\": \"image\",\n          \"service\": \"\",\n          \"provider\": \"\"\n        }\n      }\n    ]\n  },\n\n  \"promo_items\": {\n    \"basic\": {\n      \"_id\": \"unique ANS id\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\",\n            \"type\": \"author\",\n            \"version\": \"0.10.1\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    \"second\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"type\": \"image\",\n        \"id\": \"1\",\n        \"service\": \"\",\n        \"provider\": \"\"\n      }\n    }\n  },\n\n  \"taxonomy\": {\n    \"keywords\": [\n      {\n        \"keyword\": \"Anesthesiologist\",\n        \"score\": 0.77,\n        \"frequency\": 2\n      }\n    ],\n    \"primary_site\": {\n      \"type\": \"reference\",\n      \"referent\": {\n        \"id\": \"news\",\n        \"provider\": \"https://sites.arcpublishing.com/api\",\n        \"type\": \"site\"\n      }\n    },\n    \"sites\": [\n      {\n        \"type\": \"site\",\n        \"name\": \"Cool Site\",\n        \"version\": \"0.10.1\"\n      },\n      {\n        \"type\": \"reference\",\n        \"referent\": {\n          \"id\": \"78\",\n          \"provider\": \"https://sites.arcpublishing.com/api\",\n          \"type\": \"site\"\n        }\n      }\n    ]\n  },\n\n  \"publish_date\": \"2015-06-24T09:49:00.10Z\",\n\n  \"status\": \"published\",\n\n  \"display_date\": \"2015-06-25T09:50:50.52Z\",\n\n  \"editor_note\": \"This URL earlier linked to a post that we’ve unpublished due to its flawed premise.\",\n  \n  \"content_elements\": [\n    {\n      \"_id\": \"123\",\n      \"type\": \"text\",\n      \"content\": \"<h1>this is my first paragraph</h1>\"\n\n    },\n    {\n      \"_id\": \"456\",\n      \"type\": \"text\",\n\n      \"content\": \"<h2>this is my second paragraph</h2>\"\n    },\n    {\n      \"_id\": \"789\",\n      \"type\": \"image\",\n      \"version\": \"0.10.1\",\n\n      \"created_date\": \"2015-06-25T09:50:50.52Z\",\n      \"credits\": {\n        \"by\": [\n          {\n            \"type\": \"author\",\n            \"version\": \"0.10.1\",\n            \"name\": \"Ansel Adams\",\n            \"byline\": \"Ansel Adams\"\n          }\n        ]\n      },\n      \"url\": \"https://tinyurl.com/mqyonhb\",\n      \"caption\": \"Never gonna give you up\",\n      \"subtitle\": \"Never gonna let you down\",\n      \"width\": 800,\n      \"height\": 640\n    },\n    {\n      \"_id\": \"49876543210\",\n      \"type\": \"list\",\n      \"list_type\": \"unordered\",\n\n      \"items\": [\n        {\n          \"_id\" : \"t1\",\n          \"type\" : \"text\",\n          \"content\" : \"Foo\"\n\n        },\n        {\n          \"_id\" : \"t2\",\n          \"type\": \"text\",\n\n          \"content\" : \"Bar\"\n        },\n        {\n          \"_id\" : \"l2\",\n          \"type\": \"list\",\n\n          \"list_type\": \"ordered\",\n          \"items\" : [\n            {\n              \"_id\": \"t4\",\n              \"type\": \"text\",\n\n              \"content\" : \"Hi\"\n            },\n            {\n              \"_id\": \"t5\",\n              \"type\": \"text\",\n\n              \"content\" : \"Mom\"\n            }\n          ]\n        }\n      ]\n    },\n    {\n      \"_id\": \"549876543210\",\n      \"type\": \"blockquote\",\n      \"content\": \"<i>Here's my html</i>\"\n\n    },\n    {\n      \"_id\": \"649876543210\",\n      \"type\": \"raw_html\",\n      \"content\": \"<iframe src=\\\"http://www.google.com\\\"></iframe>\",\n      \"channels\": [\"web\"]\n    },\n    {\n        \"type\": \"reference\",\n\n        \"referent\": {\n          \"type\": \"oembed\",\n          \"provider\": \"https://api.twitter.com/1.1/statuses/oembed.json\",\n          \"id\": \"755767310309265408\"\n        }\n      }\n\n\n  ]\n}\n```\n\n## Event Listening\nWhen the content of an article-body contains a gallery component, the Gallery will emit events for when the next or previous image is viewed. \nThese events are named `galleryImageNext` and `galleryImagePrevious` respectively.  \n<br /><br />\nIf you want to listen to these events, the first thing is to import the EventEmitter object \ninto your code:<br /><br />\n`import { EventEmitter } from '@wpmedia/engine-theme-sdk'`\n<br /><br />\nThen create a callback function such as:\n<br /><br />\n`const myGalleryImageNext = (event) => {console.log('Here is the event: ', event);}`<br />\n`const myGalleryImagePrevious = (event) => {console.log('Here is the event: ', event);}`\n<br /><br />\nThen use you use your callback in subscribing to the event:\n<br /><br />\n`EventEmitter.subscribe('galleryImageNext', (event) => myGalleryImageNext(event));`\n`EventEmitter.subscribe('galleryImagePrevious', (event) => myGalleryImagePrevious(event));`\n<br /><br />\nThe event object for these events will contain the following information:\n<br /><br />\n**eventName (String):** The event name fired.  In this case could be either `galleryImageNext` or `galleryImagePrevious`.<br />\n**ansGalleryId (String):** The id of the gallery.<br />\n**ansGalleryHeadline (String):** The headline for the gallery.<br />\n**ansImageId (String):** The id for the current image.<br />\n**caption (String):** The caption for the current image.<br />\n**orderPosition (Number):** The position in the carousel for the current image.<br />\n**totalImages (Number):** Total number of images in the carousel.<br />\n**autoplay (boolean):** whether or not the event triggered during autoplay. Value is either `true` or `false`.<br />\n\n","readmeFilename":"README.md","bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"_id":"@mentor-medier/article-body-block@0.0.0-beta.0be28ab.20210705141632","_nodeVersion":"12.22.1","_npmVersion":"lerna/3.22.1/node@v12.22.1+x64 (linux)","dist":{"integrity":"sha512-9L3Wy0GE209sq1Zp6H0jFYTTi6jacBrPebUuddct9+CJLpksQ59f69gDVGfIS1j307EaQVa4WBiEGcLIuVPcOQ==","shasum":"a18b884bd5b4e427f21bb09ad523e187bdcd6d02","tarball":"https://registry.npmjs.org/@mentor-medier/article-body-block/-/article-body-block-0.0.0-beta.0be28ab.20210705141632.tgz","fileCount":18,"unpackedSize":41710,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJg4xRUCRA9TVsSAnZWagAAiN4P/38/k3ULCKzu8B6WIJ/T\nU9CP9GpYn4WQ3x4PWeivJjfc5OOtbVaSIp5HUP28+XbRx6btGa3r1A+8rIiI\nBCoGiQHP4onoQkT2o4Oj3cTMCfb1Fk8XXjfpHJ9lJMKwllUHiSpn64X7kYCy\nJjvM2WRDCYzCkZctdi0eXzr9RZlKBqjXqVAsIm4gqNt4w60zLXVmLJTCOk0l\nWi8E65cOH4miyG79pkx6hrirzTC9U4HpU5RH0jD65qWTtjslU6AwuX/it3Ka\nPgi/VTgTvzupP5yVgyhWBEtbVWbpHCJRXiv5be2VuggKvkPRalpE8Bh3Jk3f\n9ymaoCKmsTIMZ+eC74jndcHcKHN3kI6msyEmIMvQX6YFQEyCwQ7E6KgzQlKd\njC7a45/NpsRlD/+QBp+6ZztHUm5y82jWjuwpxuSTa4Kd5K4z3tVToSvl7rmj\nofDBUoe0oeqq8ni1ajB1YyOjtTia2F1lFw/Ra92+ucjuhdOMehxJ62omL5fW\nuj/EmUAdyFppN20yn4geEzdhjvLa3wG49Q9eU6U4prJHgqH56Lr0B0ZU/9+m\nZQJTxOG8c6eBLPCYbJmrOjNDlBywVu3X2+TLfI+MPLNLK2ToYRaSXP/zYjr0\nCi03JkmOa1cCmJn7bqsebU5PZiTZRESae7SfAm5H/NR7AwXwKolmJvTMUU2W\nYy4z\r\n=NcSz\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQDLFTj89rQe6nwVe4rlChOIqWygEynzSrt9iqZ9XzEhiAIhAM7kk6OxLIGTqo+osdAKCNgoobRmm3MLXeFxIwI5C5E4"}]},"_npmUser":{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"},"directories":{},"maintainers":[{"name":"mentor-devops","email":"christoffer.vig+123@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/article-body-block_0.0.0-beta.0be28ab.20210705141632_1625494611644_0.2749699423901206"},"_hasShrinkwrap":false}},"time":{"created":"2021-01-14T13:26:06.853Z","5.9.15":"2021-01-14T13:26:07.212Z","modified":"2024-02-19T11:39:04.295Z","0.0.0-canary.cc9c836f":"2021-01-15T10:37:18.528Z","0.0.0-canary.1b51d14":"2021-01-29T09:21:20.458Z","0.0.0-canary.e7e4f64":"2021-01-29T09:28:17.640Z","0.0.0-beta.078772c":"2021-01-29T10:45:34.513Z","0.0.0-canary.078772c":"2021-01-29T11:00:47.525Z","0.0.0-canary.024ff7e":"2021-01-29T11:57:13.063Z","0.0.0-canary.2aa4bd9":"2021-02-01T12:36:34.910Z","0.0.0-canary.fe8fb7a":"2021-02-01T15:57:14.845Z","0.0.0-canary.46b66ee":"2021-02-04T13:03:18.414Z","0.0.0-canary.46b66ee3":"2021-02-11T08:17:39.052Z","0.0.0-canary.95ff3f78":"2021-02-11T10:18:15.694Z","0.0.0-canary.51aee2a":"2021-02-11T13:39:17.073Z","0.0.0-canary.357b239":"2021-02-11T13:56:33.530Z","0.0.0-canary.ec2e143":"2021-02-11T14:11:32.211Z","0.0.0-canary.ec2e143c":"2021-02-11T14:20:39.853Z","0.0.0-canary.a096a2a1":"2021-02-11T15:50:26.735Z","0.0.0-canary.6cd5c7d":"2021-02-11T19:01:21.711Z","0.0.0-canary.b3b3816":"2021-02-11T19:14:50.666Z","0.0.0-beta.40eb7cb":"2021-03-02T07:32:06.641Z","0.0.0-beta.40eb7cb7":"2021-03-02T07:50:21.059Z","0.0.0-beta.6749b76":"2021-03-02T08:04:22.095Z","0.0.0-beta.ca076a3":"2021-03-02T08:17:39.415Z","0.0.0-beta.1d45441":"2021-03-02T09:02:20.018Z","0.0.0-beta.f00b1dd4":"2021-03-04T18:53:58.690Z","0.0.0-beta.57bd532":"2021-03-04T19:11:30.063Z","0.0.0-beta.57bd5321":"2021-03-04T19:24:53.735Z","0.0.0-beta.9d2b94e":"2021-03-04T21:00:51.065Z","0.0.0-beta.9a4082d":"2021-03-04T21:09:24.281Z","0.0.0-beta.9a4082d7":"2021-03-04T21:34:24.687Z","0.0.0-beta.6a5c821":"2021-03-05T08:29:56.398Z","0.0.0-beta.55d3437":"2021-03-09T13:59:47.275Z","5.10.0":"2021-03-09T14:03:05.850Z","0.0.0-beta.a1e15e2":"2021-03-09T14:07:41.398Z","0.0.0-beta.1f7c3a6":"2021-03-09T14:20:51.209Z","0.0.0-beta.2f66b88":"2021-03-10T20:35:43.871Z","0.0.0-beta.23ddae7":"2021-03-10T20:53:10.359Z","5.10.2":"2021-03-10T21:08:35.314Z","0.0.0-beta.ef20da3":"2021-03-11T20:07:05.841Z","0.0.0-beta.9b96a85":"2021-03-12T08:43:59.641Z","0.0.0-beta.d13eafa":"2021-03-12T12:32:59.986Z","0.0.0-beta.e3f417a":"2021-03-12T12:33:29.276Z","0.0.0-beta.c29a52c":"2021-03-12T15:54:11.837Z","0.0.0-beta.13c0a0f":"2021-03-12T16:21:23.799Z","0.0.0-beta.abd15de":"2021-03-12T16:32:28.540Z","5.10.4":"2021-03-24T13:32:47.845Z","0.0.0-beta.5875f8e":"2021-04-01T09:41:56.328Z","0.0.0-beta.04cd935":"2021-04-01T10:44:00.568Z","0.0.0-beta.196b73d":"2021-05-03T14:25:03.643Z","5.11.2":"2021-05-03T15:14:12.021Z","0.0.0-beta.c9cb280":"2021-05-03T20:58:32.251Z","0.0.0-beta.10c101b":"2021-05-05T08:08:40.246Z","0.0.0-beta.d6cd4be":"2021-05-05T09:13:48.677Z","0.0.0-beta.26a07bc":"2021-05-05T09:16:18.308Z","0.0.0-beta.a2f7906":"2021-05-07T14:58:16.206Z","5.11.3":"2021-05-11T07:56:37.290Z","0.0.0-beta.3012b7c":"2021-05-11T13:01:28.616Z","0.0.0-beta.362b9c3":"2021-05-11T16:40:00.456Z","0.0.0-beta.2aab3f5":"2021-05-12T08:28:11.221Z","0.0.0-beta.7455c82":"2021-05-20T18:19:02.272Z","0.0.0-beta.0dee386.20210628085431":"2021-06-28T08:54:49.210Z","0.0.0-beta.82a454f.20210702074328":"2021-07-02T07:43:50.233Z","5.13.2":"2021-07-05T11:59:23.033Z","5.13.3":"2021-07-05T14:01:14.657Z","0.0.0-beta.0be28ab.20210705141632":"2021-07-05T14:16:51.816Z"},"maintainers":[{"email":"bjarne.overli@mentormedier.no","name":"mm-bjarneo"},{"email":"christoffer.vig+123@gmail.com","name":"mentor-devops"}],"description":"Fusion News Theme article body block","homepage":"https://github.com/mentor-medier/fusion-news-theme-blocks","repository":{"type":"git","url":"git+ssh://git@github.com/mentor-medier/fusion-news-theme-blocks.git","directory":"blocks/article-body-block"},"contributors":[{"name":"Beltran Caliz","email":"beltran.caliz@washpost.com"}],"author":{"name":"Brent Miller","email":"brent.miller@washport.com"},"bugs":{"url":"https://github.com/mentor-medier/fusion-news-theme-blocks/issues"},"license":"CC-BY-NC-ND-4.0","readme":"","readmeFilename":""}