diff --git a/.changeset/silver-trees-give.md b/.changeset/silver-trees-give.md
new file mode 100644
index 00000000..579ce546
--- /dev/null
+++ b/.changeset/silver-trees-give.md
@@ -0,0 +1,6 @@
+---
+"@paypal/react-paypal-js": patch
+"@paypal/paypal-js": patch
+---
+
+remove .nvmrc and lint-staged.config.js in react-paypal-js
diff --git a/.changeset/slow-plums-refuse.md b/.changeset/slow-plums-refuse.md
new file mode 100644
index 00000000..29c38ccd
--- /dev/null
+++ b/.changeset/slow-plums-refuse.md
@@ -0,0 +1,6 @@
+---
+"@paypal/react-paypal-js": patch
+"@paypal/paypal-js": patch
+---
+
+remove the prettier dependency from each packages, update the prettier root version, fixed build error, update note version to 18
diff --git a/package-lock.json b/package-lock.json
index d342ec6f..bbcd8e60 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -11,10 +11,10 @@
"packages/*"
],
"devDependencies": {
- "@changesets/cli": "^2.25.2",
+ "@changesets/cli": "^2.27.7",
"husky": "^8.0.1",
"lint-staged": "^13.0.3",
- "prettier": "^2.7.1"
+ "prettier": "^3.3.3"
}
},
"node_modules/@aashutoshrathi/word-wrap": {
@@ -2232,15 +2232,16 @@
"dev": true
},
"node_modules/@changesets/apply-release-plan": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.0.tgz",
- "integrity": "sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==",
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.4.tgz",
+ "integrity": "sha512-HLFwhKWayKinWAul0Vj+76jVx1Pc2v55MGPVjZ924Y/ROeSsBMFutv9heHmCUj48lJyRfOTJG5+ar+29FUky/A==",
"dev": true,
"dependencies": {
"@babel/runtime": "^7.20.1",
- "@changesets/config": "^3.0.0",
+ "@changesets/config": "^3.0.2",
"@changesets/get-version-range-type": "^0.4.0",
"@changesets/git": "^3.0.0",
+ "@changesets/should-skip-package": "^0.1.0",
"@changesets/types": "^6.0.0",
"@manypkg/get-packages": "^1.1.3",
"detect-indent": "^6.0.0",
@@ -2275,6 +2276,21 @@
"graceful-fs": "^4.1.6"
}
},
+ "node_modules/@changesets/apply-release-plan/node_modules/prettier": {
+ "version": "2.8.8",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
+ "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
+ "dev": true,
+ "bin": {
+ "prettier": "bin-prettier.js"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ },
+ "funding": {
+ "url": "https://github.com/prettier/prettier?sponsor=1"
+ }
+ },
"node_modules/@changesets/apply-release-plan/node_modules/universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
@@ -2285,14 +2301,15 @@
}
},
"node_modules/@changesets/assemble-release-plan": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.0.tgz",
- "integrity": "sha512-4QG7NuisAjisbW4hkLCmGW2lRYdPrKzro+fCtZaILX+3zdUELSvYjpL4GTv0E4aM9Mef3PuIQp89VmHJ4y2bfw==",
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.3.tgz",
+ "integrity": "sha512-bLNh9/Lgl1VwkjWZTq8JmRqH+hj7/Yzfz0jsQ/zJJ+FTmVqmqPj3szeKOri8O/hEM8JmHW019vh2gTO9iq5Cuw==",
"dev": true,
"dependencies": {
"@babel/runtime": "^7.20.1",
"@changesets/errors": "^0.2.0",
- "@changesets/get-dependents-graph": "^2.0.0",
+ "@changesets/get-dependents-graph": "^2.1.1",
+ "@changesets/should-skip-package": "^0.1.0",
"@changesets/types": "^6.0.0",
"@manypkg/get-packages": "^1.1.3",
"semver": "^7.5.3"
@@ -2308,25 +2325,26 @@
}
},
"node_modules/@changesets/cli": {
- "version": "2.27.1",
- "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.1.tgz",
- "integrity": "sha512-iJ91xlvRnnrJnELTp4eJJEOPjgpF3NOh4qeQehM6Ugiz9gJPRZ2t+TsXun6E3AMN4hScZKjqVXl0TX+C7AB3ZQ==",
+ "version": "2.27.7",
+ "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.7.tgz",
+ "integrity": "sha512-6lr8JltiiXPIjDeYg4iM2MeePP6VN/JkmqBsVA5XRiy01hGS3y629LtSDvKcycj/w/5Eur1rEwby/MjcYS+e2A==",
"dev": true,
"dependencies": {
"@babel/runtime": "^7.20.1",
- "@changesets/apply-release-plan": "^7.0.0",
- "@changesets/assemble-release-plan": "^6.0.0",
+ "@changesets/apply-release-plan": "^7.0.4",
+ "@changesets/assemble-release-plan": "^6.0.3",
"@changesets/changelog-git": "^0.2.0",
- "@changesets/config": "^3.0.0",
+ "@changesets/config": "^3.0.2",
"@changesets/errors": "^0.2.0",
- "@changesets/get-dependents-graph": "^2.0.0",
- "@changesets/get-release-plan": "^4.0.0",
+ "@changesets/get-dependents-graph": "^2.1.1",
+ "@changesets/get-release-plan": "^4.0.3",
"@changesets/git": "^3.0.0",
"@changesets/logger": "^0.1.0",
"@changesets/pre": "^2.0.0",
"@changesets/read": "^0.6.0",
+ "@changesets/should-skip-package": "^0.1.0",
"@changesets/types": "^6.0.0",
- "@changesets/write": "^0.3.0",
+ "@changesets/write": "^0.3.1",
"@manypkg/get-packages": "^1.1.3",
"@types/semver": "^7.5.0",
"ansi-colors": "^4.1.3",
@@ -2336,15 +2354,14 @@
"external-editor": "^3.1.0",
"fs-extra": "^7.0.1",
"human-id": "^1.0.2",
- "meow": "^6.0.0",
+ "mri": "^1.2.0",
"outdent": "^0.5.0",
"p-limit": "^2.2.0",
"preferred-pm": "^3.0.0",
"resolve-from": "^5.0.0",
"semver": "^7.5.3",
"spawndamnit": "^2.0.0",
- "term-size": "^2.1.0",
- "tty-table": "^4.1.5"
+ "term-size": "^2.1.0"
},
"bin": {
"changeset": "bin.js"
@@ -2364,12 +2381,6 @@
"node": ">=6 <7 || >=8"
}
},
- "node_modules/@changesets/cli/node_modules/hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
- "dev": true
- },
"node_modules/@changesets/cli/node_modules/jsonfile": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
@@ -2379,52 +2390,6 @@
"graceful-fs": "^4.1.6"
}
},
- "node_modules/@changesets/cli/node_modules/meow": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz",
- "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==",
- "dev": true,
- "dependencies": {
- "@types/minimist": "^1.2.0",
- "camelcase-keys": "^6.2.2",
- "decamelize-keys": "^1.1.0",
- "hard-rejection": "^2.1.0",
- "minimist-options": "^4.0.2",
- "normalize-package-data": "^2.5.0",
- "read-pkg-up": "^7.0.1",
- "redent": "^3.0.0",
- "trim-newlines": "^3.0.0",
- "type-fest": "^0.13.1",
- "yargs-parser": "^18.1.3"
- },
- "engines": {
- "node": ">=8"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
- "node_modules/@changesets/cli/node_modules/normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "dev": true,
- "dependencies": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- }
- },
- "node_modules/@changesets/cli/node_modules/normalize-package-data/node_modules/semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "dev": true,
- "bin": {
- "semver": "bin/semver"
- }
- },
"node_modules/@changesets/cli/node_modules/p-limit": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
@@ -2440,18 +2405,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "node_modules/@changesets/cli/node_modules/type-fest": {
- "version": "0.13.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz",
- "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==",
- "dev": true,
- "engines": {
- "node": ">=10"
- },
- "funding": {
- "url": "https://github.com/sponsors/sindresorhus"
- }
- },
"node_modules/@changesets/cli/node_modules/universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
@@ -2461,27 +2414,14 @@
"node": ">= 4.0.0"
}
},
- "node_modules/@changesets/cli/node_modules/yargs-parser": {
- "version": "18.1.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
- "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
- "dev": true,
- "dependencies": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/@changesets/config": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.0.tgz",
- "integrity": "sha512-o/rwLNnAo/+j9Yvw9mkBQOZySDYyOr/q+wptRLcAVGlU6djOeP9v1nlalbL9MFsobuBVQbZCTp+dIzdq+CLQUA==",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.2.tgz",
+ "integrity": "sha512-cdEhS4t8woKCX2M8AotcV2BOWnBp09sqICxKapgLHf9m5KdENpWjyrFNMjkLqGJtUys9U+w93OxWT0czorVDfw==",
"dev": true,
"dependencies": {
"@changesets/errors": "^0.2.0",
- "@changesets/get-dependents-graph": "^2.0.0",
+ "@changesets/get-dependents-graph": "^2.1.1",
"@changesets/logger": "^0.1.0",
"@changesets/types": "^6.0.0",
"@manypkg/get-packages": "^1.1.3",
@@ -2531,9 +2471,9 @@
}
},
"node_modules/@changesets/get-dependents-graph": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.0.0.tgz",
- "integrity": "sha512-cafUXponivK4vBgZ3yLu944mTvam06XEn2IZGjjKc0antpenkYANXiiE6GExV/yKdsCnE8dXVZ25yGqLYZmScA==",
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.1.tgz",
+ "integrity": "sha512-LRFjjvigBSzfnPU2n/AhFsuWR5DK++1x47aq6qZ8dzYsPtS/I5mNhIGAS68IAxh1xjO9BTtz55FwefhANZ+FCA==",
"dev": true,
"dependencies": {
"@changesets/types": "^6.0.0",
@@ -2576,14 +2516,14 @@
}
},
"node_modules/@changesets/get-release-plan": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.0.tgz",
- "integrity": "sha512-9L9xCUeD/Tb6L/oKmpm8nyzsOzhdNBBbt/ZNcjynbHC07WW4E1eX8NMGC5g5SbM5z/V+MOrYsJ4lRW41GCbg3w==",
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.3.tgz",
+ "integrity": "sha512-6PLgvOIwTSdJPTtpdcr3sLtGatT+Jr22+cQwEBJBy6wP0rjB4yJ9lv583J9fVpn1bfQlBkDa8JxbS2g/n9lIyA==",
"dev": true,
"dependencies": {
"@babel/runtime": "^7.20.1",
- "@changesets/assemble-release-plan": "^6.0.0",
- "@changesets/config": "^3.0.0",
+ "@changesets/assemble-release-plan": "^6.0.3",
+ "@changesets/config": "^3.0.2",
"@changesets/pre": "^2.0.0",
"@changesets/read": "^0.6.0",
"@changesets/types": "^6.0.0",
@@ -2745,6 +2685,17 @@
"node": ">= 4.0.0"
}
},
+ "node_modules/@changesets/should-skip-package": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/@changesets/should-skip-package/-/should-skip-package-0.1.0.tgz",
+ "integrity": "sha512-FxG6Mhjw7yFStlSM7Z0Gmg3RiyQ98d/9VpQAZ3Fzr59dCOM9G6ZdYbjiSAt0XtFr9JR5U2tBaJWPjrkGGc618g==",
+ "dev": true,
+ "dependencies": {
+ "@babel/runtime": "^7.20.1",
+ "@changesets/types": "^6.0.0",
+ "@manypkg/get-packages": "^1.1.3"
+ }
+ },
"node_modules/@changesets/types": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/@changesets/types/-/types-6.0.0.tgz",
@@ -2752,9 +2703,9 @@
"dev": true
},
"node_modules/@changesets/write": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.0.tgz",
- "integrity": "sha512-slGLb21fxZVUYbyea+94uFiD6ntQW0M2hIKNznFizDhZPDgn2c/fv1UzzlW43RVzh1BEDuIqW6hzlJ1OflNmcw==",
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.1.tgz",
+ "integrity": "sha512-SyGtMXzH3qFqlHKcvFY2eX+6b0NGiFcNav8AFsYwy5l8hejOeoeTDemu5Yjmke2V5jpzY+pBvM0vCCQ3gdZpfw==",
"dev": true,
"dependencies": {
"@babel/runtime": "^7.20.1",
@@ -2787,6 +2738,21 @@
"graceful-fs": "^4.1.6"
}
},
+ "node_modules/@changesets/write/node_modules/prettier": {
+ "version": "2.8.8",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
+ "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
+ "dev": true,
+ "bin": {
+ "prettier": "bin-prettier.js"
+ },
+ "engines": {
+ "node": ">=10.13.0"
+ },
+ "funding": {
+ "url": "https://github.com/prettier/prettier?sponsor=1"
+ }
+ },
"node_modules/@changesets/write/node_modules/universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
@@ -13788,15 +13754,6 @@
"node": ">=8"
}
},
- "node_modules/breakword": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/breakword/-/breakword-1.0.6.tgz",
- "integrity": "sha512-yjxDAYyK/pBvws9H4xKYpLDpYKEH6CzrBPAuXq3x18I+c/2MkVtT3qAr7Oloi6Dss9qNhPVueAAVU1CSeNDIXw==",
- "dev": true,
- "dependencies": {
- "wcwidth": "^1.0.1"
- }
- },
"node_modules/brorand": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
@@ -16509,39 +16466,6 @@
"integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
"dev": true
},
- "node_modules/csv": {
- "version": "5.5.3",
- "resolved": "https://registry.npmjs.org/csv/-/csv-5.5.3.tgz",
- "integrity": "sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==",
- "dev": true,
- "dependencies": {
- "csv-generate": "^3.4.3",
- "csv-parse": "^4.16.3",
- "csv-stringify": "^5.6.5",
- "stream-transform": "^2.1.3"
- },
- "engines": {
- "node": ">= 0.1.90"
- }
- },
- "node_modules/csv-generate": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/csv-generate/-/csv-generate-3.4.3.tgz",
- "integrity": "sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==",
- "dev": true
- },
- "node_modules/csv-parse": {
- "version": "4.16.3",
- "resolved": "https://registry.npmjs.org/csv-parse/-/csv-parse-4.16.3.tgz",
- "integrity": "sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==",
- "dev": true
- },
- "node_modules/csv-stringify": {
- "version": "5.6.5",
- "resolved": "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.6.5.tgz",
- "integrity": "sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==",
- "dev": true
- },
"node_modules/currently-unhandled": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
@@ -20697,12 +20621,6 @@
"integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==",
"dev": true
},
- "node_modules/grapheme-splitter": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz",
- "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==",
- "dev": true
- },
"node_modules/graphemer": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
@@ -26855,15 +26773,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/kleur": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
- "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==",
- "dev": true,
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/klona": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz",
@@ -28266,15 +28175,6 @@
"node": ">=0.10.0"
}
},
- "node_modules/mixme": {
- "version": "0.5.10",
- "resolved": "https://registry.npmjs.org/mixme/-/mixme-0.5.10.tgz",
- "integrity": "sha512-5H76ANWinB1H3twpJ6JY8uvAtpmFvHNArpilJAjXRKXSDDLPIMoZArw5SH0q9z+lLs8IrMw7Q2VWpWimFKFT1Q==",
- "dev": true,
- "engines": {
- "node": ">= 8.0.0"
- }
- },
"node_modules/mkdirp": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
@@ -28421,6 +28321,15 @@
"rimraf": "bin.js"
}
},
+ "node_modules/mri": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
+ "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
+ "dev": true,
+ "engines": {
+ "node": ">=4"
+ }
+ },
"node_modules/ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -30508,15 +30417,15 @@
"dev": true
},
"node_modules/preferred-pm": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.2.tgz",
- "integrity": "sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==",
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.4.tgz",
+ "integrity": "sha512-lEHd+yEm22jXdCphDrkvIJQU66EuLojPPtvZkpKIkiD+l0DMThF/niqZKJSoU8Vl7iuvtmzyMhir9LdVy5WMnA==",
"dev": true,
"dependencies": {
"find-up": "^5.0.0",
"find-yarn-workspace-root2": "1.2.16",
"path-exists": "^4.0.0",
- "which-pm": "2.0.0"
+ "which-pm": "^2.2.0"
},
"engines": {
"node": ">=10"
@@ -30532,15 +30441,15 @@
}
},
"node_modules/prettier": {
- "version": "2.8.8",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
- "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
+ "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
"dev": true,
"bin": {
- "prettier": "bin-prettier.js"
+ "prettier": "bin/prettier.cjs"
},
"engines": {
- "node": ">=10.13.0"
+ "node": ">=14"
},
"funding": {
"url": "https://github.com/prettier/prettier?sponsor=1"
@@ -33223,206 +33132,6 @@
"node": ">=8.0.0"
}
},
- "node_modules/smartwrap": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/smartwrap/-/smartwrap-2.0.2.tgz",
- "integrity": "sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==",
- "dev": true,
- "dependencies": {
- "array.prototype.flat": "^1.2.3",
- "breakword": "^1.0.5",
- "grapheme-splitter": "^1.0.4",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1",
- "yargs": "^15.1.0"
- },
- "bin": {
- "smartwrap": "src/terminal-adapter.js"
- },
- "engines": {
- "node": ">=6"
- }
- },
- "node_modules/smartwrap/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/smartwrap/node_modules/cliui": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
- "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
- "dev": true,
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^6.2.0"
- }
- },
- "node_modules/smartwrap/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/smartwrap/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/smartwrap/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/smartwrap/node_modules/find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "dependencies": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/smartwrap/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/smartwrap/node_modules/locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "dependencies": {
- "p-locate": "^4.1.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/smartwrap/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/smartwrap/node_modules/p-locate": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "dependencies": {
- "p-limit": "^2.2.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/smartwrap/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/smartwrap/node_modules/wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dev": true,
- "dependencies": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/smartwrap/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/smartwrap/node_modules/yargs": {
- "version": "15.4.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
- "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
- "dev": true,
- "dependencies": {
- "cliui": "^6.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^4.1.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": "^4.2.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^18.1.2"
- },
- "engines": {
- "node": ">=8"
- }
- },
- "node_modules/smartwrap/node_modules/yargs-parser": {
- "version": "18.1.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
- "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
- "dev": true,
- "dependencies": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- },
- "engines": {
- "node": ">=6"
- }
- },
"node_modules/smob": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/smob/-/smob-1.4.0.tgz",
@@ -34104,15 +33813,6 @@
"integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==",
"dev": true
},
- "node_modules/stream-transform": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/stream-transform/-/stream-transform-2.1.3.tgz",
- "integrity": "sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==",
- "dev": true,
- "dependencies": {
- "mixme": "^0.5.1"
- }
- },
"node_modules/string_decoder": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
@@ -35371,167 +35071,6 @@
"integrity": "sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==",
"dev": true
},
- "node_modules/tty-table": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/tty-table/-/tty-table-4.2.3.tgz",
- "integrity": "sha512-Fs15mu0vGzCrj8fmJNP7Ynxt5J7praPXqFN0leZeZBXJwkMxv9cb2D454k1ltrtUSJbZ4yH4e0CynsHLxmUfFA==",
- "dev": true,
- "dependencies": {
- "chalk": "^4.1.2",
- "csv": "^5.5.3",
- "kleur": "^4.1.5",
- "smartwrap": "^2.0.2",
- "strip-ansi": "^6.0.1",
- "wcwidth": "^1.0.1",
- "yargs": "^17.7.1"
- },
- "bin": {
- "tty-table": "adapters/terminal-adapter.js"
- },
- "engines": {
- "node": ">=8.0.0"
- }
- },
- "node_modules/tty-table/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/tty-table/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/tty-table/node_modules/cliui": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
- "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
- "dev": true,
- "dependencies": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.1",
- "wrap-ansi": "^7.0.0"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/tty-table/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/tty-table/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/tty-table/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/tty-table/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/tty-table/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/tty-table/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/tty-table/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/tty-table/node_modules/yargs": {
- "version": "17.7.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
- "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
- "dev": true,
- "dependencies": {
- "cliui": "^8.0.1",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.3",
- "y18n": "^5.0.5",
- "yargs-parser": "^21.1.1"
- },
- "engines": {
- "node": ">=12"
- }
- },
- "node_modules/tty-table/node_modules/yargs-parser": {
- "version": "21.1.1",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
- "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
- "dev": true,
- "engines": {
- "node": ">=12"
- }
- },
"node_modules/type": {
"version": "2.7.3",
"resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz",
@@ -38017,9 +37556,9 @@
"dev": true
},
"node_modules/which-pm": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/which-pm/-/which-pm-2.0.0.tgz",
- "integrity": "sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/which-pm/-/which-pm-2.2.0.tgz",
+ "integrity": "sha512-MOiaDbA5ZZgUjkeMWM5EkJp4loW5ZRoa5bc3/aeMox/PJelMhE6t7S/mLuiY43DBupyxH+S0U1bTui9kWUlmsw==",
"dev": true,
"dependencies": {
"load-yaml-file": "^0.2.0",
@@ -38475,7 +38014,6 @@
"jsdom": "^23.0.1",
"lint-staged": "15.2.0",
"openapi-typescript": "^6.7.3",
- "prettier": "3.1.1",
"rollup": "4.9.1",
"semver": "7.5.4",
"standard-version": "9.5.0",
@@ -38779,21 +38317,6 @@
"url": "https://github.com/sponsors/sindresorhus"
}
},
- "packages/paypal-js/node_modules/prettier": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.1.tgz",
- "integrity": "sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==",
- "dev": true,
- "bin": {
- "prettier": "bin/prettier.cjs"
- },
- "engines": {
- "node": ">=14"
- },
- "funding": {
- "url": "https://github.com/prettier/prettier?sponsor=1"
- }
- },
"packages/paypal-js/node_modules/signal-exit": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
@@ -38932,7 +38455,6 @@
"husky": "^7.0.4",
"jest": "^27.5.1",
"jest-mock-extended": "^2.0.4",
- "prettier": "^2.5.1",
"react": "^16.14.0",
"react-dom": "^16.14.0",
"react-element-to-jsx-string": "^14.3.4",
@@ -41445,15 +40967,16 @@
"dev": true
},
"@changesets/apply-release-plan": {
- "version": "7.0.0",
- "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.0.tgz",
- "integrity": "sha512-vfi69JR416qC9hWmFGSxj7N6wA5J222XNBmezSVATPWDVPIF7gkd4d8CpbEbXmRWbVrkoli3oerGS6dcL/BGsQ==",
+ "version": "7.0.4",
+ "resolved": "https://registry.npmjs.org/@changesets/apply-release-plan/-/apply-release-plan-7.0.4.tgz",
+ "integrity": "sha512-HLFwhKWayKinWAul0Vj+76jVx1Pc2v55MGPVjZ924Y/ROeSsBMFutv9heHmCUj48lJyRfOTJG5+ar+29FUky/A==",
"dev": true,
"requires": {
"@babel/runtime": "^7.20.1",
- "@changesets/config": "^3.0.0",
+ "@changesets/config": "^3.0.2",
"@changesets/get-version-range-type": "^0.4.0",
"@changesets/git": "^3.0.0",
+ "@changesets/should-skip-package": "^0.1.0",
"@changesets/types": "^6.0.0",
"@manypkg/get-packages": "^1.1.3",
"detect-indent": "^6.0.0",
@@ -41485,6 +41008,12 @@
"graceful-fs": "^4.1.6"
}
},
+ "prettier": {
+ "version": "2.8.8",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
+ "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
+ "dev": true
+ },
"universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
@@ -41494,14 +41023,15 @@
}
},
"@changesets/assemble-release-plan": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.0.tgz",
- "integrity": "sha512-4QG7NuisAjisbW4hkLCmGW2lRYdPrKzro+fCtZaILX+3zdUELSvYjpL4GTv0E4aM9Mef3PuIQp89VmHJ4y2bfw==",
+ "version": "6.0.3",
+ "resolved": "https://registry.npmjs.org/@changesets/assemble-release-plan/-/assemble-release-plan-6.0.3.tgz",
+ "integrity": "sha512-bLNh9/Lgl1VwkjWZTq8JmRqH+hj7/Yzfz0jsQ/zJJ+FTmVqmqPj3szeKOri8O/hEM8JmHW019vh2gTO9iq5Cuw==",
"dev": true,
"requires": {
"@babel/runtime": "^7.20.1",
"@changesets/errors": "^0.2.0",
- "@changesets/get-dependents-graph": "^2.0.0",
+ "@changesets/get-dependents-graph": "^2.1.1",
+ "@changesets/should-skip-package": "^0.1.0",
"@changesets/types": "^6.0.0",
"@manypkg/get-packages": "^1.1.3",
"semver": "^7.5.3"
@@ -41517,25 +41047,26 @@
}
},
"@changesets/cli": {
- "version": "2.27.1",
- "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.1.tgz",
- "integrity": "sha512-iJ91xlvRnnrJnELTp4eJJEOPjgpF3NOh4qeQehM6Ugiz9gJPRZ2t+TsXun6E3AMN4hScZKjqVXl0TX+C7AB3ZQ==",
+ "version": "2.27.7",
+ "resolved": "https://registry.npmjs.org/@changesets/cli/-/cli-2.27.7.tgz",
+ "integrity": "sha512-6lr8JltiiXPIjDeYg4iM2MeePP6VN/JkmqBsVA5XRiy01hGS3y629LtSDvKcycj/w/5Eur1rEwby/MjcYS+e2A==",
"dev": true,
"requires": {
"@babel/runtime": "^7.20.1",
- "@changesets/apply-release-plan": "^7.0.0",
- "@changesets/assemble-release-plan": "^6.0.0",
+ "@changesets/apply-release-plan": "^7.0.4",
+ "@changesets/assemble-release-plan": "^6.0.3",
"@changesets/changelog-git": "^0.2.0",
- "@changesets/config": "^3.0.0",
+ "@changesets/config": "^3.0.2",
"@changesets/errors": "^0.2.0",
- "@changesets/get-dependents-graph": "^2.0.0",
- "@changesets/get-release-plan": "^4.0.0",
+ "@changesets/get-dependents-graph": "^2.1.1",
+ "@changesets/get-release-plan": "^4.0.3",
"@changesets/git": "^3.0.0",
"@changesets/logger": "^0.1.0",
"@changesets/pre": "^2.0.0",
"@changesets/read": "^0.6.0",
+ "@changesets/should-skip-package": "^0.1.0",
"@changesets/types": "^6.0.0",
- "@changesets/write": "^0.3.0",
+ "@changesets/write": "^0.3.1",
"@manypkg/get-packages": "^1.1.3",
"@types/semver": "^7.5.0",
"ansi-colors": "^4.1.3",
@@ -41545,15 +41076,14 @@
"external-editor": "^3.1.0",
"fs-extra": "^7.0.1",
"human-id": "^1.0.2",
- "meow": "^6.0.0",
+ "mri": "^1.2.0",
"outdent": "^0.5.0",
"p-limit": "^2.2.0",
"preferred-pm": "^3.0.0",
"resolve-from": "^5.0.0",
"semver": "^7.5.3",
"spawndamnit": "^2.0.0",
- "term-size": "^2.1.0",
- "tty-table": "^4.1.5"
+ "term-size": "^2.1.0"
},
"dependencies": {
"fs-extra": {
@@ -41567,12 +41097,6 @@
"universalify": "^0.1.0"
}
},
- "hosted-git-info": {
- "version": "2.8.9",
- "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
- "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
- "dev": true
- },
"jsonfile": {
"version": "4.0.0",
"resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz",
@@ -41582,45 +41106,6 @@
"graceful-fs": "^4.1.6"
}
},
- "meow": {
- "version": "6.1.1",
- "resolved": "https://registry.npmjs.org/meow/-/meow-6.1.1.tgz",
- "integrity": "sha512-3YffViIt2QWgTy6Pale5QpopX/IvU3LPL03jOTqp6pGj3VjesdO/U8CuHMKpnQr4shCNCM5fd5XFFvIIl6JBHg==",
- "dev": true,
- "requires": {
- "@types/minimist": "^1.2.0",
- "camelcase-keys": "^6.2.2",
- "decamelize-keys": "^1.1.0",
- "hard-rejection": "^2.1.0",
- "minimist-options": "^4.0.2",
- "normalize-package-data": "^2.5.0",
- "read-pkg-up": "^7.0.1",
- "redent": "^3.0.0",
- "trim-newlines": "^3.0.0",
- "type-fest": "^0.13.1",
- "yargs-parser": "^18.1.3"
- }
- },
- "normalize-package-data": {
- "version": "2.5.0",
- "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
- "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
- "dev": true,
- "requires": {
- "hosted-git-info": "^2.1.4",
- "resolve": "^1.10.0",
- "semver": "2 || 3 || 4 || 5",
- "validate-npm-package-license": "^3.0.1"
- },
- "dependencies": {
- "semver": {
- "version": "5.7.2",
- "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz",
- "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==",
- "dev": true
- }
- }
- },
"p-limit": {
"version": "2.3.0",
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
@@ -41630,38 +41115,22 @@
"p-try": "^2.0.0"
}
},
- "type-fest": {
- "version": "0.13.1",
- "resolved": "https://registry.npmjs.org/type-fest/-/type-fest-0.13.1.tgz",
- "integrity": "sha512-34R7HTnG0XIJcBSn5XhDd7nNFPRcXYRZrBB2O2jdKqYODldSzBAqzsWoZYYvduky73toYS/ESqxPvkDf/F0XMg==",
- "dev": true
- },
"universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
"integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==",
"dev": true
- },
- "yargs-parser": {
- "version": "18.1.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
- "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
}
}
},
"@changesets/config": {
- "version": "3.0.0",
- "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.0.tgz",
- "integrity": "sha512-o/rwLNnAo/+j9Yvw9mkBQOZySDYyOr/q+wptRLcAVGlU6djOeP9v1nlalbL9MFsobuBVQbZCTp+dIzdq+CLQUA==",
+ "version": "3.0.2",
+ "resolved": "https://registry.npmjs.org/@changesets/config/-/config-3.0.2.tgz",
+ "integrity": "sha512-cdEhS4t8woKCX2M8AotcV2BOWnBp09sqICxKapgLHf9m5KdENpWjyrFNMjkLqGJtUys9U+w93OxWT0czorVDfw==",
"dev": true,
"requires": {
"@changesets/errors": "^0.2.0",
- "@changesets/get-dependents-graph": "^2.0.0",
+ "@changesets/get-dependents-graph": "^2.1.1",
"@changesets/logger": "^0.1.0",
"@changesets/types": "^6.0.0",
"@manypkg/get-packages": "^1.1.3",
@@ -41707,9 +41176,9 @@
}
},
"@changesets/get-dependents-graph": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.0.0.tgz",
- "integrity": "sha512-cafUXponivK4vBgZ3yLu944mTvam06XEn2IZGjjKc0antpenkYANXiiE6GExV/yKdsCnE8dXVZ25yGqLYZmScA==",
+ "version": "2.1.1",
+ "resolved": "https://registry.npmjs.org/@changesets/get-dependents-graph/-/get-dependents-graph-2.1.1.tgz",
+ "integrity": "sha512-LRFjjvigBSzfnPU2n/AhFsuWR5DK++1x47aq6qZ8dzYsPtS/I5mNhIGAS68IAxh1xjO9BTtz55FwefhANZ+FCA==",
"dev": true,
"requires": {
"@changesets/types": "^6.0.0",
@@ -41748,14 +41217,14 @@
}
},
"@changesets/get-release-plan": {
- "version": "4.0.0",
- "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.0.tgz",
- "integrity": "sha512-9L9xCUeD/Tb6L/oKmpm8nyzsOzhdNBBbt/ZNcjynbHC07WW4E1eX8NMGC5g5SbM5z/V+MOrYsJ4lRW41GCbg3w==",
+ "version": "4.0.3",
+ "resolved": "https://registry.npmjs.org/@changesets/get-release-plan/-/get-release-plan-4.0.3.tgz",
+ "integrity": "sha512-6PLgvOIwTSdJPTtpdcr3sLtGatT+Jr22+cQwEBJBy6wP0rjB4yJ9lv583J9fVpn1bfQlBkDa8JxbS2g/n9lIyA==",
"dev": true,
"requires": {
"@babel/runtime": "^7.20.1",
- "@changesets/assemble-release-plan": "^6.0.0",
- "@changesets/config": "^3.0.0",
+ "@changesets/assemble-release-plan": "^6.0.3",
+ "@changesets/config": "^3.0.2",
"@changesets/pre": "^2.0.0",
"@changesets/read": "^0.6.0",
"@changesets/types": "^6.0.0",
@@ -41908,6 +41377,17 @@
}
}
},
+ "@changesets/should-skip-package": {
+ "version": "0.1.0",
+ "resolved": "https://registry.npmjs.org/@changesets/should-skip-package/-/should-skip-package-0.1.0.tgz",
+ "integrity": "sha512-FxG6Mhjw7yFStlSM7Z0Gmg3RiyQ98d/9VpQAZ3Fzr59dCOM9G6ZdYbjiSAt0XtFr9JR5U2tBaJWPjrkGGc618g==",
+ "dev": true,
+ "requires": {
+ "@babel/runtime": "^7.20.1",
+ "@changesets/types": "^6.0.0",
+ "@manypkg/get-packages": "^1.1.3"
+ }
+ },
"@changesets/types": {
"version": "6.0.0",
"resolved": "https://registry.npmjs.org/@changesets/types/-/types-6.0.0.tgz",
@@ -41915,9 +41395,9 @@
"dev": true
},
"@changesets/write": {
- "version": "0.3.0",
- "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.0.tgz",
- "integrity": "sha512-slGLb21fxZVUYbyea+94uFiD6ntQW0M2hIKNznFizDhZPDgn2c/fv1UzzlW43RVzh1BEDuIqW6hzlJ1OflNmcw==",
+ "version": "0.3.1",
+ "resolved": "https://registry.npmjs.org/@changesets/write/-/write-0.3.1.tgz",
+ "integrity": "sha512-SyGtMXzH3qFqlHKcvFY2eX+6b0NGiFcNav8AFsYwy5l8hejOeoeTDemu5Yjmke2V5jpzY+pBvM0vCCQ3gdZpfw==",
"dev": true,
"requires": {
"@babel/runtime": "^7.20.1",
@@ -41947,6 +41427,12 @@
"graceful-fs": "^4.1.6"
}
},
+ "prettier": {
+ "version": "2.8.8",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
+ "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
+ "dev": true
+ },
"universalify": {
"version": "0.1.2",
"resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz",
@@ -44961,7 +44447,6 @@
"jsdom": "^23.0.1",
"lint-staged": "15.2.0",
"openapi-typescript": "^6.7.3",
- "prettier": "3.1.1",
"promise-polyfill": "^8.3.0",
"rollup": "4.9.1",
"semver": "7.5.4",
@@ -45157,12 +44642,6 @@
"integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==",
"dev": true
},
- "prettier": {
- "version": "3.1.1",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.1.1.tgz",
- "integrity": "sha512-22UbSzg8luF4UuZtzgiUOfcGM8s4tjBv6dJRT7j275NXsy2jb4aJa4NNveul5x4eqlF1wuhuR2RElK71RvmVaw==",
- "dev": true
- },
"signal-exit": {
"version": "4.1.0",
"resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz",
@@ -45272,7 +44751,6 @@
"husky": "^7.0.4",
"jest": "^27.5.1",
"jest-mock-extended": "^2.0.4",
- "prettier": "^2.5.1",
"react": "^16.14.0",
"react-dom": "^16.14.0",
"react-element-to-jsx-string": "^14.3.4",
@@ -51260,15 +50738,6 @@
"fill-range": "^7.0.1"
}
},
- "breakword": {
- "version": "1.0.6",
- "resolved": "https://registry.npmjs.org/breakword/-/breakword-1.0.6.tgz",
- "integrity": "sha512-yjxDAYyK/pBvws9H4xKYpLDpYKEH6CzrBPAuXq3x18I+c/2MkVtT3qAr7Oloi6Dss9qNhPVueAAVU1CSeNDIXw==",
- "dev": true,
- "requires": {
- "wcwidth": "^1.0.1"
- }
- },
"brorand": {
"version": "1.1.0",
"resolved": "https://registry.npmjs.org/brorand/-/brorand-1.1.0.tgz",
@@ -53368,36 +52837,6 @@
"integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==",
"dev": true
},
- "csv": {
- "version": "5.5.3",
- "resolved": "https://registry.npmjs.org/csv/-/csv-5.5.3.tgz",
- "integrity": "sha512-QTaY0XjjhTQOdguARF0lGKm5/mEq9PD9/VhZZegHDIBq2tQwgNpHc3dneD4mGo2iJs+fTKv5Bp0fZ+BRuY3Z0g==",
- "dev": true,
- "requires": {
- "csv-generate": "^3.4.3",
- "csv-parse": "^4.16.3",
- "csv-stringify": "^5.6.5",
- "stream-transform": "^2.1.3"
- }
- },
- "csv-generate": {
- "version": "3.4.3",
- "resolved": "https://registry.npmjs.org/csv-generate/-/csv-generate-3.4.3.tgz",
- "integrity": "sha512-w/T+rqR0vwvHqWs/1ZyMDWtHHSJaN06klRqJXBEpDJaM/+dZkso0OKh1VcuuYvK3XM53KysVNq8Ko/epCK8wOw==",
- "dev": true
- },
- "csv-parse": {
- "version": "4.16.3",
- "resolved": "https://registry.npmjs.org/csv-parse/-/csv-parse-4.16.3.tgz",
- "integrity": "sha512-cO1I/zmz4w2dcKHVvpCr7JVRu8/FymG5OEpmvsZYlccYolPBLoVGKUHgNoc4ZGkFeFlWGEDmMyBM+TTqRdW/wg==",
- "dev": true
- },
- "csv-stringify": {
- "version": "5.6.5",
- "resolved": "https://registry.npmjs.org/csv-stringify/-/csv-stringify-5.6.5.tgz",
- "integrity": "sha512-PjiQ659aQ+fUTQqSrd1XEDnOr52jh30RBurfzkscaE2tPaFsDH5wOAHJiw8XAHphRknCwMUE9KRayc4K/NbO8A==",
- "dev": true
- },
"currently-unhandled": {
"version": "0.4.1",
"resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
@@ -56669,12 +56108,6 @@
"integrity": "sha512-NtNxqUcXgpW2iMrfqSfR73Glt39K+BLwWsPs94yR63v45T0Wbej7eRmL5cWfwEgqXnmjQp3zaJTshdRW/qC2ZQ==",
"dev": true
},
- "grapheme-splitter": {
- "version": "1.0.4",
- "resolved": "https://registry.npmjs.org/grapheme-splitter/-/grapheme-splitter-1.0.4.tgz",
- "integrity": "sha512-bzh50DW9kTPM00T8y4o8vQg89Di9oLJVLW/KaOGIXJWP/iqCN6WKYkbNOF04vFLJhwcpYUh9ydh/+5vpOqV4YQ==",
- "dev": true
- },
"graphemer": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/graphemer/-/graphemer-1.4.0.tgz",
@@ -61317,12 +60750,6 @@
"integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==",
"dev": true
},
- "kleur": {
- "version": "4.1.5",
- "resolved": "https://registry.npmjs.org/kleur/-/kleur-4.1.5.tgz",
- "integrity": "sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==",
- "dev": true
- },
"klona": {
"version": "2.0.6",
"resolved": "https://registry.npmjs.org/klona/-/klona-2.0.6.tgz",
@@ -62398,12 +61825,6 @@
"is-extendable": "^1.0.1"
}
},
- "mixme": {
- "version": "0.5.10",
- "resolved": "https://registry.npmjs.org/mixme/-/mixme-0.5.10.tgz",
- "integrity": "sha512-5H76ANWinB1H3twpJ6JY8uvAtpmFvHNArpilJAjXRKXSDDLPIMoZArw5SH0q9z+lLs8IrMw7Q2VWpWimFKFT1Q==",
- "dev": true
- },
"mkdirp": {
"version": "1.0.4",
"resolved": "https://registry.npmjs.org/mkdirp/-/mkdirp-1.0.4.tgz",
@@ -62499,6 +61920,12 @@
}
}
},
+ "mri": {
+ "version": "1.2.0",
+ "resolved": "https://registry.npmjs.org/mri/-/mri-1.2.0.tgz",
+ "integrity": "sha512-tzzskb3bG8LvYGFF/mDTpq3jpI6Q9wc3LEmBaghu+DdCssd1FakN7Bc0hVNmEyGq1bq3RgfkCb3cmQLpNPOroA==",
+ "dev": true
+ },
"ms": {
"version": "2.1.2",
"resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz",
@@ -64110,15 +63537,15 @@
"dev": true
},
"preferred-pm": {
- "version": "3.1.2",
- "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.2.tgz",
- "integrity": "sha512-nk7dKrcW8hfCZ4H6klWcdRknBOXWzNQByJ0oJyX97BOupsYD+FzLS4hflgEu/uPUEHZCuRfMxzCBsuWd7OzT8Q==",
+ "version": "3.1.4",
+ "resolved": "https://registry.npmjs.org/preferred-pm/-/preferred-pm-3.1.4.tgz",
+ "integrity": "sha512-lEHd+yEm22jXdCphDrkvIJQU66EuLojPPtvZkpKIkiD+l0DMThF/niqZKJSoU8Vl7iuvtmzyMhir9LdVy5WMnA==",
"dev": true,
"requires": {
"find-up": "^5.0.0",
"find-yarn-workspace-root2": "1.2.16",
"path-exists": "^4.0.0",
- "which-pm": "2.0.0"
+ "which-pm": "^2.2.0"
}
},
"prelude-ls": {
@@ -64128,9 +63555,9 @@
"dev": true
},
"prettier": {
- "version": "2.8.8",
- "resolved": "https://registry.npmjs.org/prettier/-/prettier-2.8.8.tgz",
- "integrity": "sha512-tdN8qQGvNjw4CHbY+XXk0JgCXn9QiF21a55rBe5LJAU+kDyC4WQn4+awm2Xfk2lQMk5fKup9XgzTZtGkjBdP9Q==",
+ "version": "3.3.3",
+ "resolved": "https://registry.npmjs.org/prettier/-/prettier-3.3.3.tgz",
+ "integrity": "sha512-i2tDNA0O5IrMO757lfrdQZCc2jPNDVntV0m/+4whiDfWaTKfMNgR7Qz0NAeGz/nRqF4m5/6CLzbP4/liHt12Ew==",
"dev": true
},
"pretty-error": {
@@ -66249,163 +65676,6 @@
"integrity": "sha512-tf+h5W1IrjNm/9rKKj0JU2MDMruiopx0jjVA5zCdBtcGjfp0+c5rHw/zADLC3IeKlGHtVbHtpfzvYA0OYT+HKg==",
"dev": true
},
- "smartwrap": {
- "version": "2.0.2",
- "resolved": "https://registry.npmjs.org/smartwrap/-/smartwrap-2.0.2.tgz",
- "integrity": "sha512-vCsKNQxb7PnCNd2wY1WClWifAc2lwqsG8OaswpJkVJsvMGcnEntdTCDajZCkk93Ay1U3t/9puJmb525Rg5MZBA==",
- "dev": true,
- "requires": {
- "array.prototype.flat": "^1.2.3",
- "breakword": "^1.0.5",
- "grapheme-splitter": "^1.0.4",
- "strip-ansi": "^6.0.0",
- "wcwidth": "^1.0.1",
- "yargs": "^15.1.0"
- },
- "dependencies": {
- "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"
- }
- },
- "cliui": {
- "version": "6.0.0",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-6.0.0.tgz",
- "integrity": "sha512-t6wbgtoCXvAzst7QgXxJYqPt0usEfbgQdftEPbLL/cvv6HPE5VgvqCuAIDR0NgU52ds6rFwqrgakNLrHEjCbrQ==",
- "dev": true,
- "requires": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.0",
- "wrap-ansi": "^6.2.0"
- }
- },
- "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
- },
- "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
- },
- "find-up": {
- "version": "4.1.0",
- "resolved": "https://registry.npmjs.org/find-up/-/find-up-4.1.0.tgz",
- "integrity": "sha512-PpOwAdQ/YlXQ2vj8a3h8IipDuYRi3wceVQQGYWxNINccq40Anw7BlsEXCMbt1Zt+OLA6Fq9suIpIWD0OsnISlw==",
- "dev": true,
- "requires": {
- "locate-path": "^5.0.0",
- "path-exists": "^4.0.0"
- }
- },
- "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
- },
- "locate-path": {
- "version": "5.0.0",
- "resolved": "https://registry.npmjs.org/locate-path/-/locate-path-5.0.0.tgz",
- "integrity": "sha512-t7hw9pI+WvuwNJXwk5zVHpyhIqzg2qTlklJOf0mVxGSbe3Fp2VieZcduNYjaLDoy6p9uGpQEGWG87WpMKlNq8g==",
- "dev": true,
- "requires": {
- "p-locate": "^4.1.0"
- }
- },
- "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": "4.1.0",
- "resolved": "https://registry.npmjs.org/p-locate/-/p-locate-4.1.0.tgz",
- "integrity": "sha512-R79ZZ/0wAxKGu3oYMlz8jy/kbhsNrS7SKZ7PxEHBgJ5+F2mtFW2fK2cOtBh1cHYkQsbzFV7I+EoRKe6Yt0oK7A==",
- "dev": true,
- "requires": {
- "p-limit": "^2.2.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"
- }
- },
- "wrap-ansi": {
- "version": "6.2.0",
- "resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-6.2.0.tgz",
- "integrity": "sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==",
- "dev": true,
- "requires": {
- "ansi-styles": "^4.0.0",
- "string-width": "^4.1.0",
- "strip-ansi": "^6.0.0"
- }
- },
- "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": "15.4.1",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-15.4.1.tgz",
- "integrity": "sha512-aePbxDmcYW++PaqBsJ+HYUFwCdv4LVvdnhBy78E57PIor8/OVvhMrADFFEDh8DHDFRv/O9i3lPhsENjO7QX0+A==",
- "dev": true,
- "requires": {
- "cliui": "^6.0.0",
- "decamelize": "^1.2.0",
- "find-up": "^4.1.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": "^4.2.0",
- "which-module": "^2.0.0",
- "y18n": "^4.0.0",
- "yargs-parser": "^18.1.2"
- }
- },
- "yargs-parser": {
- "version": "18.1.3",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-18.1.3.tgz",
- "integrity": "sha512-o50j0JeToy/4K6OZcaQmW6lyXXKhq7csREXcDwk2omFPJEwUNOVtJKvmDr9EI1fAJZUyZcRF7kxGBWmRXudrCQ==",
- "dev": true,
- "requires": {
- "camelcase": "^5.0.0",
- "decamelize": "^1.2.0"
- }
- }
- }
- },
"smob": {
"version": "1.4.0",
"resolved": "https://registry.npmjs.org/smob/-/smob-1.4.0.tgz",
@@ -67003,15 +66273,6 @@
"integrity": "sha512-76ORR0DO1o1hlKwTbi/DM3EXWGf3ZJYO8cXX5RJwnul2DEg2oyoZyjLNoQM8WsvZiFKCRfC1O0J7iCvie3RZmQ==",
"dev": true
},
- "stream-transform": {
- "version": "2.1.3",
- "resolved": "https://registry.npmjs.org/stream-transform/-/stream-transform-2.1.3.tgz",
- "integrity": "sha512-9GHUiM5hMiCi6Y03jD2ARC1ettBXkQBoQAe7nJsPknnI0ow10aXjTnew8QtYQmLjzn974BnmWEAJgCY6ZP1DeQ==",
- "dev": true,
- "requires": {
- "mixme": "^0.5.1"
- }
- },
"string_decoder": {
"version": "1.3.0",
"resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-1.3.0.tgz",
@@ -67930,127 +67191,6 @@
"integrity": "sha512-JVa5ijo+j/sOoHGjw0sxw734b1LhBkQ3bvUGNdxnVXDCX81Yx7TFgnZygxrIIWn23hbfTaMYLwRmAxFyDuFmIw==",
"dev": true
},
- "tty-table": {
- "version": "4.2.3",
- "resolved": "https://registry.npmjs.org/tty-table/-/tty-table-4.2.3.tgz",
- "integrity": "sha512-Fs15mu0vGzCrj8fmJNP7Ynxt5J7praPXqFN0leZeZBXJwkMxv9cb2D454k1ltrtUSJbZ4yH4e0CynsHLxmUfFA==",
- "dev": true,
- "requires": {
- "chalk": "^4.1.2",
- "csv": "^5.5.3",
- "kleur": "^4.1.5",
- "smartwrap": "^2.0.2",
- "strip-ansi": "^6.0.1",
- "wcwidth": "^1.0.1",
- "yargs": "^17.7.1"
- },
- "dependencies": {
- "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"
- }
- },
- "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"
- }
- },
- "cliui": {
- "version": "8.0.1",
- "resolved": "https://registry.npmjs.org/cliui/-/cliui-8.0.1.tgz",
- "integrity": "sha512-BSeNnyus75C4//NQ9gQt1/csTXyo/8Sb+afLAkzAptFuMsod9HFokGNudZpi/oQV73hnVK+sR+5PVRMd+Dr7YQ==",
- "dev": true,
- "requires": {
- "string-width": "^4.2.0",
- "strip-ansi": "^6.0.1",
- "wrap-ansi": "^7.0.0"
- }
- },
- "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
- },
- "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
- },
- "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
- },
- "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
- },
- "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"
- }
- },
- "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"
- }
- },
- "yargs": {
- "version": "17.7.2",
- "resolved": "https://registry.npmjs.org/yargs/-/yargs-17.7.2.tgz",
- "integrity": "sha512-7dSzzRQ++CKnNI/krKnYRV7JKKPUXMEh61soaHKg9mrWEhzFWhFnxPxGl+69cD1Ou63C13NUPCnmIcrvqCuM6w==",
- "dev": true,
- "requires": {
- "cliui": "^8.0.1",
- "escalade": "^3.1.1",
- "get-caller-file": "^2.0.5",
- "require-directory": "^2.1.1",
- "string-width": "^4.2.3",
- "y18n": "^5.0.5",
- "yargs-parser": "^21.1.1"
- }
- },
- "yargs-parser": {
- "version": "21.1.1",
- "resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-21.1.1.tgz",
- "integrity": "sha512-tVpsJW7DdjecAiFpbIB1e3qxIQsE6NoPc5/eTdrbbIC4h0LVsWhnoa3g+m2HclBIujHzsxZ4VJVA+GUuc2/LBw==",
- "dev": true
- }
- }
- },
"type": {
"version": "2.7.3",
"resolved": "https://registry.npmjs.org/type/-/type-2.7.3.tgz",
@@ -69888,9 +69028,9 @@
"dev": true
},
"which-pm": {
- "version": "2.0.0",
- "resolved": "https://registry.npmjs.org/which-pm/-/which-pm-2.0.0.tgz",
- "integrity": "sha512-Lhs9Pmyph0p5n5Z3mVnN0yWcbQYUAD7rbQUiMsQxOJ3T57k7RFe35SUwWMf7dsbDZks1uOmw4AecB/JMDj3v/w==",
+ "version": "2.2.0",
+ "resolved": "https://registry.npmjs.org/which-pm/-/which-pm-2.2.0.tgz",
+ "integrity": "sha512-MOiaDbA5ZZgUjkeMWM5EkJp4loW5ZRoa5bc3/aeMox/PJelMhE6t7S/mLuiY43DBupyxH+S0U1bTui9kWUlmsw==",
"dev": true,
"requires": {
"load-yaml-file": "^0.2.0",
diff --git a/package.json b/package.json
index 7989e326..e2af03f9 100644
--- a/package.json
+++ b/package.json
@@ -29,9 +29,9 @@
]
},
"devDependencies": {
- "@changesets/cli": "^2.25.2",
+ "@changesets/cli": "^2.27.7",
"husky": "^8.0.1",
"lint-staged": "^13.0.3",
- "prettier": "^2.7.1"
+ "prettier": "^3.3.3"
}
}
diff --git a/packages/paypal-js/README.md b/packages/paypal-js/README.md
index 1de2bc59..0a4c40bb 100644
--- a/packages/paypal-js/README.md
+++ b/packages/paypal-js/README.md
@@ -229,7 +229,7 @@ We also provide a legacy build that includes the [promise-polyfill](https://gith
The paypal-js script is also available on the [unpkg CDN](https://unpkg.com/). The iife/paypal-js.js build assigns the `loadScript` function to the window object as `window.paypalLoadScript`. Here's an example:
```html
-
+
diff --git a/packages/paypal-js/bundle-tests/bundle-size.test.js b/packages/paypal-js/bundle-tests/bundle-size.test.js
index 9a6b8453..b49710ee 100644
--- a/packages/paypal-js/bundle-tests/bundle-size.test.js
+++ b/packages/paypal-js/bundle-tests/bundle-size.test.js
@@ -15,7 +15,7 @@ describe("bundle size", () => {
test(`paypal-js.legacy.min.js should be less than ${maxLegacyBundleSizeInKiloBytes} KB`, () => {
const { size: sizeInBytes } = fs.statSync(
- "dist/iife/paypal-js.legacy.min.js"
+ "dist/iife/paypal-js.legacy.min.js",
);
const [sizeInKiloBytes] = filesize(sizeInBytes, { output: "array" });
diff --git a/packages/paypal-js/e2e-tests/browser-global.html b/packages/paypal-js/e2e-tests/browser-global.html
index 8cd6f3eb..37f35d47 100644
--- a/packages/paypal-js/e2e-tests/browser-global.html
+++ b/packages/paypal-js/e2e-tests/browser-global.html
@@ -1,4 +1,4 @@
-
+
diff --git a/packages/paypal-js/e2e-tests/browser-global.test.ts b/packages/paypal-js/e2e-tests/browser-global.test.ts
index d9723f06..8ddad0da 100644
--- a/packages/paypal-js/e2e-tests/browser-global.test.ts
+++ b/packages/paypal-js/e2e-tests/browser-global.test.ts
@@ -6,17 +6,17 @@ test("Browser global window.paypalLoadScript", async ({ page }) => {
route.fulfill({
status: 200,
body: successfulSDKResponseMock(),
- })
+ }),
);
await page.goto("/e2e-tests/browser-global.html");
await expect(page).toHaveTitle(
- "Demo with window.paypalLoadScript | PayPal JS"
+ "Demo with window.paypalLoadScript | PayPal JS",
);
const scriptElement = await page.locator(
- 'script[src^="https://www.paypal.com/sdk/js"]'
+ 'script[src^="https://www.paypal.com/sdk/js"]',
);
const uidFromDOM = await scriptElement.getAttribute("data-uid-auto");
diff --git a/packages/paypal-js/e2e-tests/http-server.js b/packages/paypal-js/e2e-tests/http-server.js
index cd3d54c5..289b8c55 100644
--- a/packages/paypal-js/e2e-tests/http-server.js
+++ b/packages/paypal-js/e2e-tests/http-server.js
@@ -48,7 +48,7 @@ http.createServer(function (request, response) {
response.end(
"Sorry, check with the site admin for error: " +
error.code +
- " ..\n"
+ " ..\n",
);
}
} else {
diff --git a/packages/paypal-js/e2e-tests/load-cached-script.html b/packages/paypal-js/e2e-tests/load-cached-script.html
index f18c57bb..8da8ec39 100644
--- a/packages/paypal-js/e2e-tests/load-cached-script.html
+++ b/packages/paypal-js/e2e-tests/load-cached-script.html
@@ -1,4 +1,4 @@
-
+
diff --git a/packages/paypal-js/e2e-tests/load-cached-script.test.ts b/packages/paypal-js/e2e-tests/load-cached-script.test.ts
index 69ada31f..85fb4deb 100644
--- a/packages/paypal-js/e2e-tests/load-cached-script.test.ts
+++ b/packages/paypal-js/e2e-tests/load-cached-script.test.ts
@@ -6,7 +6,7 @@ test("Load cached script", async ({ page }) => {
route.fulfill({
status: 200,
body: successfulSDKResponseMock(),
- })
+ }),
);
let sdkRequestCounter = 0;
diff --git a/packages/paypal-js/e2e-tests/reload-script.html b/packages/paypal-js/e2e-tests/reload-script.html
index 3d0dc361..2d745b62 100644
--- a/packages/paypal-js/e2e-tests/reload-script.html
+++ b/packages/paypal-js/e2e-tests/reload-script.html
@@ -1,4 +1,4 @@
-
+
diff --git a/packages/paypal-js/e2e-tests/validation-errors.html b/packages/paypal-js/e2e-tests/validation-errors.html
index f24a2f48..e2b752b0 100644
--- a/packages/paypal-js/e2e-tests/validation-errors.html
+++ b/packages/paypal-js/e2e-tests/validation-errors.html
@@ -1,4 +1,4 @@
-
+
diff --git a/packages/paypal-js/e2e-tests/validation-errors.test.ts b/packages/paypal-js/e2e-tests/validation-errors.test.ts
index 0424bdc8..17dc4712 100644
--- a/packages/paypal-js/e2e-tests/validation-errors.test.ts
+++ b/packages/paypal-js/e2e-tests/validation-errors.test.ts
@@ -6,7 +6,7 @@ test("Validation errors", async ({ page }) => {
route.fulfill({
status: 400,
body: validationErrorSDKResponseMock(),
- })
+ }),
);
await page.goto("/e2e-tests/validation-errors.html");
@@ -14,15 +14,15 @@ test("Validation errors", async ({ page }) => {
await page.locator("#btn-load-no-client-id").click();
await page.waitForResponse((response) =>
- response.url().startsWith("https://www.paypal.com/sdk/js")
+ response.url().startsWith("https://www.paypal.com/sdk/js"),
);
await page.waitForFunction(
- 'document.querySelector("#error-message").innerText.length'
+ 'document.querySelector("#error-message").innerText.length',
);
const errorMessage = await page.locator("#error-message").innerText();
expect(errorMessage).toEqual(
- 'Error: The script "https://www.paypal.com/sdk/js?" failed to load. Check the HTTP status code and response body in DevTools to learn more.'
+ 'Error: The script "https://www.paypal.com/sdk/js?" failed to load. Check the HTTP status code and response body in DevTools to learn more.',
);
});
diff --git a/packages/paypal-js/package.json b/packages/paypal-js/package.json
index 898ccbf9..0b56a4ed 100644
--- a/packages/paypal-js/package.json
+++ b/packages/paypal-js/package.json
@@ -19,8 +19,8 @@
"test:e2e": "playwright test",
"test:e2e:debug": "PWDEBUG=1 playwright test --project=\"chromium\"",
"test:e2e:start": "node e2e-tests/http-server.js",
- "typecheck": "tsc --noEmit",
- "validate": "npm run check-node-version && npm run format:check && npm run typecheck && npm run build && npm run lint && npm test -- --watch=false --coverage.enabled --coverage.include=src && npm run test:bundle -- --watch=false",
+ "typecheck": "tsc --noEmit --allowSyntheticDefaultImports",
+ "validate": "npm run check-node-version && npm run typecheck && npm run build && npm run lint && npm test -- --watch=false --coverage.enabled --coverage.include=src && npm run test:bundle -- --watch=false",
"openapi": "npm run openapi-orders && npm run openapi-subscriptions",
"openapi-orders": "openapi-typescript node_modules/@paypal/paypal-rest-api-specifications/openapi/checkout_orders_v2.json -o types/apis/openapi/checkout_orders_v2.d.ts",
"openapi-subscriptions": "openapi-typescript node_modules/@paypal/paypal-rest-api-specifications/openapi/billing_subscriptions_v1.json -o types/apis/openapi/billing_subscriptions_v1.d.ts"
@@ -66,7 +66,6 @@
"jsdom": "^23.0.1",
"lint-staged": "15.2.0",
"openapi-typescript": "^6.7.3",
- "prettier": "3.1.1",
"rollup": "4.9.1",
"semver": "7.5.4",
"standard-version": "9.5.0",
diff --git a/packages/paypal-js/src/legacy/index.ts b/packages/paypal-js/src/legacy/index.ts
index 04656a61..63809e5f 100644
--- a/packages/paypal-js/src/legacy/index.ts
+++ b/packages/paypal-js/src/legacy/index.ts
@@ -1,4 +1,4 @@
-import Promise from "promise-polyfill";
+import * as Promise from "promise-polyfill";
import {
loadScript as originalLoadScript,
loadCustomScript as originalLoadCustomScript,
@@ -7,7 +7,7 @@ import type { PayPalScriptOptions } from "../../types/script-options";
import type { PayPalNamespace } from "../../types/index";
export function loadScript(
- options: PayPalScriptOptions
+ options: PayPalScriptOptions,
): Promise {
return originalLoadScript(options, Promise);
}
diff --git a/packages/paypal-js/src/load-script.node.test.ts b/packages/paypal-js/src/load-script.node.test.ts
index 344deab4..5a472ef9 100644
--- a/packages/paypal-js/src/load-script.node.test.ts
+++ b/packages/paypal-js/src/load-script.node.test.ts
@@ -7,6 +7,6 @@ import { loadScript, loadCustomScript } from "./load-script";
test("should still resolve when global window object does not exist", async () => {
await expect(loadScript({ clientId: "test" })).resolves.toBeNull();
await expect(
- loadCustomScript({ url: "https://www.example.com/index.js" })
+ loadCustomScript({ url: "https://www.example.com/index.js" }),
).resolves.toBeUndefined();
});
diff --git a/packages/paypal-js/src/load-script.test.ts b/packages/paypal-js/src/load-script.test.ts
index d814dbb2..cc204024 100644
--- a/packages/paypal-js/src/load-script.test.ts
+++ b/packages/paypal-js/src/load-script.test.ts
@@ -16,7 +16,7 @@ vi.mock("./utils", async () => {
const namespace = attributes["data-namespace"] || "paypal";
vi.stubGlobal(namespace, { version: "5" });
process.nextTick(() => onSuccess());
- }
+ },
),
};
});
@@ -38,7 +38,7 @@ describe("loadScript()", () => {
const response = await loadScript({ clientId: "test" });
expect(mockedInsertScriptElement.mock.calls[0][0].url).toEqual(
- "https://www.paypal.com/sdk/js?client-id=test"
+ "https://www.paypal.com/sdk/js?client-id=test",
);
expect(mockedInsertScriptElement).toHaveBeenCalledTimes(1);
expect(response).toEqual(window.paypal);
@@ -53,7 +53,7 @@ describe("loadScript()", () => {
});
expect(mockedInsertScriptElement).toHaveBeenCalledTimes(1);
expect(mockedInsertScriptElement.mock.calls[0][0].url).toEqual(
- "https://www.sandbox.paypal.com/sdk/js?client-id=test"
+ "https://www.sandbox.paypal.com/sdk/js?client-id=test",
);
expect(response).toEqual(window.paypal);
});
@@ -67,7 +67,7 @@ describe("loadScript()", () => {
});
expect(mockedInsertScriptElement).toHaveBeenCalledTimes(1);
expect(mockedInsertScriptElement.mock.calls[0][0].url).toEqual(
- "https://www.paypal.com/sdk/js?client-id=test"
+ "https://www.paypal.com/sdk/js?client-id=test",
);
expect(response).toEqual(window.paypal);
});
@@ -117,7 +117,7 @@ describe("loadScript()", () => {
const { message: errorMessage } = err as Record;
expect(errorMessage).toBe(
- "The window.paypal global variable is not available."
+ "The window.paypal global variable is not available.",
);
}
});
@@ -129,9 +129,9 @@ describe("loadScript()", () => {
clientId: "test",
// @ts-expect-error intentionally sending invalid value
environment: "invalid",
- })
+ }),
).toThrowError(
- 'The `environment` option must be either "production" or "sandbox"'
+ 'The `environment` option must be either "production" or "sandbox"',
);
});
@@ -140,7 +140,7 @@ describe("loadScript()", () => {
expect(() => loadScript()).toThrow("Expected an options object.");
// @ts-expect-error ignore invalid arguments error
expect(() => loadScript({}, {})).toThrow(
- "Expected PromisePonyfill to be a function."
+ "Expected PromisePonyfill to be a function.",
);
});
});
@@ -163,7 +163,7 @@ describe("loadCustomScript()", () => {
await loadCustomScript(options);
expect(mockedInsertScriptElement).toHaveBeenCalledWith(
- expect.objectContaining(options)
+ expect.objectContaining(options),
);
});
@@ -179,7 +179,7 @@ describe("loadCustomScript()", () => {
url: "https://www.example.com/index.js",
// @ts-expect-error ignore invalid arguments error
attributes: "",
- })
+ }),
).toThrow("Expected attributes to be an object.");
expect(() =>
loadCustomScript(
@@ -187,8 +187,8 @@ describe("loadCustomScript()", () => {
url: "https://www.example.com/index.js",
},
// @ts-expect-error ignore invalid arguments error
- {}
- )
+ {},
+ ),
).toThrow("Expected PromisePonyfill to be a function.");
});
@@ -209,7 +209,7 @@ describe("loadCustomScript()", () => {
const { message } = err as Record;
expect(message).toBe(
- 'The script "https://www.example.com/index.js" failed to load. Check the HTTP status code and response body in DevTools to learn more.'
+ 'The script "https://www.example.com/index.js" failed to load. Check the HTTP status code and response body in DevTools to learn more.',
);
}
});
@@ -225,7 +225,7 @@ describe("loadCustomScript()", () => {
url: "https://www.example.com/index.js",
},
// @ts-expect-error ignore mock error
- PromisePonyfill
+ PromisePonyfill,
);
expect(PromisePonyfill).toHaveBeenCalledTimes(1);
});
diff --git a/packages/paypal-js/src/load-script.ts b/packages/paypal-js/src/load-script.ts
index 6152672f..27d13834 100644
--- a/packages/paypal-js/src/load-script.ts
+++ b/packages/paypal-js/src/load-script.ts
@@ -11,7 +11,7 @@ import type { PayPalNamespace } from "../types/index";
*/
export function loadScript(
options: PayPalScriptOptions,
- PromisePonyfill: PromiseConstructor = Promise
+ PromisePonyfill: PromiseConstructor = Promise,
): Promise {
validateArguments(options, PromisePonyfill);
@@ -36,7 +36,7 @@ export function loadScript(
url,
attributes: attributes,
},
- PromisePonyfill
+ PromisePonyfill,
).then(() => {
const newWindowNamespace = getPayPalWindowNamespace(namespace);
@@ -45,7 +45,7 @@ export function loadScript(
}
throw new Error(
- `The window.${namespace} global variable is not available.`
+ `The window.${namespace} global variable is not available.`,
);
});
}
@@ -62,7 +62,7 @@ export function loadCustomScript(
url: string;
attributes?: Record;
},
- PromisePonyfill: PromiseConstructor = Promise
+ PromisePonyfill: PromiseConstructor = Promise,
): Promise {
validateArguments(options, PromisePonyfill);
@@ -86,7 +86,7 @@ export function loadCustomScript(
onSuccess: () => resolve(),
onError: () => {
const defaultError = new Error(
- `The script "${url}" failed to load. Check the HTTP status code and response body in DevTools to learn more.`
+ `The script "${url}" failed to load. Check the HTTP status code and response body in DevTools to learn more.`,
);
return reject(defaultError);
@@ -112,7 +112,7 @@ function validateArguments(options: unknown, PromisePonyfill?: unknown) {
environment !== "sandbox"
) {
throw new Error(
- 'The `environment` option must be either "production" or "sandbox".'
+ 'The `environment` option must be either "production" or "sandbox".',
);
}
diff --git a/packages/paypal-js/src/utils.test.ts b/packages/paypal-js/src/utils.test.ts
index cbbba0b8..783f907f 100644
--- a/packages/paypal-js/src/utils.test.ts
+++ b/packages/paypal-js/src/utils.test.ts
@@ -34,7 +34,7 @@ describe("processOptions()", () => {
const { url, attributes } = processOptions(options);
expect(url).toBe(
- "https://www.paypal.com/sdk/js?client-id=test¤cy=USD&some-random-key=some-random-value"
+ "https://www.paypal.com/sdk/js?client-id=test¤cy=USD&some-random-key=some-random-value",
);
expect(attributes).toEqual({ "data-page-type": "checkout" });
});
@@ -58,7 +58,7 @@ describe("processOptions()", () => {
});
expect(url).toBe(
- "http://localhost.paypal.com:8000/sdk/js?client-id=test"
+ "http://localhost.paypal.com:8000/sdk/js?client-id=test",
);
});
@@ -78,7 +78,7 @@ describe("processOptions()", () => {
});
expect(url).toBe(
- "https://www.paypal.com/sdk/js?client-id=test&components=buttons,marks,messages&enable-funding=venmo,paylater&disable-funding=card"
+ "https://www.paypal.com/sdk/js?client-id=test&components=buttons,marks,messages&enable-funding=venmo,paylater&disable-funding=card",
);
expect(attributes).toEqual({});
});
@@ -90,7 +90,7 @@ describe("processOptions()", () => {
});
expect(url).toBe(
- "https://www.paypal.com/sdk/js?client-id=test&merchant-id=*"
+ "https://www.paypal.com/sdk/js?client-id=test&merchant-id=*",
);
expect(attributes).toEqual({ "data-merchant-id": "123,456,789" });
});
@@ -102,7 +102,7 @@ describe("processOptions()", () => {
});
expect(url).toBe(
- "https://www.paypal.com/sdk/js?client-id=test&merchant-id=123"
+ "https://www.paypal.com/sdk/js?client-id=test&merchant-id=123",
);
expect(attributes).toEqual({});
@@ -112,7 +112,7 @@ describe("processOptions()", () => {
});
expect(url2).toBe(
- "https://www.paypal.com/sdk/js?client-id=test&merchant-id=123"
+ "https://www.paypal.com/sdk/js?client-id=test&merchant-id=123",
);
expect(attributes2).toEqual({});
});
@@ -125,7 +125,7 @@ describe("processOptions()", () => {
});
expect(url).toBe(
- "https://www.paypal.com/sdk/js?client-id=test&merchant-id=*"
+ "https://www.paypal.com/sdk/js?client-id=test&merchant-id=*",
);
expect(attributes).toEqual({ "data-merchant-id": "123,456,789" });
@@ -135,7 +135,7 @@ describe("processOptions()", () => {
});
expect(url2).toBe(
- "https://www.paypal.com/sdk/js?client-id=test&merchant-id=*"
+ "https://www.paypal.com/sdk/js?client-id=test&merchant-id=*",
);
expect(attributes2).toEqual({ "data-merchant-id": "123,456,789" });
});
@@ -161,7 +161,7 @@ describe("findScript()", () => {
test("returns null when the script is not found", () => {
expect(
- findScript("https://www.paypal.com/sdk/js?client-id=test")
+ findScript("https://www.paypal.com/sdk/js?client-id=test"),
).toBeNull();
});
@@ -240,7 +240,7 @@ describe("insertScriptElement()", () => {
});
const [firstScript, secondScript] = Array.from(
- document.querySelectorAll("head script")
+ document.querySelectorAll("head script"),
);
expect(firstScript.src).toBe(newScriptSrc);
diff --git a/packages/paypal-js/src/utils.ts b/packages/paypal-js/src/utils.ts
index 2433c732..d4833b1e 100644
--- a/packages/paypal-js/src/utils.ts
+++ b/packages/paypal-js/src/utils.ts
@@ -9,10 +9,10 @@ type StringMap = Record;
export function findScript(
url: string,
- attributes?: StringMap
+ attributes?: StringMap,
): HTMLScriptElement | null {
const currentScript = document.querySelector(
- `script[src="${url}"]`
+ `script[src="${url}"]`,
);
if (currentScript === null) return null;
@@ -107,7 +107,7 @@ export function processOptions(options: PayPalScriptOptions): {
{
queryParams: {} as StringMap,
attributes: {} as StringMap,
- }
+ },
);
if (
@@ -142,7 +142,7 @@ export function objectToQueryString(params: StringMap): string {
function createScriptElement(
url: string,
- attributes: StringMap = {}
+ attributes: StringMap = {},
): HTMLScriptElement {
const newScript: HTMLScriptElement = document.createElement("script");
newScript.src = url;
diff --git a/packages/paypal-js/types/components/buttons.d.ts b/packages/paypal-js/types/components/buttons.d.ts
index a7dddfd7..6168fa7c 100644
--- a/packages/paypal-js/types/components/buttons.d.ts
+++ b/packages/paypal-js/types/components/buttons.d.ts
@@ -29,7 +29,7 @@ export type CreateSubscriptionActions = {
/** Used to revise an existing subscription for client-side integrations. Accepts the same options as the request body of the [/v1/billing/subscription/{id}/revise api](https://developer.paypal.com/docs/api/subscriptions/v1/#subscriptions_revise). */
revise: (
subscriptionID: string,
- options: ReviseSubscriptionRequestBody
+ options: ReviseSubscriptionRequestBody,
) => Promise;
};
};
@@ -211,14 +211,14 @@ export interface PayPalButtonsComponentOptions {
*/
createOrder?: (
data: CreateOrderData,
- actions: CreateOrderActions
+ actions: CreateOrderActions,
) => Promise;
/**
* Called on button click to set up a recurring payment. [createSubscription docs](https://developer.paypal.com/docs/business/javascript-sdk/javascript-sdk-reference/#createsubscription).
*/
createSubscription?: (
data: Record,
- actions: CreateSubscriptionActions
+ actions: CreateSubscriptionActions,
) => Promise;
/**
* Save payment methods to charge payers after a set amount of time. For example, you can offer a free trial and charge payers after the trial expires. Payers don't need to be present when charged. No checkout required.
@@ -235,7 +235,7 @@ export interface PayPalButtonsComponentOptions {
*/
onApprove?: (
data: OnApproveData,
- actions: OnApproveActions
+ actions: OnApproveActions,
) => Promise;
/**
* Called when the buyer cancels the transaction.
@@ -243,14 +243,14 @@ export interface PayPalButtonsComponentOptions {
*/
onCancel?: (
data: Record,
- actions: OnCancelledActions
+ actions: OnCancelledActions,
) => void;
/**
* Called when the button is clicked. Often used for [validation](https://developer.paypal.com/docs/checkout/integration-features/validation/).
*/
onClick?: (
data: Record,
- actions: OnClickActions
+ actions: OnClickActions,
) => Promise | void;
/**
* Catch all for errors preventing buyer checkout.
@@ -267,21 +267,21 @@ export interface PayPalButtonsComponentOptions {
*/
onShippingChange?: (
data: OnShippingChangeData,
- actions: OnShippingChangeActions
+ actions: OnShippingChangeActions,
) => Promise;
/**
* Called when the buyer selects a new shipping option on PayPal.
*/
onShippingOptionsChange?: (
data: OnShippingOptionsChangeData,
- actions: OnShippingOptionsChangeActions
+ actions: OnShippingOptionsChangeActions,
) => Promise;
/**
* Called when the buyer updates their shipping address on PayPal.
*/
onShippingAddressChange?: (
data: OnShippingAddressChangeData,
- actions: OnShippingAddressChangeActions
+ actions: OnShippingAddressChangeActions,
) => Promise;
/**
* [Styling options](https://developer.paypal.com/docs/business/checkout/reference/style-guide/#customize-the-payment-buttons) for customizing the button appearance.
diff --git a/packages/paypal-js/types/components/card-fields.d.ts b/packages/paypal-js/types/components/card-fields.d.ts
index 8bc667ee..2280e6b7 100644
--- a/packages/paypal-js/types/components/card-fields.d.ts
+++ b/packages/paypal-js/types/components/card-fields.d.ts
@@ -119,7 +119,7 @@ export interface PayPalCardFieldsIndividualField {
clear: () => void;
focus: () => void;
removeAttribute: (
- name: "aria-invalid" | "aria-required" | "disabled" | "placeholder"
+ name: "aria-invalid" | "aria-required" | "disabled" | "placeholder",
) => Promise;
removeClass: (className: string) => Promise;
setAttribute: (name: string, value: string) => Promise;
@@ -141,15 +141,15 @@ export interface PayPalCardFieldsComponent {
isEligible: () => boolean;
submit: () => Promise;
NameField: (
- options: PayPalCardFieldsIndividualFieldOptions
+ options: PayPalCardFieldsIndividualFieldOptions,
) => PayPalCardFieldsIndividualField;
NumberField: (
- options: PayPalCardFieldsIndividualFieldOptions
+ options: PayPalCardFieldsIndividualFieldOptions,
) => PayPalCardFieldsIndividualField;
CVVField: (
- options: PayPalCardFieldsIndividualFieldOptions
+ options: PayPalCardFieldsIndividualFieldOptions,
) => PayPalCardFieldsIndividualField;
ExpiryField: (
- options: PayPalCardFieldsIndividualFieldOptions
+ options: PayPalCardFieldsIndividualFieldOptions,
) => PayPalCardFieldsIndividualField;
}
diff --git a/packages/paypal-js/types/components/hosted-fields.d.ts b/packages/paypal-js/types/components/hosted-fields.d.ts
index 90a7dabe..15217d3f 100644
--- a/packages/paypal-js/types/components/hosted-fields.d.ts
+++ b/packages/paypal-js/types/components/hosted-fields.d.ts
@@ -201,7 +201,7 @@ export interface HostedFieldsHandler {
* Submit the form if is valid
*/
submit: (
- options?: Record
+ options?: Record,
) => Promise;
/**
* Clean all the fields from the DOM
@@ -211,22 +211,22 @@ export interface HostedFieldsHandler {
* Tokenize fields and returns a nonce payload.
*/
tokenize: (
- options: HostedFieldsTokenize
+ options: HostedFieldsTokenize,
) => Promise>;
on(
event: EventType,
- handler: (event: HostedFieldsEventTypeMap[EventType]) => void
+ handler: (event: HostedFieldsEventTypeMap[EventType]) => void,
): void;
off(
event: EventType,
- handler: (event: HostedFieldsEventTypeMap[EventType]) => void
+ handler: (event: HostedFieldsEventTypeMap[EventType]) => void,
): void;
}
export interface PayPalHostedFieldsComponent {
isEligible: () => boolean;
render: (
- options: PayPalHostedFieldsComponentOptions
+ options: PayPalHostedFieldsComponentOptions,
) => Promise;
}
diff --git a/packages/paypal-js/types/index.d.ts b/packages/paypal-js/types/index.d.ts
index 7fca17f9..b2482691 100644
--- a/packages/paypal-js/types/index.d.ts
+++ b/packages/paypal-js/types/index.d.ts
@@ -25,15 +25,15 @@ import type {
export interface PayPalNamespace {
Buttons?: (
- options?: PayPalButtonsComponentOptions
+ options?: PayPalButtonsComponentOptions,
) => PayPalButtonsComponent;
Marks?: (options?: PayPalMarksComponentOptions) => PayPalMarksComponent;
Messages?: (
- options?: PayPalMessagesComponentOptions
+ options?: PayPalMessagesComponentOptions,
) => PayPalMessagesComponent;
HostedFields?: PayPalHostedFieldsComponent;
CardFields?: (
- options?: PayPalCardFieldsComponentOptions
+ options?: PayPalCardFieldsComponentOptions,
) => PayPalCardFieldsComponent;
getFundingSources?: getFundingSources;
isFundingEligible?: isFundingEligible;
@@ -44,7 +44,7 @@ export interface PayPalNamespace {
export function loadScript(
options: PayPalScriptOptions,
- PromisePonyfill?: PromiseConstructor
+ PromisePonyfill?: PromiseConstructor,
): Promise;
export function loadCustomScript(options: {
diff --git a/packages/paypal-js/types/tests/buttons.test.ts b/packages/paypal-js/types/tests/buttons.test.ts
index 2219c84b..8047862b 100644
--- a/packages/paypal-js/types/tests/buttons.test.ts
+++ b/packages/paypal-js/types/tests/buttons.test.ts
@@ -59,7 +59,7 @@ async function main() {
const transaction =
orderData.purchase_units[0].payments.captures[0];
alert(
- `Transaction ${transaction.status}: ${transaction.id} \n\nSee console for all available details`
+ `Transaction ${transaction.status}: ${transaction.id} \n\nSee console for all available details`,
);
});
},
diff --git a/packages/paypal-js/types/tests/server.test.ts b/packages/paypal-js/types/tests/server.test.ts
index 10ddec76..3a4018c9 100644
--- a/packages/paypal-js/types/tests/server.test.ts
+++ b/packages/paypal-js/types/tests/server.test.ts
@@ -6,7 +6,7 @@ import type {
function createOrder(
// eslint-disable-next-line @typescript-eslint/no-unused-vars
- createOrderRequestBody: CreateOrderRequestBody
+ createOrderRequestBody: CreateOrderRequestBody,
): Promise {
return Promise.resolve({ id: "123456", status: "CREATED", links: [] });
}
diff --git a/packages/react-paypal-js/.nvmrc b/packages/react-paypal-js/.nvmrc
deleted file mode 100644
index 6f7f377b..00000000
--- a/packages/react-paypal-js/.nvmrc
+++ /dev/null
@@ -1 +0,0 @@
-v16
diff --git a/packages/react-paypal-js/.storybook/preview-head.html b/packages/react-paypal-js/.storybook/preview-head.html
index e5edf0e7..4bc250ff 100644
--- a/packages/react-paypal-js/.storybook/preview-head.html
+++ b/packages/react-paypal-js/.storybook/preview-head.html
@@ -90,8 +90,11 @@
font-size: 1rem;
line-height: 1.5;
border-radius: 0.25rem;
- transition: color 0.15s ease-in-out, background-color 0.15s ease-in-out,
- border-color 0.15s ease-in-out, box-shadow 0.15s ease-in-out;
+ transition:
+ color 0.15s ease-in-out,
+ background-color 0.15s ease-in-out,
+ border-color 0.15s ease-in-out,
+ box-shadow 0.15s ease-in-out;
cursor: pointer;
}
diff --git a/packages/react-paypal-js/README.md b/packages/react-paypal-js/README.md
index 8ddca6d4..3b807ac1 100644
--- a/packages/react-paypal-js/README.md
+++ b/packages/react-paypal-js/README.md
@@ -299,7 +299,7 @@ const SubmitPayment = () => {
})
.then((order) => {
fetch(
- "/your-server-side-integration-endpoint/capture-payment-info"
+ "/your-server-side-integration-endpoint/capture-payment-info",
)
.then((response) => response.json())
.then((data) => {
@@ -326,7 +326,7 @@ export default function App() {
createOrder={() => {
// Here define the call to create and order
return fetch(
- "/your-server-side-integration-endpoint/orders"
+ "/your-server-side-integration-endpoint/orders",
)
.then((response) => response.json())
.then((order) => order.id)
diff --git a/packages/react-paypal-js/lint-staged.config.js b/packages/react-paypal-js/lint-staged.config.js
deleted file mode 100644
index 02cb27ee..00000000
--- a/packages/react-paypal-js/lint-staged.config.js
+++ /dev/null
@@ -1,13 +0,0 @@
-module.exports = {
- "**/*.ts?(x)": (filenames) => [
- "npm run typecheck",
- `prettier --write ${filenames.join(" ")}`,
- `eslint ${filenames.join(" ")}`,
- ],
- "**/*.js": (filenames) => [
- `prettier --write ${filenames.join(" ")}`,
- `eslint ${filenames.join(" ")}`,
- ],
- "**/*.{json,css,html,md,yml}": (filenames) =>
- `prettier --write ${filenames.join(" ")}`,
-};
diff --git a/packages/react-paypal-js/package.json b/packages/react-paypal-js/package.json
index 92d3af00..954c09eb 100644
--- a/packages/react-paypal-js/package.json
+++ b/packages/react-paypal-js/package.json
@@ -21,8 +21,6 @@
"scripts": {
"build": "rollup --config",
"check-node-version": "node scripts/check-node-version.js",
- "format": "prettier --write .",
- "format:check": "prettier --check .",
"lint": "eslint .",
"prepack": "rimraf dist && npm run build && npm run type-declarations",
"test": "jest --env=jsdom",
@@ -35,7 +33,7 @@
"postrelease": "git push && git push --follow-tags && npm run build && npm publish",
"typecheck": "tsc --noEmit",
"type-declarations": "tsc --emitDeclarationOnly --outDir dist/types --project tsconfig.declarations.json",
- "validate": "npm run check-node-version && npm run format:check && npm run typecheck && npm run build && npm run lint && npm test -- --coverage"
+ "validate": "npm run check-node-version && npm run typecheck && npm run build && npm run lint && npm test -- --coverage"
},
"files": [
"dist"
@@ -86,7 +84,6 @@
"husky": "^7.0.4",
"jest": "^27.5.1",
"jest-mock-extended": "^2.0.4",
- "prettier": "^2.5.1",
"react": "^16.14.0",
"react-dom": "^16.14.0",
"react-element-to-jsx-string": "^14.3.4",
diff --git a/packages/react-paypal-js/scripts/check-node-version.js b/packages/react-paypal-js/scripts/check-node-version.js
index 4545e1aa..0cbe0d06 100644
--- a/packages/react-paypal-js/scripts/check-node-version.js
+++ b/packages/react-paypal-js/scripts/check-node-version.js
@@ -4,11 +4,11 @@ const semver = require("semver");
const expectedNodeVersion = readFileSync(
join(__dirname, "../", ".nvmrc"),
- "utf-8"
+ "utf-8",
);
const isValidNodeVersion = semver.satisfies(
process.version,
- expectedNodeVersion
+ expectedNodeVersion,
);
// successfully exit when Node version is valid
diff --git a/packages/react-paypal-js/src/components/PayPalButtons.test.tsx b/packages/react-paypal-js/src/components/PayPalButtons.test.tsx
index 51f52a64..3718b5b9 100644
--- a/packages/react-paypal-js/src/components/PayPalButtons.test.tsx
+++ b/packages/react-paypal-js/src/components/PayPalButtons.test.tsx
@@ -64,7 +64,7 @@ describe("", () => {
style={{ layout: "horizontal" }}
message={{ amount: 100 }}
/>
-
+ ,
);
await waitFor(() =>
@@ -73,7 +73,7 @@ describe("", () => {
message: { amount: 100 },
fundingSource: FUNDING.CREDIT,
onInit: expect.any(Function),
- })
+ }),
);
});
@@ -81,11 +81,13 @@ describe("", () => {
render(
-
+ ,
);
await waitFor(() =>
- expect(document.querySelector("div.custom-class-name")).toBeTruthy()
+ expect(
+ document.querySelector("div.custom-class-name"),
+ ).toBeTruthy(),
);
});
@@ -99,12 +101,12 @@ describe("", () => {
disabled={true}
onInit={onInitCallbackMock}
/>
-
+ ,
);
await waitFor(() => {
expect(
- document.querySelector("div.paypal-buttons-disabled")
+ document.querySelector("div.paypal-buttons-disabled"),
).toBeTruthy();
});
expect(window.paypal?.Buttons).toHaveBeenCalled();
@@ -117,8 +119,8 @@ describe("", () => {
act(() =>
(window.paypal?.Buttons as jest.Mock).mock.calls[0][0].onInit(
{},
- onInitActions
- )
+ onInitActions,
+ ),
);
await waitFor(() => {
@@ -135,14 +137,14 @@ describe("", () => {
disabled={true}
onInit={jest.fn()}
/>
-
+ ,
);
await waitFor(() => {
expect(
container
.querySelector("div.custom-class-name")
- ?.classList.contains("paypal-buttons-disabled")
+ ?.classList.contains("paypal-buttons-disabled"),
).toBeTruthy();
});
const onInitActions = {
@@ -154,8 +156,8 @@ describe("", () => {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
(window.paypal?.Buttons as jest.Mock).mock.calls[0][0]?.onInit(
{},
- onInitActions
- )
+ onInitActions,
+ ),
);
rerender(
@@ -164,7 +166,7 @@ describe("", () => {
disabled={false}
onInit={onInitActions.enable}
/>
-
+ ,
);
await waitFor(() => {
expect(onInitActions.enable).toBeCalled();
@@ -172,7 +174,7 @@ describe("", () => {
expect(
container
?.querySelector("div.custom-class-name")
- ?.classList.contains("paypal-buttons-disabled")
+ ?.classList.contains("paypal-buttons-disabled"),
).toBeFalsy();
});
@@ -196,25 +198,25 @@ describe("", () => {
render(
-
+ ,
);
await waitFor(() =>
- expect(window.paypal?.Buttons).toHaveBeenCalledTimes(1)
+ expect(window.paypal?.Buttons).toHaveBeenCalledTimes(1),
);
fireEvent.click(screen.getByText("Update Amount"));
// confirm re-render when the forceReRender value changes for first item
await waitFor(() =>
- expect(window.paypal?.Buttons).toHaveBeenCalledTimes(2)
+ expect(window.paypal?.Buttons).toHaveBeenCalledTimes(2),
);
fireEvent.click(screen.getByText("Update Currency"));
// confirm re-render when the forceReRender value changes for second item
await waitFor(() =>
- expect(window.paypal?.Buttons).toHaveBeenCalledTimes(3)
+ expect(window.paypal?.Buttons).toHaveBeenCalledTimes(3),
);
});
window.paypal?.Buttons as jest.Mock;
@@ -237,22 +239,24 @@ describe("", () => {
render(
-
+ ,
);
await waitFor(() =>
- expect(window.paypal?.Buttons).toHaveBeenCalledTimes(1)
+ expect(window.paypal?.Buttons).toHaveBeenCalledTimes(1),
);
expect(screen.getByTestId("orderID").innerHTML).toBe("1");
await act(() =>
// call createOrder() to trigger a state change
- (window.paypal?.Buttons as jest.Mock).mock.calls[0][0].createOrder()
+ (
+ window.paypal?.Buttons as jest.Mock
+ ).mock.calls[0][0].createOrder(),
);
await waitFor(() =>
- expect(screen.getByTestId("orderID").innerHTML).toBe("2")
+ expect(screen.getByTestId("orderID").innerHTML).toBe("2"),
);
// confirm that the Buttons were NOT reset by a side-effect in createOrder()
@@ -271,7 +275,7 @@ describe("", () => {
render(
-
+ ,
);
// defaults to rendering null when ineligible
@@ -280,11 +284,11 @@ describe("", () => {
});
expect(
(window.paypal?.Buttons as jest.Mock).mock.results[0].value
- .isEligible
+ .isEligible,
).toBeCalled();
expect(
(window.paypal?.Buttons as jest.Mock).mock.results[0].value
- .isEligible.mock.results[0].value
+ .isEligible.mock.results[0].value,
).toBeFalsy();
});
@@ -300,7 +304,7 @@ describe("", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
@@ -325,7 +329,7 @@ describe("", () => {
>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
@@ -359,7 +363,7 @@ describe("", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
@@ -378,7 +382,7 @@ describe("", () => {
options?.fundingSource === "venmo"
) {
throw new Error(
- "Unexpected style.color for venmo button: gold, expected blue, silver, black, white"
+ "Unexpected style.color for venmo button: gold, expected blue, silver, black, white",
);
}
return mockPaypalButtonsComponent;
@@ -398,7 +402,7 @@ describe("", () => {
fundingSource={FUNDING.VENMO}
/>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toBeCalled());
@@ -406,7 +410,7 @@ describe("", () => {
expect.objectContaining({
message:
"Failed to render component. Failed to initialize: Error: Unexpected style.color for venmo button: gold, expected blue, silver, black, white",
- })
+ }),
);
spyConsoleError.mockRestore();
});
@@ -433,12 +437,12 @@ describe("", () => {
const { container } = render(
-
+ ,
);
await waitFor(() => expect(mockRender).toBeCalled());
expect(
- container.querySelector("div.test-children")?.hasChildNodes()
+ container.querySelector("div.test-children")?.hasChildNodes(),
).toBeFalsy();
spyConsoleError.mockRestore();
});
diff --git a/packages/react-paypal-js/src/components/PayPalButtons.tsx b/packages/react-paypal-js/src/components/PayPalButtons.tsx
index 7f101be1..2186cfec 100644
--- a/packages/react-paypal-js/src/components/PayPalButtons.tsx
+++ b/packages/react-paypal-js/src/components/PayPalButtons.tsx
@@ -41,8 +41,8 @@ export const PayPalButtons: FunctionComponent = ({
if (buttons.current?.updateProps) {
buttons.current.updateProps({
- message: buttonProps.message
- })
+ message: buttonProps.message,
+ });
}
// useEffect hook for rendering the buttons
@@ -53,7 +53,7 @@ export const PayPalButtons: FunctionComponent = ({
}
const paypalWindowNamespace = getPayPalWindowNamespace(
- options.dataNamespace
+ options.dataNamespace,
);
// verify dependency on window object
@@ -68,7 +68,7 @@ export const PayPalButtons: FunctionComponent = ({
sdkComponentKey: "buttons",
sdkRequestedComponents: options.components,
sdkDataNamespace: options[SDK_SETTINGS.DATA_NAMESPACE],
- })
+ }),
);
});
return closeButtonsComponent;
@@ -76,7 +76,7 @@ export const PayPalButtons: FunctionComponent = ({
const decoratedOnInit = (
data: Record,
- actions: OnInitActions
+ actions: OnInitActions,
) => {
setInitActions(actions);
if (typeof buttonProps.onInit === "function") {
@@ -92,7 +92,7 @@ export const PayPalButtons: FunctionComponent = ({
} catch (err) {
return setErrorState(() => {
throw new Error(
- `Failed to render component. Failed to initialize: ${err}`
+ `Failed to render component. Failed to initialize: ${err}`,
);
});
}
@@ -119,18 +119,14 @@ export const PayPalButtons: FunctionComponent = ({
// paypal buttons container is still in the DOM
setErrorState(() => {
throw new Error(
- `Failed to render component. ${err}`
+ `Failed to render component. ${err}`,
);
});
});
return closeButtonsComponent;
// eslint-disable-next-line react-hooks/exhaustive-deps
- }, [
- isResolved,
- ...forceReRender,
- buttonProps.fundingSource
- ]);
+ }, [isResolved, ...forceReRender, buttonProps.fundingSource]);
// useEffect hook for managing disabled state
useEffect(() => {
diff --git a/packages/react-paypal-js/src/components/PayPalMarks.test.tsx b/packages/react-paypal-js/src/components/PayPalMarks.test.tsx
index 3e810adf..0d39588d 100644
--- a/packages/react-paypal-js/src/components/PayPalMarks.test.tsx
+++ b/packages/react-paypal-js/src/components/PayPalMarks.test.tsx
@@ -47,13 +47,13 @@ describe("", () => {
options={{ clientId: "test", components: "marks" }}
>
-
+ ,
);
await waitFor(() =>
expect(window.paypal?.Marks).toHaveBeenCalledWith({
fundingSource: FUNDING.CREDIT,
- })
+ }),
);
});
@@ -71,11 +71,13 @@ describe("", () => {
options={{ clientId: "test", components: "marks" }}
>
-
+ ,
);
await waitFor(() =>
- expect(document.querySelector("div.custom-class-name")).toBeTruthy()
+ expect(
+ document.querySelector("div.custom-class-name"),
+ ).toBeTruthy(),
);
});
@@ -87,7 +89,7 @@ describe("", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
@@ -110,7 +112,7 @@ describe("", () => {
>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
@@ -131,7 +133,7 @@ describe("", () => {
>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
@@ -163,7 +165,7 @@ describe("", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
@@ -191,7 +193,7 @@ describe("", () => {
render(
-
+ ,
);
await waitFor(() => expect(mockRender).toBeCalled());
@@ -216,13 +218,14 @@ describe("", () => {
-
+ ,
);
await waitFor(() =>
expect(
- container.querySelector(".ineligible") instanceof HTMLDivElement
- ).toBeTruthy()
+ container.querySelector(".ineligible") instanceof
+ HTMLDivElement,
+ ).toBeTruthy(),
);
expect(container.querySelector(".mark-container")).toBeNull();
expect(mockIsEligible).toBeCalledTimes(1);
@@ -250,7 +253,7 @@ describe("", () => {
const { rerender } = render(
-
+ ,
);
await waitFor(() => expect(mockRender).toBeCalledTimes(1));
@@ -258,7 +261,7 @@ describe("", () => {
rerender(
-
+ ,
);
await waitFor(() => expect(mockRender).toBeCalledTimes(2));
diff --git a/packages/react-paypal-js/src/components/PayPalMarks.tsx b/packages/react-paypal-js/src/components/PayPalMarks.tsx
index c0b91638..82dab5c5 100644
--- a/packages/react-paypal-js/src/components/PayPalMarks.tsx
+++ b/packages/react-paypal-js/src/components/PayPalMarks.tsx
@@ -60,7 +60,7 @@ export const PayPalMarks: FC = ({
// paypal marks container is still in the DOM
setErrorState(() => {
throw new Error(
- `Failed to render component. ${err}`
+ `Failed to render component. ${err}`,
);
});
});
@@ -73,7 +73,7 @@ export const PayPalMarks: FC = ({
}
const paypalWindowNamespace = getPayPalWindowNamespace(
- options[SDK_SETTINGS.DATA_NAMESPACE]
+ options[SDK_SETTINGS.DATA_NAMESPACE],
);
// verify dependency on window object
@@ -88,7 +88,7 @@ export const PayPalMarks: FC = ({
sdkComponentKey: "marks",
sdkRequestedComponents: options.components,
sdkDataNamespace: options[SDK_SETTINGS.DATA_NAMESPACE],
- })
+ }),
);
});
}
diff --git a/packages/react-paypal-js/src/components/PayPalMessages.test.tsx b/packages/react-paypal-js/src/components/PayPalMessages.test.tsx
index 47dbc75d..2bd23458 100644
--- a/packages/react-paypal-js/src/components/PayPalMessages.test.tsx
+++ b/packages/react-paypal-js/src/components/PayPalMessages.test.tsx
@@ -47,11 +47,11 @@ describe("", () => {
options={{ clientId: "test", components: "messages" }}
>
-
+ ,
);
await waitFor(() =>
- expect(window.paypal?.Messages).toHaveBeenCalledWith({ style })
+ expect(window.paypal?.Messages).toHaveBeenCalledWith({ style }),
);
});
@@ -68,13 +68,13 @@ describe("", () => {
options={{ clientId: "test", components: "messages" }}
>
-
+ ,
);
await waitFor(() =>
expect(
- container.querySelector("div.custom-class-name")
- ).not.toBeNull()
+ container.querySelector("div.custom-class-name"),
+ ).not.toBeNull(),
);
});
@@ -88,7 +88,7 @@ describe("", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
@@ -114,7 +114,7 @@ describe("", () => {
>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
@@ -145,7 +145,7 @@ describe("", () => {
>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(mockRender).toBeCalled());
@@ -180,7 +180,7 @@ describe("", () => {
>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
diff --git a/packages/react-paypal-js/src/components/PayPalMessages.tsx b/packages/react-paypal-js/src/components/PayPalMessages.tsx
index 6bde2400..8d63b55f 100644
--- a/packages/react-paypal-js/src/components/PayPalMessages.tsx
+++ b/packages/react-paypal-js/src/components/PayPalMessages.tsx
@@ -37,7 +37,7 @@ export const PayPalMessages: FC = ({
}
const paypalWindowNamespace = getPayPalWindowNamespace(
- options[SDK_SETTINGS.DATA_NAMESPACE]
+ options[SDK_SETTINGS.DATA_NAMESPACE],
);
// verify dependency on window object
@@ -53,7 +53,7 @@ export const PayPalMessages: FC = ({
sdkComponentKey: "messages",
sdkRequestedComponents: options.components,
sdkDataNamespace: options[SDK_SETTINGS.DATA_NAMESPACE],
- })
+ }),
);
});
}
@@ -76,7 +76,7 @@ export const PayPalMessages: FC = ({
// paypal messages container is still in the DOM
setErrorState(() => {
throw new Error(
- `Failed to render component. ${err}`
+ `Failed to render component. ${err}`,
);
});
});
diff --git a/packages/react-paypal-js/src/components/PayPalScriptProvider.test.tsx b/packages/react-paypal-js/src/components/PayPalScriptProvider.test.tsx
index f3c75a8b..750fef23 100644
--- a/packages/react-paypal-js/src/components/PayPalScriptProvider.test.tsx
+++ b/packages/react-paypal-js/src/components/PayPalScriptProvider.test.tsx
@@ -30,7 +30,7 @@ describe("", () => {
beforeEach(() => {
document.head.innerHTML = "";
(loadScript as jest.Mock).mockImplementation(
- loadScriptMockImplementation
+ loadScriptMockImplementation,
);
});
@@ -43,7 +43,7 @@ describe("", () => {
render(
-
+ ,
);
expect(loadScript).toHaveBeenCalledWith({
clientId: "test",
@@ -70,7 +70,7 @@ describe("", () => {
render(
-
+ ,
);
expect(loadScript).toHaveBeenCalledWith({
clientId: "test",
@@ -98,7 +98,7 @@ describe("", () => {
const { unmount } = render(
-
+ ,
);
unmount();
@@ -122,7 +122,7 @@ describe("", () => {
options={{ clientId: "test" }}
>
-
+ ,
);
// verify initial state
@@ -136,7 +136,7 @@ describe("", () => {
options={{ clientId: "test" }}
>
-
+ ,
);
expect(loadScript).toHaveBeenCalledWith({
@@ -163,7 +163,7 @@ describe("", () => {
const { unmount } = render(
-
+ ,
);
// unmount to simulate getting removed from the DOM
@@ -172,7 +172,7 @@ describe("", () => {
render(
-
+ ,
);
await waitFor(() => expect(state.isResolved).toBeTruthy());
@@ -188,7 +188,7 @@ describe("usePayPalScriptReducer", () => {
beforeEach(() => {
document.head.innerHTML = "";
(loadScript as jest.Mock).mockImplementation(
- loadScriptMockImplementation
+ loadScriptMockImplementation,
);
});
@@ -201,7 +201,7 @@ describe("usePayPalScriptReducer", () => {
render(
-
+ ,
);
expect(state.options).toHaveProperty("clientId", "test");
@@ -230,7 +230,7 @@ describe("usePayPalScriptReducer", () => {
options={{ clientId: "xyz", disableFunding: "card" }}
/>
-
+ ,
);
expect(state.options).toMatchObject({ clientId: "abc" });
@@ -245,7 +245,7 @@ describe("usePayPalScriptReducer", () => {
const secondScriptID = state.options[SCRIPT_ID];
expect(
- document.querySelector(`script[${SCRIPT_ID}="${secondScriptID}"]`)
+ document.querySelector(`script[${SCRIPT_ID}="${secondScriptID}"]`),
).toBeTruthy();
expect(firstScriptID).not.toBe(secondScriptID);
diff --git a/packages/react-paypal-js/src/components/braintree/BraintreePayPalButtons.test.tsx b/packages/react-paypal-js/src/components/braintree/BraintreePayPalButtons.test.tsx
index dbe22413..f927efd5 100644
--- a/packages/react-paypal-js/src/components/braintree/BraintreePayPalButtons.test.tsx
+++ b/packages/react-paypal-js/src/components/braintree/BraintreePayPalButtons.test.tsx
@@ -58,7 +58,7 @@ const setup = () => {
(loadScript as jest.Mock).mockResolvedValue(window.paypal);
(loadCustomScript as jest.Mock).mockResolvedValue(
// eslint-disable-next-line @typescript-eslint/no-explicit-any
- (window as any).braintree
+ (window as any).braintree,
);
};
@@ -86,7 +86,7 @@ describe("Braintree PayPal button fail in mount process", () => {
errorMessage = (ex as Error).message;
}
expect(errorMessage).toEqual(
- "usePayPalScriptReducer must be used within a PayPalScriptProvider"
+ "usePayPalScriptReducer must be used within a PayPalScriptProvider",
);
expect(console.error).toHaveBeenCalled();
});
@@ -100,13 +100,13 @@ describe("Braintree PayPal button fail in mount process", () => {
// @ts-expect-error this test case validates that the options property is required
-
+ ,
);
} catch (ex) {
errorMessage = (ex as Error).message;
}
expect(errorMessage).toEqual(
- EMPTY_BRAINTREE_AUTHORIZATION_ERROR_MESSAGE
+ EMPTY_BRAINTREE_AUTHORIZATION_ERROR_MESSAGE,
);
expect(console.error).toHaveBeenCalled();
});
@@ -119,13 +119,13 @@ describe("Braintree PayPal button fail in mount process", () => {
render(
-
+ ,
);
} catch (ex) {
errorMessage = (ex as Error).message;
}
expect(errorMessage).toEqual(
- EMPTY_BRAINTREE_AUTHORIZATION_ERROR_MESSAGE
+ EMPTY_BRAINTREE_AUTHORIZATION_ERROR_MESSAGE,
);
expect(console.error).toHaveBeenCalled();
});
@@ -143,14 +143,14 @@ describe("Braintree PayPal button fail in mount process", () => {
}}
>
-
+ ,
);
} catch (ex) {
errorMessage = (ex as Error).message;
}
expect(errorMessage).toEqual(
- EMPTY_BRAINTREE_AUTHORIZATION_ERROR_MESSAGE
+ EMPTY_BRAINTREE_AUTHORIZATION_ERROR_MESSAGE,
);
expect(console.error).toHaveBeenCalled();
});
@@ -172,7 +172,7 @@ describe("Braintree PayPal button fail in mount process", () => {
}}
>
-
+ ,
);
} catch (ex) {
errorMessage = (ex as Error).message;
@@ -189,7 +189,7 @@ describe("Braintree PayPal button fail in mount process", () => {
.spyOn(console, "error")
.mockImplementation();
(loadCustomScript as jest.Mock).mockRejectedValue(
- new Error("Server Error")
+ new Error("Server Error"),
);
render(
@@ -201,14 +201,14 @@ describe("Braintree PayPal button fail in mount process", () => {
>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toBeCalled());
expect(onError.mock.calls[0][0]).toEqual(
expect.objectContaining({
message: `${LOAD_SCRIPT_ERROR} Error: Server Error`,
- })
+ }),
);
spyConsoleError.mockRestore();
});
@@ -231,14 +231,14 @@ describe("Braintree PayPal button fail in mount process", () => {
>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toBeCalled());
expect(onError.mock.calls[0][0]).toEqual(
expect.objectContaining({
message: `${LOAD_SCRIPT_ERROR} Error: Cannot create the Braintree client`,
- })
+ }),
);
spyConsoleError.mockRestore();
});
@@ -259,14 +259,14 @@ describe("Braintree PayPal button fail in mount process", () => {
>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toBeCalled());
expect(onError.mock.calls[0][0]).toEqual(
expect.objectContaining({
message: `${LOAD_SCRIPT_ERROR} TypeError: Cannot read properties of null (reading 'client')`,
- })
+ }),
);
spyConsoleError.mockRestore();
});
@@ -284,7 +284,7 @@ describe("render Braintree PayPal button component", () => {
}}
>
-
+ ,
);
await waitFor(() => {
@@ -293,16 +293,16 @@ describe("render Braintree PayPal button component", () => {
clientId: "test",
dataClientToken: CLIENT_TOKEN,
"data-react-paypal-script-id": expect.any(String),
- })
+ }),
);
});
expect(loadCustomScript).toHaveBeenCalledWith(
- expect.objectContaining({ url: BRAINTREE_SOURCE })
+ expect.objectContaining({ url: BRAINTREE_SOURCE }),
);
expect(loadCustomScript).toHaveBeenLastCalledWith(
expect.objectContaining({
url: BRAINTREE_PAYPAL_CHECKOUT_SOURCE,
- })
+ }),
);
});
@@ -321,7 +321,7 @@ describe("render Braintree PayPal button component", () => {
createOrder={jest.fn()}
onApprove={jest.fn()}
/>
-
+ ,
);
await waitFor(() => {
@@ -355,7 +355,7 @@ describe("render Braintree PayPal button component", () => {
createOrder={jest.fn()}
onApprove={jest.fn()}
/>
-
+ ,
);
await waitFor(() => {
diff --git a/packages/react-paypal-js/src/components/braintree/BraintreePayPalButtons.tsx b/packages/react-paypal-js/src/components/braintree/BraintreePayPalButtons.tsx
index d6bcb880..c65099ae 100644
--- a/packages/react-paypal-js/src/components/braintree/BraintreePayPalButtons.tsx
+++ b/packages/react-paypal-js/src/components/braintree/BraintreePayPalButtons.tsx
@@ -81,7 +81,7 @@ export const BraintreePayPalButtons: FC<
forceReRender={forceReRender}
{...(decorateActions(
buttonProps,
- providerContext.braintreePayPalCheckoutInstance
+ providerContext.braintreePayPalCheckoutInstance,
) as PayPalButtonsComponentProps)}
>
{children}
diff --git a/packages/react-paypal-js/src/components/braintree/utils.test.ts b/packages/react-paypal-js/src/components/braintree/utils.test.ts
index c7f9d1ad..0e28df81 100644
--- a/packages/react-paypal-js/src/components/braintree/utils.test.ts
+++ b/packages/react-paypal-js/src/components/braintree/utils.test.ts
@@ -39,7 +39,7 @@ describe("decorateActions", () => {
"onClick": [MockFunction],
"onInit": [MockFunction],
}
- `
+ `,
);
});
@@ -52,7 +52,7 @@ describe("decorateActions", () => {
createOrder: jest
.fn()
.mockImplementation(
- (data, actions) => actions.braintree.create !== undefined
+ (data, actions) => actions.braintree.create !== undefined,
),
};
@@ -60,7 +60,7 @@ describe("decorateActions", () => {
const buttonProps = decorateActions(
buttonPropsWithCreateOrder,
- mockedCheckout
+ mockedCheckout,
);
if (!buttonProps) {
@@ -72,7 +72,7 @@ describe("decorateActions", () => {
const mockedCreateOrderActions = mock();
expect(
- buttonProps.createOrder({}, mockedCreateOrderActions)
+ buttonProps.createOrder({}, mockedCreateOrderActions),
).toBeTruthy();
});
@@ -86,7 +86,7 @@ describe("decorateActions", () => {
.fn()
.mockImplementation(
(data, actions) =>
- actions.braintree.createBillingAgreement !== undefined
+ actions.braintree.createBillingAgreement !== undefined,
),
};
@@ -94,7 +94,7 @@ describe("decorateActions", () => {
const buttonProps = decorateActions(
buttonPropsWithCreateBillingAgreement,
- mockedCheckout
+ mockedCheckout,
);
if (!buttonProps) {
@@ -109,8 +109,8 @@ describe("decorateActions", () => {
expect(
buttonProps.createBillingAgreement(
{},
- mockedCreateBillingAgreementActions
- )
+ mockedCreateBillingAgreementActions,
+ ),
).toBeTruthy();
});
@@ -123,7 +123,7 @@ describe("decorateActions", () => {
onApprove: jest
.fn()
.mockImplementation(
- (data, actions) => actions.braintree.create !== undefined
+ (data, actions) => actions.braintree.create !== undefined,
),
};
@@ -131,7 +131,7 @@ describe("decorateActions", () => {
const buttonProps = decorateActions(
buttonPropsWithOnApprove,
- mockedCheckout
+ mockedCheckout,
);
if (!buttonProps) {
@@ -143,7 +143,7 @@ describe("decorateActions", () => {
const mockedOnApproveData = mock();
const mockedOnApproveActions = mock();
expect(
- buttonProps.onApprove(mockedOnApproveData, mockedOnApproveActions)
+ buttonProps.onApprove(mockedOnApproveData, mockedOnApproveActions),
).toBeTruthy();
});
});
@@ -170,7 +170,7 @@ describe("getBraintreeNamespace", () => {
},
};
(getBraintreeWindowNamespace as jest.Mock).mockReturnValue(
- braintreeNamespace
+ braintreeNamespace,
);
test("should return Braintree namespace from argument", async () => {
@@ -190,7 +190,7 @@ describe("getBraintreeNamespace", () => {
getBraintreeNamespace(mock());
} catch (err) {
expect((err as Error).message).toEqual(
- "The braintreeNamespace property is not a valid BraintreeNamespace type."
+ "The braintreeNamespace property is not a valid BraintreeNamespace type.",
);
}
});
diff --git a/packages/react-paypal-js/src/components/braintree/utils.ts b/packages/react-paypal-js/src/components/braintree/utils.ts
index 3b361e89..f0953a5c 100644
--- a/packages/react-paypal-js/src/components/braintree/utils.ts
+++ b/packages/react-paypal-js/src/components/braintree/utils.ts
@@ -22,7 +22,7 @@ const isValidBraintreeNamespace = (braintreeSource?: BraintreeNamespace) => {
typeof braintreeSource?.paypalCheckout?.create !== "function"
) {
throw new Error(
- "The braintreeNamespace property is not a valid BraintreeNamespace type."
+ "The braintreeNamespace property is not a valid BraintreeNamespace type.",
);
}
return true;
@@ -37,7 +37,7 @@ const isValidBraintreeNamespace = (braintreeSource?: BraintreeNamespace) => {
*/
export const decorateActions = (
buttonProps: BraintreePayPalButtonsComponentProps,
- payPalCheckoutInstance: BraintreePayPalCheckout
+ payPalCheckoutInstance: BraintreePayPalCheckout,
): BraintreePayPalButtonsComponentProps => {
const createOrderRef = buttonProps.createOrder;
const createBillingAgreementRef = buttonProps.createBillingAgreement;
@@ -86,7 +86,7 @@ export const decorateActions = (
* @returns the {@link BraintreeNamespace}
*/
export const getBraintreeNamespace = (
- braintreeSource?: BraintreeNamespace
+ braintreeSource?: BraintreeNamespace,
): Promise => {
if (braintreeSource && isValidBraintreeNamespace(braintreeSource)) {
return Promise.resolve(braintreeSource);
diff --git a/packages/react-paypal-js/src/components/cardFields/PayPalCVVField.test.tsx b/packages/react-paypal-js/src/components/cardFields/PayPalCVVField.test.tsx
index 76198c8c..5c4a9c6d 100644
--- a/packages/react-paypal-js/src/components/cardFields/PayPalCVVField.test.tsx
+++ b/packages/react-paypal-js/src/components/cardFields/PayPalCVVField.test.tsx
@@ -22,7 +22,7 @@ const CardFields = jest.fn(
render: jest.fn(() => Promise.resolve()),
close: jest.fn(() => Promise.resolve()),
}),
- } as unknown as PayPalCardFieldsComponent)
+ }) as unknown as PayPalCardFieldsComponent,
);
const wrapper = ({ children }: { children: ReactNode }) => (
Error} onError={onError}>
@@ -75,12 +75,12 @@ describe("PayPalCVVField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
expect(CVVField).toHaveBeenCalledWith(
- expect.objectContaining({ style: { input: { color: "black" } } })
+ expect.objectContaining({ style: { input: { color: "black" } } }),
);
spyConsoleError.mockRestore();
@@ -116,7 +116,7 @@ describe("PayPalCVVField", () => {
/>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
@@ -128,7 +128,7 @@ describe("PayPalCVVField", () => {
onBlur: mockOnBlur,
onInputSubmitRequest: mockOnInputSubmitRequest,
},
- })
+ }),
);
spyConsoleError.mockRestore();
@@ -157,14 +157,14 @@ describe("PayPalCVVField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
expect(CVVField).toHaveBeenCalledWith(
expect.objectContaining({
placeholder: "custom-place-holder",
- })
+ }),
);
spyConsoleError.mockRestore();
@@ -193,7 +193,7 @@ describe("PayPalCVVField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
@@ -213,12 +213,12 @@ describe("PayPalCVVField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toBeCalledTimes(1));
expect(onError.mock.calls[0][0].message).toBe(
- CARD_FIELDS_CONTEXT_ERROR
+ CARD_FIELDS_CONTEXT_ERROR,
);
spyConsoleError.mockRestore();
});
diff --git a/packages/react-paypal-js/src/components/cardFields/PayPalCardField.tsx b/packages/react-paypal-js/src/components/cardFields/PayPalCardField.tsx
index 76ca67fa..16ed62df 100644
--- a/packages/react-paypal-js/src/components/cardFields/PayPalCardField.tsx
+++ b/packages/react-paypal-js/src/components/cardFields/PayPalCardField.tsx
@@ -40,7 +40,7 @@ export const PayPalCardField: React.FC<
const registeredField = registerField(
fieldName,
options,
- cardFieldsForm
+ cardFieldsForm,
);
registeredField?.render(containerRef.current).catch((err) => {
@@ -51,7 +51,7 @@ export const PayPalCardField: React.FC<
// Component is still in the DOM
setError(() => {
throw new Error(
- `Failed to render component. ${err}`
+ `Failed to render component. ${err}`,
);
});
});
diff --git a/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsForm.test.tsx b/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsForm.test.tsx
index cb879e21..92698660 100644
--- a/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsForm.test.tsx
+++ b/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsForm.test.tsx
@@ -37,7 +37,7 @@ const CardFields = jest.fn(
render: jest.fn(() => Promise.resolve()),
close: jest.fn(() => Promise.resolve()),
}),
- } as unknown as PayPalCardFieldsComponent)
+ }) as unknown as PayPalCardFieldsComponent,
);
const wrapper = ({ children }: { children: ReactNode }) => (
Error} onError={onError}>
@@ -90,14 +90,14 @@ describe("PayPalCardFieldsForm", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
expect(CardFields).toBeCalledWith(
expect.objectContaining({
style: { input: { color: "black" } },
- })
+ }),
);
spyConsoleError.mockRestore();
@@ -131,7 +131,7 @@ describe("PayPalCardFieldsForm", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
@@ -143,7 +143,7 @@ describe("PayPalCardFieldsForm", () => {
onBlur: mockOnBlur,
onInputSubmitRequest: mockOnInputSubmitRequest,
},
- })
+ }),
);
spyConsoleError.mockRestore();
@@ -172,7 +172,7 @@ describe("PayPalCardFieldsForm", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
@@ -192,12 +192,12 @@ describe("PayPalCardFieldsForm", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toBeCalledTimes(4)); // 4 times, 1 for each field in the form.
expect(onError.mock.calls[0][0].message).toBe(
- CARD_FIELDS_CONTEXT_ERROR
+ CARD_FIELDS_CONTEXT_ERROR,
);
spyConsoleError.mockRestore();
});
diff --git a/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsProvider.test.tsx b/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsProvider.test.tsx
index e1268be5..570ff308 100644
--- a/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsProvider.test.tsx
+++ b/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsProvider.test.tsx
@@ -73,7 +73,7 @@ describe("PayPalCardFieldsProvider", () => {
NameField: jest.fn().mockReturnValue(happyMethods),
CVVField: jest.fn().mockReturnValue(happyMethods),
ExpiryField: jest.fn().mockReturnValue(happyMethods),
- } as unknown as PayPalCardFieldsComponent)
+ }) as unknown as PayPalCardFieldsComponent,
),
version: "",
};
@@ -98,12 +98,12 @@ describe("PayPalCardFieldsProvider", () => {
>
<>>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
expect(onError.mock.calls[0][0].message).toEqual(
- "usePayPalScriptReducer must be used within a PayPalScriptProvider"
+ "usePayPalScriptReducer must be used within a PayPalScriptProvider",
);
spyConsoleError.mockRestore();
});
@@ -134,12 +134,12 @@ describe("PayPalCardFieldsProvider", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
expect(onError.mock.calls[0][0].message).toEqual(
- CARD_FIELDS_DUPLICATE_CHILDREN_ERROR
+ CARD_FIELDS_DUPLICATE_CHILDREN_ERROR,
);
spyConsoleError.mockRestore();
@@ -170,7 +170,7 @@ describe("PayPalCardFieldsProvider", () => {
-
+ ,
);
await waitFor(() => {
expect(loadScript).toBeCalled();
@@ -187,7 +187,7 @@ describe("PayPalCardFieldsProvider", () => {
() =>
({
isEligible: jest.fn().mockReturnValue(false),
- } as unknown as PayPalCardFieldsComponent)
+ }) as unknown as PayPalCardFieldsComponent,
),
version: "",
};
@@ -211,7 +211,7 @@ describe("PayPalCardFieldsProvider", () => {
-
+ ,
);
await waitFor(() => {
expect(getMockElementsRendered().length).toEqual(0);
@@ -228,7 +228,7 @@ describe("PayPalCardFieldsProvider", () => {
({
isEligible: jest.fn().mockReturnValue(true),
NumberField: jest.fn(() => unHappyMethods),
- } as unknown as PayPalCardFieldsComponent)
+ }) as unknown as PayPalCardFieldsComponent,
),
version: "",
};
@@ -250,12 +250,12 @@ describe("PayPalCardFieldsProvider", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
expect(onError.mock.calls[0][0].message).toEqual(
- "Failed to render component. Unknown error"
+ "Failed to render component. Unknown error",
);
spyConsoleError.mockRestore();
});
@@ -284,7 +284,7 @@ describe("PayPalCardFieldsProvider", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalled());
@@ -312,7 +312,7 @@ describe("PayPalCardFieldsProvider", () => {
-
+ ,
);
await waitFor(() => {
@@ -344,7 +344,7 @@ describe("PayPalCardFieldsProvider", () => {
render: mockRender,
close: happyMethods.close,
})),
- } as unknown as PayPalCardFieldsComponent)
+ }) as unknown as PayPalCardFieldsComponent,
),
version: "",
};
@@ -368,7 +368,7 @@ describe("PayPalCardFieldsProvider", () => {
-
+ ,
);
await waitFor(() => expect(mockRender).toHaveBeenCalledTimes(3));
diff --git a/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsProvider.tsx b/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsProvider.tsx
index bf8f244c..fdb343da 100644
--- a/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsProvider.tsx
+++ b/packages/react-paypal-js/src/components/cardFields/PayPalCardFieldsProvider.tsx
@@ -52,14 +52,14 @@ export const PayPalCardFieldsProvider = ({
try {
cardFieldsInstance.current =
getPayPalWindowNamespace(
- options[SDK_SETTINGS.DATA_NAMESPACE]
+ options[SDK_SETTINGS.DATA_NAMESPACE],
).CardFields?.({
...props,
}) ?? null;
} catch (error) {
setError(() => {
throw new Error(
- `Failed to render component. Failed to initialize: ${error}`
+ `Failed to render component. Failed to initialize: ${error}`,
);
});
return;
@@ -72,7 +72,7 @@ export const PayPalCardFieldsProvider = ({
components: options.components,
[SDK_SETTINGS.DATA_NAMESPACE]:
options[SDK_SETTINGS.DATA_NAMESPACE],
- })
+ }),
);
});
return;
diff --git a/packages/react-paypal-js/src/components/cardFields/PayPalExpiryField.test.tsx b/packages/react-paypal-js/src/components/cardFields/PayPalExpiryField.test.tsx
index f7a63663..a07e23b3 100644
--- a/packages/react-paypal-js/src/components/cardFields/PayPalExpiryField.test.tsx
+++ b/packages/react-paypal-js/src/components/cardFields/PayPalExpiryField.test.tsx
@@ -22,7 +22,7 @@ const CardFields = jest.fn(
render: jest.fn(() => Promise.resolve()),
close: jest.fn(() => Promise.resolve()),
}),
- } as unknown as PayPalCardFieldsComponent)
+ }) as unknown as PayPalCardFieldsComponent,
);
const wrapper = ({ children }: { children: ReactNode }) => (
Error} onError={onError}>
@@ -75,12 +75,12 @@ describe("PayPalExpiryField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
expect(ExpiryField).toHaveBeenCalledWith(
- expect.objectContaining({ style: { input: { color: "black" } } })
+ expect.objectContaining({ style: { input: { color: "black" } } }),
);
spyConsoleError.mockRestore();
@@ -116,7 +116,7 @@ describe("PayPalExpiryField", () => {
/>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
@@ -128,7 +128,7 @@ describe("PayPalExpiryField", () => {
onBlur: mockOnBlur,
onInputSubmitRequest: mockOnInputSubmitRequest,
},
- })
+ }),
);
spyConsoleError.mockRestore();
@@ -157,14 +157,14 @@ describe("PayPalExpiryField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
expect(ExpiryField).toHaveBeenCalledWith(
expect.objectContaining({
placeholder: "custom-place-holder",
- })
+ }),
);
spyConsoleError.mockRestore();
@@ -193,7 +193,7 @@ describe("PayPalExpiryField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
@@ -213,12 +213,12 @@ describe("PayPalExpiryField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toBeCalledTimes(1));
expect(onError.mock.calls[0][0].message).toBe(
- CARD_FIELDS_CONTEXT_ERROR
+ CARD_FIELDS_CONTEXT_ERROR,
);
spyConsoleError.mockRestore();
});
diff --git a/packages/react-paypal-js/src/components/cardFields/PayPalNameField.test.tsx b/packages/react-paypal-js/src/components/cardFields/PayPalNameField.test.tsx
index b4271d5a..16800149 100644
--- a/packages/react-paypal-js/src/components/cardFields/PayPalNameField.test.tsx
+++ b/packages/react-paypal-js/src/components/cardFields/PayPalNameField.test.tsx
@@ -22,7 +22,7 @@ const CardFields = jest.fn(
render: jest.fn(() => Promise.resolve()),
close: jest.fn(() => Promise.resolve()),
}),
- } as unknown as PayPalCardFieldsComponent)
+ }) as unknown as PayPalCardFieldsComponent,
);
const wrapper = ({ children }: { children: ReactNode }) => (
Error} onError={onError}>
@@ -75,12 +75,12 @@ describe("PayPalNameField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
expect(NameField).toHaveBeenCalledWith(
- expect.objectContaining({ style: { input: { color: "black" } } })
+ expect.objectContaining({ style: { input: { color: "black" } } }),
);
spyConsoleError.mockRestore();
@@ -116,7 +116,7 @@ describe("PayPalNameField", () => {
/>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
@@ -128,7 +128,7 @@ describe("PayPalNameField", () => {
onBlur: mockOnBlur,
onInputSubmitRequest: mockOnInputSubmitRequest,
},
- })
+ }),
);
spyConsoleError.mockRestore();
@@ -157,14 +157,14 @@ describe("PayPalNameField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
expect(NameField).toHaveBeenCalledWith(
expect.objectContaining({
placeholder: "custom-place-holder",
- })
+ }),
);
spyConsoleError.mockRestore();
@@ -193,7 +193,7 @@ describe("PayPalNameField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
@@ -213,12 +213,12 @@ describe("PayPalNameField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toBeCalledTimes(1));
expect(onError.mock.calls[0][0].message).toBe(
- CARD_FIELDS_CONTEXT_ERROR
+ CARD_FIELDS_CONTEXT_ERROR,
);
spyConsoleError.mockRestore();
});
diff --git a/packages/react-paypal-js/src/components/cardFields/PayPalNumberField.test.tsx b/packages/react-paypal-js/src/components/cardFields/PayPalNumberField.test.tsx
index 57a78846..e30de5f0 100644
--- a/packages/react-paypal-js/src/components/cardFields/PayPalNumberField.test.tsx
+++ b/packages/react-paypal-js/src/components/cardFields/PayPalNumberField.test.tsx
@@ -22,7 +22,7 @@ const CardFields = jest.fn(
render: jest.fn(() => Promise.resolve()),
close: jest.fn(() => Promise.resolve()),
}),
- } as unknown as PayPalCardFieldsComponent)
+ }) as unknown as PayPalCardFieldsComponent,
);
const wrapper = ({ children }: { children: ReactNode }) => (
Error} onError={onError}>
@@ -75,12 +75,12 @@ describe("PayPalNumberField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
expect(NumberField).toHaveBeenCalledWith(
- expect.objectContaining({ style: { input: { color: "black" } } })
+ expect.objectContaining({ style: { input: { color: "black" } } }),
);
spyConsoleError.mockRestore();
@@ -116,7 +116,7 @@ describe("PayPalNumberField", () => {
/>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
@@ -128,7 +128,7 @@ describe("PayPalNumberField", () => {
onBlur: mockOnBlur,
onInputSubmitRequest: mockOnInputSubmitRequest,
},
- })
+ }),
);
spyConsoleError.mockRestore();
@@ -157,14 +157,14 @@ describe("PayPalNumberField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
expect(NumberField).toHaveBeenCalledWith(
expect.objectContaining({
placeholder: "custom-place-holder",
- })
+ }),
);
spyConsoleError.mockRestore();
@@ -193,7 +193,7 @@ describe("PayPalNumberField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toHaveBeenCalledTimes(0));
@@ -213,12 +213,12 @@ describe("PayPalNumberField", () => {
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toBeCalledTimes(1));
expect(onError.mock.calls[0][0].message).toBe(
- CARD_FIELDS_CONTEXT_ERROR
+ CARD_FIELDS_CONTEXT_ERROR,
);
spyConsoleError.mockRestore();
});
diff --git a/packages/react-paypal-js/src/components/cardFields/hooks.ts b/packages/react-paypal-js/src/components/cardFields/hooks.ts
index 6118ad11..7a3a6831 100644
--- a/packages/react-paypal-js/src/components/cardFields/hooks.ts
+++ b/packages/react-paypal-js/src/components/cardFields/hooks.ts
@@ -22,7 +22,7 @@ export type RegistryHookReturnType = {
registerField: (
fieldName: FieldComponentName,
options: PayPalCardFieldsIndividualFieldOptions,
- cardFields: PayPalCardFieldsComponent | null
+ cardFields: PayPalCardFieldsComponent | null,
) => PayPalCardFieldsIndividualField | void;
unregisterField: (field: FieldComponentName) => void;
};
diff --git a/packages/react-paypal-js/src/components/cardFields/utils.ts b/packages/react-paypal-js/src/components/cardFields/utils.ts
index 5f73b24a..5c80656b 100644
--- a/packages/react-paypal-js/src/components/cardFields/utils.ts
+++ b/packages/react-paypal-js/src/components/cardFields/utils.ts
@@ -33,7 +33,7 @@ export function ignore(): void {
}
export function hasChildren(
- container: React.RefObject
+ container: React.RefObject,
): boolean {
return !!container.current?.children.length;
}
diff --git a/packages/react-paypal-js/src/components/hostedFields/PayPalHostedField.test.tsx b/packages/react-paypal-js/src/components/hostedFields/PayPalHostedField.test.tsx
index a094b47b..a9c9f627 100644
--- a/packages/react-paypal-js/src/components/hostedFields/PayPalHostedField.test.tsx
+++ b/packages/react-paypal-js/src/components/hostedFields/PayPalHostedField.test.tsx
@@ -21,13 +21,13 @@ const providerRender = (
{
providerProps,
...renderOptions
- }: { providerProps: ProviderProps }
+ }: { providerProps: ProviderProps },
) => {
return render(
{ui}
,
- renderOptions
+ renderOptions,
);
};
const defaultProviderValue = {
@@ -46,11 +46,11 @@ describe("PayPalHostedField", () => {
options={{ selector: "#number" }}
/>
,
- defaultProviderValue
+ defaultProviderValue,
);
expect(
- container.querySelector("#number") instanceof HTMLDivElement
+ container.querySelector("#number") instanceof HTMLDivElement,
).toBeTruthy();
});
@@ -61,7 +61,7 @@ describe("PayPalHostedField", () => {
hostedFieldType={PAYPAL_HOSTED_FIELDS_TYPES.NUMBER}
options={{ selector: ".class1" }}
/>,
- defaultProviderValue
+ defaultProviderValue,
);
const renderedElement = container.querySelector(".class1");
@@ -80,7 +80,7 @@ describe("PayPalHostedField", () => {
hostedFieldType={PAYPAL_HOSTED_FIELDS_TYPES.NUMBER}
options={{ selector: ".number" }}
/>,
- defaultProviderValue
+ defaultProviderValue,
);
const renderedElement =
container.querySelector(".number");
@@ -103,12 +103,12 @@ describe("PayPalHostedField", () => {
hostedFieldType={PAYPAL_HOSTED_FIELDS_TYPES.NUMBER}
options={{ selector: ".number" }}
/>,
- { wrapper }
+ { wrapper },
);
await waitFor(() => expect(onError).toBeCalledTimes(1));
expect(onError.mock.calls[0][0].message).toBe(
- "The HostedField cannot be register in the PayPalHostedFieldsProvider parent component"
+ "The HostedField cannot be register in the PayPalHostedFieldsProvider parent component",
);
spyConsoleError.mockRestore();
});
diff --git a/packages/react-paypal-js/src/components/hostedFields/PayPalHostedField.tsx b/packages/react-paypal-js/src/components/hostedFields/PayPalHostedField.tsx
index cfa50740..52af198f 100644
--- a/packages/react-paypal-js/src/components/hostedFields/PayPalHostedField.tsx
+++ b/packages/react-paypal-js/src/components/hostedFields/PayPalHostedField.tsx
@@ -32,7 +32,7 @@ export const PayPalHostedField: FC = ({
useEffect(() => {
if (!hostedFieldContext?.registerHostedField) {
throw new Error(
- "The HostedField cannot be register in the PayPalHostedFieldsProvider parent component"
+ "The HostedField cannot be register in the PayPalHostedFieldsProvider parent component",
);
}
// Register in the parent provider
diff --git a/packages/react-paypal-js/src/components/hostedFields/PayPalHostedFieldsProvider.test.tsx b/packages/react-paypal-js/src/components/hostedFields/PayPalHostedFieldsProvider.test.tsx
index d3cc40b5..484042f4 100644
--- a/packages/react-paypal-js/src/components/hostedFields/PayPalHostedFieldsProvider.test.tsx
+++ b/packages/react-paypal-js/src/components/hostedFields/PayPalHostedFieldsProvider.test.tsx
@@ -60,10 +60,10 @@ describe("PayPalHostedFieldsProvider", () => {
<>>
,
- { wrapper }
+ { wrapper },
);
expect(onError.mock.calls[0][0].message).toEqual(
- "usePayPalScriptReducer must be used within a PayPalScriptProvider"
+ "usePayPalScriptReducer must be used within a PayPalScriptProvider",
);
spyConsoleError.mockRestore();
});
@@ -79,10 +79,10 @@ describe("PayPalHostedFieldsProvider", () => {
<>>
,
- { wrapper }
+ { wrapper },
);
expect(onError.mock.calls[0][0].message).toEqual(
- EMPTY_BRAINTREE_AUTHORIZATION_ERROR_MESSAGE
+ EMPTY_BRAINTREE_AUTHORIZATION_ERROR_MESSAGE,
);
spyConsoleError.mockRestore();
});
@@ -106,10 +106,10 @@ describe("PayPalHostedFieldsProvider", () => {
<>>
,
- { wrapper }
+ { wrapper },
);
expect(onError.mock.calls[0][0].message).toEqual(
- "To use HostedFields you must use it with at least 3 children with types: [number, cvv, expirationDate] includes"
+ "To use HostedFields you must use it with at least 3 children with types: [number, cvv, expirationDate] includes",
);
spyConsoleError.mockRestore();
});
@@ -146,14 +146,14 @@ describe("PayPalHostedFieldsProvider", () => {
/>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => {
expect(onError.mock.calls[0][0].message).toEqual(
"Unable to render because window.paypal.HostedFields is undefined." +
"\nTo fix the issue, add 'hosted-fields' to the list of components passed to the parent PayPalScriptProvider: " +
- ""
+ "",
);
});
spyConsoleError.mockRestore();
@@ -191,7 +191,7 @@ describe("PayPalHostedFieldsProvider", () => {
options={{ selector: "cvv" }}
/>
-
+ ,
);
await waitFor(() => {
expect(loadScript).toBeCalled();
@@ -228,7 +228,7 @@ describe("PayPalHostedFieldsProvider", () => {
options={{ selector: "cvv" }}
/>
-
+ ,
);
await waitFor(() => {
expect(container.querySelector(".number")).toEqual(null);
@@ -274,12 +274,12 @@ describe("PayPalHostedFieldsProvider", () => {
/>
,
- { wrapper }
+ { wrapper },
);
await waitFor(() => {
expect(onError.mock.calls[0][0].message).toEqual(
- "Failed to render component. Error: Failing rendering hostedFields"
+ "Failed to render component. Error: Failing rendering hostedFields",
);
});
spyConsoleError.mockRestore();
@@ -315,17 +315,17 @@ describe("PayPalHostedFieldsProvider", () => {
options={{ selector: ".cvv" }}
/>
-
+ ,
);
await waitFor(() => {
expect(window?.paypal?.HostedFields?.render).toBeCalled();
});
expect(
- container.querySelector(".number") instanceof HTMLDivElement
+ container.querySelector(".number") instanceof HTMLDivElement,
).toBeTruthy();
expect(
- container.querySelector(".expiration") instanceof HTMLDivElement
+ container.querySelector(".expiration") instanceof HTMLDivElement,
).toBeTruthy();
expect(container.querySelector(".cvv")).toBeTruthy();
@@ -365,7 +365,7 @@ describe("PayPalHostedFieldsProvider", () => {
options={{ selector: ".cvv" }}
/>
-
+ ,
);
await waitFor(() => {
expect(window?.paypal?.HostedFields?.render).toBeCalledTimes(2);
@@ -381,7 +381,9 @@ describe("PayPalHostedFieldsProvider", () => {
.fn()
.mockImplementation(
() =>
- new Promise((resolve) => setTimeout(() => resolve({}), 500))
+ new Promise((resolve) =>
+ setTimeout(() => resolve({}), 500),
+ ),
);
const { container, unmount } = render(
@@ -413,7 +415,7 @@ describe("PayPalHostedFieldsProvider", () => {
options={{ selector: ".cvv" }}
/>
-
+ ,
);
await waitFor(() => {
@@ -423,7 +425,7 @@ describe("PayPalHostedFieldsProvider", () => {
jest.runAllTimers();
expect(
- container.querySelector(".number") instanceof HTMLDivElement
+ container.querySelector(".number") instanceof HTMLDivElement,
).toBeFalsy();
jest.useRealTimers();
});
@@ -465,7 +467,7 @@ describe("PayPalHostedFieldsProvider", () => {
options={{ selector: ".cvv" }}
/>
-
+ ,
);
await waitFor(() => {
@@ -476,7 +478,7 @@ describe("PayPalHostedFieldsProvider", () => {
onInstallmentsAvailable: expect.any(Function),
onInstallmentsError: expect.any(Function),
},
- })
+ }),
);
});
});
diff --git a/packages/react-paypal-js/src/components/hostedFields/PayPalHostedFieldsProvider.tsx b/packages/react-paypal-js/src/components/hostedFields/PayPalHostedFieldsProvider.tsx
index 63167696..8f78e85b 100644
--- a/packages/react-paypal-js/src/components/hostedFields/PayPalHostedFieldsProvider.tsx
+++ b/packages/react-paypal-js/src/components/hostedFields/PayPalHostedFieldsProvider.tsx
@@ -44,8 +44,8 @@ export const PayPalHostedFieldsProvider: FC<
useEffect(() => {
validateHostedFieldChildren(
Object.keys(
- registeredFields.current
- ) as PAYPAL_HOSTED_FIELDS_TYPES[]
+ registeredFields.current,
+ ) as PAYPAL_HOSTED_FIELDS_TYPES[],
);
// Only render the hosted fields when script is loaded and hostedFields is eligible
if (!(loadingStatus === SCRIPT_LOADING_STATE.RESOLVED)) {
@@ -53,7 +53,7 @@ export const PayPalHostedFieldsProvider: FC<
}
// Get the hosted fields from the [window.paypal.HostedFields] SDK
hostedFields.current = getPayPalWindowNamespace(
- options[SDK_SETTINGS.DATA_NAMESPACE]
+ options[SDK_SETTINGS.DATA_NAMESPACE],
).HostedFields;
if (!hostedFields.current) {
@@ -62,7 +62,7 @@ export const PayPalHostedFieldsProvider: FC<
components: options.components,
[SDK_SETTINGS.DATA_NAMESPACE]:
options[SDK_SETTINGS.DATA_NAMESPACE],
- })
+ }),
);
}
if (!hostedFields.current.isEligible()) {
@@ -89,7 +89,7 @@ export const PayPalHostedFieldsProvider: FC<
.catch((err) => {
setErrorState(() => {
throw new Error(
- `Failed to render component. ${err}`
+ `Failed to render component. ${err}`,
);
});
});
diff --git a/packages/react-paypal-js/src/components/hostedFields/hooks.ts b/packages/react-paypal-js/src/components/hostedFields/hooks.ts
index c5f52d1c..8a031c05 100644
--- a/packages/react-paypal-js/src/components/hostedFields/hooks.ts
+++ b/packages/react-paypal-js/src/components/hostedFields/hooks.ts
@@ -12,10 +12,10 @@ import type { PayPalHostedFieldsRegistered } from "../../types/payPalHostedField
* and at the second a function handler to register the hosted fields components
*/
export const useHostedFieldsRegister = (
- initialValue = {}
+ initialValue = {},
): [
MutableRefObject,
- (component: PayPalHostedFieldsRegistered) => void
+ (component: PayPalHostedFieldsRegistered) => void,
] => {
const registeredFields = useRef(initialValue);
diff --git a/packages/react-paypal-js/src/components/hostedFields/utils.test.ts b/packages/react-paypal-js/src/components/hostedFields/utils.test.ts
index 50f2993e..954c127e 100644
--- a/packages/react-paypal-js/src/components/hostedFields/utils.test.ts
+++ b/packages/react-paypal-js/src/components/hostedFields/utils.test.ts
@@ -21,13 +21,13 @@ describe("generateMissingHostedFieldsError", () => {
generateMissingHostedFieldsError({
components: "marks",
[SDK_SETTINGS.DATA_NAMESPACE]: "Braintree",
- })
+ }),
).toEqual(exceptionMessage);
});
test("should throw exception with default namespace", () => {
expect(generateMissingHostedFieldsError({ components: "" })).toEqual(
- exceptionMessagePayPalNamespace
+ exceptionMessagePayPalNamespace,
);
});
@@ -35,9 +35,9 @@ describe("generateMissingHostedFieldsError", () => {
window.paypal = { version: "" };
expect(
- generateMissingHostedFieldsError({ components: "hosted-fields" })
+ generateMissingHostedFieldsError({ components: "hosted-fields" }),
).toEqual(
- "Unable to render because window.paypal.HostedFields is undefined."
+ "Unable to render because window.paypal.HostedFields is undefined.",
);
});
});
diff --git a/packages/react-paypal-js/src/components/hostedFields/utils.ts b/packages/react-paypal-js/src/components/hostedFields/utils.ts
index fccd75db..9e9108dd 100644
--- a/packages/react-paypal-js/src/components/hostedFields/utils.ts
+++ b/packages/react-paypal-js/src/components/hostedFields/utils.ts
@@ -43,7 +43,7 @@ export const generateMissingHostedFieldsError = ({
* @returns @type {true} when the children are valid
*/
const validateExpirationDate = (
- registerTypes: PAYPAL_HOSTED_FIELDS_TYPES[]
+ registerTypes: PAYPAL_HOSTED_FIELDS_TYPES[],
) => {
return (
!registerTypes.includes(PAYPAL_HOSTED_FIELDS_TYPES.EXPIRATION_DATE) &&
@@ -92,7 +92,7 @@ const noDuplicateChildren = (registerTypes: PAYPAL_HOSTED_FIELDS_TYPES[]) => {
* @param requiredChildren the list with required children [number, expiration, cvv]
*/
export const validateHostedFieldChildren = (
- registeredFields: PAYPAL_HOSTED_FIELDS_TYPES[]
+ registeredFields: PAYPAL_HOSTED_FIELDS_TYPES[],
): void => {
hasDefaultChildren(registeredFields);
noDuplicateChildren(registeredFields);
diff --git a/packages/react-paypal-js/src/context/scriptProviderContext.test.ts b/packages/react-paypal-js/src/context/scriptProviderContext.test.ts
index 3396db83..95cbe19d 100644
--- a/packages/react-paypal-js/src/context/scriptProviderContext.test.ts
+++ b/packages/react-paypal-js/src/context/scriptProviderContext.test.ts
@@ -26,9 +26,9 @@ describe("getScriptID", () => {
intent: "capture",
currency: "USD",
dataClientToken: "long_JWT_client_token",
- })
+ }),
).toEqual(
- "react-paypal-js-iiuovjsckceqpjrzqildwyishnomaqumyapbgcgqkiseblauicltugxfqiiskmmkdjrzqiggpdicseweuqvrvvljmcfhgckevdcatp"
+ "react-paypal-js-iiuovjsckceqpjrzqildwyishnomaqumyapbgcgqkiseblauicltugxfqiiskmmkdjrzqiggpdicseweuqvrvvljmcfhgckevdcatp",
);
});
});
@@ -48,7 +48,7 @@ describe("destroySDKScript", () => {
destroySDKScript("script-id");
expect(
- document.querySelector("#script-id") instanceof HTMLScriptElement
+ document.querySelector("#script-id") instanceof HTMLScriptElement,
).toBeTruthy();
});
@@ -61,7 +61,7 @@ describe("destroySDKScript", () => {
destroySDKScript("generated-id");
expect(
- document.querySelector("#script-id") instanceof HTMLScriptElement
+ document.querySelector("#script-id") instanceof HTMLScriptElement,
).toBeFalsy();
});
});
@@ -89,7 +89,7 @@ describe("scriptReducer", () => {
scriptReducer(state, {
type: DISPATCH_ACTION.LOADING_STATUS,
value: "resolve" as SCRIPT_LOADING_STATE,
- })
+ }),
).toMatchObject({ ...state, loadingStatus: "resolve" });
});
@@ -101,7 +101,7 @@ describe("scriptReducer", () => {
clientId: "",
[SCRIPT_ID]: "script",
} as PayPalScriptOptions,
- })
+ }),
).toMatchObject({
...state,
loadingStatus: "pending",
@@ -118,7 +118,7 @@ describe("scriptReducer", () => {
scriptReducer(state, {
type: DISPATCH_ACTION.SET_BRAINTREE_INSTANCE,
value: braintreeMockInstance,
- })
+ }),
).toMatchObject({
...state,
braintreePayPalCheckoutInstance: braintreeMockInstance,
diff --git a/packages/react-paypal-js/src/context/scriptProviderContext.ts b/packages/react-paypal-js/src/context/scriptProviderContext.ts
index c77159cc..c5c68066 100644
--- a/packages/react-paypal-js/src/context/scriptProviderContext.ts
+++ b/packages/react-paypal-js/src/context/scriptProviderContext.ts
@@ -30,7 +30,7 @@ export function getScriptID(options: ReactPayPalScriptOptions): string {
*/
export function destroySDKScript(reactPayPalScriptID?: string): void {
const scriptNode = self.document.querySelector(
- `script[${SCRIPT_ID}="${reactPayPalScriptID}"]`
+ `script[${SCRIPT_ID}="${reactPayPalScriptID}"]`,
);
if (scriptNode?.parentNode) {
@@ -47,7 +47,7 @@ export function destroySDKScript(reactPayPalScriptID?: string): void {
*/
export function scriptReducer(
state: ScriptContextState,
- action: ScriptReducerAction
+ action: ScriptReducerAction,
): ScriptContextState {
switch (action.type) {
case DISPATCH_ACTION.LOADING_STATUS:
diff --git a/packages/react-paypal-js/src/hooks/contextValidator.test.ts b/packages/react-paypal-js/src/hooks/contextValidator.test.ts
index 4b880931..e63180a9 100644
--- a/packages/react-paypal-js/src/hooks/contextValidator.test.ts
+++ b/packages/react-paypal-js/src/hooks/contextValidator.test.ts
@@ -14,8 +14,8 @@ describe("validateReducer", () => {
validateReducer(null);
}).toThrowError(
new Error(
- "usePayPalScriptReducer must be used within a PayPalScriptProvider"
- )
+ "usePayPalScriptReducer must be used within a PayPalScriptProvider",
+ ),
);
});
@@ -25,8 +25,8 @@ describe("validateReducer", () => {
validateReducer({});
}).toThrowError(
new Error(
- "usePayPalScriptReducer must be used within a PayPalScriptProvider"
- )
+ "usePayPalScriptReducer must be used within a PayPalScriptProvider",
+ ),
);
});
@@ -36,8 +36,8 @@ describe("validateReducer", () => {
validateReducer({ dispatch: 10 });
}).toThrowError(
new Error(
- "usePayPalScriptReducer must be used within a PayPalScriptProvider"
- )
+ "usePayPalScriptReducer must be used within a PayPalScriptProvider",
+ ),
);
});
@@ -47,8 +47,8 @@ describe("validateReducer", () => {
validateReducer({ dispatch: jest.fn() });
}).toThrowError(
new Error(
- "usePayPalScriptReducer must be used within a PayPalScriptProvider"
- )
+ "usePayPalScriptReducer must be used within a PayPalScriptProvider",
+ ),
);
});
diff --git a/packages/react-paypal-js/src/hooks/contextValidator.ts b/packages/react-paypal-js/src/hooks/contextValidator.ts
index b37cb601..72ef621a 100644
--- a/packages/react-paypal-js/src/hooks/contextValidator.ts
+++ b/packages/react-paypal-js/src/hooks/contextValidator.ts
@@ -13,7 +13,7 @@ import type { ScriptContextState } from "../types";
* @returns strict context avoiding null values in the type
*/
export function validateReducer(
- scriptContext: ScriptContextState | null
+ scriptContext: ScriptContextState | null,
): ScriptContextState {
if (
typeof scriptContext?.dispatch === "function" &&
@@ -36,7 +36,7 @@ export function validateReducer(
* @returns strict context if one of the keys are defined
*/
export const validateBraintreeAuthorizationData = (
- scriptContext: ScriptContextState | null
+ scriptContext: ScriptContextState | null,
): ScriptContextState => {
if (
!scriptContext?.options?.[SDK_SETTINGS.DATA_CLIENT_TOKEN] &&
diff --git a/packages/react-paypal-js/src/hooks/scriptProviderHooks.ts b/packages/react-paypal-js/src/hooks/scriptProviderHooks.ts
index 51a7b9f9..39711767 100644
--- a/packages/react-paypal-js/src/hooks/scriptProviderHooks.ts
+++ b/packages/react-paypal-js/src/hooks/scriptProviderHooks.ts
@@ -22,7 +22,7 @@ import type {
*/
export function usePayPalScriptReducer(): [
ScriptContextDerivedState,
- React.Dispatch
+ React.Dispatch,
] {
const scriptContext = validateReducer(useContext(ScriptContext));
@@ -49,10 +49,10 @@ export function usePayPalScriptReducer(): [
*/
export function useScriptProviderContext(): [
ScriptContextState,
- React.Dispatch
+ React.Dispatch,
] {
const scriptContext = validateBraintreeAuthorizationData(
- validateReducer(useContext(ScriptContext))
+ validateReducer(useContext(ScriptContext)),
);
return [
diff --git a/packages/react-paypal-js/src/stories/PayPalMessages.stories.tsx b/packages/react-paypal-js/src/stories/PayPalMessages.stories.tsx
index a5686f96..e0d29387 100644
--- a/packages/react-paypal-js/src/stories/PayPalMessages.stories.tsx
+++ b/packages/react-paypal-js/src/stories/PayPalMessages.stories.tsx
@@ -101,7 +101,7 @@ export default function App() {
context={context}
code={getDefaultCode(
context.getStoryContext(context.storyById(context.id)).args
- .style
+ .style,
)}
/>
),
diff --git a/packages/react-paypal-js/src/stories/braintree/BraintreePayPalButtons.stories.tsx b/packages/react-paypal-js/src/stories/braintree/BraintreePayPalButtons.stories.tsx
index 5f959cca..dc7647a6 100644
--- a/packages/react-paypal-js/src/stories/braintree/BraintreePayPalButtons.stories.tsx
+++ b/packages/react-paypal-js/src/stories/braintree/BraintreePayPalButtons.stories.tsx
@@ -112,7 +112,7 @@ export default {
storyArg: {
args: { size: number };
originalStoryFn: { name: string };
- }
+ },
): ReactElement => {
// Workaround to render the story after got the client token,
// The new experimental loaders doesn't work in Docs views
@@ -170,7 +170,7 @@ export const Default: FC = ({
forceReRender={[style, amount, currency]}
createOrder={(
data: Record,
- actions: CreateOrderBraintreeActions
+ actions: CreateOrderBraintreeActions,
) =>
actions.braintree
.createPayment({
@@ -198,7 +198,7 @@ export const Default: FC = ({
}
onApprove={(
data: OnApproveBraintreeData,
- actions: OnApproveBraintreeActions
+ actions: OnApproveBraintreeActions,
) =>
actions.braintree.tokenizePayment(data).then((payload) => {
approveSale(payload.nonce, amount).then((data) => {
@@ -272,7 +272,7 @@ export const BillingAgreement: FC = ({
),
@@ -285,7 +285,7 @@ export const BillingAgreement: FC = ({
),
diff --git a/packages/react-paypal-js/src/stories/commons.tsx b/packages/react-paypal-js/src/stories/commons.tsx
index 9a9ab4ad..c81e3b43 100644
--- a/packages/react-paypal-js/src/stories/commons.tsx
+++ b/packages/react-paypal-js/src/stories/commons.tsx
@@ -20,7 +20,7 @@ export const defaultProps = {
},
onClick(): void {
action("button")(
- "Click event dispatch from the the PayPal payment button"
+ "Click event dispatch from the the PayPal payment button",
);
},
onError(err: Record): void {
diff --git a/packages/react-paypal-js/src/stories/components/CopyButton.tsx b/packages/react-paypal-js/src/stories/components/CopyButton.tsx
index bf3cab3d..e71a4c9b 100644
--- a/packages/react-paypal-js/src/stories/components/CopyButton.tsx
+++ b/packages/react-paypal-js/src/stories/components/CopyButton.tsx
@@ -2,13 +2,10 @@ import React, { useState } from "react";
import { useSandpack } from "@codesandbox/sandpack-react";
import type { ReactElement } from "react";
-import type {
- FontWeightProperty,
- FloatProperty,
- PositionProperty,
-} from "csstype/index";
-const COPY_BUTTON = {
+import type { Properties as CSSProperties} from "csstype";
+
+const COPY_BUTTON: CSSProperties = {
padding: "4px 10px",
cursor: "pointer",
display: "flex",
@@ -17,11 +14,11 @@ const COPY_BUTTON = {
background: "#FFFFFF",
fontSize: "12px",
lineHeight: "16px",
- fontWeight: "700" as FontWeightProperty,
+ fontWeight: "700",
border: "1px solid rgba(0,0,0,.1)",
borderRadius: "4px 0 0 0",
- float: "right" as FloatProperty,
- position: "relative" as PositionProperty,
+ float: "right",
+ position: "relative",
top: "-26px",
};
diff --git a/packages/react-paypal-js/src/stories/payPalButtons/PayPalButtons.stories.tsx b/packages/react-paypal-js/src/stories/payPalButtons/PayPalButtons.stories.tsx
index e6ce4ffb..b478039f 100644
--- a/packages/react-paypal-js/src/stories/payPalButtons/PayPalButtons.stories.tsx
+++ b/packages/react-paypal-js/src/stories/payPalButtons/PayPalButtons.stories.tsx
@@ -176,12 +176,12 @@ export const Default: FC = ({
} else {
throw new Error("failed to create Order Id");
}
- }
+ },
)
}
onApprove={(data) =>
onApprove(data).then((orderData) =>
- action(APPROVE)(orderData)
+ action(APPROVE)(orderData),
)
}
{...defaultProps}
@@ -210,7 +210,7 @@ export const Donate: FC> = ({
} else {
throw new Error("failed to create Order Id");
}
- }
+ },
)
}
onApprove={(data) =>
@@ -230,7 +230,7 @@ export const Donate: FC> = ({
),
@@ -244,7 +244,7 @@ export const Donate: FC> = ({
),
diff --git a/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsForm.stories.tsx b/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsForm.stories.tsx
index 530ef454..ad8c832b 100644
--- a/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsForm.stories.tsx
+++ b/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsForm.stories.tsx
@@ -134,7 +134,7 @@ export const Default: FC = () => {
function onApprove(data: CardFieldsOnApproveData) {
action(`Received ${ORDER_ID}`)(data.orderID);
action(CAPTURE_ORDER)(
- `Sending ${ORDER_ID} to custom endpoint to capture the payment information`
+ `Sending ${ORDER_ID} to custom endpoint to capture the payment information`,
);
fetch(CAPTURE_ORDER_URL, {
method: "POST",
diff --git a/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsIndividual.stories.tsx b/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsIndividual.stories.tsx
index 322696ed..007a6cb5 100644
--- a/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsIndividual.stories.tsx
+++ b/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsIndividual.stories.tsx
@@ -256,7 +256,7 @@ export const Default: FC = () => {
function onApprove(data: CardFieldsOnApproveData) {
action(`Received ${ORDER_ID}`)(data.orderID);
action(CAPTURE_ORDER)(
- `Sending ${ORDER_ID} to custom endpoint to capture the payment information`
+ `Sending ${ORDER_ID} to custom endpoint to capture the payment information`,
);
fetch(CAPTURE_ORDER_URL, {
method: "POST",
diff --git a/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsProvider.stories.tsx b/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsProvider.stories.tsx
index 9b5f2e21..5b1c7e35 100644
--- a/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsProvider.stories.tsx
+++ b/packages/react-paypal-js/src/stories/payPalCardFields/payPalCardFieldsProvider.stories.tsx
@@ -279,7 +279,7 @@ export const Default: FC = () => {
function onApprove(data: CardFieldsOnApproveData) {
action(`Received ${ORDER_ID}`)(data.orderID);
action(CAPTURE_ORDER)(
- `Sending ${ORDER_ID} to custom endpoint to capture the payment information`
+ `Sending ${ORDER_ID} to custom endpoint to capture the payment information`,
);
fetch(CAPTURE_ORDER_URL, {
method: "POST",
diff --git a/packages/react-paypal-js/src/stories/payPalCardFields/usePayPalCardFields.stories.tsx b/packages/react-paypal-js/src/stories/payPalCardFields/usePayPalCardFields.stories.tsx
index 46e553a1..6ac3cbaf 100644
--- a/packages/react-paypal-js/src/stories/payPalCardFields/usePayPalCardFields.stories.tsx
+++ b/packages/react-paypal-js/src/stories/payPalCardFields/usePayPalCardFields.stories.tsx
@@ -252,7 +252,7 @@ export const Default: FC = () => {
function onApprove(data: CardFieldsOnApproveData) {
action(`Received ${ORDER_ID}`)(data.orderID);
action(CAPTURE_ORDER)(
- `Sending ${ORDER_ID} to custom endpoint to capture the payment information`
+ `Sending ${ORDER_ID} to custom endpoint to capture the payment information`,
);
fetch(CAPTURE_ORDER_URL, {
method: "POST",
diff --git a/packages/react-paypal-js/src/stories/payPalHostedFields/PayPalHostedFields.stories.tsx b/packages/react-paypal-js/src/stories/payPalHostedFields/PayPalHostedFields.stories.tsx
index f4c90c30..26316c9d 100644
--- a/packages/react-paypal-js/src/stories/payPalHostedFields/PayPalHostedFields.stories.tsx
+++ b/packages/react-paypal-js/src/stories/payPalHostedFields/PayPalHostedFields.stories.tsx
@@ -69,7 +69,7 @@ const SubmitPayment = ({ customStyle }: { customStyle?: CSSProperties }) => {
}
const isFormInvalid =
Object.values(hostedField.cardFields.getState().fields).some(
- (field) => !field.isValid
+ (field) => !field.isValid,
) || !cardHolderName?.current?.value;
if (isFormInvalid) {
@@ -84,7 +84,7 @@ const SubmitPayment = ({ customStyle }: { customStyle?: CSSProperties }) => {
.then((data) => {
action(`Received ${ORDER_ID}`)(data.orderId);
action(CAPTURE_ORDER)(
- `Sending ${ORDER_ID} to custom endpoint to capture the payment information`
+ `Sending ${ORDER_ID} to custom endpoint to capture the payment information`,
);
fetch(CAPTURE_ORDER_URL, {
method: "POST",
@@ -248,7 +248,7 @@ export const Default: FC = ({ amount, styles, style }) => {
{
action(CREATE_ORDER)(
- "Start creating the order in custom endpoint"
+ "Start creating the order in custom endpoint",
);
return fetch(CREATE_ORDER_URL, {
method: "POST",
@@ -410,7 +410,7 @@ export const ExpirationDate: FC<{ amount: string }> = ({ amount }) => {
),
@@ -427,7 +427,7 @@ export const ExpirationDate: FC<{ amount: string }> = ({ amount }) => {
),
diff --git a/packages/react-paypal-js/src/stories/payPalHostedFields/PayPalHostedFieldsProvider.stories.tsx b/packages/react-paypal-js/src/stories/payPalHostedFields/PayPalHostedFieldsProvider.stories.tsx
index ad01777b..356f0ed8 100644
--- a/packages/react-paypal-js/src/stories/payPalHostedFields/PayPalHostedFieldsProvider.stories.tsx
+++ b/packages/react-paypal-js/src/stories/payPalHostedFields/PayPalHostedFieldsProvider.stories.tsx
@@ -71,7 +71,7 @@ export default {
context={context}
code={getDefaultCode(
context.getStoryContext(context.storyById(context.id))
- .args.styles
+ .args.styles,
)}
/>
),
diff --git a/packages/react-paypal-js/src/stories/payPalHostedFields/codeHostedFields.ts b/packages/react-paypal-js/src/stories/payPalHostedFields/codeHostedFields.ts
index f288d2d3..9ee267fb 100644
--- a/packages/react-paypal-js/src/stories/payPalHostedFields/codeHostedFields.ts
+++ b/packages/react-paypal-js/src/stories/payPalHostedFields/codeHostedFields.ts
@@ -111,7 +111,7 @@ const getCode = (
customCardNameField,
expirationDateFieldType,
}: { expirationDateFieldType: string; customCardNameField: string },
- args: Args
+ args: Args,
): string =>
`import { useState, useEffect, useRef } from "react";
import {
@@ -268,7 +268,7 @@ export const getDefaultCode = (args: Args): string =>
customCardNameField: CUSTOM_INPUT_WITH_LABEL,
expirationDateFieldType: EXPIRATION_DATE_SINGLE_FIELD,
},
- args
+ args,
);
export const getExpirationDateCode = (args: Args): string =>
getCode(
@@ -276,5 +276,5 @@ export const getExpirationDateCode = (args: Args): string =>
customCardNameField: CUSTOM_INPUT,
expirationDateFieldType: EXPIRATION_DATE_MULTI_FIELD,
},
- args
+ args,
);
diff --git a/packages/react-paypal-js/src/stories/payPalMarks/PayPalMarks.stories.tsx b/packages/react-paypal-js/src/stories/payPalMarks/PayPalMarks.stories.tsx
index c528202c..8ec96962 100644
--- a/packages/react-paypal-js/src/stories/payPalMarks/PayPalMarks.stories.tsx
+++ b/packages/react-paypal-js/src/stories/payPalMarks/PayPalMarks.stories.tsx
@@ -79,7 +79,7 @@ export const RadioButtons: FC<{
style: PayPalButtonsComponentOptions["style"];
}> = ({ style }) => {
const [selectedFundingSource, setSelectedFundingSource] = useState(
- fundingSources[0]
+ fundingSources[0],
);
function onChange(event: ChangeEvent) {
@@ -118,12 +118,12 @@ export const RadioButtons: FC<{
} else {
throw new Error("failed to create Order Id");
}
- }
+ },
)
}
onApprove={(data) =>
onApprove(data).then((orderData) =>
- action(APPROVE)(orderData)
+ action(APPROVE)(orderData),
)
}
{...defaultProps}
@@ -144,7 +144,7 @@ export const RadioButtons: FC<{
context={context}
code={getDefaultCode(
context.getStoryContext(context.storyById(context.id)).args
- .fundingSource
+ .fundingSource,
)}
/>
),
@@ -161,7 +161,7 @@ export const RadioButtons: FC<{
),
diff --git a/packages/react-paypal-js/src/stories/payPalScriptProvider/PayPalScriptProvider.stories.tsx b/packages/react-paypal-js/src/stories/payPalScriptProvider/PayPalScriptProvider.stories.tsx
index 8318966a..f3b76cdf 100644
--- a/packages/react-paypal-js/src/stories/payPalScriptProvider/PayPalScriptProvider.stories.tsx
+++ b/packages/react-paypal-js/src/stories/payPalScriptProvider/PayPalScriptProvider.stories.tsx
@@ -70,7 +70,7 @@ function PrintLoadingState(): ReactElement | null {
if (isInitial) {
action("isInitial")(
- "The sdk script has not been loaded yet. It has been deferred."
+ "The sdk script has not been loaded yet. It has been deferred.",
);
} else if (isPending) {
action("isPending")("The sdk script is loading.");
@@ -78,7 +78,7 @@ function PrintLoadingState(): ReactElement | null {
action("isResolved")("The sdk script has successfully loaded.");
} else if (isRejected) {
action("isResolved")(
- "Something went wrong. The sdk script failed to load."
+ "Something went wrong. The sdk script failed to load.",
);
}
@@ -135,7 +135,7 @@ export const Default: FC<{ deferLoading: boolean }> = ({ deferLoading }) => {
context={context}
code={getDefaultCode(
context.getStoryContext(context.storyById(context.id)).args
- .deferLoading
+ .deferLoading,
)}
/>
),
diff --git a/packages/react-paypal-js/src/stories/subscriptions/Subscriptions.stories.tsx b/packages/react-paypal-js/src/stories/subscriptions/Subscriptions.stories.tsx
index 1cac2259..461c2093 100644
--- a/packages/react-paypal-js/src/stories/subscriptions/Subscriptions.stories.tsx
+++ b/packages/react-paypal-js/src/stories/subscriptions/Subscriptions.stories.tsx
@@ -41,7 +41,7 @@ const subscriptionOptions: PayPalScriptOptions = {
const buttonSubscriptionProps = {
createSubscription(
data: Record,
- actions: CreateSubscriptionActions
+ actions: CreateSubscriptionActions,
) {
return actions.subscription
.create({
@@ -186,7 +186,7 @@ export const Default: FC<{ type: string }> = ({ type }) => {
context={context}
code={getDefaultCode(
context.getStoryContext(context.storyById(context.id)).args
- .type
+ .type,
)}
/>
),
diff --git a/packages/react-paypal-js/src/stories/utils.ts b/packages/react-paypal-js/src/stories/utils.ts
index 136766a1..bdf6ea9a 100644
--- a/packages/react-paypal-js/src/stories/utils.ts
+++ b/packages/react-paypal-js/src/stories/utils.ts
@@ -17,7 +17,7 @@ export const CAPTURE_ORDER_URL = `${FLY_SERVER}/api/paypal/capture-order`;
const CLIENT_TOKEN_URL = `${FLY_SERVER}/api/braintree/generate-client-token`;
const SALE_URL = `${FLY_SERVER}/api/braintree/sale`;
const allowedSDKQueryParams = Object.keys(SDK_QUERY_KEYS).map(
- (key) => SDK_QUERY_KEYS[key]
+ (key) => SDK_QUERY_KEYS[key],
);
// paypal-js supports the sdkBaseURL param for testing in lower environments
@@ -46,7 +46,7 @@ export async function getClientToken(url = CLIENT_TOKEN_URL): Promise {
export async function approveSale(
nonce: string,
- amount: string
+ amount: string,
): Promise {
return await (
await fetch(SALE_URL, {
@@ -81,7 +81,7 @@ export function generateFundingSource(fundingSource?: string): string {
}
export function createOrder(
- cart: { sku: string; quantity: number }[]
+ cart: { sku: string; quantity: number }[],
): Promise {
return fetch(CREATE_ORDER_URL, {
method: "POST",
diff --git a/packages/react-paypal-js/src/stories/venmo/VenmoButton.stories.tsx b/packages/react-paypal-js/src/stories/venmo/VenmoButton.stories.tsx
index 1cc01c9b..6e483583 100644
--- a/packages/react-paypal-js/src/stories/venmo/VenmoButton.stories.tsx
+++ b/packages/react-paypal-js/src/stories/venmo/VenmoButton.stories.tsx
@@ -126,7 +126,7 @@ export const Default: FC<{
context={context}
code={getDefaultCode(
context.getStoryContext(context.storyById(context.id)).args
- .style
+ .style,
)}
/>
),
diff --git a/packages/react-paypal-js/src/types/braintree/clientTypes.ts b/packages/react-paypal-js/src/types/braintree/clientTypes.ts
index ed629c77..88b0ae1c 100644
--- a/packages/react-paypal-js/src/types/braintree/clientTypes.ts
+++ b/packages/react-paypal-js/src/types/braintree/clientTypes.ts
@@ -86,7 +86,7 @@ export interface BraintreeClient {
data: unknown;
timeout?: number | undefined;
},
- callback: BraintreeCallback
+ callback: BraintreeCallback,
): void;
/**
diff --git a/packages/react-paypal-js/src/types/braintree/commonsTypes.ts b/packages/react-paypal-js/src/types/braintree/commonsTypes.ts
index 6c1ca23d..7d885d42 100644
--- a/packages/react-paypal-js/src/types/braintree/commonsTypes.ts
+++ b/packages/react-paypal-js/src/types/braintree/commonsTypes.ts
@@ -1,6 +1,6 @@
export type BraintreeCallback = (
err?: BraintreeError,
- data?: T
+ data?: T,
) => void;
export interface BraintreeError {
/**
diff --git a/packages/react-paypal-js/src/types/braintree/paypalCheckout.ts b/packages/react-paypal-js/src/types/braintree/paypalCheckout.ts
index b1deeafd..5250be83 100644
--- a/packages/react-paypal-js/src/types/braintree/paypalCheckout.ts
+++ b/packages/react-paypal-js/src/types/braintree/paypalCheckout.ts
@@ -223,7 +223,7 @@ export interface BraintreePayPalCheckout {
*/
createPayment(
options: BraintreePayPalCheckoutCreatePaymentOptions,
- callback?: BraintreeCallback
+ callback?: BraintreeCallback,
): Promise;
/**
@@ -249,7 +249,7 @@ export interface BraintreePayPalCheckout {
*
*/
tokenizePayment(
- tokenizeOptions: BraintreePayPalCheckoutTokenizationOptions
+ tokenizeOptions: BraintreePayPalCheckoutTokenizationOptions,
): Promise;
/**
diff --git a/packages/react-paypal-js/src/types/braintreePayPalButtonTypes.ts b/packages/react-paypal-js/src/types/braintreePayPalButtonTypes.ts
index 39d4cbc6..1e825e3b 100644
--- a/packages/react-paypal-js/src/types/braintreePayPalButtonTypes.ts
+++ b/packages/react-paypal-js/src/types/braintreePayPalButtonTypes.ts
@@ -33,21 +33,21 @@ export interface BraintreePayPalButtonsComponentProps
*/
createOrder?: (
data: Record,
- actions: CreateOrderBraintreeActions
+ actions: CreateOrderBraintreeActions,
) => Promise;
/**
* The createBillingAgreement actions include the Braintree SDK paypalCheckoutInstance as `actions.braintree`
*/
createBillingAgreement?: (
data: Record,
- actions: CreateBillingAgreementActions
+ actions: CreateBillingAgreementActions,
) => Promise;
/**
* The onApprove actions include the Braintree SDK paypalCheckoutInstance as `actions.braintree`
*/
onApprove?: (
data: OnApproveBraintreeData,
- actions: OnApproveBraintreeActions
+ actions: OnApproveBraintreeActions,
) => Promise;
/**
* An optional Braintree namespace.
diff --git a/packages/react-paypal-js/src/utils.test.ts b/packages/react-paypal-js/src/utils.test.ts
index a0b065c1..51e2f1fa 100644
--- a/packages/react-paypal-js/src/utils.test.ts
+++ b/packages/react-paypal-js/src/utils.test.ts
@@ -21,7 +21,7 @@ describe("generateErrorMessage", () => {
sdkComponentKey: "example",
sdkRequestedComponents: ["hosted-fields"],
sdkDataNamespace: "customNamespace",
- })
+ }),
).toBe(errorMessage);
});
test("sdkRequestedComponents as a string", () => {
@@ -31,7 +31,7 @@ describe("generateErrorMessage", () => {
sdkComponentKey: "example",
sdkRequestedComponents: "hosted-fields",
sdkDataNamespace: "customNamespace",
- })
+ }),
).toBe(errorMessage);
});
});
@@ -63,7 +63,7 @@ describe("getBraintreeWindowNamespace", () => {
test("should return the paypal namespace", () => {
expect(getBraintreeWindowNamespace("braintree")).toEqual(
// eslint-disable-next-line @typescript-eslint/no-explicit-any
- (window as any).braintree
+ (window as any).braintree,
);
});
@@ -76,10 +76,10 @@ describe("hashStr", () => {
test("should match the hash from the argument string", () => {
expect(hashStr("react")).toMatchInlineSnapshot(`"xxhjw"`);
expect(hashStr("react-js.braintree")).toMatchInlineSnapshot(
- `"xxhjbzppoallaomelb"`
+ `"xxhjbzppoallaomelb"`,
);
expect(hashStr("react-js.paypal")).toMatchInlineSnapshot(
- `"xxhjbzppiqfhtje"`
+ `"xxhjbzppiqfhtje"`,
);
expect(hashStr("")).toMatchInlineSnapshot(`""`);
expect(
@@ -93,10 +93,10 @@ describe("hashStr", () => {
vault: false,
locale: "US",
[SDK_SETTINGS.DATA_NAMESPACE]: "braintree",
- })
- )
+ }),
+ ),
).toMatchInlineSnapshot(
- `"iiuovjsckceqfpltierfuadvueugmwdpyghjioombfdvqayoscllfvddtjnvtfgijdxjyablkakmjjmogakewwsybbxfiiseblauicltugxfqiistfmyeomwiyrvgkaswosisqbndhwqqmmclzswdxymqeuqwetbsehtpvnvgsvtsiscvpnvvxdxekjpwoayeofhgilfeke"`
+ `"iiuovjsckceqfpltierfuadvueugmwdpyghjioombfdvqayoscllfvddtjnvtfgijdxjyablkakmjjmogakewwsybbxfiiseblauicltugxfqiistfmyeomwiyrvgkaswosisqbndhwqqmmclzswdxymqeuqwetbsehtpvnvgsvtsiscvpnvvxdxekjpwoayeofhgilfeke"`,
);
});
});
diff --git a/packages/react-paypal-js/src/utils.ts b/packages/react-paypal-js/src/utils.ts
index df9feb6f..d6f52b7d 100644
--- a/packages/react-paypal-js/src/utils.ts
+++ b/packages/react-paypal-js/src/utils.ts
@@ -22,7 +22,7 @@ type ErrorMessageParams = {
* @returns the namespace if exists or undefined otherwise
*/
export function getPayPalWindowNamespace(
- namespace: string = DEFAULT_PAYPAL_NAMESPACE
+ namespace: string = DEFAULT_PAYPAL_NAMESPACE,
): PayPalNamespace {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
return (window as any)[namespace];
@@ -37,7 +37,7 @@ export function getPayPalWindowNamespace(
* @returns the namespace if exists or undefined otherwise
*/
export function getBraintreeWindowNamespace(
- namespace: string = DEFAULT_BRAINTREE_NAMESPACE
+ namespace: string = DEFAULT_BRAINTREE_NAMESPACE,
): BraintreeNamespace {
// eslint-disable-next-line @typescript-eslint/no-explicit-any
return (window as any)[namespace];
diff --git a/packages/react-paypal-js/tsconfig.json b/packages/react-paypal-js/tsconfig.json
index cc8492b2..b5222a38 100644
--- a/packages/react-paypal-js/tsconfig.json
+++ b/packages/react-paypal-js/tsconfig.json
@@ -9,6 +9,7 @@
"moduleResolution": "node",
"target": "esnext",
"strict": true,
+ "skipLibCheck": true,
// these are overridden by the Rollup plugin
"outDir": "./dist",