- Node/Express/TypeScript API under /api/v1 with JWT auth (login, refresh, logout, /me) - Prisma schema: vendors, users, roles, products, categories, taxes, transactions - SQLite for local dev; Postgres via docker-compose for production - Full CRUD routes for vendors, users, categories, taxes, products with Zod validation and RBAC - Paginated list endpoints scoped per vendor; refresh token rotation - React/TypeScript admin SPA (Vite): login, protected routing, sidebar layout - Pages: Dashboard, Catalog (tabbed Products/Categories/Taxes), Users, Vendor Settings - Shared UI: Table, Modal, FormField, Btn, PageHeader components - Multi-stage Dockerfile; docker-compose with Postgres healthcheck - Seed script with demo vendor and owner account - INSTRUCTIONS.md, ROADMAP.md, .claude/launch.json for dev server config Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
35 lines
1.3 KiB
Markdown
35 lines
1.3 KiB
Markdown
# utils-merge
|
|
|
|
[](https://www.npmjs.com/package/utils-merge)
|
|
[](https://travis-ci.org/jaredhanson/utils-merge)
|
|
[](https://codeclimate.com/github/jaredhanson/utils-merge)
|
|
[](https://coveralls.io/r/jaredhanson/utils-merge)
|
|
[](https://david-dm.org/jaredhanson/utils-merge)
|
|
|
|
|
|
Merges the properties from a source object into a destination object.
|
|
|
|
## Install
|
|
|
|
```bash
|
|
$ npm install utils-merge
|
|
```
|
|
|
|
## Usage
|
|
|
|
```javascript
|
|
var a = { foo: 'bar' }
|
|
, b = { bar: 'baz' };
|
|
|
|
merge(a, b);
|
|
// => { foo: 'bar', bar: 'baz' }
|
|
```
|
|
|
|
## License
|
|
|
|
[The MIT License](http://opensource.org/licenses/MIT)
|
|
|
|
Copyright (c) 2013-2017 Jared Hanson <[http://jaredhanson.net/](http://jaredhanson.net/)>
|
|
|
|
<a target='_blank' rel='nofollow' href='https://app.codesponsor.io/link/vK9dyjRnnWsMzzJTQ57fRJpH/jaredhanson/utils-merge'> <img alt='Sponsor' width='888' height='68' src='https://app.codesponsor.io/embed/vK9dyjRnnWsMzzJTQ57fRJpH/jaredhanson/utils-merge.svg' /></a>
|