{"_id":"@borisyang/first-npm","_rev":"1-c77af4b0a863a550ceb35ad6f5c32b78","name":"@borisyang/first-npm","dist-tags":{"latest":"2.0.0"},"versions":{"2.0.0":{"name":"@borisyang/first-npm","version":"2.0.0","description":"NEW ONE","main":"./dist/index.js","types":"./dist/index.d.ts","scripts":{"prepublish":"npm run build","dev":"rm -fr ./dist && tsc -p tsconfig.dev.json","build":"rm -fr ./dist && tsc -p tsconfig.prod.json","example":"npm run dev && node ./example/index.js","test":"ts-mocha -p ./tsconfig.test.json ./test/*"},"keywords":[],"author":{"name":"mrbb","email":"mrbbstartup@gmail.com"},"license":"ISC","repository":{"type":"git","url":"git+https://github.com/mrbb/the-first-module.git"},"devDependencies":{"@types/chai":"^4.1.7","@types/mocha":"^5.2.5","chai":"^4.2.0","mocha":"^5.2.0","ts-mocha":"^2.0.0","tslint":"^5.11.0","tslint-config-airbnb":"^5.11.1","typescript":"^3.2.1"},"bugs":{"url":"https://github.com/Monsoir/params-mapper/issues"},"homepage":"https://github.com/Monsoir/params-mapper#readme","directories":{"example":"example","lib":"lib","test":"test"},"gitHead":"5dc936b75b4edd5afe4c00256b4b7ce4ee481a48","_id":"@borisyang/first-npm@2.0.0","_nodeVersion":"14.17.2","_npmVersion":"7.19.1","dist":{"integrity":"sha512-Domd28TDUbUjtAQnetOVCNN0VshwOitIdD8MFCg/f5A+IF0E/yR4E6VdGndPkqvR3JF9mLxZDzzhToAdWUOUqg==","shasum":"c39d2c4ecf5a437bcb5576d7cdccd96b46b23098","tarball":"https://registry.npmjs.org/@borisyang/first-npm/-/first-npm-2.0.0.tgz","fileCount":6,"unpackedSize":6897,"npm-signature":"-----BEGIN PGP SIGNATURE-----\r\nVersion: OpenPGP.js v3.0.13\r\nComment: https://openpgpjs.org\r\n\r\nwsFcBAEBCAAQBQJhPJRVCRA9TVsSAnZWagAAJ48QAIBOzEKpp9bS0sUxPsHD\nA7rIyewUYPN9gsvvkR6mHrw43E6sSUaxnJh+3g9k4tGKNv3QQe/oNCDiuIl3\nssXiCGiNJ3ZdyVytkqxCi6jMGjme8AueklFQbLlOYNkmfhsilYIMvfCEvimK\nljd4+BeKqXIdqtRgguyvNwneAhmqi0UKwQUch2vAxQ7ObjgPqRrl2M078zyr\n6jcybn/K0kKp95jhzRk67hBy/t/RKmpLXcM0QWh2ruwc2BwK324NjDxNKNfK\nbLVs+agi2icLw+bw3u9WtQm94K+gXLMKMRe/6Avlhyc7aFYW/DdV/68at6se\ndZp6hniraqsFurqfBwIIU+hKHjy3Ik5mO+UJ/73uplRWk7cGhFPQxkZW8X3r\n4NDzArm2fsiys+B5KGJJ0g/h9MrHFM1U/XYhXJvughYt7uT/hpInZNF6UOv5\nCYg9e0WxCx/d0cGQdFOh6h1Z/9tu75e4hPI61jij/7qfNNB4aJErQmhWwpud\npH5R09FhsOje9wC9DewhlpENHzp2GuqFIg0ZK4dN6mv3G/Ji+B36e6KGsd/l\n/TL/vusBdI5H2MXhwi+llfuK4wY1PebfrsKDgmUovHhwZJkG/w8aBCQun7T2\nRKNseDkPSBcEYQfRmcOixE0vTrtGhykgfrZfFzkqW+55sdbzF8pFU4OdISkA\nzbF6\r\n=3A8Y\r\n-----END PGP SIGNATURE-----\r\n","signatures":[{"keyid":"SHA256:jl3bwswu80PjjokCgh0o2w5c2U4LhQAE57gj9cz1kzA","sig":"MEUCIQDYJZq6Ah88SJBcHS7mxxTBHIN5VwCeqJFmS/YPVO06QAIgcthQR/fH2fJ2aleXTKrOua5nIQ3ZcXt3uGIx6HRb5Uo="}]},"_npmUser":{"name":"borisyang","email":"mrbbstartup@gmail.com"},"maintainers":[{"name":"borisyang","email":"mrbbstartup@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/first-npm_2.0.0_1631360085248_0.10127281410545597"},"_hasShrinkwrap":false}},"time":{"created":"2021-09-11T11:34:45.198Z","2.0.0":"2021-09-11T11:34:45.389Z","modified":"2022-04-04T20:12:53.729Z"},"maintainers":[{"name":"borisyang","email":"mrbbstartup@gmail.com"}],"description":"NEW ONE","homepage":"https://github.com/Monsoir/params-mapper#readme","keywords":[],"repository":{"type":"git","url":"git+https://github.com/mrbb/the-first-module.git"},"author":{"name":"mrbb","email":"mrbbstartup@gmail.com"},"bugs":{"url":"https://github.com/Monsoir/params-mapper/issues"},"license":"ISC","readme":"# params-mapper\n\n⚠️ 请移步到重构后的 [params-mapper](https://github.com/Monsoir/params-mapper2)\n\n将前端页面参数映射到返回给服务端的参数\n\nInstall\n\n```sh\nnpm i params-mapper\n```\n\nCode this:\n\n```js\nconst paramsMapper = require('params-mapper');\nconst BaseParamObject = paramsMapper.BaseParamObject;\nconst autoTransfer = paramsMapper.autoTransfer;\n\n// or\n\nimport { autoTransfer, BaseParamObject } from 'params-mapper';\n\nconst TransformationPayload = {\n    emptyObject: {\n      paramKey: 'empty_object',\n      alwaysKeep: true,\n    },\n    emptyObjectNotKeep: {\n      paramKey: 'empty_object_not_keep',\n    },\n    notEmptyObject: {\n      paramKey: 'not_empty_object',\n    },\n  \n    emptyArray: {\n      paramKey: 'empty_array',\n      alwaysKeep: true,\n    },\n    emptyArrayNotKeep: {\n      paramKey: 'empty_array_not_keep',\n    },\n    notEmptyArray: {\n      paramKey: 'not_empty_array',\n    },\n  };\n  \n  const payload = {\n    emptyObject: {},\n    emptyObjectNotKeep: {},\n    notEmptyObject: { a: 1 },\n  \n    emptyArray: [],\n    emptyArrayNotKeep: [],\n    notEmptyArray: [1, 2, 3],\n  };\n  \n  class A extends BaseParamObject {}\n  autoTransfer(TransformationPayload)(A);\n  \n  // 或者\n  // or this:\n  const A = autoTransfer(TransformationPayload)(class extends BaseParamObject {});\n  \n  const temp = new A(payload);\n  const params = temp.getParams();\n  console.log(params);\n```\n\nResult in:\n\n```\n{\n    \"empty_object\": {},\n    \"not_empty_object\": {\n        \"a\": 1\n    },\n    \"empty_array\": [],\n    \"not_empty_array\": [\n        1,\n        2,\n        3\n    ]\n}\n```\n\n\n\n# the-first-module\n","readmeFilename":"README.md"}