From 148f04c012140e6de37937776af9e8aee5c72a8e Mon Sep 17 00:00:00 2001 From: Dharmesh Patel Date: Wed, 4 Jan 2023 15:58:49 +0530 Subject: [PATCH 1/8] Updated hooks php docs to support hookdocs. --- includes/classes/Core.php | 8 ++++++-- includes/classes/Sitemap.php | 10 +++++++--- includes/templates/google-news-sitemap.php | 6 +++++- 3 files changed, 18 insertions(+), 6 deletions(-) diff --git a/includes/classes/Core.php b/includes/classes/Core.php index 3b5d05c..26d141c 100644 --- a/includes/classes/Core.php +++ b/includes/classes/Core.php @@ -187,7 +187,9 @@ public function purge_sitemap_data_on_status_change( string $new_status, string * * @since 1.0.0 * - * @param array $post_statuses Post statuses we clear cache on. + * @hook simple_google_news_sitemap_post_statuses_to_clear + * @param {array} $post_statuses Post statuses we clear cache on. + * @returns {array} Filtered post statuses. */ $post_statuses = apply_filters( 'simple_google_news_sitemap_post_statuses_to_clear', $post_statuses ); @@ -218,7 +220,9 @@ public function ping_google(): bool { * * @since 1.0.0 * - * @param boolean $should_ping Should we ping Google? Default true. + * @hook simple_google_news_sitemap_ping + * @param {boolean} $should_ping Should we ping Google? Default true. + * @returns {boolean} Should we ping Google? */ if ( false === apply_filters( 'simple_google_news_sitemap_ping', true ) ) { return false; diff --git a/includes/classes/Sitemap.php b/includes/classes/Sitemap.php index 90efc28..8b283ae 100644 --- a/includes/classes/Sitemap.php +++ b/includes/classes/Sitemap.php @@ -74,7 +74,9 @@ public function supported_post_types(): array { * * @since 1.0.0 * - * @param array $post_types List of post types to support. + * @hook simple_google_news_sitemap_post_types + * @param {array} $post_types List of post types to support. + * @returns {array} List of post types to support. */ return apply_filters( 'simple_google_news_sitemap_post_types', $post_types ); } @@ -115,8 +117,10 @@ public function build() { * * @since 1.0.0 * - * @param array $item The item that will be displayed. - * @param string $post_type The post type of the item. + * @hook simple_google_news_sitemap_post + * @param {array} $item The item that will be displayed. + * @param {string} $post_type The post type of the item. + * @returns {array} The item that will be displayed. */ $item = apply_filters( 'simple_google_news_sitemap_post', $item, $post_type ); diff --git a/includes/templates/google-news-sitemap.php b/includes/templates/google-news-sitemap.php index 74f4f45..b4142eb 100644 --- a/includes/templates/google-news-sitemap.php +++ b/includes/templates/google-news-sitemap.php @@ -14,7 +14,9 @@ * * @since 1.0.0 * - * @param array $links Array of items to be output. + * @hook simple_google_news_sitemap_data + * @param {array} $links Array of items to be output. + * @returns {array} Array of items to be output. */ $links = apply_filters( 'simple_google_news_sitemap_data', $links ); @@ -37,6 +39,7 @@ * Add extra data to the start of the sitemap. * * @since 1.0.0 + * @hook simple_google_news_sitemap_start */ do_action( 'simple_google_news_sitemap_start' ); @@ -68,6 +71,7 @@ * Add extra data to the end of the sitemap. * * @since 1.0.0 + * @hook simple_google_news_sitemap_end */ do_action( 'simple_google_news_sitemap_end' ); ?> From b31e3eddf798d069f09d232b4d25d7311549d2f1 Mon Sep 17 00:00:00 2001 From: Dharmesh Patel Date: Wed, 4 Jan 2023 15:59:33 +0530 Subject: [PATCH 2/8] Added hook docs template files. --- .github/hookdoc-tmpl/README.md | 9 ++ .github/hookdoc-tmpl/layout.tmpl | 46 +++++++ .github/hookdoc-tmpl/static/styles-10up.css | 136 ++++++++++++++++++++ 3 files changed, 191 insertions(+) create mode 100644 .github/hookdoc-tmpl/README.md create mode 100644 .github/hookdoc-tmpl/layout.tmpl create mode 100644 .github/hookdoc-tmpl/static/styles-10up.css diff --git a/.github/hookdoc-tmpl/README.md b/.github/hookdoc-tmpl/README.md new file mode 100644 index 0000000..864657c --- /dev/null +++ b/.github/hookdoc-tmpl/README.md @@ -0,0 +1,9 @@ +# Simple Google News Sitemap Developer Documentation + +This resource is generated documentation on actions, filters, and WP-CLI commands found in the Simple Google News Sitemap plugin. Use the sidebar to browse and navigate. + +For more information about using Simple Google News Sitemap with WordPress, please see the documentation [here](https://github.com/10up/simple-google-news-sitemap#usage). + +To report an issue with Simple Google News Sitemap or contribute back to the project, please visit the [GitHub repository](https://github.com/10up/simple-google-news-sitemap/). + + diff --git a/.github/hookdoc-tmpl/layout.tmpl b/.github/hookdoc-tmpl/layout.tmpl new file mode 100644 index 0000000..335d62c --- /dev/null +++ b/.github/hookdoc-tmpl/layout.tmpl @@ -0,0 +1,46 @@ + + + + + <?js= title ?> - 10up Simple Google News Sitemap Hook Docs + + + + + + + + + + + + class="home"> + +
+ + +

+ + + + + + + +
+ + + +
+ + + + + diff --git a/.github/hookdoc-tmpl/static/styles-10up.css b/.github/hookdoc-tmpl/static/styles-10up.css new file mode 100644 index 0000000..918861a --- /dev/null +++ b/.github/hookdoc-tmpl/static/styles-10up.css @@ -0,0 +1,136 @@ +body { + background: #fefefe; + color: #232323; + font-family: 'IBM Plex Sans', sans-serif; + font-size: 1.3rem; + font-weight: 300; +} + +h1, h2, h3 { + line-height: 1.2; + font-family: 'Playfair Display', sans-serif; + font-weight: 900; + letter-spacing: -.01em; +} + +h1.page-title { + font-size: 42px; + margin-top: .5em; +} + +nav { + display: flex; + flex-direction: column; +} + +nav * { + order: 4; +} + +nav h2 { + order: 1; +} + +nav h3:nth-of-type(3) { + order: 2; + visibility: hidden; + position: relative; +} + +nav h3:nth-of-type(3):after { + content: 'Docs'; + visibility: visible; + position: absolute; + left: 0; +} + +nav ul:nth-of-type(3) { + order: 3; +} + +nav ul { + font-size: 1.2rem; +} + +nav li a { + background-image: none; +} + +nav li a:hover { + text-decoration: underline; +} + +code, pre, +nav ul a, nav ul a:visited, nav ul a:active, +.name, .signature, +.params .name, .props .name, +.name code { + font-family: 'IBM Plex Mono', monospace; +} + +article h1 { + margin: 12px 0 32px; +} + +a { + background-image: linear-gradient(transparent calc(100% - 7px), #f2dede 0), + linear-gradient(transparent calc(100% - 7px), #cef8f7 0); + background-position: 0 0; + background-repeat: no-repeat; + background-size: 0 100%, 100% 100%; + color: #232323; + text-decoration: none; + transition: all .1s; +} + +a:visited, +a:active { + color: #232323; +} + +a:focus, +a:hover { + background-size: 100% 100%, 100% 100%; + color: #232323; + text-decoration: none; +} + +a.banner { + background-image: none; + margin-left: -10px; +} + +a.banner img { + width: 100%; + max-width: 888px; +} + +article img { + width: 100%; + max-width: 888px; + height: auto; + margin: 15px 0; +} + +footer { + text-align: center; + font-size: .8em; + font-style: normal; + font-weight: 300; +} + +.home #main > section:first-of-type, +.home nav > h2 { + display: none; +} + +.prettyprint.source { + font-size: 14px; +} + +.prettyprint code { + padding: 2px 10px; + line-height: 16px; + min-height: 16px; + height: auto; +} From 9fef633e49349fae4aca321d5f41f5bcbd76a15c Mon Sep 17 00:00:00 2001 From: Dharmesh Patel Date: Wed, 4 Jan 2023 15:59:47 +0530 Subject: [PATCH 3/8] Added hookdocs config. --- hookdoc-conf.json | 25 +++++++++++++++++++++++++ 1 file changed, 25 insertions(+) create mode 100644 hookdoc-conf.json diff --git a/hookdoc-conf.json b/hookdoc-conf.json new file mode 100644 index 0000000..12791a8 --- /dev/null +++ b/hookdoc-conf.json @@ -0,0 +1,25 @@ +{ + "opts": { + "destination": "docs", + "template": "node_modules/wp-hookdoc/template", + "recurse": true, + "readme": "./.github/hookdoc-tmpl/README.md" + }, + "source": { + "includePattern": ".+\\.(php|inc)?$" + }, + "plugins": [ + "node_modules/wp-hookdoc/plugin", + "plugins/markdown" + ], + "templates": { + "default": { + "layoutFile": ".github/hookdoc-tmpl/layout.tmpl", + "staticFiles": { + "include": [ + "./.github/hookdoc-tmpl/static" + ] + } + } + } +} From 298ea6d4eaa92dfacd540a9dbcd05a8c6f184da2 Mon Sep 17 00:00:00 2001 From: Dharmesh Patel Date: Wed, 4 Jan 2023 16:00:19 +0530 Subject: [PATCH 4/8] Added hookdocs dependencies. --- package-lock.json | 476 ++++++++++++++++++++++++++++++++++++++++++++++ package.json | 27 +++ 2 files changed, 503 insertions(+) create mode 100644 package-lock.json create mode 100644 package.json diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..f4edb68 --- /dev/null +++ b/package-lock.json @@ -0,0 +1,476 @@ +{ + "name": "simple-google-news-sitemap", + "version": "1.0.2", + "lockfileVersion": 2, + "requires": true, + "packages": { + "": { + "name": "simple-google-news-sitemap", + "version": "1.0.2", + "license": "GPL-2.0-or-later", + "devDependencies": { + "jsdoc": "^3.6.11", + "wp-hookdoc": "^0.2.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.7.tgz", + "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==", + "dev": true, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@types/linkify-it": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", + "integrity": "sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==", + "dev": true + }, + "node_modules/@types/markdown-it": { + "version": "12.2.3", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-12.2.3.tgz", + "integrity": "sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==", + "dev": true, + "dependencies": { + "@types/linkify-it": "*", + "@types/mdurl": "*" + } + }, + "node_modules/@types/mdurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", + "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==", + "dev": true + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "node_modules/catharsis": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.9.0.tgz", + "integrity": "sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==", + "dev": true, + "dependencies": { + "lodash": "^4.17.15" + }, + "engines": { + "node": ">= 10" + } + }, + "node_modules/entities": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz", + "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==", + "dev": true, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true, + "engines": { + "node": ">=8" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true + }, + "node_modules/js2xmlparser": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.2.tgz", + "integrity": "sha512-6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA==", + "dev": true, + "dependencies": { + "xmlcreate": "^2.0.4" + } + }, + "node_modules/jsdoc": { + "version": "3.6.11", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.11.tgz", + "integrity": "sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg==", + "dev": true, + "dependencies": { + "@babel/parser": "^7.9.4", + "@types/markdown-it": "^12.2.3", + "bluebird": "^3.7.2", + "catharsis": "^0.9.0", + "escape-string-regexp": "^2.0.0", + "js2xmlparser": "^4.0.2", + "klaw": "^3.0.0", + "markdown-it": "^12.3.2", + "markdown-it-anchor": "^8.4.1", + "marked": "^4.0.10", + "mkdirp": "^1.0.4", + "requizzle": "^0.2.3", + "strip-json-comments": "^3.1.0", + "taffydb": "2.6.2", + "underscore": "~1.13.2" + }, + "bin": { + "jsdoc": "jsdoc.js" + }, + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/klaw": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", + "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", + "dev": true, + "dependencies": { + "graceful-fs": "^4.1.9" + } + }, + "node_modules/linkify-it": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz", + "integrity": "sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==", + "dev": true, + "dependencies": { + "uc.micro": "^1.0.1" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "node_modules/markdown-it": { + "version": "12.3.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", + "integrity": "sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==", + "dev": true, + "dependencies": { + "argparse": "^2.0.1", + "entities": "~2.1.0", + "linkify-it": "^3.0.1", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + }, + "bin": { + "markdown-it": "bin/markdown-it.js" + } + }, + "node_modules/markdown-it-anchor": { + "version": "8.6.6", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.6.tgz", + "integrity": "sha512-jRW30YGywD2ESXDc+l17AiritL0uVaSnWsb26f+68qaW9zgbIIr1f4v2Nsvc0+s0Z2N3uX6t/yAw7BwCQ1wMsA==", + "dev": true, + "peerDependencies": { + "@types/markdown-it": "*", + "markdown-it": "*" + } + }, + "node_modules/marked": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.5.tgz", + "integrity": "sha512-jPueVhumq7idETHkb203WDD4fMA3yV9emQ5vLwop58lu8bTclMghBWcYAavlDqIEMaisADinV1TooIFCfqOsYQ==", + "dev": true, + "bin": { + "marked": "bin/marked.js" + }, + "engines": { + "node": ">= 12" + } + }, + "node_modules/mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==", + "dev": true + }, + "node_modules/mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true, + "bin": { + "mkdirp": "bin/cmd.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/requizzle": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.4.tgz", + "integrity": "sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw==", + "dev": true, + "dependencies": { + "lodash": "^4.17.21" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/taffydb": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", + "integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA==", + "dev": true + }, + "node_modules/uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", + "dev": true + }, + "node_modules/underscore": { + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", + "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==", + "dev": true + }, + "node_modules/wp-hookdoc": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/wp-hookdoc/-/wp-hookdoc-0.2.0.tgz", + "integrity": "sha512-BDVfqSA+L7Ho99McFu0ATwJRddaSVbUH/lgoe4RFP7Ktg3kiRtp7VHGIIdn+QhQN7ZtLmCBMpqtEChDvaGDppw==", + "dev": true + }, + "node_modules/xmlcreate": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz", + "integrity": "sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==", + "dev": true + } + }, + "dependencies": { + "@babel/parser": { + "version": "7.20.7", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.20.7.tgz", + "integrity": "sha512-T3Z9oHybU+0vZlY9CiDSJQTD5ZapcW18ZctFMi0MOAl/4BjFF4ul7NVSARLdbGO5vDqy9eQiGTV0LtKfvCYvcg==", + "dev": true + }, + "@types/linkify-it": { + "version": "3.0.2", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-3.0.2.tgz", + "integrity": "sha512-HZQYqbiFVWufzCwexrvh694SOim8z2d+xJl5UNamcvQFejLY/2YUtzXHYi3cHdI7PMlS8ejH2slRAOJQ32aNbA==", + "dev": true + }, + "@types/markdown-it": { + "version": "12.2.3", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-12.2.3.tgz", + "integrity": "sha512-GKMHFfv3458yYy+v/N8gjufHO6MSZKCOXpZc5GXIWWy8uldwfmPn98vp81gZ5f9SVw8YYBctgfJ22a2d7AOMeQ==", + "dev": true, + "requires": { + "@types/linkify-it": "*", + "@types/mdurl": "*" + } + }, + "@types/mdurl": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-1.0.2.tgz", + "integrity": "sha512-eC4U9MlIcu2q0KQmXszyn5Akca/0jrQmwDRgpAMJai7qBWq4amIQhZyNau4VYGtCeALvW1/NtjzJJ567aZxfKA==", + "dev": true + }, + "argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "dev": true + }, + "bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmjs.org/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "dev": true + }, + "catharsis": { + "version": "0.9.0", + "resolved": "https://registry.npmjs.org/catharsis/-/catharsis-0.9.0.tgz", + "integrity": "sha512-prMTQVpcns/tzFgFVkVp6ak6RykZyWb3gu8ckUpd6YkTlacOd3DXGJjIpD4Q6zJirizvaiAjSSHlOsA+6sNh2A==", + "dev": true, + "requires": { + "lodash": "^4.17.15" + } + }, + "entities": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-2.1.0.tgz", + "integrity": "sha512-hCx1oky9PFrJ611mf0ifBLBRW8lUUVRlFolb5gWRfIELabBlbp9xZvrqZLZAs+NxFnbfQoeGd8wDkygjg7U85w==", + "dev": true + }, + "escape-string-regexp": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-2.0.0.tgz", + "integrity": "sha512-UpzcLCXolUWcNu5HtVMHYdXJjArjsF9C0aNnquZYY4uW/Vu0miy5YoWvbV345HauVvcAUnpRuhMMcqTcGOY2+w==", + "dev": true + }, + "graceful-fs": { + "version": "4.2.10", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.10.tgz", + "integrity": "sha512-9ByhssR2fPVsNZj478qUUbKfmL0+t5BDVyjShtyZZLiK7ZDAArFFfopyOTj0M05wE2tJPisA4iTnnXl2YoPvOA==", + "dev": true + }, + "js2xmlparser": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/js2xmlparser/-/js2xmlparser-4.0.2.tgz", + "integrity": "sha512-6n4D8gLlLf1n5mNLQPRfViYzu9RATblzPEtm1SthMX1Pjao0r9YI9nw7ZIfRxQMERS87mcswrg+r/OYrPRX6jA==", + "dev": true, + "requires": { + "xmlcreate": "^2.0.4" + } + }, + "jsdoc": { + "version": "3.6.11", + "resolved": "https://registry.npmjs.org/jsdoc/-/jsdoc-3.6.11.tgz", + "integrity": "sha512-8UCU0TYeIYD9KeLzEcAu2q8N/mx9O3phAGl32nmHlE0LpaJL71mMkP4d+QE5zWfNt50qheHtOZ0qoxVrsX5TUg==", + "dev": true, + "requires": { + "@babel/parser": "^7.9.4", + "@types/markdown-it": "^12.2.3", + "bluebird": "^3.7.2", + "catharsis": "^0.9.0", + "escape-string-regexp": "^2.0.0", + "js2xmlparser": "^4.0.2", + "klaw": "^3.0.0", + "markdown-it": "^12.3.2", + "markdown-it-anchor": "^8.4.1", + "marked": "^4.0.10", + "mkdirp": "^1.0.4", + "requizzle": "^0.2.3", + "strip-json-comments": "^3.1.0", + "taffydb": "2.6.2", + "underscore": "~1.13.2" + } + }, + "klaw": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/klaw/-/klaw-3.0.0.tgz", + "integrity": "sha512-0Fo5oir+O9jnXu5EefYbVK+mHMBeEVEy2cmctR1O1NECcCkPRreJKrS6Qt/j3KC2C148Dfo9i3pCmCMsdqGr0g==", + "dev": true, + "requires": { + "graceful-fs": "^4.1.9" + } + }, + "linkify-it": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-3.0.3.tgz", + "integrity": "sha512-ynTsyrFSdE5oZ/O9GEf00kPngmOfVwazR5GKDq6EYfhlpFug3J2zybX56a2PRRpc9P+FuSoGNAwjlbDs9jJBPQ==", + "dev": true, + "requires": { + "uc.micro": "^1.0.1" + } + }, + "lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true + }, + "markdown-it": { + "version": "12.3.2", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-12.3.2.tgz", + "integrity": "sha512-TchMembfxfNVpHkbtriWltGWc+m3xszaRD0CZup7GFFhzIgQqxIfn3eGj1yZpfuflzPvfkt611B2Q/Bsk1YnGg==", + "dev": true, + "requires": { + "argparse": "^2.0.1", + "entities": "~2.1.0", + "linkify-it": "^3.0.1", + "mdurl": "^1.0.1", + "uc.micro": "^1.0.5" + } + }, + "markdown-it-anchor": { + "version": "8.6.6", + "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-8.6.6.tgz", + "integrity": "sha512-jRW30YGywD2ESXDc+l17AiritL0uVaSnWsb26f+68qaW9zgbIIr1f4v2Nsvc0+s0Z2N3uX6t/yAw7BwCQ1wMsA==", + "dev": true, + "requires": {} + }, + "marked": { + "version": "4.2.5", + "resolved": "https://registry.npmjs.org/marked/-/marked-4.2.5.tgz", + "integrity": "sha512-jPueVhumq7idETHkb203WDD4fMA3yV9emQ5vLwop58lu8bTclMghBWcYAavlDqIEMaisADinV1TooIFCfqOsYQ==", + "dev": true + }, + "mdurl": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-1.0.1.tgz", + "integrity": "sha512-/sKlQJCBYVY9Ers9hqzKou4H6V5UWc/M59TH2dvkt+84itfnq7uFOMLpOiOS4ujvHP4etln18fmIxA5R5fll0g==", + "dev": true + }, + "mkdirp": { + "version": "1.0.4", + "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz", + "integrity": "sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==", + "dev": true + }, + "requizzle": { + "version": "0.2.4", + "resolved": "https://registry.npmjs.org/requizzle/-/requizzle-0.2.4.tgz", + "integrity": "sha512-JRrFk1D4OQ4SqovXOgdav+K8EAhSB/LJZqCz8tbX0KObcdeM15Ss59ozWMBWmmINMagCwmqn4ZNryUGpBsl6Jw==", + "dev": true, + "requires": { + "lodash": "^4.17.21" + } + }, + "strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true + }, + "taffydb": { + "version": "2.6.2", + "resolved": "https://registry.npmjs.org/taffydb/-/taffydb-2.6.2.tgz", + "integrity": "sha512-y3JaeRSplks6NYQuCOj3ZFMO3j60rTwbuKCvZxsAraGYH2epusatvZ0baZYA01WsGqJBq/Dl6vOrMUJqyMj8kA==", + "dev": true + }, + "uc.micro": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-1.0.6.tgz", + "integrity": "sha512-8Y75pvTYkLJW2hWQHXxoqRgV7qb9B+9vFEtidML+7koHUFapnVJAZ6cKs+Qjz5Aw3aZWHMC6u0wJE3At+nSGwA==", + "dev": true + }, + "underscore": { + "version": "1.13.6", + "resolved": "https://registry.npmjs.org/underscore/-/underscore-1.13.6.tgz", + "integrity": "sha512-+A5Sja4HP1M08MaXya7p5LvjuM7K6q/2EaC0+iovj/wOcMsTzMvDFbasi/oSapiwOlt252IqsKqPjCl7huKS0A==", + "dev": true + }, + "wp-hookdoc": { + "version": "0.2.0", + "resolved": "https://registry.npmjs.org/wp-hookdoc/-/wp-hookdoc-0.2.0.tgz", + "integrity": "sha512-BDVfqSA+L7Ho99McFu0ATwJRddaSVbUH/lgoe4RFP7Ktg3kiRtp7VHGIIdn+QhQN7ZtLmCBMpqtEChDvaGDppw==", + "dev": true + }, + "xmlcreate": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/xmlcreate/-/xmlcreate-2.0.4.tgz", + "integrity": "sha512-nquOebG4sngPmGPICTS5EnxqhKbCmz5Ox5hsszI2T6U5qdrJizBc+0ilYSEjTSzU0yZcmvppztXe/5Al5fUwdg==", + "dev": true + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..92f77f6 --- /dev/null +++ b/package.json @@ -0,0 +1,27 @@ +{ + "name": "simple-google-news-sitemap", + "version": "1.0.2", + "description": "A simple Google News sitemap is generated on-the-fly for articles that were published in the last two days. Output is saved in cache or as a transient for fast reading and displaying on the front end.", + "scripts": { + "build:docs": "rm -rf docs && jsdoc -c hookdoc-conf.json simple-google-news-sitemap.php includes" + }, + "repository": { + "type": "git", + "url": "git+https://github.com/10up/simple-google-news-sitemap.git" + }, + "author": { + "name": "10up", + "email": "info@10up.com", + "url": "https://10up.com", + "role": "developer" + }, + "license": "GPL-2.0-or-later", + "bugs": { + "url": "https://github.com/10up/simple-google-news-sitemap/issues" + }, + "homepage": "https://github.com/10up/simple-google-news-sitemap#readme", + "devDependencies": { + "jsdoc": "^3.6.11", + "wp-hookdoc": "^0.2.0" + } +} From fcabffd200c3877b88729c8a58f845707744d518 Mon Sep 17 00:00:00 2001 From: Dharmesh Patel Date: Wed, 4 Jan 2023 16:00:32 +0530 Subject: [PATCH 5/8] Added .nvmrc --- .nvmrc | 1 + 1 file changed, 1 insertion(+) create mode 100644 .nvmrc diff --git a/.nvmrc b/.nvmrc new file mode 100644 index 0000000..6f7f377 --- /dev/null +++ b/.nvmrc @@ -0,0 +1 @@ +v16 From 247fe303d0ab4cb3813dd867817c558430b747e7 Mon Sep 17 00:00:00 2001 From: Dharmesh Patel Date: Wed, 4 Jan 2023 16:01:03 +0530 Subject: [PATCH 6/8] updated .distignore to exclude non-dist files. --- .distignore | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/.distignore b/.distignore index cfc402b..2b09ffb 100644 --- a/.distignore +++ b/.distignore @@ -8,14 +8,18 @@ .distignore .editorconfig .gitignore +.nvmrc CHANGELOG.md CODE_OF_CONDUCT.md composer.json composer.lock CONTRIBUTING.md CREDITS.md +hookdoc-conf.json LICENSE.md +package.json +package-lock.json phpcs.xml phpunit.xml phpunit.xml -README.md \ No newline at end of file +README.md From 031951778d6be0a03a4479175442877f90451e36 Mon Sep 17 00:00:00 2001 From: Dharmesh Patel Date: Wed, 4 Jan 2023 16:01:50 +0530 Subject: [PATCH 7/8] Updated .gitingore to ignore folders. --- .gitignore | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/.gitignore b/.gitignore index 0c89aaf..29199e6 100644 --- a/.gitignore +++ b/.gitignore @@ -6,3 +6,9 @@ # Cache files *.cache + +# npm packages +/node_modules/ + +# Hookdoc generated files +/docs/ From 63237dac40a1037e3b01d3d518c13656bac8a39e Mon Sep 17 00:00:00 2001 From: Dharmesh Patel Date: Wed, 4 Jan 2023 16:18:41 +0530 Subject: [PATCH 8/8] Added workflow file. --- .github/workflows/build-docs.yml | 29 +++++++++++++++++++++++++++++ 1 file changed, 29 insertions(+) create mode 100644 .github/workflows/build-docs.yml diff --git a/.github/workflows/build-docs.yml b/.github/workflows/build-docs.yml new file mode 100644 index 0000000..53327f2 --- /dev/null +++ b/.github/workflows/build-docs.yml @@ -0,0 +1,29 @@ +name: Build Hook Docs + +on: + push: + branches: + - trunk + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Use desired version of NodeJS + uses: actions/setup-node@v3 + with: + node-version-file: '.nvmrc' + + - name: Install dependencies and Generate docs + run: | + npm install + npm run build:docs + env: + CI: true + + - name: Deploy to GH Pages + uses: peaceiris/actions-gh-pages@v3 + with: + github_token: ${{ secrets.GITHUB_TOKEN }} + publish_dir: './docs'