{"_id":"@awesome-nodes/mvvm","_rev":"2-79e92039ff0ec36fa4108a5cc0dfe8b3","name":"@awesome-nodes/mvvm","dist-tags":{"latest":"1.0.1"},"versions":{"1.0.0":{"name":"@awesome-nodes/mvvm","version":"1.0.0","description":"Application development framework using the *model* *view* *view-model* design pattern.","keywords":["application","development","framework","model","view","view-model","framework","best","practice","awesome","nodes","app"],"license":"MIT","author":{"name":"Christian Kusmanow","email":"christian.kusmanow@teslasoft.de"},"contributors":[{"name":"Markus Faatz","email":"mail@markus.faatz.com"}],"repository":{"type":"git","url":"git+ssh://git@gitlab.com/awesome-nodes/mvvm.git"},"scripts":{"test":"concurrently \"npm run tscheck\" \"npm run test:cov\" \"npm run typecov\"","test:r":"npx jest --runInBand --verbose","test:w":"npm run test:r -- --watch","test:cov":"npm run test:r -- --collectCoverage","test:d":"node --inspect-brk node_modules/jest/bin/jest --runInBand --testMatch \"<rootDir>/src/**/*.spec.ts\"","typecov":"npx type-coverage --detail","tscheck":"echo tscheck... && tsc --project tsconfig.tscheck.json","tscheck:w":"npm run tscheck -- --watch","tscheck:circular":"dpdm ./src/**/*.ts","eslint":"eslint --report-unused-disable-directives **/*.ts","eslint:fix":"npm run eslint -- --fix","start":"node -r ts-node/register -r tsconfig-paths/register ./src","type-check":"tsc --noEmit","type-check:watch":"npm run type-check -- --watch","build":"concurrently \"npm run build:es\" \"npm run build:umd\"","build:es":"bs bundle-babel -a","build:umd":"bs bundle-webpack","build:watch":"cross-env NODE_ENV=development concurrently \"npm run build:es -- -w\" \"npm run build:umd -- -w\"","prepack":"npm run build","prepublishOnly":"npm run test"},"devDependencies":{"@awesome-nodes/build-system":"^0.3.1","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"5.7.0","@typescript-eslint/eslint-plugin-tslint":"^5.7.0","@typescript-eslint/parser":"5.7.0","@zerollup/ts-transform-paths":"^1.7.18","concurrently":"^6.2.0","cross-env":"7.0.3","debug-mode":"^2.0.2","dpdm":"^3.6.1","eslint":"^7.28.0","eslint-plugin-eslint-plugin":"^4.1.0","eslint-plugin-import":"^2.25.3","eslint-plugin-jest":"^25.3.0","eslint-plugin-unicorn":"^39.0.0","jest":"^26.6.3","pre-commit":"^1.2.2","simplytyped":"^3.3.0","source-map-support":"^0.5.19","ts-jest":"^26.4.4","ts-node":"^10.0.0","tsconfig-paths":"^3.9.0","tslib":"^2.2.0","tslint":"^6.1.3","tslint-clean-code":"^0.2.10","type-coverage":"2.2.0","typescript":"^4.5.2"},"dependencies":{"@awesome-nodes/injection-factory":"^1.0.0","@awesome-nodes/object":"^1.0.0","reflect-metadata":"^0.1.13","rxjs":"^7.4.0","simplytyped":"^3.3.0"},"peerDependencies":{"@awesome-nodes/injection-factory":">= 1.0.0","@awesome-nodes/object":">= 1.0.0","rxjs":">= 6.x"},"directories":{"lib":"lib"},"main":"lib/index.js","module":"lib-esm/index.js","jsnext:main":"lib-esm/index.js","types":"lib","exports":{"./model":{"types":"./lib/model.d.ts","node":"./lib/model.js","jsnext:main":"./lib-esm/model.js","default":"./lib-esm/model.js"},"./providers":{"types":"./lib/providers.d.ts","node":"./lib/providers.js","jsnext:main":"./lib-esm/providers.js","default":"./lib-esm/providers.js"},"./services":{"types":"./lib/services.d.ts","node":"./lib/services.js","jsnext:main":"./lib-esm/services.js","default":"./lib-esm/services.js"},"./view":{"types":"./lib/view.d.ts","node":"./lib/view.js","jsnext:main":"./lib-esm/view.js","default":"./lib-esm/view.js"},"./view-model":{"types":"./lib/view-model.d.ts","node":"./lib/view-model.js","jsnext:main":"./lib-esm/view-model.js","default":"./lib-esm/view-model.js"},"./package.json":"./package.json"},"pre-commit":["test"],"gitHead":"943f091b927b85a8fd974df4955d3cc63c7c4306","bugs":{"url":"https://gitlab.com/awesome-nodes/mvvm/issues"},"homepage":"https://gitlab.com/awesome-nodes/mvvm#readme","_id":"@awesome-nodes/mvvm@1.0.0","_nodeVersion":"17.2.0","_npmVersion":"8.1.4","dist":{"integrity":"sha512-8kevlakbt0dezVtLnGZA7DlR+Ith1GEVlUTsAjN/6iAvC4tlE6G94l/9GKP8C4TrxVe6l0HeaTi3HpJOuqtb8w==","shasum":"ea243eda1f97ac6572fa5c0bc470ecfa2ccb8d2e","tarball":"https://registry.npmjs.org/@awesome-nodes/mvvm/-/mvvm-1.0.0.tgz","fileCount":108,"unpackedSize":258977,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh1tH9CRA9TVsSAnZWagAAKNQP/RcnygdIKH8mh24GzVUm\n8srhiiivQOQgNxK+Qh++l0+guWzydbREkkxWAXXfzyyC4dSbdgGHBAu/cNWk\n7ZGUGqrnfpF3Klwe885T2nik8x34WhrHQGYvBtbsGVVwXGlwcCti2srIXvs5\nIAU++odPi8V1z5TDxsElJUhcFyryeZg8IbiCusoqCYwuyttp5mkc9ul6fNxY\nrGSBkVhh4LreGpjacodz0Kyn4bB+HXhf9MstB4ExWSfiC3ws1nVt6EhcIa9x\nYKuWYg1XiuzOBrTD0HKAuX8FlZc4p1jMJvcSe8Pa183L+g/ort6ZMcmXgVPU\nTwBdZK1aGxZgRLFhfd4ZSltQkx3gZmKjcVOb/UZzB3dJ3a81SxyJTJ1S5nVV\nTeiNAsi4cR4sSMMp2fALwXV6ESYjpjyqd9WZGk1L+dmEBjZNHcu63+DBn7sH\ndYxCaVdAhnHcxYwy7tFRUH3oMQrPuKXr8LHPisTaIo8kX4hCM3MoanZql2LH\nvfVeDZ4hU+KChVCL8a7/Wbg8ZZwPy7Qv4j4OJtLpRIMiWju0dOIax/k9z8al\nfn9r9pzGsVW63k/9w+gBMQIScyDLwN5i58QR/GuVi9rsodYWuqGvHXwKoyE9\n7TtArKHrmxmbYiTKsLgPRnUvm9dw8SOmoMZIfFnBsbR5wBFpjjY4hacLnJ2Q\nq9Xq\r\n=5+ln\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIFsOM+xcIB2aQWb09xI06Pn2V9nNIy69NcWDWaZ9EvlRAiEA7dHH+WNWLKDGvVSJaiKQDibeMtvNIw4t57RmGDvQe8g="}]},"_npmUser":{"name":"christian.kusmanow","email":"christian.kusmanow@teslasoft.de"},"maintainers":[{"name":"christian.kusmanow","email":"christian.kusmanow@teslasoft.de"},{"name":"markusfaatz","email":"markus.faatz@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mvvm_1.0.0_1641468413028_0.20606674543201065"},"_hasShrinkwrap":false},"1.0.1":{"name":"@awesome-nodes/mvvm","version":"1.0.1","description":"Application development framework using the *model* *view* *view-model* design pattern.","keywords":["application","development","framework","model","view","view-model","framework","best","practice","awesome","nodes","app"],"license":"MIT","author":{"name":"Christian Kusmanow","email":"christian.kusmanow@teslasoft.de"},"contributors":[{"name":"Markus Faatz","email":"mail@markus.faatz.com"}],"repository":{"type":"git","url":"git+ssh://git@gitlab.com/awesome-nodes/mvvm.git"},"scripts":{"test":"concurrently \"npm run tscheck\" \"npm run test:cov\" \"npm run typecov\"","test:r":"npx jest --runInBand --verbose","test:w":"npm run test:r -- --watch","test:cov":"npm run test:r -- --collectCoverage","test:d":"node --inspect-brk node_modules/jest/bin/jest --runInBand --testMatch \"<rootDir>/src/**/*.spec.ts\"","typecov":"npx type-coverage --detail","tscheck":"echo tscheck... && tsc --project tsconfig.tscheck.json","tscheck:w":"npm run tscheck -- --watch","tscheck:circular":"dpdm ./src/**/*.ts","eslint":"eslint --report-unused-disable-directives **/*.ts","eslint:fix":"npm run eslint -- --fix","start":"node -r ts-node/register -r tsconfig-paths/register ./src","type-check":"tsc --noEmit","type-check:watch":"npm run type-check -- --watch","build":"concurrently \"npm run build:es\" \"npm run build:umd\"","build:es":"bs bundle-babel -a","build:umd":"bs bundle-webpack","build:watch":"cross-env NODE_ENV=development concurrently \"npm run build:es -- -w\" \"npm run build:umd -- -w\"","prepack":"npm run build","prepublishOnly":"npm run test"},"devDependencies":{"@awesome-nodes/build-system":"^0.3.1","@types/jest":"^26.0.19","@typescript-eslint/eslint-plugin":"5.7.0","@typescript-eslint/eslint-plugin-tslint":"^5.7.0","@typescript-eslint/parser":"5.7.0","@zerollup/ts-transform-paths":"^1.7.18","concurrently":"^6.2.0","cross-env":"7.0.3","debug-mode":"^2.0.2","dpdm":"^3.6.1","eslint":"^7.28.0","eslint-plugin-eslint-plugin":"^4.1.0","eslint-plugin-import":"^2.25.3","eslint-plugin-jest":"^25.3.0","eslint-plugin-unicorn":"^39.0.0","jest":"^26.6.3","pre-commit":"^1.2.2","simplytyped":"^3.3.0","source-map-support":"^0.5.19","ts-jest":"^26.4.4","ts-node":"^10.0.0","tsconfig-paths":"^3.9.0","tslib":"^2.2.0","tslint":"^6.1.3","tslint-clean-code":"^0.2.10","type-coverage":"2.2.0","typescript":"^4.5.2"},"dependencies":{"@awesome-nodes/injection-factory":"^1.0.0","@awesome-nodes/object":"^1.0.0","reflect-metadata":"^0.1.13","rxjs":"^7.4.0","simplytyped":"^3.3.0"},"peerDependencies":{"@awesome-nodes/injection-factory":">= 1.0.0","@awesome-nodes/object":">= 1.0.0","rxjs":">= 6.x"},"directories":{"lib":"lib"},"main":"lib/index.js","module":"lib-esm/index.js","jsnext:main":"lib-esm/index.js","types":"lib","exports":{"./model":{"types":"./lib/model.d.ts","node":"./lib/model.js","jsnext:main":"./lib-esm/model.js","default":"./lib-esm/model.js"},"./providers":{"types":"./lib/providers.d.ts","node":"./lib/providers.js","jsnext:main":"./lib-esm/providers.js","default":"./lib-esm/providers.js"},"./services":{"types":"./lib/services.d.ts","node":"./lib/services.js","jsnext:main":"./lib-esm/services.js","default":"./lib-esm/services.js"},"./view":{"types":"./lib/view.d.ts","node":"./lib/view.js","jsnext:main":"./lib-esm/view.js","default":"./lib-esm/view.js"},"./view-model":{"types":"./lib/view-model.d.ts","node":"./lib/view-model.js","jsnext:main":"./lib-esm/view-model.js","default":"./lib-esm/view-model.js"},"./package.json":"./package.json"},"pre-commit":["test"],"gitHead":"da9fa3283d4a0797b2a06ae10d0f203795bd4535","bugs":{"url":"https://gitlab.com/awesome-nodes/mvvm/issues"},"homepage":"https://gitlab.com/awesome-nodes/mvvm#readme","_id":"@awesome-nodes/mvvm@1.0.1","_nodeVersion":"14.18.2","_npmVersion":"6.14.15","dist":{"integrity":"sha512-fjIDlJiNv7jZkRhNNvk/7HTps3xb4h97XIW3ZqKAJtviN15PTYS2xGPnE9fK8Vhizfvit6A6nVgx/xr6COwibQ==","shasum":"0b6b693890f26fc946ece1a2e94959d758fe8de1","tarball":"https://registry.npmjs.org/@awesome-nodes/mvvm/-/mvvm-1.0.1.tgz","fileCount":108,"unpackedSize":282884,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJh3CLZCRA9TVsSAnZWagAAYOYQAI3G7U6VCxLTIWYZkxbR\nBVSwDWXqkonHs/0VzEeZxgEJs2xwd7dyghIt11iEaCuPqTFKr+0Futxg9KKC\n+Bmv/zXyc88f7T0TxYyPvDg67YkeA1W95wKjGiNG8JpxiCwJ0IOPyyS7YcMA\niXPvtnffOKEhbUOznhApa8wq5P2QmzB+nLKZCai9eG0Wt2jX6PaYr4QUzcw4\nPi7ZgtPEf/+JRVH8VrT6PYMrhVOJEghchJpBNqAJCL3bdYcG0Saibf4PVDO6\nUI9FazvIan0emBfiFWn2GZY0mUD4+QtqY/qMxjIXzAnweXMQsi24tB7aH5z2\nPlh+a44P+tA3iN/mprwMIoC8kW4bxTDQ+M6aYSbS9jmzM9135hnIZoIukLkj\nEeLLlzerNwf1GrplyNr0eJ4i+5dgDWXjSgtYPPp6ffHsSUTkdo/tWfOL3NDv\nmb3FqVHSu97f2z2oJ5YjSUW6Ac4Ul57Mt5RmAoacL3h8XqPch2Z9A+ZbK/El\n5YXxydaOJ/BXkmmnNuej6E9LlcyM5pxl+KglQpH6IAwiSI1LySv1/4fQlk57\nchJOYKntDPBMVdy3BlDs1M+tn94xChJIeXuVyc8L2gCRHjXjxHbfAmtxI32S\nrgPe9Bd4sXAPMjfa+03App2Y5jYmiZ0DGSe/MaGJbEcUhnxj6UYBMCw8IGgO\nY8ak\r\n=8C8P\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEYCIQCjgHSExC/e31N8LktwI74ictybQyRXOdeTnT8xbLzzWQIhAIBycnF0kxVV8sjk70eBHVXuAXmrmjSas/PAD9Om5f1D"}]},"_npmUser":{"name":"christian.kusmanow","email":"christian.kusmanow@teslasoft.de"},"maintainers":[{"name":"christian.kusmanow","email":"christian.kusmanow@teslasoft.de"},{"name":"markusfaatz","email":"markus.faatz@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/mvvm_1.0.1_1641816793392_0.26421801322780936"},"_hasShrinkwrap":false}},"time":{"created":"2022-01-06T11:26:52.978Z","1.0.0":"2022-01-06T11:26:53.177Z","modified":"2022-04-04T16:51:03.736Z","1.0.1":"2022-01-10T12:13:13.588Z"},"maintainers":[{"name":"christian.kusmanow","email":"christian.kusmanow@teslasoft.de"},{"name":"markusfaatz","email":"markus.faatz@gmail.com"}],"description":"Application development framework using the *model* *view* *view-model* design pattern.","homepage":"https://gitlab.com/awesome-nodes/mvvm#readme","keywords":["application","development","framework","model","view","view-model","framework","best","practice","awesome","nodes","app"],"repository":{"type":"git","url":"git+ssh://git@gitlab.com/awesome-nodes/mvvm.git"},"contributors":[{"name":"Markus Faatz","email":"mail@markus.faatz.com"}],"author":{"name":"Christian Kusmanow","email":"christian.kusmanow@teslasoft.de"},"bugs":{"url":"https://gitlab.com/awesome-nodes/mvvm/issues"},"license":"MIT","readme":"<h1 align=\"center\">Welcome to Awesome Nodes MVVM Pattern Library 👋<br/>\n<small></small>\n</h1>\n\n<p>\n  <img alt=\"Version\" src=\"https://img.shields.io/badge/version-1.0.1-blue.svg?cacheSeconds=2592000\" />\n  <a href=\"https://manyfolds.atlassian.net/wiki\" target=\"_blank\">\n    <img alt=\"Documentation\" src=\"https://img.shields.io/badge/documentation-yes-brightgreen.svg\" />\n  </a>\n  <a href=\"#\" target=\"_blank\">\n    <img alt=\"Code Style: 4-space K&R.\" src=\"https://img.shields.io/badge/code%20style-4--space%20K%26R-brightgreen?style=flat\" />\n  </a>\n  <a href=\"#\" target=\"_blank\">\n    <img alt=\"License: MIT\" src=\"https://img.shields.io/badge/License-MIT-brightgreen.svg\" />\n  </a>\n</p>\n\n> 🔎 Application development framework using the *model* *view* *view-model* design pattern.<br/>\n> <small>Provides base objects and type helper utilities for stateful rich client application development.</small>\n\n### 🏠 [Homepage][ProjectSite]\n\n### ✨ [Demo][ProjectDemoSite]\n\n## Getting Started\n\nThese instructions will get you a copy of the project up and running on your local machine for development and testing purposes. See deployment for notes on how to deploy the project on a live system.\n\n### Prerequisites\n\n* Node.js (Version >= 12) ([Download](https://nodejs.org/en/download/))\n* Git (Version >= 2) ([Download](https://git-scm.com/book/en/v2/Getting-Started-Installing-Git))\n\n### Download\n\n```\ngit clone git+ssh://git@gitlab.com/awesome-nodes/mvvm.git\n```\n\n### Install\n\n```sh\ncd mvvm\nnpm install\n```\n\n### Usage\n```sh\nnpm run start\n```\n\n### Run Unit Tests\nSingle Run:\n```sh\nnpm run test\n```\nRun in watch mode:\n```sh\nnpm run test:w\n```\n\n### Run TypeScript Check\nSingle Run:\n```sh\nnpm run tscheck\n```\nRun in watch mode:\n```sh\nnpm run tscheck:w\n```\n\n### Run Circular Dependency Check\n```sh\nnpm run tscheck:circular\n```\n\n### Run Coding Style Tests\n\n```sh\nnpm run eslint\n```\n\n### Run Build\nThe build output contains three kinds of library variants:\n* ES5 for NodeJS applications\n* ES6 for tree shaking builds\n* and a UMD bundle for web applications\n```sh\nnpm run build\n```\n\n## Deployment\n> Deployment is done by publishing the npm package using:\n```sh\nnpm publish\n```\n\n## Built With\n* [BuildSystem](https://gitlab.com/awesome-nodes/build-system) - Integrated Zero Configuration Build System for Awesome Nodes Apps and Framework Components\n\n## 👤 Authors\n\n* **Christian Kusmanow <christian.kusmanow@teslasoft.de>** - *Initial work* - [Teslasoft](https://gitlab.com/teslasoft.de)\n\nSee also the list of [contributors](https://gitlab.com/groups/awesome-nodes/-/group_members) who participated in this project.\n\n## 🤝 Contributing\n\nContributions, issues and feature requests are welcome!<br />Feel free to check our [issues page](https://gitlab.com/awesome-nodes/build-system/issues).\n\nPlease read [CONTRIBUTING.md](./CONTRIBUTING.md) for details on our code of conduct, and the process for submitting pull requests to us.\n\nPlease read the [DEVELOPING.md](./DEVELOPING.md) for details on how to develop this repository. \n\n## Versioning\n\nWe use [SemVer](http://semver.org/) for versioning. For the versions available, see the [tags on this repository](https://gitlab.com/awesome-nodes/build-system/-/tags). \n\n## Show your support\n\nGive a ⭐️ if this project helped you!\n\n## License\n\n[MIT](./LICENSE)\n\n***\n_This README was generated initially with ❤️ by [readme-md-generator](https://github.com/kefranabg/readme-md-generator)_\n\n[ProjectSite]: https://gitlab.com/awesome-nodes/mvvm\n[ProjectDemoSite]: https://mvvm.demo.awesome-nodes.com\n","readmeFilename":"README.md"}