chore: initial scaffold for @marketplaces/auth and @marketplaces/payment
Some checks failed
Release / release (push) Has been cancelled

This commit is contained in:
sdarbinyan
2026-08-18 00:38:08 +04:00
commit 5567154fb4
11 changed files with 175 additions and 0 deletions

9
.changeset/config.json Normal file
View File

@@ -0,0 +1,9 @@
{
"$schema": "https://unpkg.com/@changesets/config@3.0.0/schema.json",
"changelog": "@changesets/cli/changelog",
"commit": false,
"access": "restricted",
"baseBranch": "main",
"updateInternalDependencies": "patch",
"ignore": []
}

43
.github/workflows/release.yml vendored Normal file
View File

@@ -0,0 +1,43 @@
name: Release
on:
push:
branches:
- main
jobs:
release:
runs-on: ubuntu-latest
permissions:
contents: write
id-token: write
steps:
- name: Checkout
uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Setup Node
uses: actions/setup-node@v4
with:
node-version: 20
cache: npm
registry-url: https://registry.npmjs.org
- name: Install dependencies
run: npm ci
- name: Build
run: npm run build
- name: Test
run: npm test
- name: Create release PR or publish
uses: changesets/action@v1
with:
version: npm run version
publish: npm run release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}

3
.gitignore vendored Normal file
View File

@@ -0,0 +1,3 @@
node_modules/
packages/*/dist
*.log

21
README.md Normal file
View File

@@ -0,0 +1,21 @@
# vitanovaPackages
Shared `@marketplaces/auth` and `@marketplaces/payment` client packages, consumed by `marketplaces` and other projects as npm dependencies. Extracted per ADR-0001 (see the `marketplaces` repo: `docs/context/adrs/ADR-0001-extract-auth-and-payment-into-shared-marketplaces-packages.md`).
## Layout
npm workspaces monorepo:
- `packages/auth` — customer + admin auth client
- `packages/payment` — payment/finance client (thin — business logic stays backend)
## Versioning & release
[Changesets](https://github.com/changesets/changesets): `npm run changeset` to record an intended bump per PR, `.github/workflows/release.yml` opens a version PR on push to `main` and publishes on merge.
`.github/workflows/release.yml` is written as GitHub Actions — if this host runs Gitea/Forgejo Actions the syntax is compatible; for Drone/Woodpecker or another CI it needs translating (same three steps: install, build+test, `changesets/action` equivalent).
Needs repo secrets: `NPM_TOKEN` (publish), `GITHUB_TOKEN` (provided by GH Actions; on Gitea use the built-in token equivalent).
## Status
Scaffold only — no auth/payment implementation code has migrated in yet. Source is still live in the `marketplaces` repo (`src/app/core/auth`, `core/admin-auth`, `core/finance`, `core/pricing`) pending migration.

17
package.json Normal file
View File

@@ -0,0 +1,17 @@
{
"name": "vitanova-packages",
"version": "0.0.0",
"private": true,
"workspaces": ["packages/*"],
"scripts": {
"build": "npm run build --workspaces --if-present",
"test": "npm run test --workspaces --if-present",
"changeset": "changeset",
"version": "changeset version",
"release": "npm run build && changeset publish"
},
"devDependencies": {
"@changesets/cli": "^2.27.0",
"typescript": "~6.0.3"
}
}

View File

@@ -0,0 +1,21 @@
{
"name": "@marketplaces/auth",
"version": "0.1.0",
"description": "Shared customer + admin auth client (VK ID/OTP/session, ed25519 admin verification, guards, interceptors) for marketplaces projects.",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"files": ["dist"],
"scripts": {
"build": "tsc -p tsconfig.json",
"test": "echo \"no tests yet\" && exit 0"
},
"peerDependencies": {
"@angular/core": ">=22.0.0",
"@angular/common": ">=22.0.0",
"rxjs": ">=7.8.0"
},
"publishConfig": {
"access": "restricted"
},
"license": "UNLICENSED"
}

View File

@@ -0,0 +1,5 @@
// @marketplaces/auth — public API barrel.
// Scaffold only: code migrates here from src/app/core/auth and src/app/core/admin-auth
// per ADR-0001 (marketplaces repo: docs/context/adrs/ADR-0001-extract-auth-and-payment-into-shared-marketplaces-packages.md).
// Nothing is exported yet — the marketplaces repo still owns the live implementation until migration lands.
export {};

View File

@@ -0,0 +1,15 @@
{
"compilerOptions": {
"target": "ES2022",
"module": "ES2022",
"moduleResolution": "bundler",
"declaration": true,
"outDir": "dist",
"rootDir": "src",
"strict": true,
"skipLibCheck": true,
"experimentalDecorators": true,
"useDefineForClassFields": false
},
"include": ["src"]
}

View File

@@ -0,0 +1,21 @@
{
"name": "@marketplaces/payment",
"version": "0.1.0",
"description": "Shared payment/finance client (FX, pricing, checkout gateways) for marketplaces projects. Thin by design — payment business logic stays server-side per Phase 1/7 backend contracts.",
"main": "dist/index.js",
"types": "dist/index.d.ts",
"files": ["dist"],
"scripts": {
"build": "tsc -p tsconfig.json",
"test": "echo \"no tests yet\" && exit 0"
},
"peerDependencies": {
"@angular/core": ">=22.0.0",
"@angular/common": ">=22.0.0",
"rxjs": ">=7.8.0"
},
"publishConfig": {
"access": "restricted"
},
"license": "UNLICENSED"
}

View File

@@ -0,0 +1,5 @@
// @marketplaces/payment — public API barrel.
// Scaffold only: code migrates here from src/app/core/finance and src/app/core/pricing
// per ADR-0001 (marketplaces repo: docs/context/adrs/ADR-0001-extract-auth-and-payment-into-shared-marketplaces-packages.md).
// Nothing is exported yet — the marketplaces repo still owns the live implementation until migration lands.
export {};

View File

@@ -0,0 +1,15 @@
{
"compilerOptions": {
"target": "ES2022",
"module": "ES2022",
"moduleResolution": "bundler",
"declaration": true,
"outDir": "dist",
"rootDir": "src",
"strict": true,
"skipLibCheck": true,
"experimentalDecorators": true,
"useDefineForClassFields": false
},
"include": ["src"]
}