{"_id":"pick-by-alias","_rev":"4213522","name":"pick-by-alias","description":"Pick properties by aliases","dist-tags":{"latest":"1.2.0"},"maintainers":[{"name":"dfcreative","email":"df.creative@gmail.com"}],"time":{"modified":"2026-03-04T17:08:02.000Z","created":"2017-09-17T03:12:56.511Z","1.2.0":"2017-11-25T22:01:27.705Z","1.1.2":"2017-11-03T02:24:34.022Z","1.1.1":"2017-10-12T16:51:33.233Z","1.1.0":"2017-09-20T02:11:15.650Z","1.0.0":"2017-09-17T03:12:56.511Z"},"users":{},"author":{"name":"Dima Yv","email":"dfcreative@gmail.com"},"repository":{"type":"git","url":"git+ssh://git@github.com/dfcreative/pick-by-alias.git"},"versions":{"1.2.0":{"name":"pick-by-alias","version":"1.2.0","description":"Pick properties by aliases","main":"index.js","scripts":{"test":"node test"},"repository":{"type":"git","url":"git+ssh://git@github.com/dfcreative/pick-by-alias.git"},"keywords":["pick","object"],"author":{"name":"Dima Yv","email":"dfcreative@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/dfcreative/pick-by-alias/issues"},"homepage":"https://github.com/dfcreative/pick-by-alias#readme","devDependencies":{"tape":"^4.8.0"},"gitHead":"9c0fe93e621f524cc249c4ddb82d6df2154e5da5","_id":"pick-by-alias@1.2.0","_shasum":"5f7cb2b1f21a6e1e884a0c87855aa4a37361107b","_from":".","_npmVersion":"4.6.1","_nodeVersion":"8.1.2","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"dist":{"shasum":"5f7cb2b1f21a6e1e884a0c87855aa4a37361107b","size":2461,"noattachment":false,"key":"/pick-by-alias/-/pick-by-alias-1.2.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/pick-by-alias/download/pick-by-alias-1.2.0.tgz"},"maintainers":[{"name":"dfcreative","email":"df.creative@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pick-by-alias-1.2.0.tgz_1511647286871_0.8184152813628316"},"directories":{},"publish_time":1511647287705,"_hasShrinkwrap":false,"_cnpm_publish_time":1511647287705,"_cnpmcore_publish_time":"2021-12-16T21:38:52.446Z"},"1.1.2":{"name":"pick-by-alias","version":"1.1.2","description":"Pick properties by aliases","main":"index.js","scripts":{"test":"node test"},"repository":{"type":"git","url":"git+ssh://git@github.com/dfcreative/pick-by-alias.git"},"keywords":["pick","object"],"author":{"name":"Dima Yv","email":"dfcreative@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/dfcreative/pick-by-alias/issues"},"homepage":"https://github.com/dfcreative/pick-by-alias#readme","devDependencies":{"tape":"^4.8.0"},"gitHead":"477cbed0cb304ca51a7d97304b9f4ede2193a4d1","_id":"pick-by-alias@1.1.2","_shasum":"1f68b6c2139b504ecfe58b64bb282069fdb08332","_from":".","_npmVersion":"4.6.1","_nodeVersion":"8.1.2","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"dist":{"shasum":"1f68b6c2139b504ecfe58b64bb282069fdb08332","size":2163,"noattachment":false,"key":"/pick-by-alias/-/pick-by-alias-1.1.2.tgz","tarball":"http://registry.cnpm.dingdandao.com/pick-by-alias/download/pick-by-alias-1.1.2.tgz"},"maintainers":[{"name":"dfcreative","email":"df.creative@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pick-by-alias-1.1.2.tgz_1509675873932_0.762796285096556"},"directories":{},"publish_time":1509675874022,"_hasShrinkwrap":false,"_cnpm_publish_time":1509675874022,"_cnpmcore_publish_time":"2021-12-16T21:38:52.607Z"},"1.1.1":{"name":"pick-by-alias","version":"1.1.1","description":"Pick properties by aliases","main":"index.js","scripts":{"test":"node test"},"repository":{"type":"git","url":"git+ssh://git@github.com/dfcreative/pick-by-alias.git"},"keywords":["pick","object"],"author":{"name":"Dima Yv","email":"dfcreative@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/dfcreative/pick-by-alias/issues"},"homepage":"https://github.com/dfcreative/pick-by-alias#readme","dependencies":{"tape":"^4.8.0"},"gitHead":"23fcf2545cfcc289610378a30514cc87e2d53b90","_id":"pick-by-alias@1.1.1","_shasum":"81869c20be14c2ad592d105d4bfbbdb175f1d3a0","_from":".","_npmVersion":"4.6.1","_nodeVersion":"8.1.2","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"dist":{"shasum":"81869c20be14c2ad592d105d4bfbbdb175f1d3a0","size":2174,"noattachment":false,"key":"/pick-by-alias/-/pick-by-alias-1.1.1.tgz","tarball":"http://registry.cnpm.dingdandao.com/pick-by-alias/download/pick-by-alias-1.1.1.tgz"},"maintainers":[{"name":"dfcreative","email":"df.creative@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pick-by-alias-1.1.1.tgz_1507827093139_0.3054718463681638"},"directories":{},"publish_time":1507827093233,"_hasShrinkwrap":false,"_cnpm_publish_time":1507827093233,"_cnpmcore_publish_time":"2021-12-16T21:38:52.804Z"},"1.1.0":{"name":"pick-by-alias","version":"1.1.0","description":"Pick properties by aliases","main":"index.js","scripts":{"test":"node test"},"repository":{"type":"git","url":"git+ssh://git@github.com/dfcreative/pick-by-alias.git"},"keywords":["pick","object"],"author":{"name":"Dima Yv","email":"dfcreative@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/dfcreative/pick-by-alias/issues"},"homepage":"https://github.com/dfcreative/pick-by-alias#readme","dependencies":{"tape":"^4.8.0"},"gitHead":"6c309217ba996918a987ea4de52ee3b69cc319e7","_id":"pick-by-alias@1.1.0","_shasum":"99b6771c5f03717a792ec339d813ee1a66424255","_from":".","_npmVersion":"4.6.1","_nodeVersion":"8.1.2","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"dist":{"shasum":"99b6771c5f03717a792ec339d813ee1a66424255","size":2194,"noattachment":false,"key":"/pick-by-alias/-/pick-by-alias-1.1.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/pick-by-alias/download/pick-by-alias-1.1.0.tgz"},"maintainers":[{"name":"dfcreative","email":"df.creative@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pick-by-alias-1.1.0.tgz_1505873475559_0.5178665844723582"},"directories":{},"publish_time":1505873475650,"_hasShrinkwrap":false,"_cnpm_publish_time":1505873475650,"_cnpmcore_publish_time":"2021-12-16T21:38:52.980Z"},"1.0.0":{"name":"pick-by-alias","version":"1.0.0","description":"Pick properties by aliases","main":"index.js","scripts":{"test":"node test"},"repository":{"type":"git","url":"git+ssh://git@github.com/dfcreative/pick-by-alias.git"},"keywords":["pick","object"],"author":{"name":"Dima Yv","email":"dfcreative@gmail.com"},"license":"MIT","bugs":{"url":"https://github.com/dfcreative/pick-by-alias/issues"},"homepage":"https://github.com/dfcreative/pick-by-alias#readme","dependencies":{"tape":"^4.8.0"},"gitHead":"433485aab382ebdbe81c28c564bcbe6022879393","_id":"pick-by-alias@1.0.0","_shasum":"6ee750864e2b1927cd9021e65bbcea491b2088b6","_from":".","_npmVersion":"4.6.1","_nodeVersion":"8.1.2","_npmUser":{"name":"dfcreative","email":"df.creative@gmail.com"},"dist":{"shasum":"6ee750864e2b1927cd9021e65bbcea491b2088b6","size":1933,"noattachment":false,"key":"/pick-by-alias/-/pick-by-alias-1.0.0.tgz","tarball":"http://registry.cnpm.dingdandao.com/pick-by-alias/download/pick-by-alias-1.0.0.tgz"},"maintainers":[{"name":"dfcreative","email":"df.creative@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages","tmp":"tmp/pick-by-alias-1.0.0.tgz_1505617976423_0.8128682335373014"},"directories":{},"publish_time":1505617976511,"_hasShrinkwrap":false,"_cnpm_publish_time":1505617976511,"_cnpmcore_publish_time":"2021-12-16T21:38:53.197Z"}},"readme":"# pick-by-alias [![unstable](https://img.shields.io/badge/stability-unstable-green.svg)](http://github.com/badges/stability-badges)\r\n\r\nPick object properties by synonyms. Useful to avoid remembering exact option names from user perspective.\r\n\r\n[![npm install pick-by-alias](https://nodei.co/npm/pick-by-alias.png?mini=true)](https://npmjs.org/package/pick-by-alias/)\r\n\r\n```js\r\nlet pick = require('pick-by-alias')\r\n\r\nlet result = pick({\r\n  positions: [...],\r\n  color: 'rgba(0, 100, 200, .75)',\r\n  viewBox: null,\r\n  extra: 123\r\n}, {\r\n  positions: 'positions points data coordinates',\r\n  color: 'colors color stroke',\r\n  viewport: 'viewport viewBox'\r\n})\r\n```\r\n\r\n### `pick(object, properties, keepRest=false)`\r\n\r\nReturn an object with properties picked by the list or dict with aliases. Aliases are matched in priority order, ie. first matching name is picked. Each alias can be an array or a comma/space-separated string.\r\n\r\n```js\r\n// pick by dict\r\nlet {a, b} = pick(src, {a: ['a', 'b', 'c'], b: 'd e f'})\r\n\r\n// pick by list\r\nlet {c, d, e} = pick(src, ['c', 'd', 'e'])\r\n\r\n// pick by string\r\nlet {f, g} = pick(src, 'f g')\r\n```\r\n\r\n`keepRest` defines if not listed object properties should be transfered to resulting object or discarded.\r\n\r\n## Related\r\n\r\n* [defined](https://www.npmjs.com/package/defined) − get first non-undefined out of a list of values\r\n* [update-diff](https://github.com/dfcreative/update-diff) − update object state by mapping diff.\r\n\r\n## License\r\n\r\n(c) 2017 Dima Yv. MIT License\r\n","_attachments":{},"homepage":"https://github.com/dfcreative/pick-by-alias#readme","bugs":{"url":"https://github.com/dfcreative/pick-by-alias/issues"},"license":"MIT"}