From 15af7c06faaca7b19302ea21863f398545ced45c Mon Sep 17 00:00:00 2001
From: David Calhoun <438664+dcalhoun@users.noreply.github.com>
Date: Sun, 8 May 2022 14:55:31 -0500
Subject: [PATCH] Add WordPress theme (#31)
* Remove Next.js site
* Add foundational files
* Add gitignore
* Add @wordpress/env
* Add Prettier
* Fix theme slugs
* Add Prettier config
* Remove parent theme
* Add README
* Add files from Blockbase theme
* Fix index file after removing Blockbase parent them
* [wip] Add Tailwind CDN
* Remove unused navigation menu registration
* Disable unused embeds script
Improve performance.
* Disable unused emojis script
Improve performance.
* Simplify index.php
* Remove unstable navigation attributes
* Remove reference to TinyMCE that threw error
* Improve header alignment
* Rename template directories
* Update footer punctuation
* Remove unidentified theme support hook
Unsure of the nature of this hook.
* Clean up and sync functions.php file with Blockbase theme
* Replace outdated branch reference
The primary branch is named "main."
* Reinstate theme stylesheet
* Fix white space within footer template part
Prettier mangles the white space found in the span element.
* Explore baseline typography in theme.json configuration
* Decrease small font size
Create consistent scale steps.
* Remove unused template parts
* Improve template implementation
* Fix font size CSS property
* Update font family configuration
* Update theme color configuration
* Add header styles
* Remove feature image from page and single templates
* Update navigation styles
* Update post title level and styles
* Round featured image
* Revert "Remove feature image from page and single templates"
This reverts commit 8917b2301a80e4ede1ae1e1d307091901176ffda.
* Revert "Remove unused template parts"
This reverts commit 26508dc09b85214f8f39e5eba3f815573de89e2b.
* Explore custom post type for styled page
Stylized page includes locked featured image block. This improves the
WYSIWYG experience for pages by displaying the featured image in the
editor.
* Modify existing Page post type rather than creating new post type
Simplify the approach to including the Post Featured Image block for all
Pages.
* Remove featured image from page template
This is now a part of the page content blocks instead.
* Enable custom block padding
Allow required spacing for home page columns.
* Round post featured images
* Inline Post Featured Image for Pages and Posts
* Rename Blockbase references
* Add bottom spacer to header
* Add Callout pattern
* Set rounded images in theme.json
* Customize blockGap
* Relocate navigation styles to theme.json
* Reduce default content width
* Fix header vertical rhythm
* Add Affiliation pattern
* Format theme.json
* Fix paragraph line height
* Prevent post content from touching window side
* Fix post title alignment
* Remove custom navigation item gap
* Rename front page template for clarity
* Update Footer design
* Fix contact form button styles
The Jetpack styles override theme button style configuration.
https://github.com/Automattic/jetpack/pull/19527#issuecomment-871541169
* Improve footer spacing
* Fix template syntax error
* Improve Affiliation pattern design
* Add horizontal Header and Footer padding
* Remove unused post-meta-icons template part
* Update Post Meta design
* Format stylesheet
* Replace pixels with rem
* Set button to primary action color
* Fix Footer part syntax error
* Fix reference to Post Meta parts
* Rename templates for clarity
* Disable mobile navigation overlay
* Add static Blog heading
This should be displayed by `wp:archive-title`, but it currently does
not support that. This static heading means there is now duplicative
level one headings on archive pages, which is not ideal.
https://github.com/WordPress/gutenberg/issues/33476
* Fix overflowing horizontal separator on small screens
* Remove unnecessary patch script
The customizer bug is unlikely to impact our use case.
* Fix header background color
* Improve Callout pattern responsive styles
* Fix Affiliation responsive styles
* Fix Index post title spacing
* Add horizontal padding to avoid window sides
* Update pattern padding
* Format patterns
* Format code
* Fix Callout secondary heading
After formatting the code, the empty `em` caused the block editor to
think the heading was pre-populated.
* Mirror query title line height to post title
* Enable border-box globally
* Style quote and pull quote blocks
* Fix Jetpack button padding
* Rename custom variables
* Fix credit spacing
* Balance Affiliation height
* Remove ls- prefix from CSS selectors
* Reorganize stylesheets and images
* Fix list alignment
* Style figure caption
* Fix post comment alignment
* Adjust block quote alignment
* Fix block syntax error
* Avoid block name in HTML comment
* Enable mobile overlay navigation
* Set edge spacing variable
* Adjust spacing and typography
* Simplify stylesheet loading
Reduce stylesheet organization to a single file given the block editor's
long-term goal of avoiding stylesheet files in general.
* Fix credit spacing
Prettier formatting causes white space in the HTML.
* Remove custom list styles
The default list styles suffice.
* Add font smoothing
* Use static block gap value
* Fix image paths in stylesheet
* Style form input elements
* Style button hover state
* Remove unnecessary template part scope
* Rename theme slug to match community pattern
* Scope form input styles to Jetpack
The global styles caused oddities for the Jetpack Contact block in the
block editor.
* Add theme screenshot
* Update license to GPL-2.0-or-later
* Remove WordPress name from package name
* Fix styling issues on WordPress.com
* Increase footer spacing
* Reinstate theme attribute for template part
Unsure as to why this returned from the block editor, but it likely
makes sense to retain it.
* Add full-page screenshot
WordPress.com's Calypso displays a larger preview than default WordPress
installations.
* Improve screenshot aspect ratio
---
.gitignore | 38 +-
README.md | 14 +-
bsconfig.json | 23 -
components/Affiliation.res | 19 -
components/Badge.res | 8 -
components/Blog.res | 91 -
components/Button.res | 37 -
components/ContactCTA.res | 11 -
components/ContactInfo.res | 20 -
components/Date.res | 41 -
components/Draft.res | 24 -
components/Heading.res | 6 -
components/Input.res | 1 -
components/Layout.res | 65 -
components/ListItem.res | 2 -
components/OrderedList.res | 7 -
components/Paragraph.res | 14 -
components/Post.css | 278 ---
components/Post.res | 43 -
components/PostDetail.res | 60 -
components/SEO.res | 54 -
components/Spread.res | 2 -
components/TextButton.res | 34 -
components/TextInput.res | 85 -
components/Toast.res | 48 -
components/UnorderedList.res | 7 -
functions.php | 151 ++
images/calendar.svg | 3 +
images/check.svg | 1 +
images/folder.svg | 3 +
images/person.svg | 3 +
images/tag.svg | 3 +
index.php | 1 +
next.config.js | 12 -
package-lock.json | 3181 +++++++++++++++++++++++++++
package.json | 38 +-
pages/_app.js | 5 -
pages/_document.js | 112 -
pages/api/preview.res | 19 -
pages/blog/[slug].js | 7 -
pages/blog/draft/[id].js | 7 -
pages/blog/index.js | 7 -
pages/contact.res | 188 --
pages/contact.resi | 1 -
pages/index.res | 63 -
pages/individuals.res | 56 -
pages/nonprofit.res | 65 -
parts/.gitkeep | 0
parts/credit.html | 15 +
parts/footer.html | 48 +
parts/header.html | 27 +
parts/post-meta.html | 12 +
patterns/affiliation.php | 58 +
patterns/callout.php | 61 +
postcss.config.js | 3 -
prettier.config.js | 4 +
public/android-chrome-192x192.png | Bin 4133 -> 0 bytes
public/android-chrome-512x512.png | Bin 8589 -> 0 bytes
public/apple-touch-icon-114x114.png | Bin 2342 -> 0 bytes
public/apple-touch-icon-120x120.png | Bin 2582 -> 0 bytes
public/apple-touch-icon-144x144.png | Bin 2803 -> 0 bytes
public/apple-touch-icon-152x152.png | Bin 2962 -> 0 bytes
public/apple-touch-icon-167x167.png | Bin 3602 -> 0 bytes
public/apple-touch-icon-180x180.png | Bin 3737 -> 0 bytes
public/apple-touch-icon-57x57.png | Bin 1401 -> 0 bytes
public/apple-touch-icon-60x60.png | Bin 1635 -> 0 bytes
public/apple-touch-icon-72x72.png | Bin 1710 -> 0 bytes
public/apple-touch-icon-76x76.png | Bin 1803 -> 0 bytes
public/favicon-128x128.png | Bin 2542 -> 0 bytes
public/favicon-16x16.png | Bin 450 -> 0 bytes
public/favicon-196x196.png | Bin 4348 -> 0 bytes
public/favicon-32x32.png | Bin 870 -> 0 bytes
public/favicon-96x96.png | Bin 2043 -> 0 bytes
public/header-individuals.jpg | Bin 1419877 -> 0 bytes
public/header-nonprofit.jpg | Bin 946771 -> 0 bytes
public/logo.png | Bin 102081 -> 0 bytes
public/mstile-144x144.png | Bin 2803 -> 0 bytes
public/mstile-150x150.png | Bin 3180 -> 0 bytes
public/mstile-310x150.png | Bin 2408 -> 0 bytes
public/mstile-310x310.png | Bin 8496 -> 0 bytes
public/mstile-70x70.png | Bin 1638 -> 0 bytes
public/paul-calhoun.jpg | Bin 772874 -> 0 bytes
public/social-share.png | Bin 22203 -> 0 bytes
screenshot.png | Bin 0 -> 662450 bytes
style.css | 172 ++
styles.css | 5 -
tailwind.config.js | 26 -
templates/.gitkeep | 0
templates/404.html | 17 +
templates/blank.html | 1 +
templates/index.html | 42 +
templates/page-without-footer.html | 15 +
templates/page-without-title.html | 9 +
templates/page.html | 15 +
templates/search.html | 18 +
templates/single.html | 30 +
theme.json | 265 +++
utils/Document.res | 17 -
utils/Next.res | 135 --
utils/WordPress.res | 115 -
yarn.lock | 1353 ------------
101 files changed, 4177 insertions(+), 3244 deletions(-)
delete mode 100644 bsconfig.json
delete mode 100644 components/Affiliation.res
delete mode 100644 components/Badge.res
delete mode 100644 components/Blog.res
delete mode 100644 components/Button.res
delete mode 100644 components/ContactCTA.res
delete mode 100644 components/ContactInfo.res
delete mode 100644 components/Date.res
delete mode 100644 components/Draft.res
delete mode 100644 components/Heading.res
delete mode 100644 components/Input.res
delete mode 100644 components/Layout.res
delete mode 100644 components/ListItem.res
delete mode 100644 components/OrderedList.res
delete mode 100644 components/Paragraph.res
delete mode 100644 components/Post.css
delete mode 100644 components/Post.res
delete mode 100644 components/PostDetail.res
delete mode 100644 components/SEO.res
delete mode 100644 components/Spread.res
delete mode 100644 components/TextButton.res
delete mode 100644 components/TextInput.res
delete mode 100644 components/Toast.res
delete mode 100644 components/UnorderedList.res
create mode 100644 functions.php
create mode 100644 images/calendar.svg
create mode 100644 images/check.svg
create mode 100644 images/folder.svg
create mode 100644 images/person.svg
create mode 100644 images/tag.svg
create mode 100644 index.php
delete mode 100644 next.config.js
create mode 100644 package-lock.json
delete mode 100644 pages/_app.js
delete mode 100644 pages/_document.js
delete mode 100644 pages/api/preview.res
delete mode 100644 pages/blog/[slug].js
delete mode 100644 pages/blog/draft/[id].js
delete mode 100644 pages/blog/index.js
delete mode 100644 pages/contact.res
delete mode 100644 pages/contact.resi
delete mode 100644 pages/index.res
delete mode 100644 pages/individuals.res
delete mode 100644 pages/nonprofit.res
create mode 100644 parts/.gitkeep
create mode 100644 parts/credit.html
create mode 100644 parts/footer.html
create mode 100644 parts/header.html
create mode 100644 parts/post-meta.html
create mode 100644 patterns/affiliation.php
create mode 100644 patterns/callout.php
delete mode 100644 postcss.config.js
create mode 100644 prettier.config.js
delete mode 100644 public/android-chrome-192x192.png
delete mode 100644 public/android-chrome-512x512.png
delete mode 100644 public/apple-touch-icon-114x114.png
delete mode 100644 public/apple-touch-icon-120x120.png
delete mode 100644 public/apple-touch-icon-144x144.png
delete mode 100644 public/apple-touch-icon-152x152.png
delete mode 100644 public/apple-touch-icon-167x167.png
delete mode 100644 public/apple-touch-icon-180x180.png
delete mode 100644 public/apple-touch-icon-57x57.png
delete mode 100644 public/apple-touch-icon-60x60.png
delete mode 100644 public/apple-touch-icon-72x72.png
delete mode 100644 public/apple-touch-icon-76x76.png
delete mode 100644 public/favicon-128x128.png
delete mode 100644 public/favicon-16x16.png
delete mode 100644 public/favicon-196x196.png
delete mode 100644 public/favicon-32x32.png
delete mode 100644 public/favicon-96x96.png
delete mode 100644 public/header-individuals.jpg
delete mode 100644 public/header-nonprofit.jpg
delete mode 100644 public/logo.png
delete mode 100644 public/mstile-144x144.png
delete mode 100644 public/mstile-150x150.png
delete mode 100644 public/mstile-310x150.png
delete mode 100644 public/mstile-310x310.png
delete mode 100644 public/mstile-70x70.png
delete mode 100644 public/paul-calhoun.jpg
delete mode 100644 public/social-share.png
create mode 100644 screenshot.png
create mode 100644 style.css
delete mode 100644 styles.css
delete mode 100644 tailwind.config.js
create mode 100644 templates/.gitkeep
create mode 100644 templates/404.html
create mode 100644 templates/blank.html
create mode 100644 templates/index.html
create mode 100644 templates/page-without-footer.html
create mode 100644 templates/page-without-title.html
create mode 100644 templates/page.html
create mode 100644 templates/search.html
create mode 100644 templates/single.html
create mode 100644 theme.json
delete mode 100644 utils/Document.res
delete mode 100644 utils/Next.res
delete mode 100644 utils/WordPress.res
delete mode 100644 yarn.lock
diff --git a/.gitignore b/.gitignore
index 1771867..9daa824 100644
--- a/.gitignore
+++ b/.gitignore
@@ -1,38 +1,2 @@
-# See https://help.github.com/articles/ignoring-files/ for more about ignoring files.
-
-# dependencies
-/node_modules
-/.pnp
-.pnp.js
-
-# testing
-/coverage
-
-# next.js
-/.next/
-/out/
-
-# production
-/build
-
-# misc
.DS_Store
-*.pem
-bs
-.merlin
-lib/
-*.bs.js
-.bsb.lock
-
-# debug
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
-
-# local env files
-.env.local
-.env.development.local
-.env.test.local
-.env.production.local
-
-.vercel
+node_modules
diff --git a/README.md b/README.md
index 98eae0a..5b07da4 100644
--- a/README.md
+++ b/README.md
@@ -1,9 +1,13 @@
# Life Stewardship
-Marketing website for Life Stewardship LLC, financial planning & coaching.
+A WordPress theme for the Life Stewardship LLC marketing site.
-## Project Set Up
+## Requirements
-1. `yarn install`
-1. `yarn dev:rescript`
-1. `yarn dev:next`
+- Docker
+- WordPress Docker image
+
+## Setup
+
+1. `npm install`
+1. `npm run wp-env start`
diff --git a/bsconfig.json b/bsconfig.json
deleted file mode 100644
index 59048c7..0000000
--- a/bsconfig.json
+++ /dev/null
@@ -1,23 +0,0 @@
-{
- "name": "life-stewardship",
- "sources": [
- { "dir": "components", "subdirs": true },
- { "dir": "pages", "subdirs": true },
- { "dir": "utils", "subdirs": true }
- ],
- "bs-dependencies": [
- "@rescript/react",
- "@ryyppy/rescript-promise",
- "bs-fetch",
- "decco"
- ],
- "ppx-flags": ["decco/ppx"],
- "reason": { "react-jsx": 3 },
- "package-specs": {
- "module": "es6",
- "in-source": true
- },
- "suffix": ".bs.js",
- "bsc-flags": ["-bs-super-errors"],
- "refmt": 3
-}
diff --git a/components/Affiliation.res b/components/Affiliation.res
deleted file mode 100644
index 3729b5d..0000000
--- a/components/Affiliation.res
+++ /dev/null
@@ -1,19 +0,0 @@
-@react.component
-let make = (~children) =>
-
diff --git a/components/Badge.res b/components/Badge.res
deleted file mode 100644
index b04a26f..0000000
--- a/components/Badge.res
+++ /dev/null
@@ -1,8 +0,0 @@
-@react.component
-let make = (~ariaHidden=?, ~children, ~className="") => {
-
- {children}
-
-}
diff --git a/components/Blog.res b/components/Blog.res
deleted file mode 100644
index eb07562..0000000
--- a/components/Blog.res
+++ /dev/null
@@ -1,91 +0,0 @@
-type props = {
- error: Js.Nullable.t,
- data: Js.Nullable.t,
- preview: bool,
-}
-
-let getStaticProps: Next.GetStaticProps.t = ({preview}) => {
- open Promise
- WordPress.Api.fetchPosts(~preview=preview->Belt.Option.getWithDefault(false), ())->then(((
- data,
- error,
- )) => {
- let props = {error: error, data: data, preview: preview->Belt.Option.getWithDefault(false)}
- resolve({"props": props, "revalidate": Some(60)})
- })
-}
-
-module PostExcerpt = {
- @react.component
- let make = (~date, ~featuredImage, ~id, ~slug, ~status, ~title) => {
- let postUrl = switch slug->Js.String2.length {
- | 0 => "/blog/draft/" ++ id
- | _ => "/blog/" ++ slug
- }
- let filteredTitle =
- title
- ->Js.String2.replaceByRe(%re("/ /g"), " ")
- ->Js.String2.replaceByRe(%re("/Private:\s/g"), "")
-
-
- Date.format}>
- ReactDOM.Style.unsafeAddProp(
- "WebkitMaskImage",
- "-webkit-radial-gradient(white, black)",
- )}>
-
-
-
-
- {filteredTitle->React.string}
-
-
-
-
-
- {switch status {
- | "publish"
- | "private" => React.null
- | _ =>
{status->React.string}
- }}
-
-
-
-
-
- }
-}
-
-let default = (props: props): React.element => {
- let {data, error, preview} = props
-
-
-
-
{"Blog"->React.string}
-
- {switch (data->Js.Nullable.toOption, error->Js.Nullable.toOption) {
- | (_, Some({message})) =>
{message->React.string}
- | (None, None) =>
{"Loading..."->React.string}
- | (Some(posts), None) if Array.length(posts) > 0 =>
- posts
- ->Belt.Array.map(({date, featuredImage, id, slug, status, title}) =>
-
- )
- ->React.array
- | (Some(_empty), _) =>
{"No posts found."->React.string}
- }}
-
-
-
-
-}
diff --git a/components/Button.res b/components/Button.res
deleted file mode 100644
index 799c7d9..0000000
--- a/components/Button.res
+++ /dev/null
@@ -1,37 +0,0 @@
-@react.component
-let make = React.forwardRef((
- ~children,
- ~className="",
- ~href: option=?,
- ~loading=false,
- ~onClick: option unit>=?,
- ~type_: option=?,
- _ref,
-) => {
- let element = switch href {
- | Some(_) => "a"
- | None => "button"
- }
-
- let noop = _event => ()
- let onClickCallback = switch (onClick, loading) {
- | (Some(cb), false) => cb
- | (_, true) => noop
- | (None, _) => noop
- }
-
- ReactDOMRe.createElement(
- element,
- ~props=ReactDOMRe.props(
- ~className=className ++
- (loading
- ? " bg-gray-600 cursor-wait"
- : " bg-green-700") ++ " rounded-lg text-white text-base font-semibold p-3 px-8",
- ~href?,
- ~onClick=onClickCallback,
- ~type_?,
- (),
- ),
- [loading ? "Sending message..."->React.string : children],
- )
-})
diff --git a/components/ContactCTA.res b/components/ContactCTA.res
deleted file mode 100644
index 1eb2106..0000000
--- a/components/ContactCTA.res
+++ /dev/null
@@ -1,11 +0,0 @@
-@react.component
-let make = () =>
-
-
-
- {`Ready to get started? Let’s talk.`->React.string}
-
-
- {"Send Paul a message"->React.string}
-
-
diff --git a/components/ContactInfo.res b/components/ContactInfo.res
deleted file mode 100644
index d912eee..0000000
--- a/components/ContactInfo.res
+++ /dev/null
@@ -1,20 +0,0 @@
-type icon = Email | Mail | Phone
-
-@react.component
-let make = (~children) =>
-
diff --git a/components/Date.res b/components/Date.res
deleted file mode 100644
index 25a1a5d..0000000
--- a/components/Date.res
+++ /dev/null
@@ -1,41 +0,0 @@
-let months = [
- "January",
- "February",
- "March",
- "April",
- "May",
- "June",
- "July",
- "August",
- "September",
- "October",
- "November",
- "December",
-]
-
-let stripZero = day => Js.String.replaceByRe(%re("/0(\d+)/g"), "$1", day)
-
-let format = dateString => {
- let regexSansTime = switch Js.Re.exec_(%re("/(\d{4}-\d{2}-\d{2}).*/g"), dateString) {
- | Some(result) => result->Js.Re.captures
- | None => []
- }
-
- let dateStringSansTime = switch regexSansTime[1]->Js.Nullable.toOption {
- | Some(string) => string
- | None => ""
- }
-
- switch Js.String.splitByRe(%re("/-/g"), dateStringSansTime) {
- | [Some(year), Some(month), Some(day)] =>
- months[int_of_string(month) - 1] ++ " " ++ day->stripZero ++ ", " ++ year
- | _ => ""
- }
-}
-
-@react.component
-let make = (~dateString, ~ariaHidden=?) => {
- Js.String2.substrAtMost(~from=0, ~length=10)} ?ariaHidden>
- {dateString->format->React.string}
-
-}
diff --git a/components/Draft.res b/components/Draft.res
deleted file mode 100644
index 22ab7b6..0000000
--- a/components/Draft.res
+++ /dev/null
@@ -1,24 +0,0 @@
-type params = {id: string}
-type props = {
- error: Js.Nullable.t,
- data: Js.Nullable.t,
- preview: bool,
-}
-
-let getServerSideProps: Next.GetServerSideProps.t = ctx => {
- let {params, preview} = ctx
- open Js.Promise
- WordPress.Api.fetchPosts(
- ~id=params.id,
- ~preview=preview->Belt.Option.getWithDefault(false),
- (),
- )->then_(((data, error)) => {
- let props = {error: error, data: data, preview: preview->Belt.Option.getWithDefault(false)}
- resolve({"props": props})
- }, _)
-}
-
-let default = (props: props): React.element => {
- let {data, error, preview} = props
-
-}
diff --git a/components/Heading.res b/components/Heading.res
deleted file mode 100644
index f070fcf..0000000
--- a/components/Heading.res
+++ /dev/null
@@ -1,6 +0,0 @@
-module Styles = {
- let primary = "text-3xl lg:text-6xl font-serif font-bold leading-tight"
- let secondary = "text-base lg:text-3xl font-serif font-bold"
- let tertiary = "text-base lg:text-lg font-serif uppercase tracking-wider"
- let quaternary = "text-base lg:text-lg"
-}
diff --git a/components/Input.res b/components/Input.res
deleted file mode 100644
index 48a543b..0000000
--- a/components/Input.res
+++ /dev/null
@@ -1 +0,0 @@
-let className = "bg-white shadow-none border border-gray-300 rounded-md p-2 block w-full"
diff --git a/components/Layout.res b/components/Layout.res
deleted file mode 100644
index 37279c0..0000000
--- a/components/Layout.res
+++ /dev/null
@@ -1,65 +0,0 @@
-module NavItem = {
- @react.component
- let make = React.forwardRef((~children, ~className="", ~onClick=_event => (), ~href="", _ref) => {
-
- children
-
- })
-}
-
-@react.component
-let make = (~children, ~preview=false) => <>
-
- {switch preview {
- | true =>
-
- {"Preview mode enabled. "->React.string}
-
- {"Disable"->React.string}
-
- {"."->React.string}
-
-
- | false => React.null
- }}
-
-
-
-
-
-
-
-
-
-
- {"Nonprofit"->React.string}
-
-
- {"Individuals"->React.string}
-
-
- {"Blog"->React.string}
-
-
- {"Contact"->React.string}
-
-
-
-
children
-
->
diff --git a/components/ListItem.res b/components/ListItem.res
deleted file mode 100644
index d886e5b..0000000
--- a/components/ListItem.res
+++ /dev/null
@@ -1,2 +0,0 @@
-@react.component
-let make = (~children) => children
diff --git a/components/OrderedList.res b/components/OrderedList.res
deleted file mode 100644
index 7ffd3e1..0000000
--- a/components/OrderedList.res
+++ /dev/null
@@ -1,7 +0,0 @@
-@react.component
-let make = (~children) =>
-
- children
-
diff --git a/components/Paragraph.res b/components/Paragraph.res
deleted file mode 100644
index 0c77e98..0000000
--- a/components/Paragraph.res
+++ /dev/null
@@ -1,14 +0,0 @@
-type align = Left | Center | Right
-
-@react.component
-let make = (~className="", ~children, ~align=Center) => {
- let alignment = switch align {
- | Center => " mx-auto"
- | _ => ""
- }
-
- children
-
-}
diff --git a/components/Post.css b/components/Post.css
deleted file mode 100644
index b48a319..0000000
--- a/components/Post.css
+++ /dev/null
@@ -1,278 +0,0 @@
-/**
- * Disable all blocks by default; will enable indviduals as supported
- */
-.post *[class*="wp-"] {
- padding: 0;
-}
-
-.post *[class*="wp-"] *,
-.post *[class*="wp-"] *::before {
- display: none;
- content: none;
- padding: 0;
-}
-
-.post *[class*="wp-"]::before {
- @apply bg-gray-200;
- @apply block;
- @apply p-4;
- @apply rounded-md;
- @apply text-center;
- @apply mb-5;
- @apply text-base;
- content: "⚠️ Block type not supported.";
-}
-
-@screen lg {
- .post *[class*="wp-"]::before {
- @apply text-xl;
- }
-}
-
-/**
- * Enabled blocks
- */
-.post .wp-block-image *,
-.post .wp-block-quote *,
-.post .wp-block-pullquote *,
-.post .wp-block-embed *,
-.post .wp-block-embed__wrapper *,
-.post .wp-block-file * {
- display: initial;
-}
-
-.post .wp-block-image::before,
-.post .wp-block-quote::before,
-.post .wp-block-pullquote::before,
-.post .wp-block-embed::before,
-.post .wp-block-embed__wrapper::before,
-.post .wp-block-file::before {
- display: none;
- content: none;
-}
-
-.post .aligncenter {
- @apply block;
- @apply mx-auto;
- @apply text-center;
-}
-
-.post h1,
-.post h2,
-.post h3,
-.post h4,
-.post h5,
-.post h6,
-.post p,
-.post li {
- @apply font-serif;
-}
-
-.post p,
-.post ul,
-.post ol {
- @apply text-base;
- max-width: 30em;
-}
-
-@screen lg {
- .post p,
- .post ul,
- .post ol {
- @apply text-xl;
- }
-}
-
-.post h1,
-.post h2,
-.post h3,
-.post h4,
-.post h5,
-.post h6 {
- @apply text-base;
- @apply mb-5;
- @apply mx-auto;
- max-width: 600px;
-}
-
-@screen lg {
- .post h1,
- .post h2,
- .post h3,
- .post h4,
- .post h5,
- .post h6 {
- @apply text-xl;
- @apply mb-8;
- }
-}
-
-.post h1 {
- @apply text-3xl;
- @apply lg:text-6xl;
- @apply font-serif;
- @apply font-bold;
- @apply leading-tight;
-}
-.post h2 {
- @apply text-base;
- @apply lg:text-3xl;
- @apply font-serif;
- @apply font-bold;
-}
-.post h3 {
- @apply text-base;
- @apply lg:text-lg;
- @apply font-serif;
- @apply uppercase;
- @apply tracking-wider;
-}
-.post h4 {
- @apply text-base;
- @apply lg:text-lg;
-}
-
-.post a {
- @apply underline;
- @apply text-green-700;
-}
-
-.post p,
-.post ul,
-.post ol {
- @apply mb-5;
- @apply mx-auto;
-}
-
-@screen lg {
- .post p,
- .post ul,
- .post ol {
- @apply mb-8;
- }
-}
-
-.post ul {
- @apply list-disc;
- @apply pl-7;
-}
-
-.post ol {
- @apply list-decimal;
- @apply pl-7;
-}
-
-.post .has-text-align-center {
- @apply text-center;
-}
-
-.post .has-text-align-right {
- @apply text-right;
-}
-
-/* Images */
-.post .wp-block-image {
- @apply mb-5;
-}
-
-@screen lg {
- .post .wp-block-image {
- @apply mb-8;
- }
-}
-
-.post .wp-block-image figcaption {
- @apply block;
- @apply font-serif;
- @apply text-center;
- @apply text-sm;
-}
-
-/* Block Quote */
-.post .wp-block-quote {
- @apply border-green-700;
- @apply border-l-2;
- @apply pl-4;
- @apply mb-5;
- @apply mx-auto;
- max-width: 600px;
-}
-
-@screen lg {
- .post .wp-block-quote {
- @apply mb-8;
- }
-}
-
-.post .wp-block-quote p {
- @apply block;
- @apply italic;
-}
-
-.post .wp-block-quote cite {
- @apply not-italic;
- @apply text-sm;
-}
-
-/* Pull Quote */
-.post .wp-block-pullquote {
- @apply border-green-700;
- @apply border-t-2;
- @apply border-b-2;
- @apply mb-5;
- @apply py-8;
- @apply text-center;
-}
-
-@screen lg {
- .post .wp-block-pullquote {
- @apply mb-8;
- }
-}
-
-.post .wp-block-pullquote p {
- @apply block;
- @apply italic;
- @apply text-3xl;
-}
-
-.post .wp-block-pullquote cite {
- @apply not-italic;
- @apply text-sm;
- @apply uppercase;
-}
-
-/* YouTube Embed */
-.post .wp-block-embed {
- @apply mb-5;
- @apply mx-auto;
-}
-
-.post .wp-embed-aspect-16-9 {
- @apply relative;
- /* Tailwind's apply is broken for aspect ratio https://git.io/JckJG */
- padding-top: 56.25%;
-}
-
-.post .wp-block-embed__wrapper,
-.post .wp-block-embed__wrapper span,
-.post .wp-block-embed iframe {
- @apply absolute;
- @apply inset-0;
- @apply w-full;
- @apply h-full;
-}
-
-/* File Embed */
-.post .wp-block-file {
- @apply mb-5;
-}
-
-.post .wp-block-file__button {
- @apply inline-block;
- @apply rounded-md;
- @apply bg-green-700;
- @apply text-white;
- @apply p-4;
- @apply no-underline;
-}
diff --git a/components/Post.res b/components/Post.res
deleted file mode 100644
index d3abfe8..0000000
--- a/components/Post.res
+++ /dev/null
@@ -1,43 +0,0 @@
-type params = {slug: string}
-type props = {
- error: Js.Nullable.t,
- data: Js.Nullable.t,
- preview: bool,
-}
-
-let getStaticProps: Next.GetStaticProps.t = ctx => {
- let {params, preview} = ctx
- open Js.Promise
- WordPress.Api.fetchPosts(
- ~slug=params.slug,
- ~preview=preview->Belt.Option.getWithDefault(false),
- (),
- )->then_(((data, error)) => {
- let props = {error: error, data: data, preview: preview->Belt.Option.getWithDefault(false)}
- resolve({"props": props, "revalidate": Some(60)})
- }, _)
-}
-
-let getStaticPaths: Next.GetStaticPaths.t = () => {
- open Promise
- WordPress.Api.fetchPosts()->then(((data, _error)) => {
- let paths = switch data->Js.Nullable.toOption {
- | Some(posts) =>
- Belt.Array.map(posts, post => {
- let path: Next.GetStaticPaths.path = {params: {slug: post.slug}}
- path
- })
- | None => []
- }
- let return: Next.GetStaticPaths.return = {
- paths: paths,
- fallback: true,
- }
- resolve(return)
- })
-}
-
-let default = (props: props): React.element => {
- let {data, error, preview} = props
-
-}
diff --git a/components/PostDetail.res b/components/PostDetail.res
deleted file mode 100644
index d24fe09..0000000
--- a/components/PostDetail.res
+++ /dev/null
@@ -1,60 +0,0 @@
-@react.component
-let make = (
- ~posts: Js.Nullable.t,
- ~error: Js.Nullable.t,
- ~preview,
-) =>
-
- {switch (posts->Js.Nullable.toOption, error->Js.Nullable.toOption) {
- | (_, Some({message})) => {message->React.string}
- | (None, None) => {"Loading"->React.string}
- | (Some(posts), _) if Belt.Array.length(posts) > 0 => {
- let {title, featuredImage, date, status, content} = posts[0]
- let filteredTitle =
- title.rendered
- ->Js.String2.replaceByRe(%re("/ /g"), " ")
- ->Js.String2.replaceByRe(%re("/Private:\s/g"), "")
- <>
- {switch featuredImage->String.length {
- | 0 =>
- | _ =>
- }}
- {switch status {
- | "publish"
- | "private" => React.null
- | _ =>
-
- {status->React.string}
-
- }}
-
- {filteredTitle->React.string}
-
-
-
-
- {switch featuredImage->String.length {
- | 0 => React.null
- | _ =>
-
-
-
-
-
- }}
-
- >
- }
- | (Some(_empty), _) => <>
-
-
- {"Page Not Found"->React.string}
-
- {"The page you are looking for cannot be found."->React.string}
- >
- }}
-
-
diff --git a/components/SEO.res b/components/SEO.res
deleted file mode 100644
index ecc7902..0000000
--- a/components/SEO.res
+++ /dev/null
@@ -1,54 +0,0 @@
-@val @scope(("process", "env"))
-external nodeEnv: string = "NODE_ENV"
-
-let companyName = "Life Stewardship LLC"
-let siteTitle = companyName ++ ", Financial Planning & Coaching"
-let siteDescription = companyName ++ " is a financial service firm located in Madison, Mississippi."
-let siteOrigin =
- nodeEnv === "production" ? "https://lifestewardshipllc.com" : "http://localhost:3000"
-
-@react.component
-let make = (
- ~description: option=?,
- ~image: option=?,
- ~imageAlt: option=?,
- ~imageHeight: option=?,
- ~imageWidth: option=?,
- ~title: option=?,
-) => {
- let router = Next.useRouter()
- let title = title->Belt.Option.mapWithDefault(siteTitle, title => title ++ " | " ++ companyName)
- let description = description->Belt.Option.getWithDefault(siteDescription)
-
-
- {title->React.string}
-
-
- Belt.Option.getWithDefault("630")}
- />
- Belt.Option.getWithDefault("1200")}
- />
- Belt.Option.getWithDefault(siteTitle)}
- />
- Belt.Option.getWithDefault(siteOrigin ++ "/social-share.png")}
- />
-
-
-
-
-
-
-
-}
diff --git a/components/Spread.res b/components/Spread.res
deleted file mode 100644
index 42f6db7..0000000
--- a/components/Spread.res
+++ /dev/null
@@ -1,2 +0,0 @@
-@react.component
-let make = (~props, ~children) => React.cloneElement(children, props)
diff --git a/components/TextButton.res b/components/TextButton.res
deleted file mode 100644
index 71d2485..0000000
--- a/components/TextButton.res
+++ /dev/null
@@ -1,34 +0,0 @@
-type theme = Primary | Secondary
-
-@react.component
-let make = React.forwardRef((
- ~children,
- ~className="",
- ~href: option=?,
- ~onClick: option unit>=?,
- ~theme: theme=Primary,
- ~type_: option=?,
- _ref,
-) => {
- let element = switch href {
- | Some(_) => "a"
- | None => "button"
- }
-
- ReactDOMRe.createElement(
- element,
- ~props=ReactDOMRe.props(
- ~className=className ++
- " underline " ++
- switch theme {
- | Primary => "text-green-700"
- | Secondary => "text-gray-900"
- },
- ~href?,
- ~onClick?,
- ~type_?,
- (),
- ),
- [children],
- )
-})
diff --git a/components/TextInput.res b/components/TextInput.res
deleted file mode 100644
index 8ece4ee..0000000
--- a/components/TextInput.res
+++ /dev/null
@@ -1,85 +0,0 @@
-type formError = {
- subject: string,
- message: string,
-}
-
-@react.component
-let make = (
- ~className="",
- ~cols=?,
- ~errorMessage="Required.",
- ~errors=[],
- ~id,
- ~label=?,
- ~multiline=false,
- ~name,
- ~placeholder="",
- ~readOnly=false,
- ~required=false,
- ~rows=?,
- ~type_="text",
- ~value=?,
-) => {
- let error = Belt.Array.getBy(errors, e => e.subject === name)
- let textInput = ReactDOMRe.createElement(
- multiline ? "textarea" : "input",
- ~props=ReactDOMRe.props(
- ~className=(
- error->Belt.Option.isSome
- ? "border-red-300 placeholder-red-400 text-red-500"
- : "border-gray-300 placeholder-gray-400 text-gray-900"
- ) ++
- (readOnly
- ? " cursor-not-allowed opacity-50"
- : "") ++ " bg-white shadow-none border rounded-md p-2 block w-full",
- ~cols?,
- ~readOnly,
- ~id,
- ~name,
- ~placeholder,
- ~required,
- ~rows?,
- ~type_,
- ~value?,
- (),
- ),
- [],
- )
-
-
-
- {switch label {
- | Some(label) =>
-
Belt.Option.isSome ? "text-red-500" : "text-gray-900"
- ) ++ " text-base lg:text-xl text-gray-900 font-serif"}
- htmlFor=name>
- {label->React.string}
-
- | None => React.null
- }}
- {switch error {
- | Some(error) =>
-
-
-
-
- {error.message->React.string}
-
- | None => React.null
- }}
-
-
textInput
-
-}
diff --git a/components/Toast.res b/components/Toast.res
deleted file mode 100644
index 60d29b1..0000000
--- a/components/Toast.res
+++ /dev/null
@@ -1,48 +0,0 @@
-type context = Error | Success
-
-@react.component
-let make = (~children, ~className, ~context, ~onDismiss=?) => {
- let (visible, setVisible) = React.useState(_ => true)
-
- // Hide toast after 10 seconds
- React.useEffect0(() => {
- let toastTO = Js.Global.setTimeout(() => {setVisible(_ => false)}, 10000)
- Some(() => Js.Global.clearTimeout(toastTO))
- })
-
- let dismiss = event => {
- setVisible(_ => false)
- switch onDismiss {
- | Some(callback) => callback(event)
- | None => ()
- }
- }
-
- {
- visible
- ? " bg-green-600"
- | Error => " bg-red-500"
- } ++ " flex items-center text-white shadow-xl rounded"}>
-
-
-
-
-
- children
-
- : React.null
- }
-}
diff --git a/components/UnorderedList.res b/components/UnorderedList.res
deleted file mode 100644
index d15be73..0000000
--- a/components/UnorderedList.res
+++ /dev/null
@@ -1,7 +0,0 @@
-@react.component
-let make = (~children) =>
-
diff --git a/functions.php b/functions.php
new file mode 100644
index 0000000..e7ca32b
--- /dev/null
+++ b/functions.php
@@ -0,0 +1,151 @@
+ tags and allow WordPress to provide them
+ add_theme_support("title-tag");
+
+ // Experimental support for adding blocks inside nav menus
+ add_theme_support("block-nav-menus");
+
+ // Set default content for site editor.
+ add_filter("block_editor_settings_all", function ($settings) {
+ $settings["defaultBlockTemplate"] =
+ '
';
+ return $settings;
+ });
+
+ // Add support for core custom logo.
+ add_theme_support("custom-logo", [
+ "height" => 192,
+ "width" => 192,
+ "flex-width" => true,
+ "flex-height" => true,
+ ]);
+
+ // Enqueue editor styles.
+ add_editor_style("style.css");
+
+ // Enable RSS feed links.
+ add_theme_support("automatic-feed-links");
+ }
+}
+add_action("after_setup_theme", "lifestewardship_support");
+
+/**
+ * Enqueue the styles.
+ */
+function lifestewardship_styles() {
+ wp_enqueue_style(
+ "lifestewardship-style",
+ get_template_directory_uri() . "/style.css",
+ wp_get_theme()->get("Version"),
+ );
+}
+add_action("wp_enqueue_scripts", "lifestewardship_styles");
+
+/**
+ * Disable the fallback for the core/navigation block.
+ */
+function lifestewardship_core_navigation_render_fallback() {
+ return null;
+}
+add_filter(
+ "block_core_navigation_render_fallback",
+ "lifestewardship_core_navigation_render_fallback",
+);
+
+/**
+ * Disable embeds script to improve performance.
+ */
+function disable_embeds() {
+ wp_dequeue_script("wp-embed");
+}
+add_action("wp_footer", "disable_embeds");
+
+/**
+ * Disable the emojis to improve performance.
+ */
+function disable_emojis() {
+ remove_action("wp_head", "print_emoji_detection_script", 7);
+ remove_action("admin_print_scripts", "print_emoji_detection_script");
+ remove_action("wp_print_styles", "print_emoji_styles");
+ remove_action("admin_print_styles", "print_emoji_styles");
+ remove_filter("the_content_feed", "wp_staticize_emoji");
+ remove_filter("comment_text_rss", "wp_staticize_emoji");
+ remove_filter("wp_mail", "wp_staticize_emoji_for_email");
+ add_filter(
+ "wp_resource_hints",
+ "disable_emojis_remove_dns_prefetch",
+ 10,
+ 2,
+ );
+}
+add_action("init", "disable_emojis");
+
+/**
+ * Remove emoji CDN hostname from DNS prefetching hints.
+ *
+ * @param array $urls URLs to print for resource hints.
+ * @param string $relation_type The relation type the URLs are printed for.
+ * @return array Difference betwen the two arrays.
+ */
+function disable_emojis_remove_dns_prefetch($urls, $relation_type) {
+ if ("dns-prefetch" == $relation_type) {
+ /** This filter is documented in wp-includes/formatting.php */
+ $emoji_svg_url = apply_filters(
+ "emoji_svg_url",
+ "https://s.w.org/images/core/emoji/2/svg/",
+ );
+
+ $urls = array_diff($urls, [$emoji_svg_url]);
+ }
+
+ return $urls;
+}
+
+/**
+ * Add non-movable Post Featured Image block to further align block editor and
+ * website presentation.
+ */
+function inline_post_featured_image($post_type) {
+ $post_type_object = get_post_type_object($post_type);
+ $post_type_object->template = [
+ [
+ "core/post-featured-image",
+ [
+ "align" => "wide",
+ "lock" => ["move" => "true"],
+ ],
+ ],
+ ["core/paragraph"],
+ ];
+}
+add_action("init", function () {
+ inline_post_featured_image("page");
+ inline_post_featured_image("post");
+});
diff --git a/images/calendar.svg b/images/calendar.svg
new file mode 100644
index 0000000..de14c64
--- /dev/null
+++ b/images/calendar.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/images/check.svg b/images/check.svg
new file mode 100644
index 0000000..9c9e315
--- /dev/null
+++ b/images/check.svg
@@ -0,0 +1 @@
+
diff --git a/images/folder.svg b/images/folder.svg
new file mode 100644
index 0000000..7bab8b6
--- /dev/null
+++ b/images/folder.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/images/person.svg b/images/person.svg
new file mode 100644
index 0000000..5ecbc28
--- /dev/null
+++ b/images/person.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/images/tag.svg b/images/tag.svg
new file mode 100644
index 0000000..0e808ff
--- /dev/null
+++ b/images/tag.svg
@@ -0,0 +1,3 @@
+
+
+
diff --git a/index.php b/index.php
new file mode 100644
index 0000000..b3d9bbc
--- /dev/null
+++ b/index.php
@@ -0,0 +1 @@
+=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/@kwsites/file-exists/node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ },
+ "node_modules/@kwsites/promise-deferred": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz",
+ "integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==",
+ "dev": true
+ },
+ "node_modules/@prettier/plugin-php": {
+ "version": "0.17.6",
+ "resolved": "https://registry.npmjs.org/@prettier/plugin-php/-/plugin-php-0.17.6.tgz",
+ "integrity": "sha512-Nxkq+Gl8bGbutRV7e3/p5d+Bcftn75oH61RT8xzk44T5ET7fVP50pUdaOdvt704GSNr6wwmfBW8MhBz5IKt+fA==",
+ "dev": true,
+ "dependencies": {
+ "linguist-languages": "^7.5.1",
+ "mem": "^8.0.0",
+ "php-parser": "git+https://github.com/glayzzle/php-parser.git#27abcb2337ac6450c068ef064982dfabf77916a5"
+ },
+ "peerDependencies": {
+ "prettier": "^1.15.0 || ^2.0.0"
+ }
+ },
+ "node_modules/@sindresorhus/is": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-2.1.1.tgz",
+ "integrity": "sha512-/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/is?sponsor=1"
+ }
+ },
+ "node_modules/@szmarczak/http-timer": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz",
+ "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==",
+ "dev": true,
+ "dependencies": {
+ "defer-to-connect": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/@types/cacheable-request": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz",
+ "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==",
+ "dev": true,
+ "dependencies": {
+ "@types/http-cache-semantics": "*",
+ "@types/keyv": "*",
+ "@types/node": "*",
+ "@types/responselike": "*"
+ }
+ },
+ "node_modules/@types/http-cache-semantics": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz",
+ "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==",
+ "dev": true
+ },
+ "node_modules/@types/keyv": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.3.tgz",
+ "integrity": "sha512-FXCJgyyN3ivVgRoml4h94G/p3kY+u/B86La+QptcqJaWtBWtmc6TtkNfS40n9bIvyLteHh7zXOtgbobORKPbDg==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@types/node": {
+ "version": "16.11.7",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.7.tgz",
+ "integrity": "sha512-QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw==",
+ "dev": true
+ },
+ "node_modules/@types/responselike": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz",
+ "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==",
+ "dev": true,
+ "dependencies": {
+ "@types/node": "*"
+ }
+ },
+ "node_modules/@wordpress/env": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-4.1.3.tgz",
+ "integrity": "sha512-mU+MayYal+GghtbV5yGvBZPpVqm1L9ozcWqqiC9sLyMGrYKWWTMf0TRTaKBSo5DoJ4DNVCVbJkRS3MzGuCfSbQ==",
+ "dev": true,
+ "dependencies": {
+ "chalk": "^4.0.0",
+ "copy-dir": "^1.3.0",
+ "docker-compose": "^0.22.2",
+ "extract-zip": "^1.6.7",
+ "got": "^10.7.0",
+ "inquirer": "^7.1.0",
+ "js-yaml": "^3.13.1",
+ "ora": "^4.0.2",
+ "rimraf": "^3.0.2",
+ "simple-git": "^2.35.0",
+ "terminal-link": "^2.0.0",
+ "yargs": "^14.0.0"
+ },
+ "bin": {
+ "wp-env": "bin/wp-env"
+ }
+ },
+ "node_modules/ansi-escapes": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
+ "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
+ "dev": true,
+ "dependencies": {
+ "type-fest": "^0.21.3"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/ansi-escapes/node_modules/type-fest": {
+ "version": "0.21.3",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
+ "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^2.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/ansi-styles?sponsor=1"
+ }
+ },
+ "node_modules/argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "dependencies": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "node_modules/balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+ "dev": true
+ },
+ "node_modules/brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "dependencies": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "node_modules/buffer-crc32": {
+ "version": "0.2.13",
+ "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
+ "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
+ "dev": true,
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/buffer-from": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
+ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
+ "dev": true
+ },
+ "node_modules/cacheable-lookup": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-2.0.1.tgz",
+ "integrity": "sha512-EMMbsiOTcdngM/K6gV/OxF2x0t07+vMOWxZNSCRQMjO2MY2nhZQ6OYhOOpyQrbhqsgtvKGI7hcq6xjnA92USjg==",
+ "dev": true,
+ "dependencies": {
+ "@types/keyv": "^3.1.1",
+ "keyv": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/cacheable-request": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz",
+ "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==",
+ "dev": true,
+ "dependencies": {
+ "clone-response": "^1.0.2",
+ "get-stream": "^5.1.0",
+ "http-cache-semantics": "^4.0.0",
+ "keyv": "^4.0.0",
+ "lowercase-keys": "^2.0.0",
+ "normalize-url": "^6.0.1",
+ "responselike": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/chalk/chalk?sponsor=1"
+ }
+ },
+ "node_modules/chardet": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
+ "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
+ "dev": true
+ },
+ "node_modules/cli-cursor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
+ "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
+ "dev": true,
+ "dependencies": {
+ "restore-cursor": "^3.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/cli-spinners": {
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz",
+ "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/cli-width": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz",
+ "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==",
+ "dev": true,
+ "engines": {
+ "node": ">= 10"
+ }
+ },
+ "node_modules/cliui": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
+ "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
+ "dev": true,
+ "dependencies": {
+ "string-width": "^3.1.0",
+ "strip-ansi": "^5.2.0",
+ "wrap-ansi": "^5.1.0"
+ }
+ },
+ "node_modules/cliui/node_modules/ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/cliui/node_modules/emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "dev": true
+ },
+ "node_modules/cliui/node_modules/is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/cliui/node_modules/string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ "dev": true,
+ "dependencies": {
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/cliui/node_modules/strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/clone": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
+ "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8"
+ }
+ },
+ "node_modules/clone-response": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz",
+ "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=",
+ "dev": true,
+ "dependencies": {
+ "mimic-response": "^1.0.0"
+ }
+ },
+ "node_modules/clone-response/node_modules/mimic-response": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz",
+ "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "~1.1.4"
+ },
+ "engines": {
+ "node": ">=7.0.0"
+ }
+ },
+ "node_modules/color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "node_modules/concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
+ "dev": true
+ },
+ "node_modules/concat-stream": {
+ "version": "1.6.2",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
+ "dev": true,
+ "engines": [
+ "node >= 0.8"
+ ],
+ "dependencies": {
+ "buffer-from": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^2.2.2",
+ "typedarray": "^0.0.6"
+ }
+ },
+ "node_modules/copy-dir": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/copy-dir/-/copy-dir-1.3.0.tgz",
+ "integrity": "sha512-Q4+qBFnN4bwGwvtXXzbp4P/4iNk0MaiGAzvQ8OiMtlLjkIKjmNN689uVzShSM0908q7GoFHXIPx4zi75ocoaHw==",
+ "dev": true
+ },
+ "node_modules/core-util-is": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
+ "dev": true
+ },
+ "node_modules/debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "dependencies": {
+ "ms": "2.0.0"
+ }
+ },
+ "node_modules/decamelize": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
+ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/decompress-response": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-5.0.0.tgz",
+ "integrity": "sha512-TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw==",
+ "dev": true,
+ "dependencies": {
+ "mimic-response": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/defaults": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz",
+ "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=",
+ "dev": true,
+ "dependencies": {
+ "clone": "^1.0.2"
+ }
+ },
+ "node_modules/defer-to-connect": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz",
+ "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ }
+ },
+ "node_modules/docker-compose": {
+ "version": "0.22.2",
+ "resolved": "https://registry.npmjs.org/docker-compose/-/docker-compose-0.22.2.tgz",
+ "integrity": "sha512-iXWb5+LiYmylIMFXvGTYsjI1F+Xyx78Jm/uj1dxwwZLbWkUdH6yOXY5Nr3RjbYX15EgbGJCq78d29CmWQQQMPg==",
+ "dev": true,
+ "engines": {
+ "node": ">= 6.0.0"
+ }
+ },
+ "node_modules/duplexer3": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz",
+ "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=",
+ "dev": true
+ },
+ "node_modules/emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+ "dev": true
+ },
+ "node_modules/end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
+ "dev": true,
+ "dependencies": {
+ "once": "^1.4.0"
+ }
+ },
+ "node_modules/escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.8.0"
+ }
+ },
+ "node_modules/esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
+ "dev": true,
+ "bin": {
+ "esparse": "bin/esparse.js",
+ "esvalidate": "bin/esvalidate.js"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/external-editor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
+ "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
+ "dev": true,
+ "dependencies": {
+ "chardet": "^0.7.0",
+ "iconv-lite": "^0.4.24",
+ "tmp": "^0.0.33"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/extract-zip": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz",
+ "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==",
+ "dev": true,
+ "dependencies": {
+ "concat-stream": "^1.6.2",
+ "debug": "^2.6.9",
+ "mkdirp": "^0.5.4",
+ "yauzl": "^2.10.0"
+ },
+ "bin": {
+ "extract-zip": "cli.js"
+ }
+ },
+ "node_modules/fd-slicer": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
+ "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=",
+ "dev": true,
+ "dependencies": {
+ "pend": "~1.2.0"
+ }
+ },
+ "node_modules/figures": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
+ "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
+ "dev": true,
+ "dependencies": {
+ "escape-string-regexp": "^1.0.5"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+ "dev": true,
+ "dependencies": {
+ "locate-path": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
+ "dev": true
+ },
+ "node_modules/get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+ "dev": true,
+ "engines": {
+ "node": "6.* || 8.* || >= 10.*"
+ }
+ },
+ "node_modules/get-stream": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+ "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+ "dev": true,
+ "dependencies": {
+ "pump": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/glob": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
+ "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
+ "dev": true,
+ "dependencies": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ },
+ "engines": {
+ "node": "*"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/got": {
+ "version": "10.7.0",
+ "resolved": "https://registry.npmjs.org/got/-/got-10.7.0.tgz",
+ "integrity": "sha512-aWTDeNw9g+XqEZNcTjMMZSy7B7yE9toWOFYip7ofFTLleJhvZwUxxTxkTpKvF+p1SAA4VHmuEy7PiHTHyq8tJg==",
+ "dev": true,
+ "dependencies": {
+ "@sindresorhus/is": "^2.0.0",
+ "@szmarczak/http-timer": "^4.0.0",
+ "@types/cacheable-request": "^6.0.1",
+ "cacheable-lookup": "^2.0.0",
+ "cacheable-request": "^7.0.1",
+ "decompress-response": "^5.0.0",
+ "duplexer3": "^0.1.4",
+ "get-stream": "^5.0.0",
+ "lowercase-keys": "^2.0.0",
+ "mimic-response": "^2.1.0",
+ "p-cancelable": "^2.0.0",
+ "p-event": "^4.0.0",
+ "responselike": "^2.0.0",
+ "to-readable-stream": "^2.0.0",
+ "type-fest": "^0.10.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/got?sponsor=1"
+ }
+ },
+ "node_modules/has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/http-cache-semantics": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz",
+ "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==",
+ "dev": true
+ },
+ "node_modules/iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "dev": true,
+ "dependencies": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ },
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
+ "dev": true,
+ "dependencies": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "node_modules/inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true
+ },
+ "node_modules/inquirer": {
+ "version": "7.3.3",
+ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz",
+ "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-escapes": "^4.2.1",
+ "chalk": "^4.1.0",
+ "cli-cursor": "^3.1.0",
+ "cli-width": "^3.0.0",
+ "external-editor": "^3.0.3",
+ "figures": "^3.0.0",
+ "lodash": "^4.17.19",
+ "mute-stream": "0.0.8",
+ "run-async": "^2.4.0",
+ "rxjs": "^6.6.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0",
+ "through": "^2.3.6"
+ },
+ "engines": {
+ "node": ">=8.0.0"
+ }
+ },
+ "node_modules/is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/is-interactive": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz",
+ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "dev": true
+ },
+ "node_modules/js-yaml": {
+ "version": "3.14.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
+ "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
+ "dev": true,
+ "dependencies": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ },
+ "bin": {
+ "js-yaml": "bin/js-yaml.js"
+ }
+ },
+ "node_modules/json-buffer": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
+ "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
+ "dev": true
+ },
+ "node_modules/keyv": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.4.tgz",
+ "integrity": "sha512-vqNHbAc8BBsxk+7QBYLW0Y219rWcClspR6WSeoHYKG5mnsSoOH+BL1pWq02DDCVdvvuUny5rkBlzMRzoqc+GIg==",
+ "dev": true,
+ "dependencies": {
+ "json-buffer": "3.0.1"
+ }
+ },
+ "node_modules/linguist-languages": {
+ "version": "7.15.0",
+ "resolved": "https://registry.npmjs.org/linguist-languages/-/linguist-languages-7.15.0.tgz",
+ "integrity": "sha512-qkSSNDjDDycZ2Wcw+GziNBB3nNo3ddYUInM/PL8Amgwbd9RQ/BKGj2/1d6mdxKgBFnUqZuaDbkIwkE4KUwwmtQ==",
+ "dev": true
+ },
+ "node_modules/locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "dev": true,
+ "dependencies": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "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/log-symbols": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz",
+ "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==",
+ "dev": true,
+ "dependencies": {
+ "chalk": "^2.4.2"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/log-symbols/node_modules/ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^1.9.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/log-symbols/node_modules/chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/log-symbols/node_modules/color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "1.1.3"
+ }
+ },
+ "node_modules/log-symbols/node_modules/color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+ "dev": true
+ },
+ "node_modules/log-symbols/node_modules/has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/log-symbols/node_modules/supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^3.0.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/lowercase-keys": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz",
+ "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/map-age-cleaner": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz",
+ "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==",
+ "dev": true,
+ "dependencies": {
+ "p-defer": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/mem": {
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz",
+ "integrity": "sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==",
+ "dev": true,
+ "dependencies": {
+ "map-age-cleaner": "^0.1.3",
+ "mimic-fn": "^3.1.0"
+ },
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sindresorhus/mem?sponsor=1"
+ }
+ },
+ "node_modules/mem/node_modules/mimic-fn": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz",
+ "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/mimic-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/mimic-response": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz",
+ "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/minimatch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "dev": true,
+ "dependencies": {
+ "brace-expansion": "^1.1.7"
+ },
+ "engines": {
+ "node": "*"
+ }
+ },
+ "node_modules/minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
+ "dev": true
+ },
+ "node_modules/mkdirp": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "dev": true,
+ "dependencies": {
+ "minimist": "^1.2.5"
+ },
+ "bin": {
+ "mkdirp": "bin/cmd.js"
+ }
+ },
+ "node_modules/ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ },
+ "node_modules/mute-stream": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
+ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
+ "dev": true
+ },
+ "node_modules/normalize-url": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz",
+ "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==",
+ "dev": true,
+ "engines": {
+ "node": ">=10"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
+ "dev": true,
+ "dependencies": {
+ "wrappy": "1"
+ }
+ },
+ "node_modules/onetime": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
+ "dev": true,
+ "dependencies": {
+ "mimic-fn": "^2.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/ora": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz",
+ "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==",
+ "dev": true,
+ "dependencies": {
+ "chalk": "^3.0.0",
+ "cli-cursor": "^3.1.0",
+ "cli-spinners": "^2.2.0",
+ "is-interactive": "^1.0.0",
+ "log-symbols": "^3.0.0",
+ "mute-stream": "0.0.8",
+ "strip-ansi": "^6.0.0",
+ "wcwidth": "^1.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/ora/node_modules/chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/os-tmpdir": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
+ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/p-cancelable": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz",
+ "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-defer": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
+ "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/p-event": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz",
+ "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==",
+ "dev": true,
+ "dependencies": {
+ "p-timeout": "^3.1.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-finally": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
+ "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
+ "dependencies": {
+ "p-try": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "dev": true,
+ "dependencies": {
+ "p-limit": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/p-timeout": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz",
+ "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==",
+ "dev": true,
+ "dependencies": {
+ "p-finally": "^1.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/p-try": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/pend": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
+ "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
+ "dev": true
+ },
+ "node_modules/php-parser": {
+ "version": "3.0.2",
+ "resolved": "git+ssh://git@github.com/glayzzle/php-parser.git#27abcb2337ac6450c068ef064982dfabf77916a5",
+ "integrity": "sha512-cYehx6/hreMqBQ04tijWuOLz4cjfC93CGd+iWiyBMtpg18gBU9EdZHhI+uyLTNIysIjnaCTKqFX6kwEy1lMdgw==",
+ "dev": true,
+ "license": "BSD-3-Clause"
+ },
+ "node_modules/prettier": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.4.1.tgz",
+ "integrity": "sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA==",
+ "dev": true,
+ "bin": {
+ "prettier": "bin-prettier.js"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ }
+ },
+ "node_modules/process-nextick-args": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+ "dev": true
+ },
+ "node_modules/pump": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
+ "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
+ "dev": true,
+ "dependencies": {
+ "end-of-stream": "^1.1.0",
+ "once": "^1.3.1"
+ }
+ },
+ "node_modules/readable-stream": {
+ "version": "2.3.7",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
+ "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
+ "dev": true,
+ "dependencies": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "node_modules/require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
+ "dev": true,
+ "engines": {
+ "node": ">=0.10.0"
+ }
+ },
+ "node_modules/require-main-filename": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
+ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
+ "dev": true
+ },
+ "node_modules/responselike": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz",
+ "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==",
+ "dev": true,
+ "dependencies": {
+ "lowercase-keys": "^2.0.0"
+ }
+ },
+ "node_modules/restore-cursor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
+ "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
+ "dev": true,
+ "dependencies": {
+ "onetime": "^5.1.0",
+ "signal-exit": "^3.0.2"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "dev": true,
+ "dependencies": {
+ "glob": "^7.1.3"
+ },
+ "bin": {
+ "rimraf": "bin.js"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/isaacs"
+ }
+ },
+ "node_modules/run-async": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
+ "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==",
+ "dev": true,
+ "engines": {
+ "node": ">=0.12.0"
+ }
+ },
+ "node_modules/rxjs": {
+ "version": "6.6.7",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
+ "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==",
+ "dev": true,
+ "dependencies": {
+ "tslib": "^1.9.0"
+ },
+ "engines": {
+ "npm": ">=2.0.0"
+ }
+ },
+ "node_modules/safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "dev": true
+ },
+ "node_modules/safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "dev": true
+ },
+ "node_modules/set-blocking": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
+ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
+ "dev": true
+ },
+ "node_modules/signal-exit": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz",
+ "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==",
+ "dev": true
+ },
+ "node_modules/simple-git": {
+ "version": "2.47.0",
+ "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-2.47.0.tgz",
+ "integrity": "sha512-+HfCpqPBEZTPWiW9fPdbiPJDslM22MLqrktfzNKyI2pWaJa6DhfNVx4Mds04KZzVv5vjC9/ksw3y5gVf8ECWDg==",
+ "dev": true,
+ "dependencies": {
+ "@kwsites/file-exists": "^1.1.1",
+ "@kwsites/promise-deferred": "^1.1.1",
+ "debug": "^4.3.2"
+ }
+ },
+ "node_modules/simple-git/node_modules/debug": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+ "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
+ "dev": true,
+ "dependencies": {
+ "ms": "2.1.2"
+ },
+ "engines": {
+ "node": ">=6.0"
+ },
+ "peerDependenciesMeta": {
+ "supports-color": {
+ "optional": true
+ }
+ }
+ },
+ "node_modules/simple-git/node_modules/ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ },
+ "node_modules/sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
+ "dev": true
+ },
+ "node_modules/string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "dev": true,
+ "dependencies": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "node_modules/string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "dev": true,
+ "dependencies": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^5.0.1"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/supports-hyperlinks": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz",
+ "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==",
+ "dev": true,
+ "dependencies": {
+ "has-flag": "^4.0.0",
+ "supports-color": "^7.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/terminal-link": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz",
+ "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==",
+ "dev": true,
+ "dependencies": {
+ "ansi-escapes": "^4.2.1",
+ "supports-hyperlinks": "^2.0.0"
+ },
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/through": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
+ "dev": true
+ },
+ "node_modules/tmp": {
+ "version": "0.0.33",
+ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
+ "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
+ "dev": true,
+ "dependencies": {
+ "os-tmpdir": "~1.0.2"
+ },
+ "engines": {
+ "node": ">=0.6.0"
+ }
+ },
+ "node_modules/to-readable-stream": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-2.1.0.tgz",
+ "integrity": "sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ }
+ },
+ "node_modules/tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ },
+ "node_modules/type-fest": {
+ "version": "0.10.0",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.10.0.tgz",
+ "integrity": "sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw==",
+ "dev": true,
+ "engines": {
+ "node": ">=8"
+ },
+ "funding": {
+ "url": "https://github.com/sponsors/sindresorhus"
+ }
+ },
+ "node_modules/typedarray": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
+ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
+ "dev": true
+ },
+ "node_modules/util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
+ "dev": true
+ },
+ "node_modules/wcwidth": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
+ "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=",
+ "dev": true,
+ "dependencies": {
+ "defaults": "^1.0.3"
+ }
+ },
+ "node_modules/which-module": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
+ "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
+ "dev": true
+ },
+ "node_modules/wrap-ansi": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
+ "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
+ "dev": true,
+ "dependencies": {
+ "ansi-styles": "^3.2.0",
+ "string-width": "^3.0.0",
+ "strip-ansi": "^5.0.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "dependencies": {
+ "color-convert": "^1.9.0"
+ },
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
+ "dev": true,
+ "dependencies": {
+ "color-name": "1.1.3"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+ "dev": true
+ },
+ "node_modules/wrap-ansi/node_modules/emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "dev": true
+ },
+ "node_modules/wrap-ansi/node_modules/is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ "dev": true,
+ "dependencies": {
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/wrap-ansi/node_modules/strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
+ "dev": true
+ },
+ "node_modules/y18n": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
+ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
+ "dev": true
+ },
+ "node_modules/yargs": {
+ "version": "14.2.3",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz",
+ "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==",
+ "dev": true,
+ "dependencies": {
+ "cliui": "^5.0.0",
+ "decamelize": "^1.2.0",
+ "find-up": "^3.0.0",
+ "get-caller-file": "^2.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^2.0.0",
+ "set-blocking": "^2.0.0",
+ "string-width": "^3.0.0",
+ "which-module": "^2.0.0",
+ "y18n": "^4.0.0",
+ "yargs-parser": "^15.0.1"
+ }
+ },
+ "node_modules/yargs-parser": {
+ "version": "15.0.3",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.3.tgz",
+ "integrity": "sha512-/MVEVjTXy/cGAjdtQf8dW3V9b97bPN7rNn8ETj6BmAQL7ibC7O1Q9SPJbGjgh3SlwoBNXMzj/ZGIj8mBgl12YA==",
+ "dev": true,
+ "dependencies": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ }
+ },
+ "node_modules/yargs/node_modules/ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
+ "dev": true,
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/yargs/node_modules/emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "dev": true
+ },
+ "node_modules/yargs/node_modules/is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
+ "node_modules/yargs/node_modules/string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ "dev": true,
+ "dependencies": {
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/yargs/node_modules/strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "dependencies": {
+ "ansi-regex": "^4.1.0"
+ },
+ "engines": {
+ "node": ">=6"
+ }
+ },
+ "node_modules/yauzl": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
+ "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
+ "dev": true,
+ "dependencies": {
+ "buffer-crc32": "~0.2.3",
+ "fd-slicer": "~1.1.0"
+ }
+ }
+ },
+ "dependencies": {
+ "@kwsites/file-exists": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@kwsites/file-exists/-/file-exists-1.1.1.tgz",
+ "integrity": "sha512-m9/5YGR18lIwxSFDwfE3oA7bWuq9kdau6ugN4H2rJeyhFQZcG9AgSHkQtSD15a8WvTgfz9aikZMrKPHvbpqFiw==",
+ "dev": true,
+ "requires": {
+ "debug": "^4.1.1"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+ "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
+ "dev": true,
+ "requires": {
+ "ms": "2.1.2"
+ }
+ },
+ "ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ }
+ }
+ },
+ "@kwsites/promise-deferred": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/@kwsites/promise-deferred/-/promise-deferred-1.1.1.tgz",
+ "integrity": "sha512-GaHYm+c0O9MjZRu0ongGBRbinu8gVAMd2UZjji6jVmqKtZluZnptXGWhz1E8j8D2HJ3f/yMxKAUC0b+57wncIw==",
+ "dev": true
+ },
+ "@prettier/plugin-php": {
+ "version": "0.17.6",
+ "resolved": "https://registry.npmjs.org/@prettier/plugin-php/-/plugin-php-0.17.6.tgz",
+ "integrity": "sha512-Nxkq+Gl8bGbutRV7e3/p5d+Bcftn75oH61RT8xzk44T5ET7fVP50pUdaOdvt704GSNr6wwmfBW8MhBz5IKt+fA==",
+ "dev": true,
+ "requires": {
+ "linguist-languages": "^7.5.1",
+ "mem": "^8.0.0",
+ "php-parser": "git+https://github.com/glayzzle/php-parser.git#27abcb2337ac6450c068ef064982dfabf77916a5"
+ }
+ },
+ "@sindresorhus/is": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@sindresorhus/is/-/is-2.1.1.tgz",
+ "integrity": "sha512-/aPsuoj/1Dw/kzhkgz+ES6TxG0zfTMGLwuK2ZG00k/iJzYHTLCE8mVU8EPqEOp/lmxPoq1C1C9RYToRKb2KEfg==",
+ "dev": true
+ },
+ "@szmarczak/http-timer": {
+ "version": "4.0.6",
+ "resolved": "https://registry.npmjs.org/@szmarczak/http-timer/-/http-timer-4.0.6.tgz",
+ "integrity": "sha512-4BAffykYOgO+5nzBWYwE3W90sBgLJoUPRWWcL8wlyiM8IB8ipJz3UMJ9KXQd1RKQXpKp8Tutn80HZtWsu2u76w==",
+ "dev": true,
+ "requires": {
+ "defer-to-connect": "^2.0.0"
+ }
+ },
+ "@types/cacheable-request": {
+ "version": "6.0.2",
+ "resolved": "https://registry.npmjs.org/@types/cacheable-request/-/cacheable-request-6.0.2.tgz",
+ "integrity": "sha512-B3xVo+dlKM6nnKTcmm5ZtY/OL8bOAOd2Olee9M1zft65ox50OzjEHW91sDiU9j6cvW8Ejg1/Qkf4xd2kugApUA==",
+ "dev": true,
+ "requires": {
+ "@types/http-cache-semantics": "*",
+ "@types/keyv": "*",
+ "@types/node": "*",
+ "@types/responselike": "*"
+ }
+ },
+ "@types/http-cache-semantics": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/@types/http-cache-semantics/-/http-cache-semantics-4.0.1.tgz",
+ "integrity": "sha512-SZs7ekbP8CN0txVG2xVRH6EgKmEm31BOxA07vkFaETzZz1xh+cbt8BcI0slpymvwhx5dlFnQG2rTlPVQn+iRPQ==",
+ "dev": true
+ },
+ "@types/keyv": {
+ "version": "3.1.3",
+ "resolved": "https://registry.npmjs.org/@types/keyv/-/keyv-3.1.3.tgz",
+ "integrity": "sha512-FXCJgyyN3ivVgRoml4h94G/p3kY+u/B86La+QptcqJaWtBWtmc6TtkNfS40n9bIvyLteHh7zXOtgbobORKPbDg==",
+ "dev": true,
+ "requires": {
+ "@types/node": "*"
+ }
+ },
+ "@types/node": {
+ "version": "16.11.7",
+ "resolved": "https://registry.npmjs.org/@types/node/-/node-16.11.7.tgz",
+ "integrity": "sha512-QB5D2sqfSjCmTuWcBWyJ+/44bcjO7VbjSbOE0ucoVbAsSNQc4Lt6QkgkVXkTDwkL4z/beecZNDvVX15D4P8Jbw==",
+ "dev": true
+ },
+ "@types/responselike": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/@types/responselike/-/responselike-1.0.0.tgz",
+ "integrity": "sha512-85Y2BjiufFzaMIlvJDvTTB8Fxl2xfLo4HgmHzVBz08w4wDePCTjYw66PdrolO0kzli3yam/YCgRufyo1DdQVTA==",
+ "dev": true,
+ "requires": {
+ "@types/node": "*"
+ }
+ },
+ "@wordpress/env": {
+ "version": "4.1.3",
+ "resolved": "https://registry.npmjs.org/@wordpress/env/-/env-4.1.3.tgz",
+ "integrity": "sha512-mU+MayYal+GghtbV5yGvBZPpVqm1L9ozcWqqiC9sLyMGrYKWWTMf0TRTaKBSo5DoJ4DNVCVbJkRS3MzGuCfSbQ==",
+ "dev": true,
+ "requires": {
+ "chalk": "^4.0.0",
+ "copy-dir": "^1.3.0",
+ "docker-compose": "^0.22.2",
+ "extract-zip": "^1.6.7",
+ "got": "^10.7.0",
+ "inquirer": "^7.1.0",
+ "js-yaml": "^3.13.1",
+ "ora": "^4.0.2",
+ "rimraf": "^3.0.2",
+ "simple-git": "^2.35.0",
+ "terminal-link": "^2.0.0",
+ "yargs": "^14.0.0"
+ }
+ },
+ "ansi-escapes": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/ansi-escapes/-/ansi-escapes-4.3.2.tgz",
+ "integrity": "sha512-gKXj5ALrKWQLsYG9jlTRmR/xKluxHV+Z9QEwNIgCfM1/uwPMCuzVVnh5mwTd+OuBZcwSIMbqssNWRm1lE51QaQ==",
+ "dev": true,
+ "requires": {
+ "type-fest": "^0.21.3"
+ },
+ "dependencies": {
+ "type-fest": {
+ "version": "0.21.3",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.21.3.tgz",
+ "integrity": "sha512-t0rzBq87m3fVcduHDUFhKmyyX+9eo6WQjZvf51Ea/M0Q7+T374Jp1aUiyUl0GKxp8M/OETVHSDvmkyPgvX+X2w==",
+ "dev": true
+ }
+ }
+ },
+ "ansi-regex": {
+ "version": "5.0.1",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-5.0.1.tgz",
+ "integrity": "sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "4.3.0",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-4.3.0.tgz",
+ "integrity": "sha512-zbB9rCJAT1rbjiVDb2hqKFHNYLxgtk8NURxZ3IZwD3F6NtxbXZQCnnSi1Lkx+IDohdPlFp222wVALIheZJQSEg==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^2.0.1"
+ }
+ },
+ "argparse": {
+ "version": "1.0.10",
+ "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz",
+ "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==",
+ "dev": true,
+ "requires": {
+ "sprintf-js": "~1.0.2"
+ }
+ },
+ "balanced-match": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz",
+ "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==",
+ "dev": true
+ },
+ "brace-expansion": {
+ "version": "1.1.11",
+ "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz",
+ "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==",
+ "dev": true,
+ "requires": {
+ "balanced-match": "^1.0.0",
+ "concat-map": "0.0.1"
+ }
+ },
+ "buffer-crc32": {
+ "version": "0.2.13",
+ "resolved": "https://registry.npmjs.org/buffer-crc32/-/buffer-crc32-0.2.13.tgz",
+ "integrity": "sha1-DTM+PwDqxQqhRUq9MO+MKl2ackI=",
+ "dev": true
+ },
+ "buffer-from": {
+ "version": "1.1.2",
+ "resolved": "https://registry.npmjs.org/buffer-from/-/buffer-from-1.1.2.tgz",
+ "integrity": "sha512-E+XQCRwSbaaiChtv6k6Dwgc+bx+Bs6vuKJHHl5kox/BaKbhiXzqQOwK4cO22yElGp2OCmjwVhT3HmxgyPGnJfQ==",
+ "dev": true
+ },
+ "cacheable-lookup": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/cacheable-lookup/-/cacheable-lookup-2.0.1.tgz",
+ "integrity": "sha512-EMMbsiOTcdngM/K6gV/OxF2x0t07+vMOWxZNSCRQMjO2MY2nhZQ6OYhOOpyQrbhqsgtvKGI7hcq6xjnA92USjg==",
+ "dev": true,
+ "requires": {
+ "@types/keyv": "^3.1.1",
+ "keyv": "^4.0.0"
+ }
+ },
+ "cacheable-request": {
+ "version": "7.0.2",
+ "resolved": "https://registry.npmjs.org/cacheable-request/-/cacheable-request-7.0.2.tgz",
+ "integrity": "sha512-pouW8/FmiPQbuGpkXQ9BAPv/Mo5xDGANgSNXzTzJ8DrKGuXOssM4wIQRjfanNRh3Yu5cfYPvcorqbhg2KIJtew==",
+ "dev": true,
+ "requires": {
+ "clone-response": "^1.0.2",
+ "get-stream": "^5.1.0",
+ "http-cache-semantics": "^4.0.0",
+ "keyv": "^4.0.0",
+ "lowercase-keys": "^2.0.0",
+ "normalize-url": "^6.0.1",
+ "responselike": "^2.0.0"
+ }
+ },
+ "camelcase": {
+ "version": "5.3.1",
+ "resolved": "https://registry.npmjs.org/camelcase/-/camelcase-5.3.1.tgz",
+ "integrity": "sha512-L28STB170nwWS63UjtlEOE3dldQApaJXZkOI1uMFfzf3rRuPegHaHesyee+YxQ+W6SvRDQV6UrdOdRiR153wJg==",
+ "dev": true
+ },
+ "chalk": {
+ "version": "4.1.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-4.1.2.tgz",
+ "integrity": "sha512-oKnbhFyRIXpUuez8iBMmyEa4nbj4IOQyuhc/wy9kY7/WVPcwIO9VA668Pu8RkO7+0G76SLROeyw9CpQ061i4mA==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ },
+ "chardet": {
+ "version": "0.7.0",
+ "resolved": "https://registry.npmjs.org/chardet/-/chardet-0.7.0.tgz",
+ "integrity": "sha512-mT8iDcrh03qDGRRmoA2hmBJnxpllMR+0/0qlzjqZES6NdiWDcZkCNAk4rPFZ9Q85r27unkiNNg8ZOiwZXBHwcA==",
+ "dev": true
+ },
+ "cli-cursor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-3.1.0.tgz",
+ "integrity": "sha512-I/zHAwsKf9FqGoXM4WWRACob9+SNukZTd94DWF57E4toouRulbCxcUh6RKUEOQlYTHJnzkPMySvPNaaSLNfLZw==",
+ "dev": true,
+ "requires": {
+ "restore-cursor": "^3.1.0"
+ }
+ },
+ "cli-spinners": {
+ "version": "2.6.1",
+ "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.6.1.tgz",
+ "integrity": "sha512-x/5fWmGMnbKQAaNwN+UZlV79qBLM9JFnJuJ03gIi5whrob0xV0ofNVHy9DhwGdsMJQc2OKv0oGmLzvaqvAVv+g==",
+ "dev": true
+ },
+ "cli-width": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/cli-width/-/cli-width-3.0.0.tgz",
+ "integrity": "sha512-FxqpkPPwu1HjuN93Omfm4h8uIanXofW0RxVEW3k5RKx+mJJYSthzNhp32Kzxxy3YAEZ/Dc/EWN1vZRY0+kOhbw==",
+ "dev": true
+ },
+ "cliui": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
+ "integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
+ "dev": true,
+ "requires": {
+ "string-width": "^3.1.0",
+ "strip-ansi": "^5.2.0",
+ "wrap-ansi": "^5.1.0"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
+ "dev": true
+ },
+ "emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "dev": true
+ },
+ "is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
+ "dev": true
+ },
+ "string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^4.1.0"
+ }
+ }
+ }
+ },
+ "clone": {
+ "version": "1.0.4",
+ "resolved": "https://registry.npmjs.org/clone/-/clone-1.0.4.tgz",
+ "integrity": "sha1-2jCcwmPfFZlMaIypAheco8fNfH4=",
+ "dev": true
+ },
+ "clone-response": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/clone-response/-/clone-response-1.0.2.tgz",
+ "integrity": "sha1-0dyXOSAxTfZ/vrlCI7TuNQI56Ws=",
+ "dev": true,
+ "requires": {
+ "mimic-response": "^1.0.0"
+ },
+ "dependencies": {
+ "mimic-response": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-1.0.1.tgz",
+ "integrity": "sha512-j5EctnkH7amfV/q5Hgmoal1g2QHFJRraOtmx0JpIqkxhBhI/lJSl1nMpQ45hVarwNETOoWEimndZ4QK0RHxuxQ==",
+ "dev": true
+ }
+ }
+ },
+ "color-convert": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-2.0.1.tgz",
+ "integrity": "sha512-RRECPsj7iu/xb5oKYcsFHSppFNnsj/52OVTRKb4zP5onXwVF3zVmmToNcOfGC+CRDpfK/U584fMg38ZHCaElKQ==",
+ "dev": true,
+ "requires": {
+ "color-name": "~1.1.4"
+ }
+ },
+ "color-name": {
+ "version": "1.1.4",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.4.tgz",
+ "integrity": "sha512-dOy+3AuW3a2wNbZHIuMZpTcgjGuLU/uBL/ubcZF9OXbDo8ff4O8yVp5Bf0efS8uEoYo5q4Fx7dY9OgQGXgAsQA==",
+ "dev": true
+ },
+ "concat-map": {
+ "version": "0.0.1",
+ "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz",
+ "integrity": "sha1-2Klr13/Wjfd5OnMDajug1UBdR3s=",
+ "dev": true
+ },
+ "concat-stream": {
+ "version": "1.6.2",
+ "resolved": "https://registry.npmjs.org/concat-stream/-/concat-stream-1.6.2.tgz",
+ "integrity": "sha512-27HBghJxjiZtIk3Ycvn/4kbJk/1uZuJFfuPEns6LaEvpvG1f0hTea8lilrouyo9mVc2GWdcEZ8OLoGmSADlrCw==",
+ "dev": true,
+ "requires": {
+ "buffer-from": "^1.0.0",
+ "inherits": "^2.0.3",
+ "readable-stream": "^2.2.2",
+ "typedarray": "^0.0.6"
+ }
+ },
+ "copy-dir": {
+ "version": "1.3.0",
+ "resolved": "https://registry.npmjs.org/copy-dir/-/copy-dir-1.3.0.tgz",
+ "integrity": "sha512-Q4+qBFnN4bwGwvtXXzbp4P/4iNk0MaiGAzvQ8OiMtlLjkIKjmNN689uVzShSM0908q7GoFHXIPx4zi75ocoaHw==",
+ "dev": true
+ },
+ "core-util-is": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/core-util-is/-/core-util-is-1.0.3.tgz",
+ "integrity": "sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==",
+ "dev": true
+ },
+ "debug": {
+ "version": "2.6.9",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-2.6.9.tgz",
+ "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==",
+ "dev": true,
+ "requires": {
+ "ms": "2.0.0"
+ }
+ },
+ "decamelize": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/decamelize/-/decamelize-1.2.0.tgz",
+ "integrity": "sha1-9lNNFRSCabIDUue+4m9QH5oZEpA=",
+ "dev": true
+ },
+ "decompress-response": {
+ "version": "5.0.0",
+ "resolved": "https://registry.npmjs.org/decompress-response/-/decompress-response-5.0.0.tgz",
+ "integrity": "sha512-TLZWWybuxWgoW7Lykv+gq9xvzOsUjQ9tF09Tj6NSTYGMTCHNXzrPnD6Hi+TgZq19PyTAGH4Ll/NIM/eTGglnMw==",
+ "dev": true,
+ "requires": {
+ "mimic-response": "^2.0.0"
+ }
+ },
+ "defaults": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/defaults/-/defaults-1.0.3.tgz",
+ "integrity": "sha1-xlYFHpgX2f8I7YgUd/P+QBnz730=",
+ "dev": true,
+ "requires": {
+ "clone": "^1.0.2"
+ }
+ },
+ "defer-to-connect": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/defer-to-connect/-/defer-to-connect-2.0.1.tgz",
+ "integrity": "sha512-4tvttepXG1VaYGrRibk5EwJd1t4udunSOVMdLSAL6mId1ix438oPwPZMALY41FCijukO1L0twNcGsdzS7dHgDg==",
+ "dev": true
+ },
+ "docker-compose": {
+ "version": "0.22.2",
+ "resolved": "https://registry.npmjs.org/docker-compose/-/docker-compose-0.22.2.tgz",
+ "integrity": "sha512-iXWb5+LiYmylIMFXvGTYsjI1F+Xyx78Jm/uj1dxwwZLbWkUdH6yOXY5Nr3RjbYX15EgbGJCq78d29CmWQQQMPg==",
+ "dev": true
+ },
+ "duplexer3": {
+ "version": "0.1.4",
+ "resolved": "https://registry.npmjs.org/duplexer3/-/duplexer3-0.1.4.tgz",
+ "integrity": "sha1-7gHdHKwO08vH/b6jfcCo8c4ALOI=",
+ "dev": true
+ },
+ "emoji-regex": {
+ "version": "8.0.0",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-8.0.0.tgz",
+ "integrity": "sha512-MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==",
+ "dev": true
+ },
+ "end-of-stream": {
+ "version": "1.4.4",
+ "resolved": "https://registry.npmjs.org/end-of-stream/-/end-of-stream-1.4.4.tgz",
+ "integrity": "sha512-+uw1inIHVPQoaVuHzRyXd21icM+cnt4CzD5rW+NC1wjOUSTOs+Te7FOv7AhN7vS9x/oIyhLP5PR1H+phQAHu5Q==",
+ "dev": true,
+ "requires": {
+ "once": "^1.4.0"
+ }
+ },
+ "escape-string-regexp": {
+ "version": "1.0.5",
+ "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz",
+ "integrity": "sha1-G2HAViGQqN/2rjuyzwIAyhMLhtQ=",
+ "dev": true
+ },
+ "esprima": {
+ "version": "4.0.1",
+ "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz",
+ "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==",
+ "dev": true
+ },
+ "external-editor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/external-editor/-/external-editor-3.1.0.tgz",
+ "integrity": "sha512-hMQ4CX1p1izmuLYyZqLMO/qGNw10wSv9QDCPfzXfyFrOaCSSoRfqE1Kf1s5an66J5JZC62NewG+mK49jOCtQew==",
+ "dev": true,
+ "requires": {
+ "chardet": "^0.7.0",
+ "iconv-lite": "^0.4.24",
+ "tmp": "^0.0.33"
+ }
+ },
+ "extract-zip": {
+ "version": "1.7.0",
+ "resolved": "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz",
+ "integrity": "sha512-xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==",
+ "dev": true,
+ "requires": {
+ "concat-stream": "^1.6.2",
+ "debug": "^2.6.9",
+ "mkdirp": "^0.5.4",
+ "yauzl": "^2.10.0"
+ }
+ },
+ "fd-slicer": {
+ "version": "1.1.0",
+ "resolved": "https://registry.npmjs.org/fd-slicer/-/fd-slicer-1.1.0.tgz",
+ "integrity": "sha1-JcfInLH5B3+IkbvmHY85Dq4lbx4=",
+ "dev": true,
+ "requires": {
+ "pend": "~1.2.0"
+ }
+ },
+ "figures": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/figures/-/figures-3.2.0.tgz",
+ "integrity": "sha512-yaduQFRKLXYOGgEn6AZau90j3ggSOyiqXU0F9JZfeXYhNa+Jk4X+s45A2zg5jns87GAFa34BBm2kXw4XpNcbdg==",
+ "dev": true,
+ "requires": {
+ "escape-string-regexp": "^1.0.5"
+ }
+ },
+ "find-up": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
+ "integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
+ "dev": true,
+ "requires": {
+ "locate-path": "^3.0.0"
+ }
+ },
+ "fs.realpath": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/fs.realpath/-/fs.realpath-1.0.0.tgz",
+ "integrity": "sha1-FQStJSMVjKpA20onh8sBQRmU6k8=",
+ "dev": true
+ },
+ "get-caller-file": {
+ "version": "2.0.5",
+ "resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
+ "integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
+ "dev": true
+ },
+ "get-stream": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-5.2.0.tgz",
+ "integrity": "sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==",
+ "dev": true,
+ "requires": {
+ "pump": "^3.0.0"
+ }
+ },
+ "glob": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/glob/-/glob-7.2.0.tgz",
+ "integrity": "sha512-lmLf6gtyrPq8tTjSmrO94wBeQbFR3HbLHbuyD69wuyQkImp2hWqMGB47OX65FBkPffO641IP9jWa1z4ivqG26Q==",
+ "dev": true,
+ "requires": {
+ "fs.realpath": "^1.0.0",
+ "inflight": "^1.0.4",
+ "inherits": "2",
+ "minimatch": "^3.0.4",
+ "once": "^1.3.0",
+ "path-is-absolute": "^1.0.0"
+ }
+ },
+ "got": {
+ "version": "10.7.0",
+ "resolved": "https://registry.npmjs.org/got/-/got-10.7.0.tgz",
+ "integrity": "sha512-aWTDeNw9g+XqEZNcTjMMZSy7B7yE9toWOFYip7ofFTLleJhvZwUxxTxkTpKvF+p1SAA4VHmuEy7PiHTHyq8tJg==",
+ "dev": true,
+ "requires": {
+ "@sindresorhus/is": "^2.0.0",
+ "@szmarczak/http-timer": "^4.0.0",
+ "@types/cacheable-request": "^6.0.1",
+ "cacheable-lookup": "^2.0.0",
+ "cacheable-request": "^7.0.1",
+ "decompress-response": "^5.0.0",
+ "duplexer3": "^0.1.4",
+ "get-stream": "^5.0.0",
+ "lowercase-keys": "^2.0.0",
+ "mimic-response": "^2.1.0",
+ "p-cancelable": "^2.0.0",
+ "p-event": "^4.0.0",
+ "responselike": "^2.0.0",
+ "to-readable-stream": "^2.0.0",
+ "type-fest": "^0.10.0"
+ }
+ },
+ "has-flag": {
+ "version": "4.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz",
+ "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==",
+ "dev": true
+ },
+ "http-cache-semantics": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/http-cache-semantics/-/http-cache-semantics-4.1.0.tgz",
+ "integrity": "sha512-carPklcUh7ROWRK7Cv27RPtdhYhUsela/ue5/jKzjegVvXDqM2ILE9Q2BGn9JZJh1g87cp56su/FgQSzcWS8cQ==",
+ "dev": true
+ },
+ "iconv-lite": {
+ "version": "0.4.24",
+ "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.4.24.tgz",
+ "integrity": "sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==",
+ "dev": true,
+ "requires": {
+ "safer-buffer": ">= 2.1.2 < 3"
+ }
+ },
+ "inflight": {
+ "version": "1.0.6",
+ "resolved": "https://registry.npmjs.org/inflight/-/inflight-1.0.6.tgz",
+ "integrity": "sha1-Sb1jMdfQLQwJvJEKEHW6gWW1bfk=",
+ "dev": true,
+ "requires": {
+ "once": "^1.3.0",
+ "wrappy": "1"
+ }
+ },
+ "inherits": {
+ "version": "2.0.4",
+ "resolved": "https://registry.npmjs.org/inherits/-/inherits-2.0.4.tgz",
+ "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==",
+ "dev": true
+ },
+ "inquirer": {
+ "version": "7.3.3",
+ "resolved": "https://registry.npmjs.org/inquirer/-/inquirer-7.3.3.tgz",
+ "integrity": "sha512-JG3eIAj5V9CwcGvuOmoo6LB9kbAYT8HXffUl6memuszlwDC/qvFAJw49XJ5NROSFNPxp3iQg1GqkFhaY/CR0IA==",
+ "dev": true,
+ "requires": {
+ "ansi-escapes": "^4.2.1",
+ "chalk": "^4.1.0",
+ "cli-cursor": "^3.1.0",
+ "cli-width": "^3.0.0",
+ "external-editor": "^3.0.3",
+ "figures": "^3.0.0",
+ "lodash": "^4.17.19",
+ "mute-stream": "0.0.8",
+ "run-async": "^2.4.0",
+ "rxjs": "^6.6.0",
+ "string-width": "^4.1.0",
+ "strip-ansi": "^6.0.0",
+ "through": "^2.3.6"
+ }
+ },
+ "is-fullwidth-code-point": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-3.0.0.tgz",
+ "integrity": "sha512-zymm5+u+sCsSWyD9qNaejV3DFvhCKclKdizYaJUuHA83RLjb7nSuGnddCHGv0hk+KY7BMAlsWeK4Ueg6EV6XQg==",
+ "dev": true
+ },
+ "is-interactive": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-1.0.0.tgz",
+ "integrity": "sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==",
+ "dev": true
+ },
+ "isarray": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/isarray/-/isarray-1.0.0.tgz",
+ "integrity": "sha1-u5NdSFgsuhaMBoNJV6VKPgcSTxE=",
+ "dev": true
+ },
+ "js-yaml": {
+ "version": "3.14.1",
+ "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz",
+ "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==",
+ "dev": true,
+ "requires": {
+ "argparse": "^1.0.7",
+ "esprima": "^4.0.0"
+ }
+ },
+ "json-buffer": {
+ "version": "3.0.1",
+ "resolved": "https://registry.npmjs.org/json-buffer/-/json-buffer-3.0.1.tgz",
+ "integrity": "sha512-4bV5BfR2mqfQTJm+V5tPPdf+ZpuhiIvTuAB5g8kcrXOZpTT/QwwVRWBywX1ozr6lEuPdbHxwaJlm9G6mI2sfSQ==",
+ "dev": true
+ },
+ "keyv": {
+ "version": "4.0.4",
+ "resolved": "https://registry.npmjs.org/keyv/-/keyv-4.0.4.tgz",
+ "integrity": "sha512-vqNHbAc8BBsxk+7QBYLW0Y219rWcClspR6WSeoHYKG5mnsSoOH+BL1pWq02DDCVdvvuUny5rkBlzMRzoqc+GIg==",
+ "dev": true,
+ "requires": {
+ "json-buffer": "3.0.1"
+ }
+ },
+ "linguist-languages": {
+ "version": "7.15.0",
+ "resolved": "https://registry.npmjs.org/linguist-languages/-/linguist-languages-7.15.0.tgz",
+ "integrity": "sha512-qkSSNDjDDycZ2Wcw+GziNBB3nNo3ddYUInM/PL8Amgwbd9RQ/BKGj2/1d6mdxKgBFnUqZuaDbkIwkE4KUwwmtQ==",
+ "dev": true
+ },
+ "locate-path": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
+ "integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
+ "dev": true,
+ "requires": {
+ "p-locate": "^3.0.0",
+ "path-exists": "^3.0.0"
+ }
+ },
+ "lodash": {
+ "version": "4.17.21",
+ "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz",
+ "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
+ "dev": true
+ },
+ "log-symbols": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-3.0.0.tgz",
+ "integrity": "sha512-dSkNGuI7iG3mfvDzUuYZyvk5dD9ocYCYzNU6CYDE6+Xqd+gwme6Z00NS3dUh8mq/73HaEtT7m6W+yUPtU6BZnQ==",
+ "dev": true,
+ "requires": {
+ "chalk": "^2.4.2"
+ },
+ "dependencies": {
+ "ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^1.9.0"
+ }
+ },
+ "chalk": {
+ "version": "2.4.2",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-2.4.2.tgz",
+ "integrity": "sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.1",
+ "escape-string-regexp": "^1.0.5",
+ "supports-color": "^5.3.0"
+ }
+ },
+ "color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
+ "dev": true,
+ "requires": {
+ "color-name": "1.1.3"
+ }
+ },
+ "color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+ "dev": true
+ },
+ "has-flag": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-3.0.0.tgz",
+ "integrity": "sha1-tdRU3CGZriJWmfNGfloH87lVuv0=",
+ "dev": true
+ },
+ "supports-color": {
+ "version": "5.5.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-5.5.0.tgz",
+ "integrity": "sha512-QjVjwdXIt408MIiAqCX4oUKsgU2EqAGzs2Ppkm4aQYbjm+ZEWEcW4SfFNTr4uMNZma0ey4f5lgLrkB0aX0QMow==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^3.0.0"
+ }
+ }
+ }
+ },
+ "lowercase-keys": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/lowercase-keys/-/lowercase-keys-2.0.0.tgz",
+ "integrity": "sha512-tqNXrS78oMOE73NMxK4EMLQsQowWf8jKooH9g7xPavRT706R6bkQJ6DY2Te7QukaZsulxa30wQ7bk0pm4XiHmA==",
+ "dev": true
+ },
+ "map-age-cleaner": {
+ "version": "0.1.3",
+ "resolved": "https://registry.npmjs.org/map-age-cleaner/-/map-age-cleaner-0.1.3.tgz",
+ "integrity": "sha512-bJzx6nMoP6PDLPBFmg7+xRKeFZvFboMrGlxmNj9ClvX53KrmvM5bXFXEWjbz4cz1AFn+jWJ9z/DJSz7hrs0w3w==",
+ "dev": true,
+ "requires": {
+ "p-defer": "^1.0.0"
+ }
+ },
+ "mem": {
+ "version": "8.1.1",
+ "resolved": "https://registry.npmjs.org/mem/-/mem-8.1.1.tgz",
+ "integrity": "sha512-qFCFUDs7U3b8mBDPyz5EToEKoAkgCzqquIgi9nkkR9bixxOVOre+09lbuH7+9Kn2NFpm56M3GUWVbU2hQgdACA==",
+ "dev": true,
+ "requires": {
+ "map-age-cleaner": "^0.1.3",
+ "mimic-fn": "^3.1.0"
+ },
+ "dependencies": {
+ "mimic-fn": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-3.1.0.tgz",
+ "integrity": "sha512-Ysbi9uYW9hFyfrThdDEQuykN4Ey6BuwPD2kpI5ES/nFTDn/98yxYNLZJcgUAKPT/mcrLLKaGzJR9YVxJrIdASQ==",
+ "dev": true
+ }
+ }
+ },
+ "mimic-fn": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz",
+ "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==",
+ "dev": true
+ },
+ "mimic-response": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/mimic-response/-/mimic-response-2.1.0.tgz",
+ "integrity": "sha512-wXqjST+SLt7R009ySCglWBCFpjUygmCIfD790/kVbiGmUgfYGuB14PiTd5DwVxSV4NcYHjzMkoj5LjQZwTQLEA==",
+ "dev": true
+ },
+ "minimatch": {
+ "version": "3.0.4",
+ "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.4.tgz",
+ "integrity": "sha512-yJHVQEhyqPLUTgt9B83PXu6W3rx4MvvHvSUvToogpwoGDOUQ+yDrR0HRot+yOCdCO7u4hX3pWft6kWBBcqh0UA==",
+ "dev": true,
+ "requires": {
+ "brace-expansion": "^1.1.7"
+ }
+ },
+ "minimist": {
+ "version": "1.2.5",
+ "resolved": "https://registry.npmjs.org/minimist/-/minimist-1.2.5.tgz",
+ "integrity": "sha512-FM9nNUYrRBAELZQT3xeZQ7fmMOBg6nWNmJKTcgsJeaLstP/UODVpGsr5OhXhhXg6f+qtJ8uiZ+PUxkDWcgIXLw==",
+ "dev": true
+ },
+ "mkdirp": {
+ "version": "0.5.5",
+ "resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-0.5.5.tgz",
+ "integrity": "sha512-NKmAlESf6jMGym1++R0Ra7wvhV+wFW63FaSOFPwRahvea0gMUcGUhVeAg/0BC0wiv9ih5NYPB1Wn1UEI1/L+xQ==",
+ "dev": true,
+ "requires": {
+ "minimist": "^1.2.5"
+ }
+ },
+ "ms": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.0.0.tgz",
+ "integrity": "sha1-VgiurfwAvmwpAd9fmGF4jeDVl8g=",
+ "dev": true
+ },
+ "mute-stream": {
+ "version": "0.0.8",
+ "resolved": "https://registry.npmjs.org/mute-stream/-/mute-stream-0.0.8.tgz",
+ "integrity": "sha512-nnbWWOkoWyUsTjKrhgD0dcz22mdkSnpYqbEjIm2nhwhuxlSkpywJmBo8h0ZqJdkp73mb90SssHkN4rsRaBAfAA==",
+ "dev": true
+ },
+ "normalize-url": {
+ "version": "6.1.0",
+ "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-6.1.0.tgz",
+ "integrity": "sha512-DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==",
+ "dev": true
+ },
+ "once": {
+ "version": "1.4.0",
+ "resolved": "https://registry.npmjs.org/once/-/once-1.4.0.tgz",
+ "integrity": "sha1-WDsap3WWHUsROsF9nFC6753Xa9E=",
+ "dev": true,
+ "requires": {
+ "wrappy": "1"
+ }
+ },
+ "onetime": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz",
+ "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==",
+ "dev": true,
+ "requires": {
+ "mimic-fn": "^2.1.0"
+ }
+ },
+ "ora": {
+ "version": "4.1.1",
+ "resolved": "https://registry.npmjs.org/ora/-/ora-4.1.1.tgz",
+ "integrity": "sha512-sjYP8QyVWBpBZWD6Vr1M/KwknSw6kJOz41tvGMlwWeClHBtYKTbHMki1PsLZnxKpXMPbTKv9b3pjQu3REib96A==",
+ "dev": true,
+ "requires": {
+ "chalk": "^3.0.0",
+ "cli-cursor": "^3.1.0",
+ "cli-spinners": "^2.2.0",
+ "is-interactive": "^1.0.0",
+ "log-symbols": "^3.0.0",
+ "mute-stream": "0.0.8",
+ "strip-ansi": "^6.0.0",
+ "wcwidth": "^1.0.1"
+ },
+ "dependencies": {
+ "chalk": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/chalk/-/chalk-3.0.0.tgz",
+ "integrity": "sha512-4D3B6Wf41KOYRFdszmDqMCGq5VV/uMAB273JILmO+3jAlh8X4qDtdtgCR3fxtbLEMzSx22QdhnDcJvu2u1fVwg==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^4.1.0",
+ "supports-color": "^7.1.0"
+ }
+ }
+ }
+ },
+ "os-tmpdir": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/os-tmpdir/-/os-tmpdir-1.0.2.tgz",
+ "integrity": "sha1-u+Z0BseaqFxc/sdm/lc0VV36EnQ=",
+ "dev": true
+ },
+ "p-cancelable": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/p-cancelable/-/p-cancelable-2.1.1.tgz",
+ "integrity": "sha512-BZOr3nRQHOntUjTrH8+Lh54smKHoHyur8We1V8DSMVrl5A2malOOwuJRnKRDjSnkoeBh4at6BwEnb5I7Jl31wg==",
+ "dev": true
+ },
+ "p-defer": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-defer/-/p-defer-1.0.0.tgz",
+ "integrity": "sha1-n26xgvbJqozXQwBKfU+WsZaw+ww=",
+ "dev": true
+ },
+ "p-event": {
+ "version": "4.2.0",
+ "resolved": "https://registry.npmjs.org/p-event/-/p-event-4.2.0.tgz",
+ "integrity": "sha512-KXatOjCRXXkSePPb1Nbi0p0m+gQAwdlbhi4wQKJPI1HsMQS9g+Sqp2o+QHziPr7eYJyOZet836KoHEVM1mwOrQ==",
+ "dev": true,
+ "requires": {
+ "p-timeout": "^3.1.0"
+ }
+ },
+ "p-finally": {
+ "version": "1.0.0",
+ "resolved": "https://registry.npmjs.org/p-finally/-/p-finally-1.0.0.tgz",
+ "integrity": "sha1-P7z7FbiZpEEjs0ttzBi3JDNqLK4=",
+ "dev": true
+ },
+ "p-limit": {
+ "version": "2.3.0",
+ "resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
+ "integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
+ "dev": true,
+ "requires": {
+ "p-try": "^2.0.0"
+ }
+ },
+ "p-locate": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
+ "integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
+ "dev": true,
+ "requires": {
+ "p-limit": "^2.0.0"
+ }
+ },
+ "p-timeout": {
+ "version": "3.2.0",
+ "resolved": "https://registry.npmjs.org/p-timeout/-/p-timeout-3.2.0.tgz",
+ "integrity": "sha512-rhIwUycgwwKcP9yTOOFK/AKsAopjjCakVqLHePO3CC6Mir1Z99xT+R63jZxAT5lFZLa2inS5h+ZS2GvR99/FBg==",
+ "dev": true,
+ "requires": {
+ "p-finally": "^1.0.0"
+ }
+ },
+ "p-try": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
+ "integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
+ "dev": true
+ },
+ "path-exists": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/path-exists/-/path-exists-3.0.0.tgz",
+ "integrity": "sha1-zg6+ql94yxiSXqfYENe1mwEP1RU=",
+ "dev": true
+ },
+ "path-is-absolute": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz",
+ "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=",
+ "dev": true
+ },
+ "pend": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/pend/-/pend-1.2.0.tgz",
+ "integrity": "sha1-elfrVQpng/kRUzH89GY9XI4AelA=",
+ "dev": true
+ },
+ "php-parser": {
+ "version": "git+ssh://git@github.com/glayzzle/php-parser.git#27abcb2337ac6450c068ef064982dfabf77916a5",
+ "integrity": "sha512-cYehx6/hreMqBQ04tijWuOLz4cjfC93CGd+iWiyBMtpg18gBU9EdZHhI+uyLTNIysIjnaCTKqFX6kwEy1lMdgw==",
+ "dev": true,
+ "from": "php-parser@git+https://github.com/glayzzle/php-parser.git#27abcb2337ac6450c068ef064982dfabf77916a5"
+ },
+ "prettier": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.4.1.tgz",
+ "integrity": "sha512-9fbDAXSBcc6Bs1mZrDYb3XKzDLm4EXXL9sC1LqKP5rZkT6KRr/rf9amVUcODVXgguK/isJz0d0hP72WeaKWsvA==",
+ "dev": true
+ },
+ "process-nextick-args": {
+ "version": "2.0.1",
+ "resolved": "https://registry.npmjs.org/process-nextick-args/-/process-nextick-args-2.0.1.tgz",
+ "integrity": "sha512-3ouUOpQhtgrbOa17J7+uxOTpITYWaGP7/AhoR3+A+/1e9skrzelGi/dXzEYyvbxubEF6Wn2ypscTKiKJFFn1ag==",
+ "dev": true
+ },
+ "pump": {
+ "version": "3.0.0",
+ "resolved": "https://registry.npmjs.org/pump/-/pump-3.0.0.tgz",
+ "integrity": "sha512-LwZy+p3SFs1Pytd/jYct4wpv49HiYCqd9Rlc5ZVdk0V+8Yzv6jR5Blk3TRmPL1ft69TxP0IMZGJ+WPFU2BFhww==",
+ "dev": true,
+ "requires": {
+ "end-of-stream": "^1.1.0",
+ "once": "^1.3.1"
+ }
+ },
+ "readable-stream": {
+ "version": "2.3.7",
+ "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz",
+ "integrity": "sha512-Ebho8K4jIbHAxnuxi7o42OrZgF/ZTNcsZj6nRKyUmkhLFq8CHItp/fy6hQZuZmP/n3yZ9VBUbp4zz/mX8hmYPw==",
+ "dev": true,
+ "requires": {
+ "core-util-is": "~1.0.0",
+ "inherits": "~2.0.3",
+ "isarray": "~1.0.0",
+ "process-nextick-args": "~2.0.0",
+ "safe-buffer": "~5.1.1",
+ "string_decoder": "~1.1.1",
+ "util-deprecate": "~1.0.1"
+ }
+ },
+ "require-directory": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/require-directory/-/require-directory-2.1.1.tgz",
+ "integrity": "sha1-jGStX9MNqxyXbiNE/+f3kqam30I=",
+ "dev": true
+ },
+ "require-main-filename": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
+ "integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
+ "dev": true
+ },
+ "responselike": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/responselike/-/responselike-2.0.0.tgz",
+ "integrity": "sha512-xH48u3FTB9VsZw7R+vvgaKeLKzT6jOogbQhEe/jewwnZgzPcnyWui2Av6JpoYZF/91uueC+lqhWqeURw5/qhCw==",
+ "dev": true,
+ "requires": {
+ "lowercase-keys": "^2.0.0"
+ }
+ },
+ "restore-cursor": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-3.1.0.tgz",
+ "integrity": "sha512-l+sSefzHpj5qimhFSE5a8nufZYAM3sBSVMAPtYkmC+4EH2anSGaEMXSD0izRQbu9nfyQ9y5JrVmp7E8oZrUjvA==",
+ "dev": true,
+ "requires": {
+ "onetime": "^5.1.0",
+ "signal-exit": "^3.0.2"
+ }
+ },
+ "rimraf": {
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/rimraf/-/rimraf-3.0.2.tgz",
+ "integrity": "sha512-JZkJMZkAGFFPP2YqXZXPbMlMBgsxzE8ILs4lMIX/2o0L9UBw9O/Y3o6wFw/i9YLapcUJWwqbi3kdxIPdC62TIA==",
+ "dev": true,
+ "requires": {
+ "glob": "^7.1.3"
+ }
+ },
+ "run-async": {
+ "version": "2.4.1",
+ "resolved": "https://registry.npmjs.org/run-async/-/run-async-2.4.1.tgz",
+ "integrity": "sha512-tvVnVv01b8c1RrA6Ep7JkStj85Guv/YrMcwqYQnwjsAS2cTmmPGBBjAjpCW7RrSodNSoE2/qg9O4bceNvUuDgQ==",
+ "dev": true
+ },
+ "rxjs": {
+ "version": "6.6.7",
+ "resolved": "https://registry.npmjs.org/rxjs/-/rxjs-6.6.7.tgz",
+ "integrity": "sha512-hTdwr+7yYNIT5n4AMYp85KA6yw2Va0FLa3Rguvbpa4W3I5xynaBZo41cM3XM+4Q6fRMj3sBYIR1VAmZMXYJvRQ==",
+ "dev": true,
+ "requires": {
+ "tslib": "^1.9.0"
+ }
+ },
+ "safe-buffer": {
+ "version": "5.1.2",
+ "resolved": "https://registry.npmjs.org/safe-buffer/-/safe-buffer-5.1.2.tgz",
+ "integrity": "sha512-Gd2UZBJDkXlY7GbJxfsE8/nvKkUEU1G38c1siN6QP6a9PT9MmHB8GnpscSmMJSoF8LOIrt8ud/wPtojys4G6+g==",
+ "dev": true
+ },
+ "safer-buffer": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz",
+ "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==",
+ "dev": true
+ },
+ "set-blocking": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/set-blocking/-/set-blocking-2.0.0.tgz",
+ "integrity": "sha1-BF+XgtARrppoA93TgrJDkrPYkPc=",
+ "dev": true
+ },
+ "signal-exit": {
+ "version": "3.0.5",
+ "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.5.tgz",
+ "integrity": "sha512-KWcOiKeQj6ZyXx7zq4YxSMgHRlod4czeBQZrPb8OKcohcqAXShm7E20kEMle9WBt26hFcAf0qLOcp5zmY7kOqQ==",
+ "dev": true
+ },
+ "simple-git": {
+ "version": "2.47.0",
+ "resolved": "https://registry.npmjs.org/simple-git/-/simple-git-2.47.0.tgz",
+ "integrity": "sha512-+HfCpqPBEZTPWiW9fPdbiPJDslM22MLqrktfzNKyI2pWaJa6DhfNVx4Mds04KZzVv5vjC9/ksw3y5gVf8ECWDg==",
+ "dev": true,
+ "requires": {
+ "@kwsites/file-exists": "^1.1.1",
+ "@kwsites/promise-deferred": "^1.1.1",
+ "debug": "^4.3.2"
+ },
+ "dependencies": {
+ "debug": {
+ "version": "4.3.2",
+ "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.2.tgz",
+ "integrity": "sha512-mOp8wKcvj7XxC78zLgw/ZA+6TSgkoE2C/ienthhRD298T7UNwAg9diBpLRxC0mOezLl4B0xV7M0cCO6P/O0Xhw==",
+ "dev": true,
+ "requires": {
+ "ms": "2.1.2"
+ }
+ },
+ "ms": {
+ "version": "2.1.2",
+ "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
+ "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==",
+ "dev": true
+ }
+ }
+ },
+ "sprintf-js": {
+ "version": "1.0.3",
+ "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz",
+ "integrity": "sha1-BOaSb2YolTVPPdAVIDYzuFcpfiw=",
+ "dev": true
+ },
+ "string_decoder": {
+ "version": "1.1.1",
+ "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.1.1.tgz",
+ "integrity": "sha512-n/ShnvDi6FHbbVfviro+WojiFzv+s8MPMHBczVePfUpDJLwoLT0ht1l4YwBCbi8pJAveEEdnkHyPyTP/mzRfwg==",
+ "dev": true,
+ "requires": {
+ "safe-buffer": "~5.1.0"
+ }
+ },
+ "string-width": {
+ "version": "4.2.3",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-4.2.3.tgz",
+ "integrity": "sha512-wKyQRQpjJ0sIp62ErSZdGsjMJWsap5oRNihHhu6G7JVO/9jIB6UyevL+tXuOqrng8j/cxKTWyWUwvSTriiZz/g==",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^8.0.0",
+ "is-fullwidth-code-point": "^3.0.0",
+ "strip-ansi": "^6.0.1"
+ }
+ },
+ "strip-ansi": {
+ "version": "6.0.1",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-6.0.1.tgz",
+ "integrity": "sha512-Y38VPSHcqkFrCpFnQ9vuSXmquuv5oXOKpGeT6aGrr3o3Gc9AlVa6JBfUSOCnbxGGZF+/0ooI7KrPuUSztUdU5A==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^5.0.1"
+ }
+ },
+ "supports-color": {
+ "version": "7.2.0",
+ "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-7.2.0.tgz",
+ "integrity": "sha512-qpCAvRl9stuOHveKsn7HncJRvv501qIacKzQlO/+Lwxc9+0q2wLyv4Dfvt80/DPn2pqOBsJdDiogXGR9+OvwRw==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0"
+ }
+ },
+ "supports-hyperlinks": {
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/supports-hyperlinks/-/supports-hyperlinks-2.2.0.tgz",
+ "integrity": "sha512-6sXEzV5+I5j8Bmq9/vUphGRM/RJNT9SCURJLjwfOg51heRtguGWDzcaBlgAzKhQa0EVNpPEKzQuBwZ8S8WaCeQ==",
+ "dev": true,
+ "requires": {
+ "has-flag": "^4.0.0",
+ "supports-color": "^7.0.0"
+ }
+ },
+ "terminal-link": {
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/terminal-link/-/terminal-link-2.1.1.tgz",
+ "integrity": "sha512-un0FmiRUQNr5PJqy9kP7c40F5BOfpGlYTrxonDChEZB7pzZxRNp/bt+ymiy9/npwXya9KH99nJ/GXFIiUkYGFQ==",
+ "dev": true,
+ "requires": {
+ "ansi-escapes": "^4.2.1",
+ "supports-hyperlinks": "^2.0.0"
+ }
+ },
+ "through": {
+ "version": "2.3.8",
+ "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz",
+ "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=",
+ "dev": true
+ },
+ "tmp": {
+ "version": "0.0.33",
+ "resolved": "https://registry.npmjs.org/tmp/-/tmp-0.0.33.tgz",
+ "integrity": "sha512-jRCJlojKnZ3addtTOjdIqoRuPEKBvNXcGYqzO6zWZX8KfKEpnGY5jfggJQ3EjKuu8D4bJRr0y+cYJFmYbImXGw==",
+ "dev": true,
+ "requires": {
+ "os-tmpdir": "~1.0.2"
+ }
+ },
+ "to-readable-stream": {
+ "version": "2.1.0",
+ "resolved": "https://registry.npmjs.org/to-readable-stream/-/to-readable-stream-2.1.0.tgz",
+ "integrity": "sha512-o3Qa6DGg1CEXshSdvWNX2sN4QHqg03SPq7U6jPXRahlQdl5dK8oXjkU/2/sGrnOZKeGV1zLSO8qPwyKklPPE7w==",
+ "dev": true
+ },
+ "tslib": {
+ "version": "1.14.1",
+ "resolved": "https://registry.npmjs.org/tslib/-/tslib-1.14.1.tgz",
+ "integrity": "sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==",
+ "dev": true
+ },
+ "type-fest": {
+ "version": "0.10.0",
+ "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.10.0.tgz",
+ "integrity": "sha512-EUV9jo4sffrwlg8s0zDhP0T2WD3pru5Xi0+HTE3zTUmBaZNhfkite9PdSJwdXLwPVW0jnAHT56pZHIOYckPEiw==",
+ "dev": true
+ },
+ "typedarray": {
+ "version": "0.0.6",
+ "resolved": "https://registry.npmjs.org/typedarray/-/typedarray-0.0.6.tgz",
+ "integrity": "sha1-hnrHTjhkGHsdPUfZlqeOxciDB3c=",
+ "dev": true
+ },
+ "util-deprecate": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/util-deprecate/-/util-deprecate-1.0.2.tgz",
+ "integrity": "sha1-RQ1Nyfpw3nMnYvvS1KKJgUGaDM8=",
+ "dev": true
+ },
+ "wcwidth": {
+ "version": "1.0.1",
+ "resolved": "https://registry.npmjs.org/wcwidth/-/wcwidth-1.0.1.tgz",
+ "integrity": "sha1-8LDc+RW8X/FSivrbLA4XtTLaL+g=",
+ "dev": true,
+ "requires": {
+ "defaults": "^1.0.3"
+ }
+ },
+ "which-module": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/which-module/-/which-module-2.0.0.tgz",
+ "integrity": "sha1-2e8H3Od7mQK4o6j6SzHD4/fm6Ho=",
+ "dev": true
+ },
+ "wrap-ansi": {
+ "version": "5.1.0",
+ "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
+ "integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
+ "dev": true,
+ "requires": {
+ "ansi-styles": "^3.2.0",
+ "string-width": "^3.0.0",
+ "strip-ansi": "^5.0.0"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
+ "dev": true
+ },
+ "ansi-styles": {
+ "version": "3.2.1",
+ "resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-3.2.1.tgz",
+ "integrity": "sha512-VT0ZI6kZRdTh8YyJw3SMbYm/u+NqfsAxEpWO0Pf9sq8/e94WxxOpPKx9FR1FlyCtOVDNOQ+8ntlqFxiRc+r5qA==",
+ "dev": true,
+ "requires": {
+ "color-convert": "^1.9.0"
+ }
+ },
+ "color-convert": {
+ "version": "1.9.3",
+ "resolved": "https://registry.npmjs.org/color-convert/-/color-convert-1.9.3.tgz",
+ "integrity": "sha512-QfAUtd+vFdAtFQcC8CCyYt1fYWxSqAiK2cSD6zDB8N3cpsEBAvRxp9zOGg6G/SHHJYAT88/az/IuDGALsNVbGg==",
+ "dev": true,
+ "requires": {
+ "color-name": "1.1.3"
+ }
+ },
+ "color-name": {
+ "version": "1.1.3",
+ "resolved": "https://registry.npmjs.org/color-name/-/color-name-1.1.3.tgz",
+ "integrity": "sha1-p9BVi9icQveV3UIyj3QIMcpTvCU=",
+ "dev": true
+ },
+ "emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "dev": true
+ },
+ "is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
+ "dev": true
+ },
+ "string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^4.1.0"
+ }
+ }
+ }
+ },
+ "wrappy": {
+ "version": "1.0.2",
+ "resolved": "https://registry.npmjs.org/wrappy/-/wrappy-1.0.2.tgz",
+ "integrity": "sha1-tSQ9jz7BqjXxNkYFvA0QNuMKtp8=",
+ "dev": true
+ },
+ "y18n": {
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/y18n/-/y18n-4.0.3.tgz",
+ "integrity": "sha512-JKhqTOwSrqNA1NY5lSztJ1GrBiUodLMmIZuLiDaMRJ+itFd+ABVE8XBjOvIWL+rSqNDC74LCSFmlb/U4UZ4hJQ==",
+ "dev": true
+ },
+ "yargs": {
+ "version": "14.2.3",
+ "resolved": "https://registry.npmjs.org/yargs/-/yargs-14.2.3.tgz",
+ "integrity": "sha512-ZbotRWhF+lkjijC/VhmOT9wSgyBQ7+zr13+YLkhfsSiTriYsMzkTUFP18pFhWwBeMa5gUc1MzbhrO6/VB7c9Xg==",
+ "dev": true,
+ "requires": {
+ "cliui": "^5.0.0",
+ "decamelize": "^1.2.0",
+ "find-up": "^3.0.0",
+ "get-caller-file": "^2.0.1",
+ "require-directory": "^2.1.1",
+ "require-main-filename": "^2.0.0",
+ "set-blocking": "^2.0.0",
+ "string-width": "^3.0.0",
+ "which-module": "^2.0.0",
+ "y18n": "^4.0.0",
+ "yargs-parser": "^15.0.1"
+ },
+ "dependencies": {
+ "ansi-regex": {
+ "version": "4.1.0",
+ "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-4.1.0.tgz",
+ "integrity": "sha512-1apePfXM1UOSqw0o9IiFAovVz9M5S1Dg+4TrDwfMewQ6p/rmMueb7tWZjQ1rx4Loy1ArBggoqGpfqqdI4rondg==",
+ "dev": true
+ },
+ "emoji-regex": {
+ "version": "7.0.3",
+ "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-7.0.3.tgz",
+ "integrity": "sha512-CwBLREIQ7LvYFB0WyRvwhq5N5qPhc6PMjD6bYggFlI5YyDgl+0vxq5VHbMOFqLg7hfWzmu8T5Z1QofhmTIhItA==",
+ "dev": true
+ },
+ "is-fullwidth-code-point": {
+ "version": "2.0.0",
+ "resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-2.0.0.tgz",
+ "integrity": "sha1-o7MKXE8ZkYMWeqq5O+764937ZU8=",
+ "dev": true
+ },
+ "string-width": {
+ "version": "3.1.0",
+ "resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
+ "integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
+ "dev": true,
+ "requires": {
+ "emoji-regex": "^7.0.1",
+ "is-fullwidth-code-point": "^2.0.0",
+ "strip-ansi": "^5.1.0"
+ }
+ },
+ "strip-ansi": {
+ "version": "5.2.0",
+ "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-5.2.0.tgz",
+ "integrity": "sha512-DuRs1gKbBqsMKIZlrffwlug8MHkcnpjs5VPmL1PAh+mA30U0DTotfDZ0d2UUsXpPmPmMMJ6W773MaA3J+lbiWA==",
+ "dev": true,
+ "requires": {
+ "ansi-regex": "^4.1.0"
+ }
+ }
+ }
+ },
+ "yargs-parser": {
+ "version": "15.0.3",
+ "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-15.0.3.tgz",
+ "integrity": "sha512-/MVEVjTXy/cGAjdtQf8dW3V9b97bPN7rNn8ETj6BmAQL7ibC7O1Q9SPJbGjgh3SlwoBNXMzj/ZGIj8mBgl12YA==",
+ "dev": true,
+ "requires": {
+ "camelcase": "^5.0.0",
+ "decamelize": "^1.2.0"
+ }
+ },
+ "yauzl": {
+ "version": "2.10.0",
+ "resolved": "https://registry.npmjs.org/yauzl/-/yauzl-2.10.0.tgz",
+ "integrity": "sha1-x+sXyT4RLLEIb6bY5R+wZnt5pfk=",
+ "dev": true,
+ "requires": {
+ "buffer-crc32": "~0.2.3",
+ "fd-slicer": "~1.1.0"
+ }
+ }
+ }
+}
diff --git a/package.json b/package.json
index f1a53a3..6154b3c 100644
--- a/package.json
+++ b/package.json
@@ -1,31 +1,17 @@
{
"name": "life-stewardship",
- "version": "0.1.0",
- "description": "Life Stewardship LLC, financial planning & coaching.",
- "license": "UNLICENSED",
- "private": true,
- "scripts": {
- "dev:rescript": "rescript build -w",
- "dev:next": "next dev",
- "build": "rescript && next build",
- "start": "next start"
+ "version": "0.0.1",
+ "description": "WordPress theme for Life Stewardship LLC marketing site.",
+ "main": "index.js",
+ "devDependencies": {
+ "@prettier/plugin-php": "^0.17.6",
+ "@wordpress/env": "^4.1.3",
+ "prettier": "^2.4.1"
},
- "dependencies": {
- "@rescript/react": "^0.10.3",
- "@ryyppy/rescript-promise": "^2.1.0",
- "@tailwindcss/aspect-ratio": "^0.2.1",
- "autoprefixer": "^10.3.1",
- "bs-fetch": "^0.6.2",
- "decco": "^1.5.0",
- "next": "^12.1.0",
- "next-transpile-modules": "8.0.0",
- "postcss": "^8.3.6",
- "react": "^17.0.2",
- "react-dom": "^17.0.2",
- "tailwindcss": "^2.2.7"
+ "scripts": {
+ "wp-env": "wp-env",
+ "test": "echo \"Error: no test specified\" && exit 1"
},
- "devDependencies": {
- "@babel/core": "^7.15.0",
- "rescript": "^9.1.4"
- }
+ "author": "David Calhoun",
+ "license": "GPL-2.0-or-later"
}
diff --git a/pages/_app.js b/pages/_app.js
deleted file mode 100644
index 1fe9fc6..0000000
--- a/pages/_app.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import "../styles.css";
-
-export default function App({ Component, pageProps }) {
- return ;
-}
diff --git a/pages/_document.js b/pages/_document.js
deleted file mode 100644
index 0bc97c9..0000000
--- a/pages/_document.js
+++ /dev/null
@@ -1,112 +0,0 @@
-import NextDocument, { Html, Head, Main, NextScript } from "next/document";
-
-class Document extends NextDocument {
- static async getInitialProps(ctx) {
- const initialProps = await NextDocument.getInitialProps(ctx);
- return { ...initialProps };
- }
-
- render() {
- return (
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- );
- }
-}
-
-export default Document;
diff --git a/pages/api/preview.res b/pages/api/preview.res
deleted file mode 100644
index 24c4404..0000000
--- a/pages/api/preview.res
+++ /dev/null
@@ -1,19 +0,0 @@
-@val
-external previewToken: string = "process.env.PREVIEW_TOKEN"
-
-type previewData
-
-let default: Next.Api.t = (req, res) => {
- let redirectPath = switch (req.headers->Js.Dict.get("referer"), req.query->Js.Dict.get("slug")) {
- | (Some(referrer), _) => referrer
- | (_, Some(slug)) => "/blog/" ++ slug
- | (_, None) => "/blog/"
- }
- open Next.Res
- switch (req.query->Js.Dict.get("secret"), req.query->Js.Dict.get("disable")) {
- | (Some(secret), _) if secret == previewToken =>
- res->setPreviewData(Js.Obj.empty())->redirect(redirectPath)
- | (_, Some(_)) => res->clearPreviewData->redirect(redirectPath)
- | (_, _) => res->status(401)->json(Js.Dict.fromArray([("message", "Invalid token")]))
- }
-}
diff --git a/pages/blog/[slug].js b/pages/blog/[slug].js
deleted file mode 100644
index 4251218..0000000
--- a/pages/blog/[slug].js
+++ /dev/null
@@ -1,7 +0,0 @@
-import PostRes from "../../components/Post.bs";
-
-export { getStaticProps, getStaticPaths } from "../../components/Post.bs";
-
-export default function Post(props) {
- return ;
-}
diff --git a/pages/blog/draft/[id].js b/pages/blog/draft/[id].js
deleted file mode 100644
index 5212d47..0000000
--- a/pages/blog/draft/[id].js
+++ /dev/null
@@ -1,7 +0,0 @@
-import DraftRes from "../../../components/Draft.bs";
-
-export { getServerSideProps } from "../../../components/Draft.bs";
-
-export default function Draft(props) {
- return ;
-}
diff --git a/pages/blog/index.js b/pages/blog/index.js
deleted file mode 100644
index ddd29b7..0000000
--- a/pages/blog/index.js
+++ /dev/null
@@ -1,7 +0,0 @@
-import BlogRes from "../../components/Blog.bs";
-
-export { getStaticProps } from "../../components/Blog.bs";
-
-export default function Blog(props) {
- return ;
-}
diff --git a/pages/contact.res b/pages/contact.res
deleted file mode 100644
index 836880a..0000000
--- a/pages/contact.res
+++ /dev/null
@@ -1,188 +0,0 @@
-@val
-external formspreeEndpoint: option = "process.env.NEXT_PUBLIC_FORMSPREE_ENDPOINT"
-
-@new external createFormData: 'form => 'formData = "FormData"
-
-@decco.decode type formError = {error: string}
-
-type fetchError = {message: string}
-
-external toJsError: Js.Promise.error => fetchError = "%identity"
-
-@react.component
-let default = () => {
- let (toast, setToast) = React.useState(_ => "")
- let (errors, setErrors) = React.useState(_ => [])
- let (sending, setSending) = React.useState(_ => false)
- let formErrors = Belt.Array.keep(errors, ({TextInput.subject: subject}) => subject === "form")
-
- let formRef = React.useRef(Js.Nullable.null)
-
- let sendMessage = _ => {
- setErrors(_ => [])
- let form = formRef.current
- switch form->Js.Nullable.toOption {
- | None => ()
- | Some(form) =>
- let _ =
- Fetch.fetchWithInit(
- form["action"],
- Fetch.RequestInit.make(
- ~method_=Post,
- ~body=form->createFormData->Fetch.BodyInit.makeWithFormData,
- ~headers=Fetch.HeadersInit.make({"Accept": "application/json"}),
- (),
- ),
- )
- ->Js.Promise.then_(response => {
- let _ = response->Fetch.Response.json->Js.Promise.then_(json => {
- setSending(_ => false)
- if response->Fetch.Response.ok {
- setToast(_ => "Your message was sent successfully.")
- } else {
- let {error} =
- json
- ->formError_decode
- ->Belt.Result.getWithDefault({error: "Network request failed."})
- setErrors(_ => [{TextInput.subject: "form", message: error}])
- }
- ()->Js.Promise.resolve
- }, _)
- ()->Js.Promise.resolve
- }, _)
- ->Js.Promise.catch(error => {
- setSending(_ => false)
- let {message} = error->toJsError
- setErrors(_ => [{TextInput.subject: "form", message: message}])
- ()->Js.Promise.resolve
- }, _)
- }
- }
-
- let handleFormSubmit = event => {
- event->ReactEvent.Form.preventDefault
- setSending(_ => true)
- setErrors(_ => [])
- formRef.current = event->ReactEvent.Form.currentTarget->Js.Nullable.return
- let form = formRef.current
- switch (form->Js.Nullable.toOption, sending) {
- | (None, _) | (_, true) => ()
- | (Some(form), false) => {
- let errors =
- form["elements"]
- ->Js.Array2.from
- ->Belt.Array.keep(el => !el["checkValidity"](.))
- ->Belt.Array.map(el => {
- {TextInput.subject: el["name"], message: el["dataset"]["errorMessage"]}
- })
-
- if errors->Belt.Array.length > 0 {
- setSending(_ => false)
- setErrors(_ => errors)
- } else {
- sendMessage()
- }
- }
- }
- }
-
-
-
-
-
{"Contact"->React.string}
-
-
- {"1888 Main Street, "->React.string}
- {"Suite C-198, "->React.string}
- {"Madison, MS 39110"->React.string}
-
-
-
- {`If you’d like to receive more information or ask a question about my services, please fill out the form below.`->React.string}
-
-
- {formErrors->Belt.Array.length > 0
- ?
setErrors(_ => [])}>
- {Belt.Array.mapWithIndex(formErrors, (index, {TextInput.message: message}) =>
- Belt.Int.toString}> {message->React.string}
- )->React.array}
-
- : React.null}
- {toast->Js.String.length > 0
- ?
{
- setToast(_ => "")
- }}>
- {toast->React.string}
-
- : React.null}
-
-
-}
diff --git a/pages/contact.resi b/pages/contact.resi
deleted file mode 100644
index 5ed6cc6..0000000
--- a/pages/contact.resi
+++ /dev/null
@@ -1 +0,0 @@
-let default: {.} => React.element
diff --git a/pages/index.res b/pages/index.res
deleted file mode 100644
index bad6939..0000000
--- a/pages/index.res
+++ /dev/null
@@ -1,63 +0,0 @@
-@react.component
-let default = () => {
-
-
-
-
- {"Financial planning and coaching for nonprofits and individuals."->React.string}
-
-
- {"Life Stewardship LLC is a financial service firm located in Madison,
- Mississippi."->React.string}
-
-
-
-
-
-
-
-
- {"My name is Paul Calhoun, the founder and managing member of Life
- Stewardship LLC. Until my retirement in December 2019, I was a partner
- with a sixty-person certified public accounting firm, serving 12 years
- as its managing partner."->React.string}
-
-
- {"During my 43-year career in public accounting, my practice included
- providing audit, consulting, and tax services to nonprofit
- organizations just starting up, to ones which have matured to serving
- thousands of people. I have had the privilege of working with several
- organizations serving as a volunteer and committee member. I have
- served as an officer and board member including finance chairman,
- treasurer, president, vice chairman and board chairman."->React.string}
-
-
- {"My public accounting practice also included working with individuals
- regarding their financial planning and income taxes."->React.string}
-
-
-
-
- {"Professional & Community Affiliation"->React.string}
-
-
-
- {"American Institute of Certified Public Accountants"->React.string}
-
-
{"AICPA Not-for-Profit Section"->React.string}
-
{"AICPA Personal Financial Planning Section"->React.string}
-
- {"Vice-Chairman Baptist Hospital Board of Directors"->React.string}
-
-
-
-
-}
diff --git a/pages/individuals.res b/pages/individuals.res
deleted file mode 100644
index 0b08997..0000000
--- a/pages/individuals.res
+++ /dev/null
@@ -1,56 +0,0 @@
-@react.component
-let default = () =>
-
-
-
- {"Individuals"->React.string}
-
-
-
-
-
- {"Begin."->React.string}
- {" Beginning is often the hardest step. We do not know how
- to get started, so we procrastinate. We may know what needs to be done
- but life is busy, so we procrastinate. We may believe its complex and
- we do not know who to talk with, so we procrastinate. Seldom does
- procrastination solve our problems, it may limit our options; and it
- may not provide us the best solutions"->React.string}
-
-
- {"Being a good steward of our personal finances is something we all
- recognize is important. We want to reduce the financial stress in our
- lives, and we want to give, spend, and save our money wisely so that
- we can accomplish the goals which are important to us."->React.string}
-
-
- {"Stewardship is the lifelong process of managing everything God
- provides us in a manner that honors God. We can honor God by wisely
- using what He has given us to provide for ourselves, our families, and
- others."->React.string}
-
-
- {`If you are ready to get begin, let’s talk. I can assist you with:`->React.string}
-
-
- {"Clarifying Your Financial Goals"->React.string}
- {"Budgeting & Tracking"->React.string}
- {"Cash Management & Planning"->React.string}
- {"Debt Payoff & Management"->React.string}
- {"Education Funding"->React.string}
- {"Retirement Planning"->React.string}
- {"Social Security"->React.string}
-
-
-
diff --git a/pages/nonprofit.res b/pages/nonprofit.res
deleted file mode 100644
index 9d7da89..0000000
--- a/pages/nonprofit.res
+++ /dev/null
@@ -1,65 +0,0 @@
-@react.component
-let default = () =>
-
-
-
- {"Nonprofit"->React.string}
-
-
-
-
-
- {"Do something great. "->React.string}
- {"Serving others or making things better is
- the mission of all nonprofits. That is why they exist and why we give
- our time and money to nonprofits. When they accept our time and money,
- they assume a stewardship responsibility for them."->React.string}
-
-
- {"Board members and management have the primary responsibility for
- stewardship of the nonprofit’s assets. This is a critical
- responsibility because nonprofits are accountable to their
- clients/constituents, donors, the public, and government authorities."->React.string}
-
-
- {"For the board of directors and management to fulfill their fiduciary
- responsibilities, a nonprofit must develop a sound accounting and
- financial reporting system which includes appropriate internal
- controls based on the size and complexity of the organization.
- Internal controls designed to achieve effective and efficient
- operations, reliable financial reporting, and compliance with
- applicable laws and regulations."->React.string}
-
-
- {"Many nonprofits lack expertise and knowledge or time to develop their
- accounting and financial reporting system and have limited external
- support. I have extensive experience working with nonprofits and can
- help the board of directors and management fulfill their fiduciary
- responsibilities."->React.string}
-
-
- {`If you want more information or need help fulfilling your fiduciary
- responsibilities, let’s talk. I can assist you with:`->React.string}
-
-
- {"Assisting with Board Governance & Oversight"->React.string}
- {"Board of Director Training"->React.string}
- {"Financial Statement Preparation"->React.string}
- {"Functional Expense Reporting"->React.string}
- {"Grant Compliance"->React.string}
- {"Internal Controls"->React.string}
- {"Tax Compliance"->React.string}
-
-
-
diff --git a/parts/.gitkeep b/parts/.gitkeep
new file mode 100644
index 0000000..e69de29
diff --git a/parts/credit.html b/parts/credit.html
new file mode 100644
index 0000000..49cdcee
--- /dev/null
+++ b/parts/credit.html
@@ -0,0 +1,15 @@
+
+
+
+
+
+
+
+
Proudly Powered by WordPress .
+
+
+
+
+
+
+
diff --git a/parts/footer.html b/parts/footer.html
new file mode 100644
index 0000000..0449fdd
--- /dev/null
+++ b/parts/footer.html
@@ -0,0 +1,48 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ Ready to get started? Let’s talk.
+
+
+
+
+
+
+
+
+
+
diff --git a/parts/header.html b/parts/header.html
new file mode 100644
index 0000000..15ea46c
--- /dev/null
+++ b/parts/header.html
@@ -0,0 +1,27 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/parts/post-meta.html b/parts/post-meta.html
new file mode 100644
index 0000000..f91a31b
--- /dev/null
+++ b/parts/post-meta.html
@@ -0,0 +1,12 @@
+
+
+
diff --git a/patterns/affiliation.php b/patterns/affiliation.php
new file mode 100644
index 0000000..174b9a5
--- /dev/null
+++ b/patterns/affiliation.php
@@ -0,0 +1,58 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/patterns/callout.php b/patterns/callout.php
new file mode 100644
index 0000000..45f9145
--- /dev/null
+++ b/patterns/callout.php
@@ -0,0 +1,61 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/postcss.config.js b/postcss.config.js
deleted file mode 100644
index 42f6623..0000000
--- a/postcss.config.js
+++ /dev/null
@@ -1,3 +0,0 @@
-module.exports = {
- plugins: ["tailwindcss"],
-};
diff --git a/prettier.config.js b/prettier.config.js
new file mode 100644
index 0000000..b2cc27b
--- /dev/null
+++ b/prettier.config.js
@@ -0,0 +1,4 @@
+module.exports = {
+ phpVersion: "7.4",
+ braceStyle: "1tbs",
+};
diff --git a/public/android-chrome-192x192.png b/public/android-chrome-192x192.png
deleted file mode 100644
index bfadfebc1b1af7d679a784f86e4ead8eec20bf47..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 4133
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
diff --git a/public/android-chrome-512x512.png b/public/android-chrome-512x512.png
deleted file mode 100644
index 8b829563702cb3d4fbd8bf1b6dbff80cb91b73a4..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 8589
zcmZ{Jc|6qL_y21)jCE|;8T-CwU&oRyyNax%#TqHH7Go(wh?FH6A!M8ETg+G@Dc&f`
zHrcnVVTNJ8eg6Ob&Ohhg`#g{5J&*f1k8|%i_oe&9Xmcg{Cl{+uu2^G
zMkuesCMC!E_;{FK($mvYad&mhdXXX}!e8H9^(ZFP!Or}myyX4+ehtl4$xmZ_eLT!e
z^yH)kb&VxH_B1OgB2DaM?QSchW3_yr=_@G;tE!1y3AlLciLS1(B+63C$J;|wSIpc=
z-ub?om4~9EojDq#-PzNusV9cAlumjYYi^>qy}Ol_lTuie^XO5iu8D+Oq=uEJqN=)x
zTcoDlEoEI3NpolU<&6asd)Y#4&WDyN@+oO^dyTj}qo=9z8k=)`eB|rxaYQ=Y-rM{|
z{7yb0&n`?&&W=sajUADW>RYPxwNxgiN7lEN)s$pTPDtvCGVa%}W_505QpOzLE_xJZY+gl?;?-}cBsw>GnNr<(x
zGK+k0Z)s_9YkTeJ_{d0KGa~d}ZO!`^nduP^?j8Q!-`n0?Tbx~-ot&E-{W5I&BQUYF79(E>JGdSg#*;8T5$|vYlhi$2q
z*h>|wP%qgg$wT;-(>%i*A?%rCwW@O1|IiPSAN%?@6hka4WOX$Sg9n&xAz_ilug$?XbeP9>>3
zejF`^vX-LH7SsoSk7%I@tz~Z*jN7nxju(I0U8Zvw;(D?dlu2g6mlb99J@0HZiy4a)qjOq;-}{3IC!8l^{?*MSRLzmcib_Me77mT}SV
z6=%2)ccxRTdKIqBwqMozV_;uZRW&xhYyBS@nD&i9Rdr1-7%)`MW4r?=Au&zt4&9(x
zCU-UlCiLP_z^^x?2WO&30qruB9&*x95#yNG%UPHy{)sy`oC$Tyoy6v0wP`bQOf}Ub-O00ild>uOohl5<;D5ioob2X2&n^+oWv4-VMUv
z=OJdU75^Pb8rL;0J&8vBoiCb|qNRsBL=fKiXo1M_B%bxvww?J^6JwC?U%EC=BCM{3E|D4O?~!vlUafKw
z$GPUnN+*CSk(51a_Q2IIx!^D)gIJ#d7Mv>sjH1N>h_uWK8W3xd0HqMFTS1*M3#06N
z0kIN@CwP{QiN%3vLdFYuo%414=Al#UQwnL%BX~Na*1`6YT
zAl{sT1YQok`GW-}E6-Vy@{A?o?;$N{p9tHPC@P*)?je7~5g?^6sS#OP5}YuAz`{r$
zJhyZ^mi!$t{H@N2VJ+pOg2m}gQyVbKodu3(WjVb4da$Ycp`cX|%orTu=xOxY`x9g8
zRqvr8d*Duz8iH%)f)n+3C_i=c1|Ijz2;~?UN$NF&wQj?J6;pGd^uXZTA7-lSjS?B69PrP8_?kLF+*OAButfY1Pdu=t&+Z-QBfCJ*
zI%2@_8TIGr)~@nh`>-B5X`~oNFLghIS;$cdjL8JY!!>vO`}!7kSz{{^K={NjN0bt1
z)%qe?gOAu7&I3GmiKeH66JO?$qj>{#-gN?aii{XW<}Z<4=b;%JnELq$-*X#qV^9QN
zAzEKNzI)-64~YMc#lba`Rt@?#3&PTtL3kUG7iYwrst#4o!xqqWU<)$>AsAWOq+qzuva`g6!Mt;upE2_!U;s7+90YuA+FJELBL>LYLX!C=G@1D0#;x$9?Ee6
z^OT@wV|*hLP|_hF|2Yd;R>Pl$U4#?=v-G{x7S1aVFqa7^#TMpnSdyd|+|_!H7W;pq=i7&LU1fZ4-@C
zCD`xN-gQ;OjHod3aYIj+WvAK0LC~LPGJ5wz8;F*@FzJ+-!C{vO&~Pz5a|k(vkR&
zs}Zc)l)Uow==Ccg%S{20;5o{H9fK)#ph@{>8h(h^*=(r%>(3YVx+Ouo6JO{@$AWx6
zvlHCj13vKP=Q}QU6Z_KsvDAY*-xdDH`U$Vc_k||lnCtp&O+f6G@mU?nHb?oFbWO-B
z38H4h0-Oy%jZ2R0KuDgDm~yK~SDkl}A=`HtH5+5sX`hVtWCNtKq->&jM>%Juj5#~N
z0r&<=U3e&B`bp>f5BQHi&DZ97SmJ`68}Nj5luVTMQkk1|VcEGpk3T>{w?DI?;$Q$H
z#_g!soO&D|#!<{5mV|<|09nktOZ6GCEP)WBd7IZjx1pWcfp4=o+pb*0Z*B%)1dN*9
z4dU5)bf)|Hw*fabb&`cjFl5`@m??6~=)2+%N>^~_mxtDweQ8~p)y6&F<*iNmFH}We
zcl5{1Yo|~UyB{bQf1pYSAe0|9S%?rbvW5zBvbjn=Z_*}ekJ7N&T?1570jw?$gj{0F
z29Qwqy!-rBHPZ?u;?hfLt?Hc53V()y{(<(4tf)-jIdZRd>}G@8sBX)MNm4C6fCIC@
zMm||YZsb8*apVq&_xioJbt}z(x{b^0!NJb&Hk{rDfX-8ar_`9-pAGqf8&$1pEunF8
zGI+WN7;$A4)@o?V&%G@p{Fq17Z`%Lq2G2l=!a_QQY*#XhX*nySwE^u7EZHu^GSn1TFop)RqpLuUgh>-<3s~2a
zAvyyAAj^yL!zS*LodI4#hO8{!ihiEL?bPTfdjVUtLL@C}x3@
za-+pj7XVTA@k@dr0i{gb9kBO(222nH9Y)FqQdm{Tf4M_DWz4?ez~p`K=^F@|o~E5TRW#y4c+m|20ed1rOdH)5_3UGPBRx!f@+Z0!!#J
zopYQAvPVC&m?`tV96*7_-5*xlA1F3w5Tp#^Ko`U12Hmm0_6BHhF8$8^@pQo5(?$h2=H6o{ZfJ(J7d4yKgtvVm9$4^T
z<~b5<2ll(dh=EzV9Y%DMrvi{>yX}8fxvDazWT*g
z2Q4t3)a5DWthbr
zO`+($xw-|2SmOmm0N!j!Yf_gUQ~O8if*Gpw{abK5(Vl!Ti_$U=HuarktIGXWs0@Fh;S@1>K
z93X60*zYEwgSzIm@&eLDbEPPX1L(lR-*ba}+Rm(`jIK**6oOgVP_<8aGlhU|_SjN`
z3o~TrsY#6ZkkQ?}YNtz(}~B)h1w(QFQ*llr*8y=n1)RVTczyEvn2c@1
zsxo);4qp@@z#I@oLs)mE0e!&I1_9c`8KtN-9=$=c=dOcQuRenS$8jIdn0O054|AM7
zp4VW13m=DmqO#VU(4xfFs?bomt?BBQ_5v1UIGRQbH4DKO!;0X%&Ke0?GWB|LCfDKk
z8+QY{S3sEk9ek}f*e38bMtu!3K!IYe16)K54DJL
z8uY;TxXPHL>{h&W|E<&kpZB~>os&Kz95rx065uO{!?5itcf*j9z)FGg^jls`f58lk
z%&_3C^|#ax?lX;bINFny{DRUJLC^)FKHTTYTw1;sY$0Gd*$(g90WI4o5$K_dnnW7Q
zTX>7lM}zf^%2XqTKI8%ze>JBGl_;D|@II#HNm$c2So82BET_&I)b|V@Z_04
zvz$0OZr!f}et;8L{~z%ALiWf^8DRKP-~|V0cU9dSw8Ze+IfpF}h!OI&VTID`BM3#S{jJu0}hJs=Yu8kdOd=@_GLWH6hN0E{cS-Nz36k4b0&D9xS~B?
zM5*oVYKj;q>fClqR@>E0KO`Hxq>aO0A~IFCJ#)ZkiUUjkt^nxnG(b7f$$1#Yl{gOi
z;U*zXOd|rj9LR1szOxF7Et($+WNkf>mHT*@3y6MI0CK}yS}87CHXw`bdb%_m6NWZ>
zm|iIr4#ViciB%}dLG(&JT_26@erKg{(h?7@5!mGdlVuQ8ijDgP&yR5k
zQaq>ba!{>HNQcbm3HsnWyeSWv%!wH~LyuTBZ*s;xT4Yk&Cm&BlO)WIk%y5D9Ryg8n
z_ikRhxlNvT;6At1j1`en1ZP187iIH-;Vd<}VFH;!061?ECW+wD5;`xnf^y5&9ZmBq
zsrSSeE(7(PV%Q{6RF}Z56NS~+6OduHRF6IGWkUH5P5<+RS?7b26T
zKqL{22;{GY!aTD|^z#zqdvRmVj=Vq@l$Z)M6mMNuGozcB-CuW2P@#=@D=Z`hwu0ls
z!I_M-Z?H3rzI7kKOAJhH-|aSUUIu$Yxzm=jbEX)T5c9_~w(+TnQRffgcp+NuZSO+M
zuRy}y<;h4`#5<4}1Y*D%<8CeLh35Q|mug^a^)m
zP$PTgUPXN|uc@o9n+uh1O;K6e|HbJ!@+m#PO1)S^J}f%(Ll}ulB?D)DkC|sQnm_~h
zcZy=q6D92M%sSw#VmI2kP;xS>1XcYMqE9R`=mygr_dr>(MS~B}w~lfHhc#o|F#Zl8
z6cf?}RiAYdC(t0VtNfcpJ~vpsCNfNt_r@NH7$GKy*ru
zLN$7CS)=vcovYtY*3xE18|GH5i$M3MP^s>8%^)YIqOKs*6y|^FHvkBtfeK?>2|nm+o|AU|9a7ir*AF4F2|R`63b=Y#U)nElm(1J)`u2uY+K8L_(K}&
zVl2<^GW4{7Nf!Se8#E;%8mF2&{Fi}O{P21MPw;*X5W|M=^GV&imH)2afalDy;Ta+9
zlXWxHm%hU0RAU*C|cq>;7ed>f#%G1rAwd!%kRW%0Np#@<6vmFr)JdR`5ndZX|53R=L2hOei<-4xBXlRHcT+U?q1H+$kpwgm^|W&O_*=
zv2~P00~nn&sutACfjVC{*A`lH*iM8Jss5SCikmf{*slJhZeEizM;|7VmNIDS;Nr3<
zt09Djh3L^ijOoT8J*I_mE^&?*GH2X(7EVv0Ev
zz3rI13G;XISVPfup_f&q@V_?kgGcuN5kc2hR|_WKb8tay$oaQ#KjkV@61+4ESPS#B
z9?PawhbYg`4APisDi10lP;7^3Z{7sF*}L-KaN!|$8VS77=0CxD@DtJ<8;&{zk%x}rNj{bDQ-7?xTx$Cq_ho0yF)3JTAtPNfBQAS
zh6M-Q9#-!fuyGFD1mzB>x@2+iO#)-dt%g
zpyy%NQ9x*+JjmQG`p!V`0GxQ1g1I{!IPs(#fXq-7?tJ?MCq7ESkGVNla0c_``seW#
zY`20PRAM_x&ca>oOcb3jDlb=GAG|ebA!?1IJ3*b>d|oXdNw@8ne+F?)s@Wqqa);zr
zEiNmf7q9lFr*bf!DDiWrf47N{@RLubxgm7<6MJc&`q@43!;M&kdo9i-D#rdzDE`fm
zjD0lvHBfYsf#yq_%-?J`2SaUdTOLKuCiERZ@XQZ|zHzzitjqWhh)b-3$LCi<25>S?
z18kJYzGzE>Me2%ti#Tv~I{!Md@8j63B*~TbMOkI-9t21bs*NFpsYOcM3z2XhZnV8x
zG&M91G5vVs(EO0y6c!0O6gCh+jM(Y>YI`~d+OV7j0O&M@i6l|aOfI&IQ;@lE>JXsg
zS@MJU*@{Y|n^=OcS9Y*e2-uH0QZYoN*D2%Uof&$QY=MNk&;rS>`2P4#1~nZSIc$_o
z!6VU8;0QkBwLxn{{oY5m_X0gW@!$0kIHNtxiqxp=UeYm~%Yx9#1G(3^c2@76rlX&z
z(nG6g4nt%HPaPnBcvnAKgV!|I=)6%Scs7j+mKSG&r686P)0jD_^{(1(o9BB9Um~AA
zNj{9OBDVY(OrH@6+#O>St4Dxdy*X8MiOtclnCU+zn*ngIJyoD$T%=u4h
zYYfZ_x$~%E6oaF-svJhz;c%q%T!V)9sPOuqDm;$`u47_-8FBF|z2U&jaRApjJFIL{
zvT{Pf?mCt-s@|X(tcu__k2%&rojWKVCcOyMSQ8c_cULyUB4+y2v;h9w>yy;zvVF5S
z!OQlu==d}H`C%Xl$`r?mq@EFkOy}Df9>Ol!^fu?a%LTu9+wklF#}9lNk#1uxBh5DC
z_)QN#S__-j+v(;
zuIFzZY8&RMu2pYJN*Er)`V3flq-@4izogc4>=x9^9q3-J5~E*k^F#b~*I}i)65%oi
zZ_dmKK4M+;Z(D~_*ce$ay^$!sLX$yAO>)-T9uG%VQL;b&>96e~h17TH_1ob<>E8+{g-q#m?#a=;rMY!Q^9DmyY+67*;NJNOKAm#
z1T9;_#{v8g&P~K(jjMy_XHE8Cr(`)(YuvpZ&fkaHB`hxF>lJlx-(z&lZoN`tgZNxK
zO)0FCwfxrA(?&h?xo*wyMZSA+Uvxus;Z^WmjvNy?CAV9lkH5+5b$5IJH7Kl2r+_}JzJos&_pc4b%(XUkv+e6d3~=>n=`tqMMvRCIDLo7`lR45Q%~_4C4uLXpQ_k!=}Om#u0UJ+3G;bWkD
z$jXqGM2ftUxbwa*;Lcpy%Y>3`C`KnJ+w&c`%V-#!a9;5z`pWW5QZ=00a^CPqLZS%X
zwRPK|h#qTn^&*qM3to3ls=$BL=hp6OV`Gf#wH4IUm8`GE8#dWWOn+|1DL;Z}>b(An
zlm$)rjw0-SNwEu$_Y{q*0~)oIiD`awm8KU$DZh@w=elo(1_zV(>bRN^IBlDdjq-Vpj_>j!%kxddMM4Mj~`SD9q|2)_d2Jec-qC=olSgAIqy
zbL1RL2%k>!!h$LPfsf30ZzeJSth;|hirS2Y*~K&hLm8UM`z0_3syUU0*>JDPcKPA&
z8l2K4vY|o*WDKdwsu{8TpyN%%ac{mS-*eOA&xS|W$jeE_QqE^NAs_c$d^udeQCRFr
zjtP+FVH?!ciM~o+-QpQGS@9rP0ZmEa+`L|_uhSE
z>>8(#e2vt-hU@=j{8F7+d~c^r5iWXydLdk`DM!VLZ2M>mGz$!B==|0f`#{ih@;7wFvoOf4?inA94f3EB3EP)EitT{M+Ew_V@M2&cUavpofTml9Y;aa%nv|GAJS(
zh>3r^!nS>WbW%`AU0YKyFCauvD>ywQM?^g=DIP#dC{SfFWQIIwjXp?MExp3FSaLP9
zwyQ`*JvclhRBJPxpOy6W@@HmVTzNNOe>q@)I(>a~XlGtLL?$#gB1l**FfSqC<=k9(
zI80tIQ&33j?&wftG4}ZN_xJWQEhn9zl{`ZxL{Td|LnoY|mF4Q6#$8!ed3AA6Oh@wZ@rHwdyt%lOk&X5A^5fmt-q+C8%)-#eyT`k(
z!nUWru%Ow}$>`(V?C9ipb#b(%lhDSy`}+7pJvc%>IH8`L%)zze-PYIE)VQjey|AF#
z(#iJp^85Mt@$T#2*wFg<_{+hy_Vn?=wx`CsuIJ<3)y=}s$GZ(WK|lZi2IEOYK~#7F
z?9#;n12GT-z+VS%zv>A5RGihheKXsTo_0Nd5xqMHf7ttse<-XIR6oC$y(
zJBL(z)p{k}MZsR?PuK@=U>`XAj~B9ago1G#)f@xp)`x}FrTusvi(V;s5;3RJnA+0*
zx`yIbSyB?Tl8HQ`Deb3v#WQ3WE~x;ZN6&roUuCD|BjdabO}Ia}z>Fl%zERuMXQz*h
zX(d+>isVQnRW`p^ZyhJu`vX|2MZF}FDw~(p{a-2Wqvi@rDs8Icy6FM98fC=D7@;7p
zC9lmtzq~iEYbB2W45aa|?uX|n*l)TNzFi%jP2WR~x9j&h?WRcpCX6a(V)VvR$)A@g
z-n5VS0ONNz8zv{*`oM%FIkCd6m32+Ah<|(D7?pZX!1kv{our2M*5@_|b-wlBYm3_ttV
zgvRNql$D@^2=TEyJr2nUa1mAo81cd1^;2<5K)%UUEv+463dl0V%nh*z6D?
z9SVqN4$0^A?`ica(Hzq6D+!m|=}Lv9G>PELP~$!EuGILOZc&4KPLna!b@lP*
z>xIfr7p^vl%MzD0IHi4>xS-1=^Y!w9N0l9kO*_<0SQhr19)Q5^)68U<$;Yb?u?g9<
z%Xuyxu#E!KjH_Xj%;!rtFSaSW5)C`-%lzyC&hP|cvdII*6)34f%9rEO2}j2QI}8x8fV!oxKb8
zDXEnWzt^a1crGPy^0D$hn;_%j#E}j;R}!%yMg3>XKfZQp8tFcJ65(^D5C`C@YGw}~
zxR|%;yyzow(xp>p7|#rHJUL0~x>7i7JiG15hq<^uiL~U_J_>^II4}@;t@S?#b7i@>
zLU2AFk4`v7`L|Ju8E@80)&
zeEHPR0k-Mnbte-5(s%t7NFPdjDv_qt+jOt(d%Yr?RNEwEqNA@@{IFb2X|uPY>;GoW
z91<9ap#YlNcDHkjf05c6Telzl)YjVuFXlC~A$dWy_<}VmH@!c8(LDaI-0tGBD$8=A
zk`H3CP%UM8-;bRaP1}ptSc33EU=$@uRtPezCVD?KD+0H*i{Y{?tD0_@%n5_jR2h>z
zv{uPmtS)^J_;|_UPWg(X6y%?-HSJqsZXmX-W|nWZ;n()AxKtx`f4GS|e#2U?fzXJxy6J<#K3I*YHne;-~0W2<}3-KkS~};K^EbLvU9@cdyz8hCGs#
zis|I$^y|AGB`uMJ_s(pQQ$;iewFe3sQ;@DnURq^iY)y%@OwyQiuCgtkleSUQH^zzBa#=^FzM?^h_gMZ`Q
z*OQQqHZLkjL_Iw?GG}LAhlzh^W?no)CTnM7XJ%gh{{GtF)%W-H-q+CD(#bF{A>-ZF
zLp?a-HJJ~=Y-@$u;6-OItXd3AB*Fnj%(#g=ryM}{+t*fct*w8#f
zC&5TzNRx*3?8%E0mCpy}r4fpp}x9ig|Q#dUkRsBOUhi@%H!j
zH83hrOGnVgyZQV0&&Rv&@$1sr%>4cP)!WbX_VVcL=Iie1*xu6j`1R)M;^5@m-QwB&
z{ruYC*4N$B`TF?d=imDK_~q*3C?Xu#-O{|mw*UYC+u+sq_w`*{Q-_FuJvlPw>EiVD
z^2g4>r>mgu@$6k(Q_sD@X#fBK0d!JMQ~ny`2Ymnl2dha$K~#8N?9I0l!Y~j3QU8B=
zL6UPO=PzVN6$LQjPKE+)v*pXyKk9$r1SdGb2_6Ra<@hx?w?)~)Lv2-9UKnOm5j?N5
z`BE?!1aEUa$A{505RkieQDHO$fl=QHU^VLtqO-`Xk4yxZXAtC0N*G5FcC0n{0PQ-{NP_p;v|rs?)x&R)59QtYm^aU%)?a2Lsz
zZ8>&qV<-3`rUd6>y98?T4NgMXP_o%3O9H*wE}NUOSKW(tuL}L3^y8*bs;1rISS6-v
z3bE^`|FD{oMz1oSlSs~cnGO5wIdkSn+HouGU!@#B6OiM>=VPi_2YDWxa}xOXu{z9E
zWL>P1`0(2?irq;G&^)ZxY92g^`y3O#xCg5ha}T_vJ$Tv@If)1V`uDi3$yFW?p2POE
z3HW{s>uJDFF;(Ov#~DPP7;)fcGWIeUsl$K;oU)K%3^-Y%fAGuQ(m971-VfoT*?{kN
zlO{!z<$U46*A`N_3%*EF@HKCg`C-Uz`Z2yOXe;GU9MHPOlO&ZQ8M81
zuP}FuC4uq?xah&IC6`RYy`<-x@sKqS6%j+00gRFfIN?Y?748GD1dNg?xSrtt`Ywy+
zAm5O%)w%`l#)q%iHS&>kzF5cwdX9#>G<*SI=OD{-Fxhw83b*VbT4ZZ%Ier#t*s@8u
z6#@+>npC!bDZv8|slr`mD4XQZZ-HARj811AIWNmm+hqmAP4ffKaTxdbwFGx5*hWE5
zoY4$+umhiYMgg$K54^_o(FKCo1l$B1PL7^i%p7WhE(7sHhCjAc@S>5|vH63y*2j?}PMhJNAtevKvPSZ=68=pIYteEtOuiJe
zhxt8}yOYD~Z8S|KTvx#*GiW4cCd=V3qm!k}aMf>(oL`i1#Zpam)d^($JK7A+N5;1Z
zQS~@RDhe343HKE8QYq5xMg%U%lSN-++$X?z3BcwuMF9maN2X?ArNV}2m@H|i_pQi;R@i+UqBxAqDJgdA6p>f;E|sb
z1xsNIb|N8+`(#MNV)EYe4^TIF92n|?)7V=HU_2K~fJ+*ytt37`ul=b{69vzr({bSK
zC_ITb3@paHfcdh{abQhRu!c^@xyP+2?E1Y%79FMt_$!ax5=%?YGGzcJG%0K2bMbL
z1l+m_x3Qv84No}tQ)+jDfLlr!(}iY3#?lr`sjujCjk&3|MdVW%7CBRW0UNqB*}*$a
z7M;div6LzIeMo@SpXJZ+`hn-2kQf!
znI;L_a<9d$(Z1EA^W_H3$kcpPFBF5Zo4bZXbsDhZIf1wXhsP-RN+u{d__5}NlV~&D
zX&Oeak%K8R+$YbfT@x}4{kaxJK}z0
zdT#&p^mJ~z??R>WpBhHVMB4qU{S+&0Kg&vH3zNX8(V}6xD(>*Q|=~kaffNxUb)R&J?>TN-*NcsSHoew((A6qX!JY{BSXsE
z=rmvXUD@>9pTYv>o1NqMlLa_dvp3!hIr8YenY|x3-(?jqEWFq}`e0`F5y$K2wA+yY
z3by~0)web?cOM>cQO=8_nNPSK9@0v$Q>pM%z(mt9GQTpS?mlGgrL(ZdY(}qkhIR;?
z)Vnxf5=KtW#JRpXVd|b#>HqE8Jxjwt7zc34XSn6eCBzW0n1%*2*<^{qrkhj}S_>B1
zO0h4{cBpO9MO=JA5f>*np_`x4yCm&ZDfJRsaLE4yJiq(rnF3ES7vxuQkhG9@T
z4oq31)(Kj$9Bx%)tz5&l%F}P7sFEZp)j^17ChRa}i|t#i0$=0SMJwa)E(Wc6i2}W9
zNZ+x;nW(Ia%i4a2`!nbT*KX%{h!@hZ`i`Sb2>?TS%nHNL`Qrso!;r?sU
zr~!sE%#AA%>&qN_P{VA@pJ`F#-gp=@!%z)YHN|d{Ah4{c-S~%Ok5@@tOW458UIE2r
zb(86IZqu|5D3BPYbRsr6OaoYUEsxACoWKf&=6ZDqws&m|hWct$_rTWgtIgJ^sUtZQ
s5z=41mi><}%2POnQ#gfFcqeJT0qn$aM&njPAOHXW07*qoM6N<$f=5(2Z~y=R
diff --git a/public/apple-touch-icon-144x144.png b/public/apple-touch-icon-144x144.png
deleted file mode 100644
index d56d93e58db378553b73ae0051cd0f7d05a75058..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 2803
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
FV1gk`jPw8i
diff --git a/public/apple-touch-icon-152x152.png b/public/apple-touch-icon-152x152.png
deleted file mode 100644
index 7938515806be506e05ae9d6d0c70c0bbc7394f5f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 2962
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
Y0mOM}9upqaU;qFB07*qoM6N<$f=4tlD*ylh
diff --git a/public/apple-touch-icon-180x180.png b/public/apple-touch-icon-180x180.png
deleted file mode 100644
index 2c50c6fb00b822fb017323021f271a48cf7f4a08..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 3737
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
DHgyZA
diff --git a/public/apple-touch-icon-57x57.png b/public/apple-touch-icon-57x57.png
deleted file mode 100644
index 5d2d6dd63eac88a95de5b0228a7e37a1f9235bbf..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 1401
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
Eg5w=%O#lD@
diff --git a/public/apple-touch-icon-76x76.png b/public/apple-touch-icon-76x76.png
deleted file mode 100644
index 6fae8d21c9c27b5d6e280c6647f207c264f0b58f..0000000000000000000000000000000000000000
GIT binary patch
literal 0
HcmV?d00001
literal 1803
zcmV+m2lV)fP)$Iijy=igv|IsEf?(yu$
zyRKbXRj#b6>+a|@H6qE!#`5y<$i|3?f4#7vXJ=kCHX^dN
zt7vCl=f+_<;x;fU
z#=EXIFDmx<^*B5v{Qdj!?(5{_r7uS*xk}xc{twJ&_g~rU0YK^J~%Kh
zAwxYlXJ%gM?B)0O_LGo|NJTw|iGTb2``XgUou8F?b#d|Z??5{>_xSZtWHHy>(_UIu
z=IP=oBON?LCY+#^+ThkaL?@k~mAtyRL_RrDOGfte@~*9_%)zz7wx|2~_)tqn`TO|0
zxwrQ8@zl)1l#q_k$Ge7ufIT=esH>o{F+O$x0004WQchF;8si6j000EaNkl?=Q^
z&bSD~unIf;i9MFwwpN8wv=mDTmN84l7Ta#&uaa7dOR{neUcf9NJFL5ol?zIeHyW20
ztJpzk!5itb!9v?xQK>C11C3X}LR+!Z*g3CIOUeQ8m{m>0JkC}Cpo;))@#sN{Ju70z
zO^jb-hw1%S{l!XP)x!Ls5Q}m$C;%=I(?qO?9aq838v(1Bi(v}LUVwcfhWiBUI9p8s
zxo|kz_1P%p{ERDZ7HguTlNnZ`OGCWQJ>0!4m?hf6X9!neKM-bz0OFDqjt99#OA`_>
z%wfz^02VMd=*ZbcD%K95d((`@W2ZT+NqM@;JA1CT7rT)-%FIPb&g|!c9ylhJ74{w3=#O$r>9S
zPC*68)mRFs1oo!E+;3B=1TqXr<#H{=#m|9Qj_M
zn9qoXiLU_NdaFg*iGK4cgH7^Q3%@2{XqwX?&dM!<-;IsUd+DN-Iwx9dNW@~;%95XO
zrKrm*g=vqA1XoHWMFx_V0v0o}1@qyWxOK|0sP3Zmcg4V4(<)-(yRHyu*%WjY?tiXV
zmi53Awu=XC#agkLCBraQi=c|@T`XpUp<~!C27vV-bS@@hKFwCU1Mq&cv$fXBVUGXN
zHcuYw&fG2o3?bypq+&Ph%mKt>w)bE%kwN3@!|5Xj08Sjp_ovHa2=yJCcAUP5`KC?D
zH$Ijo44-`YJW7RdvnP?cO}ch_n%8`e7;2?j^Q%5IcH{&DUL1Ouo|>9^IP~*|H;hug
zaZ)(n|N5_2-Xa!<@tQ`c@jt54ss8f%3_{s#ByuiG3e1*=DEIu=d9&)fR|QPad}H~l
zl%7Ssk+*+1)V`5JgL@-rV)$jV@W*#QCEQ*P)C0005$P)t-s|NsB`
z`}p_x_3rWP>+b33?B((F@AUTa{Qdjjf+<)-__gC=Ec9CD_C+hV1PRG_3}tpE&TobNJTv`FCo3cwlp;&JVYiqJtR;z(F6G&UmZ?&wr&Gdx2koS>CxW?uIA^*lo-`TO`&P)I~kE7#r9
zJVYn4x2rukGE84D-Qw8p@a)>))%p7Q*WS`cL_Iz^GU@E)(A3NN`uK)|e^5(D)Z5R=
z$j0R318rIW|IuGP%K
z?C9kC`uNbsyLfeRcyw_?JviFZ$>ZJDlaY3r|_5c6}z)3_wRCodG(?xc~Fbsg+U$Z5LBlCpvub(!Xci+E0Ic&aA3-F!|NyuoN@
zZF$b%BZ5jB%PaT-l|J+4N01aY{EfgFpfGME|Mw4QLhAPu(86_}o&rs!)cXAm(57
zF#`iw)6?;5Ujz=iTJ263H-Ub?*B=Z=*WI`P#&~MV
zyHApU)^ZyBe(bOUU{&RiR6^bPuaSm-IEV!T1eNf9-SivxXUF=c78USArkq^JB
zdHs0B`e3qnM+1l$j15P?SFbq$4RigAuNCg*KA|B4z`Ym8@yHb*&%uczy8yO&y_J?O{$k=JA
z3Fn0XXyXVY;J9=zASaSGd|}F&3{JQ7BoR$!fXQY8y6IK33?pvGvR?F=EnqXYNVZ`3
zo*6)rO91tpPT%D~A~V6I-Qy^LjIKZh9)QTM0G4FMNJg$J1bkN^AemlLADGPgKF!8P
z=nO;&fE(pfbzFY8T)-{R;RZXe0km66HM5S#7IYRDIptU`b0OOhJwPWNPZdM}g0xH)
zEeA3IWD&rwa{2V3BCrK)fC`ue-w5b4*HmM1Wp`roq2N3;JNZkt_;t%~ff2Bo+jI0F
zc39)-*yf800e8yogdJ;>>Ex}|_Hq#zl{%2e0=WQ1Qjh&)Z*xca{?^QyaEm=rRs`xZ
zfq