From ed6d272a6abaa015f9122edfbe5e389fa5222dbc Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Wed, 11 Feb 2026 00:32:11 +0000 Subject: [PATCH 01/14] chore: add pre-commit configuration and CI --- .github/workflows/linter.yml | 17 +++++++++++++++++ .pre-commit-config.yaml | 28 ++++++++++++++++++++++++++++ 2 files changed, 45 insertions(+) create mode 100644 .github/workflows/linter.yml create mode 100644 .pre-commit-config.yaml diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml new file mode 100644 index 0000000..317d0c5 --- /dev/null +++ b/.github/workflows/linter.yml @@ -0,0 +1,17 @@ +name: Lint + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + pre-commit: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - uses: actions/setup-python@v5 + with: + python-version: '3.x' + - uses: pre-commit/action@v3.0.1 diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml new file mode 100644 index 0000000..b2eba3c --- /dev/null +++ b/.pre-commit-config.yaml @@ -0,0 +1,28 @@ +exclude: '^(\.github/|\.vscode/|node_modules/).*|CODE_OF_CONDUCT\.md|CHANGELOG\.md' + +repos: +- repo: https://github.com/pre-commit/pre-commit-hooks + rev: v6.0.0 + hooks: + - id: trailing-whitespace + - id: end-of-file-fixer + - id: check-yaml + args: [--unsafe] + - id: check-json + - id: check-added-large-files + - id: check-shebang-scripts-are-executable + - id: check-executables-have-shebangs +- repo: https://github.com/pre-commit/mirrors-prettier + rev: v4.0.0-alpha.8 + hooks: + - id: prettier + files: \.(ts|js|json|md|yaml|yml|html)$ +- repo: https://github.com/koalaman/shellcheck-precommit + rev: v0.10.0 + hooks: + - id: shellcheck +- repo: https://github.com/codespell-project/codespell + rev: v2.4.1 + hooks: + - id: codespell + args: ["--skip", "package-lock.json"] From 7a62cc83e684d87e96d5da6fa5e5e340c7fde016 Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Wed, 11 Feb 2026 01:51:48 +0000 Subject: [PATCH 02/14] style: apply pre-commit fixes --- .../7980920cef7bcb01c6c40d14ecb8210d61324b96.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 node_modules/.cache/prettier/.prettier-caches/7980920cef7bcb01c6c40d14ecb8210d61324b96.json diff --git a/node_modules/.cache/prettier/.prettier-caches/7980920cef7bcb01c6c40d14ecb8210d61324b96.json b/node_modules/.cache/prettier/.prettier-caches/7980920cef7bcb01c6c40d14ecb8210d61324b96.json new file mode 100644 index 0000000..9c65ff0 --- /dev/null +++ b/node_modules/.cache/prettier/.prettier-caches/7980920cef7bcb01c6c40d14ecb8210d61324b96.json @@ -0,0 +1 @@ +{"1d7b620d4732f62f2827a8097c96a5f75348f423":{"files":{".pre-commit-config.yaml":["7t3+u8f+fp08vvhF2vfE9s/eP48=",true],"tsconfig.esm.json":["x6VqE/q1p0F8Zqlqs9ihZbS2b3o=",true],"tsconfig.json":["VekWL9651UXrL/rt8bnc4akm0Pk=",true],"src/spec_generated.ts":["wF1IMshF8lJPQMHFBw6uSX4YSvg=",true],"package.json":["1521FLas/XIsv5z6J35ymbjFup4=",true],"tsconfig.cjs.json":["cWyhMF6sKzAD6a96ONo1cgVqF6M=",true],".github/workflows/linter.yml":["JxrUe7YlVMVii2MxFcdWHUS/UrY=",true],"src/extensions.ts":["Bh13t/fLS2vEc8GkPgthigs7KQE=",true]},"modified":1770770824633}} \ No newline at end of file From c114c6e49a82cac3cb53811edb439bf0c5dbb5d1 Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Wed, 11 Feb 2026 02:48:00 +0000 Subject: [PATCH 03/14] chore: remove accidental node_modules tracking --- .../7980920cef7bcb01c6c40d14ecb8210d61324b96.json | 1 - 1 file changed, 1 deletion(-) delete mode 100644 node_modules/.cache/prettier/.prettier-caches/7980920cef7bcb01c6c40d14ecb8210d61324b96.json diff --git a/node_modules/.cache/prettier/.prettier-caches/7980920cef7bcb01c6c40d14ecb8210d61324b96.json b/node_modules/.cache/prettier/.prettier-caches/7980920cef7bcb01c6c40d14ecb8210d61324b96.json deleted file mode 100644 index 9c65ff0..0000000 --- a/node_modules/.cache/prettier/.prettier-caches/7980920cef7bcb01c6c40d14ecb8210d61324b96.json +++ /dev/null @@ -1 +0,0 @@ -{"1d7b620d4732f62f2827a8097c96a5f75348f423":{"files":{".pre-commit-config.yaml":["7t3+u8f+fp08vvhF2vfE9s/eP48=",true],"tsconfig.esm.json":["x6VqE/q1p0F8Zqlqs9ihZbS2b3o=",true],"tsconfig.json":["VekWL9651UXrL/rt8bnc4akm0Pk=",true],"src/spec_generated.ts":["wF1IMshF8lJPQMHFBw6uSX4YSvg=",true],"package.json":["1521FLas/XIsv5z6J35ymbjFup4=",true],"tsconfig.cjs.json":["cWyhMF6sKzAD6a96ONo1cgVqF6M=",true],".github/workflows/linter.yml":["JxrUe7YlVMVii2MxFcdWHUS/UrY=",true],"src/extensions.ts":["Bh13t/fLS2vEc8GkPgthigs7KQE=",true]},"modified":1770770824633}} \ No newline at end of file From c2027b8ac753694180f56ca634c131410bccc690 Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Wed, 11 Feb 2026 05:10:24 +0000 Subject: [PATCH 04/14] chore: add license headers to config files --- .github/workflows/linter.yml | 14 +++ .gitignore | 215 +++++++++++++++++++++++++++++++++++ .pre-commit-config.yaml | 14 +++ 3 files changed, 243 insertions(+) create mode 100644 .gitignore diff --git a/.github/workflows/linter.yml b/.github/workflows/linter.yml index 317d0c5..102b38d 100644 --- a/.github/workflows/linter.yml +++ b/.github/workflows/linter.yml @@ -1,3 +1,17 @@ +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + name: Lint on: diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..6eff34c --- /dev/null +++ b/.gitignore @@ -0,0 +1,215 @@ +# Generated schema variants (legacy, no longer used) +# Published schemas come from source/ with annotations intact +/spec/ + +# Byte-compiled / optimized / DLL files +__pycache__/ +*.py[cod] +*.pyc +*$py.class +**/dist +/tmp +/out-tsc +/bazel-out + +# C extensions +*.so + +# Distribution / packaging +.Python +build/ +develop-eggs/ +dist/ +downloads/ +eggs/ +.eggs/ +lib/ +lib64/ +parts/ +sdist/ +var/ +wheels/ +pip-wheel-metadata/ +share/python-wheels/ +*.egg-info/ +.installed.cfg +*.egg +MANIFEST + +# PyInstaller +# Usually these files are written by a python script from a template +# before PyInstaller builds the exe, so as to inject date/other infos into it. +*.manifest +*.spec + +# Installer logs +pip-log.txt +pip-delete-this-directory.txt + +# Unit test / coverage reports +htmlcov/ +.tox/ +.nox/ +.coverage +.coverage.* +.cache +nosetests.xml +coverage.xml +*.cover +*.py,cover +.hypothesis/ +.pytest_cache/ + +# Translations +*.mo +*.pot + +# Django stuff: +*.log +local_settings.py +db.sqlite3 +db.sqlite3-journal + +# Flask stuff: +instance/ +.webassets-cache + +# Scrapy stuff: +.scrapy + +# Sphinx documentation +docs/_build/ + +# PyBuilder +target/ + +# Jupyter Notebook +.ipynb_checkpoints + +# IPython +profile_default/ +ipython_config.py + +# pyenv +.python-version + +# pipenv +# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. +# However, in case of collaboration, if having platform-specific dependencies or dependencies +# having no cross-platform support, pipenv may install dependencies that don't work, or not +# install all needed dependencies. +Pipfile.lock +Pipfile + +# PEP 582; used by e.g. github.com/David-OConnor/pyflow +__pypackages__/ + +# Celery stuff +celerybeat-schedule +celerybeat.pid + +# SageMath parsed files +*.sage.py + +# Environments +.env +.venv +.venv* +env/ +venv/ +ENV/ +env.bak/ +venv.bak/ + +# Spyder project settings +.spyderproject +.spyproject + +# Rope project settings +.ropeproject + +# mkdocs documentation +/site + +# mypy +.mypy_cache/ +.dmypy.json +dmypy.json +.ruff_cache/ + +# Pyre type checker +.pyre/ + +# macOS +.DS_Store + +# PyCharm +.idea + +# User-specific files +language/examples/prompt-design/train.csv +README-TOC*.md + +# Terraform +terraform.tfstate** +.terraform* +.Terraform* + +tmp* + +# Node +**/node_modules +npm-debug.log +yarn-error.log + +# IDEs and editors +.idea/ +.project +.classpath +.c9/ +*.launch +.settings/ +*.sublime-workspace +*.code-workspace + +# Miscellaneous +**/.angular/* +/.angular/cache +.sass-cache/ +/connect.lock +/coverage +/libpeerconnection.log +testem.log +/typings + +# System files +Thumbs.db + +.logs/ + +### Gradle ### +.gradle +**/build/ +!src/**/build/ + +# Ignore Gradle GUI config +gradle-app.setting + +# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) +!gradle-wrapper.jar + +# Avoid ignore Gradle wrapper properties +!gradle-wrapper.properties + +# Cache of project +.gradletasknamecache + +# Eclipse Gradle plugin generated files +# Eclipse Core +.project +# JDT-specific (Eclipse Java Development Tools) +.classpath + +### Gradle Patch ### +# Java heap dump +*.hprof diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index b2eba3c..a75268a 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -1,3 +1,17 @@ +# Copyright 2026 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# http://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + exclude: '^(\.github/|\.vscode/|node_modules/).*|CODE_OF_CONDUCT\.md|CHANGELOG\.md' repos: From e30e1e5ba2c5fd3315ab5110e067aa978b6828b7 Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Tue, 17 Feb 2026 21:24:34 +0000 Subject: [PATCH 05/14] chore: fix pre-commit issues --- .pre-commit-config.yaml | 28 ++++++++++++++-------------- 1 file changed, 14 insertions(+), 14 deletions(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index a75268a..af4035c 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -15,28 +15,28 @@ exclude: '^(\.github/|\.vscode/|node_modules/).*|CODE_OF_CONDUCT\.md|CHANGELOG\.md' repos: -- repo: https://github.com/pre-commit/pre-commit-hooks + - repo: https://github.com/pre-commit/pre-commit-hooks rev: v6.0.0 hooks: - - id: trailing-whitespace - - id: end-of-file-fixer - - id: check-yaml + - id: trailing-whitespace + - id: end-of-file-fixer + - id: check-yaml args: [--unsafe] - - id: check-json - - id: check-added-large-files - - id: check-shebang-scripts-are-executable - - id: check-executables-have-shebangs -- repo: https://github.com/pre-commit/mirrors-prettier + - id: check-json + - id: check-added-large-files + - id: check-shebang-scripts-are-executable + - id: check-executables-have-shebangs + - repo: https://github.com/pre-commit/mirrors-prettier rev: v4.0.0-alpha.8 hooks: - - id: prettier + - id: prettier files: \.(ts|js|json|md|yaml|yml|html)$ -- repo: https://github.com/koalaman/shellcheck-precommit + - repo: https://github.com/koalaman/shellcheck-precommit rev: v0.10.0 hooks: - - id: shellcheck -- repo: https://github.com/codespell-project/codespell + - id: shellcheck + - repo: https://github.com/codespell-project/codespell rev: v2.4.1 hooks: - - id: codespell + - id: codespell args: ["--skip", "package-lock.json"] From a08003b0813f84ff517f1e7b4aadd96dcddb87ed Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Sat, 21 Feb 2026 03:11:15 +0000 Subject: [PATCH 06/14] chore: clean up .gitignore and remove irrelevant boilerplate --- .gitignore | 215 +---------------------------------------------------- 1 file changed, 2 insertions(+), 213 deletions(-) diff --git a/.gitignore b/.gitignore index 6eff34c..9451024 100644 --- a/.gitignore +++ b/.gitignore @@ -1,215 +1,4 @@ -# Generated schema variants (legacy, no longer used) -# Published schemas come from source/ with annotations intact -/spec/ - -# Byte-compiled / optimized / DLL files -__pycache__/ -*.py[cod] -*.pyc -*$py.class -**/dist -/tmp -/out-tsc -/bazel-out - -# C extensions -*.so - -# Distribution / packaging -.Python -build/ -develop-eggs/ +node_modules/ dist/ -downloads/ -eggs/ -.eggs/ -lib/ -lib64/ -parts/ -sdist/ -var/ -wheels/ -pip-wheel-metadata/ -share/python-wheels/ -*.egg-info/ -.installed.cfg -*.egg -MANIFEST - -# PyInstaller -# Usually these files are written by a python script from a template -# before PyInstaller builds the exe, so as to inject date/other infos into it. -*.manifest -*.spec - -# Installer logs -pip-log.txt -pip-delete-this-directory.txt - -# Unit test / coverage reports -htmlcov/ -.tox/ -.nox/ -.coverage -.coverage.* -.cache -nosetests.xml -coverage.xml -*.cover -*.py,cover -.hypothesis/ -.pytest_cache/ - -# Translations -*.mo -*.pot - -# Django stuff: -*.log -local_settings.py -db.sqlite3 -db.sqlite3-journal - -# Flask stuff: -instance/ -.webassets-cache - -# Scrapy stuff: -.scrapy - -# Sphinx documentation -docs/_build/ - -# PyBuilder -target/ - -# Jupyter Notebook -.ipynb_checkpoints - -# IPython -profile_default/ -ipython_config.py - -# pyenv -.python-version - -# pipenv -# According to pypa/pipenv#598, it is recommended to include Pipfile.lock in version control. -# However, in case of collaboration, if having platform-specific dependencies or dependencies -# having no cross-platform support, pipenv may install dependencies that don't work, or not -# install all needed dependencies. -Pipfile.lock -Pipfile - -# PEP 582; used by e.g. github.com/David-OConnor/pyflow -__pypackages__/ - -# Celery stuff -celerybeat-schedule -celerybeat.pid - -# SageMath parsed files -*.sage.py - -# Environments -.env -.venv -.venv* -env/ -venv/ -ENV/ -env.bak/ -venv.bak/ - -# Spyder project settings -.spyderproject -.spyproject - -# Rope project settings -.ropeproject - -# mkdocs documentation -/site - -# mypy -.mypy_cache/ -.dmypy.json -dmypy.json -.ruff_cache/ - -# Pyre type checker -.pyre/ - -# macOS .DS_Store - -# PyCharm -.idea - -# User-specific files -language/examples/prompt-design/train.csv -README-TOC*.md - -# Terraform -terraform.tfstate** -.terraform* -.Terraform* - -tmp* - -# Node -**/node_modules -npm-debug.log -yarn-error.log - -# IDEs and editors -.idea/ -.project -.classpath -.c9/ -*.launch -.settings/ -*.sublime-workspace -*.code-workspace - -# Miscellaneous -**/.angular/* -/.angular/cache -.sass-cache/ -/connect.lock -/coverage -/libpeerconnection.log -testem.log -/typings - -# System files -Thumbs.db - -.logs/ - -### Gradle ### -.gradle -**/build/ -!src/**/build/ - -# Ignore Gradle GUI config -gradle-app.setting - -# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored) -!gradle-wrapper.jar - -# Avoid ignore Gradle wrapper properties -!gradle-wrapper.properties - -# Cache of project -.gradletasknamecache - -# Eclipse Gradle plugin generated files -# Eclipse Core -.project -# JDT-specific (Eclipse Java Development Tools) -.classpath - -### Gradle Patch ### -# Java heap dump -*.hprof +*.log From fb57b30e2ec79d1dc5b992d0fe11be2bc91fe199 Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Sun, 22 Feb 2026 17:53:21 +0000 Subject: [PATCH 07/14] chore: add technical terms to codespell ignore list --- .pre-commit-config.yaml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index af4035c..9fa65d3 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -39,4 +39,4 @@ repos: rev: v2.4.1 hooks: - id: codespell - args: ["--skip", "package-lock.json"] + args: ["--skip", "package-lock.json", "-L", "mor,tok,fpan,dpan"] From 88cb2e7b48e12a55b5478e642c7664b3563a0bb5 Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Sun, 8 Mar 2026 08:53:15 +0000 Subject: [PATCH 08/14] chore: move codespell ignore list to separate file --- .codespellignore | 4 ++++ .pre-commit-config.yaml | 2 +- 2 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 .codespellignore diff --git a/.codespellignore b/.codespellignore new file mode 100644 index 0000000..4d75c60 --- /dev/null +++ b/.codespellignore @@ -0,0 +1,4 @@ +mor +tok +fpan +dpan diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 9fa65d3..b4f782d 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -39,4 +39,4 @@ repos: rev: v2.4.1 hooks: - id: codespell - args: ["--skip", "package-lock.json", "-L", "mor,tok,fpan,dpan"] + args: ["--skip", "package-lock.json", "-I", ".codespellignore"] From fcea7c1991a226e8cc9c7d212fdd2fa614c2200b Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Tue, 17 Mar 2026 07:39:35 +0000 Subject: [PATCH 09/14] chore: align .prettierrc with main repo config --- .prettierrc | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) create mode 100644 .prettierrc diff --git a/.prettierrc b/.prettierrc new file mode 100644 index 0000000..fb0e95d --- /dev/null +++ b/.prettierrc @@ -0,0 +1,19 @@ +{ + "tabWidth": 2, + "useTabs": false, + "trailingComma": "es5", + "bracketSameLine": true, + "overrides": [ + { + "files": "*.md", + "options": { + "tabWidth": 4, + "useTabs": false, + "trailingComma": "es5", + "endOfLine": "lf", + "printWidth": 80, + "proseWrap": "always" + } + } + ] +} From 7e824bf87464e1b3f7d34a8d2b71767d1969eb0c Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Tue, 17 Mar 2026 07:41:27 +0000 Subject: [PATCH 10/14] style: format files with prettier --- README.md | 12 ++++++++---- src/extensions.ts | 16 +++++++--------- 2 files changed, 15 insertions(+), 13 deletions(-) diff --git a/README.md b/README.md index 9fd0cc2..e060b92 100644 --- a/README.md +++ b/README.md @@ -45,10 +45,12 @@ This project uses `npm` for package management and `typescript` for building. ### Generating Models -The models are automatically generated from the JSON schemas in the [UCP -Specification](https://ucp.dev). +The models are automatically generated from the JSON schemas in the +[UCP Specification](https://ucp.dev). -To regenerate the models, you first need a local copy of the [UCP specification](https://github.com/Universal-Commerce-Protocol/ucp). If you don't have one, you can clone it via: +To regenerate the models, you first need a local copy of the +[UCP specification](https://github.com/Universal-Commerce-Protocol/ucp). If you +don't have one, you can clone it via: ```bash git clone https://github.com/Universal-Commerce-Protocol/ucp.git @@ -71,7 +73,9 @@ npm run build ## Contributing -We welcome community contributions. See our [Contribution Guide](https://github.com/Universal-Commerce-Protocol/.github/blob/main/CONTRIBUTING.md) for details. +We welcome community contributions. See our +[Contribution Guide](https://github.com/Universal-Commerce-Protocol/.github/blob/main/CONTRIBUTING.md) +for details. ## License diff --git a/src/extensions.ts b/src/extensions.ts index 42aeece..36c584f 100644 --- a/src/extensions.ts +++ b/src/extensions.ts @@ -30,7 +30,7 @@ export const PlatformConfigSchema = z.object({ export type PlatformConfig = z.infer; export const ExtendedCheckoutResponseSchema = CheckoutResponseSchema.extend( - CheckoutWithFulfillmentResponseSchema.pick({ fulfillment: true }).shape, + CheckoutWithFulfillmentResponseSchema.pick({ fulfillment: true }).shape ) .extend(CheckoutWithDiscountResponseSchema.pick({ discounts: true }).shape) .extend(CheckoutWithBuyerConsentResponseSchema.pick({ buyer: true }).shape) @@ -45,14 +45,13 @@ export type ExtendedCheckoutResponse = z.infer< export const ExtendedCheckoutCreateRequestSchema = CheckoutCreateRequestSchema.extend( - CheckoutWithFulfillmentCreateRequestSchema.pick({ fulfillment: true }) - .shape, + CheckoutWithFulfillmentCreateRequestSchema.pick({ fulfillment: true }).shape ) .extend( - CheckoutWithDiscountCreateRequestSchema.pick({ discounts: true }).shape, + CheckoutWithDiscountCreateRequestSchema.pick({ discounts: true }).shape ) .extend( - CheckoutWithBuyerConsentCreateRequestSchema.pick({ buyer: true }).shape, + CheckoutWithBuyerConsentCreateRequestSchema.pick({ buyer: true }).shape ); export type ExtendedCheckoutCreateRequest = z.infer< typeof ExtendedCheckoutCreateRequestSchema @@ -60,14 +59,13 @@ export type ExtendedCheckoutCreateRequest = z.infer< export const ExtendedCheckoutUpdateRequestSchema = CheckoutUpdateRequestSchema.extend( - CheckoutWithFulfillmentUpdateRequestSchema.pick({ fulfillment: true }) - .shape, + CheckoutWithFulfillmentUpdateRequestSchema.pick({ fulfillment: true }).shape ) .extend( - CheckoutWithDiscountUpdateRequestSchema.pick({ discounts: true }).shape, + CheckoutWithDiscountUpdateRequestSchema.pick({ discounts: true }).shape ) .extend( - CheckoutWithBuyerConsentUpdateRequestSchema.pick({ buyer: true }).shape, + CheckoutWithBuyerConsentUpdateRequestSchema.pick({ buyer: true }).shape ); export type ExtendedCheckoutUpdateRequest = z.infer< typeof ExtendedCheckoutUpdateRequestSchema From 57635f8843d480e2f03e65df9f3646daeb7e426d Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Tue, 17 Mar 2026 07:44:15 +0000 Subject: [PATCH 11/14] chore: use minimal prettier config --- .prettierrc | 18 +++--------------- 1 file changed, 3 insertions(+), 15 deletions(-) diff --git a/.prettierrc b/.prettierrc index fb0e95d..b7df515 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1,19 +1,7 @@ { "tabWidth": 2, "useTabs": false, - "trailingComma": "es5", - "bracketSameLine": true, - "overrides": [ - { - "files": "*.md", - "options": { - "tabWidth": 4, - "useTabs": false, - "trailingComma": "es5", - "endOfLine": "lf", - "printWidth": 80, - "proseWrap": "always" - } - } - ] + "trailingComma": "none", + "bracketSameLine": false, + "printWidth": 88 } From 02cdc9ba7e05902e0eff26a258a7b49424a30341 Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Tue, 17 Mar 2026 07:46:12 +0000 Subject: [PATCH 12/14] chore: align prettier config with existing code style --- .prettierrc | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/.prettierrc b/.prettierrc index b7df515..ab5a6b6 100644 --- a/.prettierrc +++ b/.prettierrc @@ -1,7 +1,8 @@ { "tabWidth": 2, "useTabs": false, - "trailingComma": "none", + "singleQuote": false, + "trailingComma": "all", "bracketSameLine": false, - "printWidth": 88 + "printWidth": 80 } From 8a72671baa52723f2a9268bf1766594187b9d9db Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Tue, 17 Mar 2026 07:47:39 +0000 Subject: [PATCH 13/14] chore: use none for trailing comma --- .prettierrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.prettierrc b/.prettierrc index ab5a6b6..c3c0dbd 100644 --- a/.prettierrc +++ b/.prettierrc @@ -2,7 +2,7 @@ "tabWidth": 2, "useTabs": false, "singleQuote": false, - "trailingComma": "all", + "trailingComma": "none", "bracketSameLine": false, "printWidth": 80 } From 94322f0acc9722307933aaf55edb16690a8566ec Mon Sep 17 00:00:00 2001 From: nearlyforget Date: Tue, 17 Mar 2026 07:49:31 +0000 Subject: [PATCH 14/14] chore: use es5 for trailing comma --- .prettierrc | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.prettierrc b/.prettierrc index c3c0dbd..a4388dd 100644 --- a/.prettierrc +++ b/.prettierrc @@ -2,7 +2,7 @@ "tabWidth": 2, "useTabs": false, "singleQuote": false, - "trailingComma": "none", + "trailingComma": "es5", "bracketSameLine": false, "printWidth": 80 }