146 lines
23 KiB
JSON
146 lines
23 KiB
JSON
{
|
|
"_args": [
|
|
[
|
|
{
|
|
"raw": "axios@^0.16.1",
|
|
"scope": null,
|
|
"escapedName": "axios",
|
|
"name": "axios",
|
|
"rawSpec": "^0.16.1",
|
|
"spec": ">=0.16.1 <0.17.0",
|
|
"type": "range"
|
|
},
|
|
"/home/jdaugherty/work/GT2/GT2-Android/node_modules/xdl"
|
|
]
|
|
],
|
|
"_from": "axios@>=0.16.1 <0.17.0",
|
|
"_id": "axios@0.16.2",
|
|
"_inCache": true,
|
|
"_location": "/axios",
|
|
"_nodeVersion": "6.10.1",
|
|
"_npmOperationalInternal": {
|
|
"host": "s3://npm-registry-packages",
|
|
"tmp": "tmp/axios-0.16.2.tgz_1496518163672_0.8309127793181688"
|
|
},
|
|
"_npmUser": {
|
|
"name": "nickuraltsev",
|
|
"email": "nick.uraltsev@gmail.com"
|
|
},
|
|
"_npmVersion": "3.10.10",
|
|
"_phantomChildren": {},
|
|
"_requested": {
|
|
"raw": "axios@^0.16.1",
|
|
"scope": null,
|
|
"escapedName": "axios",
|
|
"name": "axios",
|
|
"rawSpec": "^0.16.1",
|
|
"spec": ">=0.16.1 <0.17.0",
|
|
"type": "range"
|
|
},
|
|
"_requiredBy": [
|
|
"/xdl"
|
|
],
|
|
"_resolved": "https://registry.npmjs.org/axios/-/axios-0.16.2.tgz",
|
|
"_shasum": "ba4f92f17167dfbab40983785454b9ac149c3c6d",
|
|
"_shrinkwrap": null,
|
|
"_spec": "axios@^0.16.1",
|
|
"_where": "/home/jdaugherty/work/GT2/GT2-Android/node_modules/xdl",
|
|
"author": {
|
|
"name": "Matt Zabriskie"
|
|
},
|
|
"browser": {
|
|
"./lib/adapters/http.js": "./lib/adapters/xhr.js"
|
|
},
|
|
"bugs": {
|
|
"url": "https://github.com/mzabriskie/axios/issues"
|
|
},
|
|
"dependencies": {
|
|
"follow-redirects": "^1.2.3",
|
|
"is-buffer": "^1.1.5"
|
|
},
|
|
"description": "Promise based HTTP client for the browser and node.js",
|
|
"devDependencies": {
|
|
"coveralls": "^2.11.9",
|
|
"es6-promise": "^4.0.5",
|
|
"grunt": "^1.0.1",
|
|
"grunt-banner": "^0.6.0",
|
|
"grunt-cli": "^1.2.0",
|
|
"grunt-contrib-clean": "^1.0.0",
|
|
"grunt-contrib-nodeunit": "^1.0.0",
|
|
"grunt-contrib-watch": "^1.0.0",
|
|
"grunt-eslint": "^19.0.0",
|
|
"grunt-karma": "^2.0.0",
|
|
"grunt-ts": "^6.0.0-beta.3",
|
|
"grunt-webpack": "^1.0.18",
|
|
"istanbul-instrumenter-loader": "^1.0.0",
|
|
"jasmine-core": "^2.4.1",
|
|
"karma": "^1.3.0",
|
|
"karma-chrome-launcher": "^2.0.0",
|
|
"karma-coverage": "^1.0.0",
|
|
"karma-firefox-launcher": "^1.0.0",
|
|
"karma-jasmine": "^1.0.2",
|
|
"karma-jasmine-ajax": "^0.1.13",
|
|
"karma-opera-launcher": "^1.0.0",
|
|
"karma-phantomjs-launcher": "^1.0.0",
|
|
"karma-safari-launcher": "^1.0.0",
|
|
"karma-sauce-launcher": "^1.1.0",
|
|
"karma-sinon": "^1.0.5",
|
|
"karma-sourcemap-loader": "^0.3.7",
|
|
"karma-webpack": "^1.7.0",
|
|
"load-grunt-tasks": "^3.5.2",
|
|
"minimist": "^1.2.0",
|
|
"phantomjs-prebuilt": "^2.1.7",
|
|
"sinon": "^1.17.4",
|
|
"typescript": "^2.0.3",
|
|
"url-search-params": "^0.6.1",
|
|
"webpack": "^1.13.1",
|
|
"webpack-dev-server": "^1.14.1"
|
|
},
|
|
"directories": {},
|
|
"dist": {
|
|
"shasum": "ba4f92f17167dfbab40983785454b9ac149c3c6d",
|
|
"tarball": "https://registry.npmjs.org/axios/-/axios-0.16.2.tgz"
|
|
},
|
|
"gitHead": "46e275c407f81c44dd9aad419b6e861d8a936580",
|
|
"homepage": "https://github.com/mzabriskie/axios",
|
|
"keywords": [
|
|
"xhr",
|
|
"http",
|
|
"ajax",
|
|
"promise",
|
|
"node"
|
|
],
|
|
"license": "MIT",
|
|
"main": "index.js",
|
|
"maintainers": [
|
|
{
|
|
"name": "mzabriskie",
|
|
"email": "mzabriskie@gmail.com"
|
|
},
|
|
{
|
|
"name": "nickuraltsev",
|
|
"email": "nick.uraltsev@gmail.com"
|
|
}
|
|
],
|
|
"name": "axios",
|
|
"optionalDependencies": {},
|
|
"readme": "# axios\n\n[![npm version](https://img.shields.io/npm/v/axios.svg?style=flat-square)](https://www.npmjs.org/package/axios)\n[![build status](https://img.shields.io/travis/mzabriskie/axios.svg?style=flat-square)](https://travis-ci.org/mzabriskie/axios)\n[![code coverage](https://img.shields.io/coveralls/mzabriskie/axios.svg?style=flat-square)](https://coveralls.io/r/mzabriskie/axios)\n[![npm downloads](https://img.shields.io/npm/dm/axios.svg?style=flat-square)](http://npm-stat.com/charts.html?package=axios)\n[![gitter chat](https://img.shields.io/gitter/room/mzabriskie/axios.svg?style=flat-square)](https://gitter.im/mzabriskie/axios)\n\nPromise based HTTP client for the browser and node.js\n\n## Features\n\n- Make [XMLHttpRequests](https://developer.mozilla.org/en-US/docs/Web/API/XMLHttpRequest) from the browser\n- Make [http](http://nodejs.org/api/http.html) requests from node.js\n- Supports the [Promise](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise) API\n- Intercept request and response\n- Transform request and response data\n- Cancel requests\n- Automatic transforms for JSON data\n- Client side support for protecting against [XSRF](http://en.wikipedia.org/wiki/Cross-site_request_forgery)\n\n## Browser Support\n\n![Chrome](https://raw.github.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png) | ![Firefox](https://raw.github.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png) | ![Safari](https://raw.github.com/alrra/browser-logos/master/src/safari/safari_48x48.png) | ![Opera](https://raw.github.com/alrra/browser-logos/master/src/opera/opera_48x48.png) | ![Edge](https://raw.github.com/alrra/browser-logos/master/src/edge/edge_48x48.png) | ![IE](https://raw.github.com/alrra/browser-logos/master/src/archive/internet-explorer_9-11/internet-explorer_9-11_48x48.png) |\n--- | --- | --- | --- | --- | --- |\nLatest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | Latest ✔ | 8+ ✔ |\n\n[![Browser Matrix](https://saucelabs.com/open_sauce/build_matrix/axios.svg)](https://saucelabs.com/u/axios)\n\n## Installing\n\nUsing npm:\n\n```bash\n$ npm install axios\n```\n\nUsing bower:\n\n```bash\n$ bower install axios\n```\n\nUsing cdn:\n\n```html\n<script src=\"https://unpkg.com/axios/dist/axios.min.js\"></script>\n```\n\n## Example\n\nPerforming a `GET` request\n\n```js\n// Make a request for a user with a given ID\naxios.get('/user?ID=12345')\n .then(function (response) {\n console.log(response);\n })\n .catch(function (error) {\n console.log(error);\n });\n\n// Optionally the request above could also be done as\naxios.get('/user', {\n params: {\n ID: 12345\n }\n })\n .then(function (response) {\n console.log(response);\n })\n .catch(function (error) {\n console.log(error);\n });\n```\n\nPerforming a `POST` request\n\n```js\naxios.post('/user', {\n firstName: 'Fred',\n lastName: 'Flintstone'\n })\n .then(function (response) {\n console.log(response);\n })\n .catch(function (error) {\n console.log(error);\n });\n```\n\nPerforming multiple concurrent requests\n\n```js\nfunction getUserAccount() {\n return axios.get('/user/12345');\n}\n\nfunction getUserPermissions() {\n return axios.get('/user/12345/permissions');\n}\n\naxios.all([getUserAccount(), getUserPermissions()])\n .then(axios.spread(function (acct, perms) {\n // Both requests are now complete\n }));\n```\n\n## axios API\n\nRequests can be made by passing the relevant config to `axios`.\n\n##### axios(config)\n\n```js\n// Send a POST request\naxios({\n method: 'post',\n url: '/user/12345',\n data: {\n firstName: 'Fred',\n lastName: 'Flintstone'\n }\n});\n```\n\n```js\n// GET request for remote image\naxios({\n method:'get',\n url:'http://bit.ly/2mTM3nY',\n responseType:'stream'\n})\n .then(function(response) {\n response.data.pipe(fs.createWriteStream('ada_lovelace.jpg'))\n});\n```\n\n##### axios(url[, config])\n\n```js\n// Send a GET request (default method)\naxios('/user/12345');\n```\n\n### Request method aliases\n\nFor convenience aliases have been provided for all supported request methods.\n\n##### axios.request(config)\n##### axios.get(url[, config])\n##### axios.delete(url[, config])\n##### axios.head(url[, config])\n##### axios.options(url[, config])\n##### axios.post(url[, data[, config]])\n##### axios.put(url[, data[, config]])\n##### axios.patch(url[, data[, config]])\n\n###### NOTE\nWhen using the alias methods `url`, `method`, and `data` properties don't need to be specified in config.\n\n### Concurrency\n\nHelper functions for dealing with concurrent requests.\n\n##### axios.all(iterable)\n##### axios.spread(callback)\n\n### Creating an instance\n\nYou can create a new instance of axios with a custom config.\n\n##### axios.create([config])\n\n```js\nvar instance = axios.create({\n baseURL: 'https://some-domain.com/api/',\n timeout: 1000,\n headers: {'X-Custom-Header': 'foobar'}\n});\n```\n\n### Instance methods\n\nThe available instance methods are listed below. The specified config will be merged with the instance config.\n\n##### axios#request(config)\n##### axios#get(url[, config])\n##### axios#delete(url[, config])\n##### axios#head(url[, config])\n##### axios#options(url[, config])\n##### axios#post(url[, data[, config]])\n##### axios#put(url[, data[, config]])\n##### axios#patch(url[, data[, config]])\n\n## Request Config\n\nThese are the available config options for making requests. Only the `url` is required. Requests will default to `GET` if `method` is not specified.\n\n```js\n{\n // `url` is the server URL that will be used for the request\n url: '/user',\n\n // `method` is the request method to be used when making the request\n method: 'get', // default\n\n // `baseURL` will be prepended to `url` unless `url` is absolute.\n // It can be convenient to set `baseURL` for an instance of axios to pass relative URLs\n // to methods of that instance.\n baseURL: 'https://some-domain.com/api/',\n\n // `transformRequest` allows changes to the request data before it is sent to the server\n // This is only applicable for request methods 'PUT', 'POST', and 'PATCH'\n // The last function in the array must return a string or an instance of Buffer, ArrayBuffer,\n // FormData or Stream\n transformRequest: [function (data) {\n // Do whatever you want to transform the data\n\n return data;\n }],\n\n // `transformResponse` allows changes to the response data to be made before\n // it is passed to then/catch\n transformResponse: [function (data) {\n // Do whatever you want to transform the data\n\n return data;\n }],\n\n // `headers` are custom headers to be sent\n headers: {'X-Requested-With': 'XMLHttpRequest'},\n\n // `params` are the URL parameters to be sent with the request\n // Must be a plain object or a URLSearchParams object\n params: {\n ID: 12345\n },\n\n // `paramsSerializer` is an optional function in charge of serializing `params`\n // (e.g. https://www.npmjs.com/package/qs, http://api.jquery.com/jquery.param/)\n paramsSerializer: function(params) {\n return Qs.stringify(params, {arrayFormat: 'brackets'})\n },\n\n // `data` is the data to be sent as the request body\n // Only applicable for request methods 'PUT', 'POST', and 'PATCH'\n // When no `transformRequest` is set, must be of one of the following types:\n // - string, plain object, ArrayBuffer, ArrayBufferView, URLSearchParams\n // - Browser only: FormData, File, Blob\n // - Node only: Stream, Buffer\n data: {\n firstName: 'Fred'\n },\n\n // `timeout` specifies the number of milliseconds before the request times out.\n // If the request takes longer than `timeout`, the request will be aborted.\n timeout: 1000,\n\n // `withCredentials` indicates whether or not cross-site Access-Control requests\n // should be made using credentials\n withCredentials: false, // default\n\n // `adapter` allows custom handling of requests which makes testing easier.\n // Return a promise and supply a valid response (see lib/adapters/README.md).\n adapter: function (config) {\n /* ... */\n },\n\n // `auth` indicates that HTTP Basic auth should be used, and supplies credentials.\n // This will set an `Authorization` header, overwriting any existing\n // `Authorization` custom headers you have set using `headers`.\n auth: {\n username: 'janedoe',\n password: 's00pers3cret'\n },\n\n // `responseType` indicates the type of data that the server will respond with\n // options are 'arraybuffer', 'blob', 'document', 'json', 'text', 'stream'\n responseType: 'json', // default\n\n // `xsrfCookieName` is the name of the cookie to use as a value for xsrf token\n xsrfCookieName: 'XSRF-TOKEN', // default\n\n // `xsrfHeaderName` is the name of the http header that carries the xsrf token value\n xsrfHeaderName: 'X-XSRF-TOKEN', // default\n\n // `onUploadProgress` allows handling of progress events for uploads\n onUploadProgress: function (progressEvent) {\n // Do whatever you want with the native progress event\n },\n\n // `onDownloadProgress` allows handling of progress events for downloads\n onDownloadProgress: function (progressEvent) {\n // Do whatever you want with the native progress event\n },\n\n // `maxContentLength` defines the max size of the http response content allowed\n maxContentLength: 2000,\n\n // `validateStatus` defines whether to resolve or reject the promise for a given\n // HTTP response status code. If `validateStatus` returns `true` (or is set to `null`\n // or `undefined`), the promise will be resolved; otherwise, the promise will be\n // rejected.\n validateStatus: function (status) {\n return status >= 200 && status < 300; // default\n },\n\n // `maxRedirects` defines the maximum number of redirects to follow in node.js.\n // If set to 0, no redirects will be followed.\n maxRedirects: 5, // default\n\n // `httpAgent` and `httpsAgent` define a custom agent to be used when performing http\n // and https requests, respectively, in node.js. This allows options to be added like\n // `keepAlive` that are not enabled by default.\n httpAgent: new http.Agent({ keepAlive: true }),\n httpsAgent: new https.Agent({ keepAlive: true }),\n\n // 'proxy' defines the hostname and port of the proxy server\n // `auth` indicates that HTTP Basic auth should be used to connect to the proxy, and\n // supplies credentials.\n // This will set an `Proxy-Authorization` header, overwriting any existing\n // `Proxy-Authorization` custom headers you have set using `headers`.\n proxy: {\n host: '127.0.0.1',\n port: 9000,\n auth: {\n username: 'mikeymike',\n password: 'rapunz3l'\n }\n },\n\n // `cancelToken` specifies a cancel token that can be used to cancel the request\n // (see Cancellation section below for details)\n cancelToken: new CancelToken(function (cancel) {\n })\n}\n```\n\n## Response Schema\n\nThe response for a request contains the following information.\n\n```js\n{\n // `data` is the response that was provided by the server\n data: {},\n\n // `status` is the HTTP status code from the server response\n status: 200,\n\n // `statusText` is the HTTP status message from the server response\n statusText: 'OK',\n\n // `headers` the headers that the server responded with\n // All header names are lower cased\n headers: {},\n\n // `config` is the config that was provided to `axios` for the request\n config: {},\n\n // `request` is the request that generated this response\n // It is the last ClientRequest instance in node.js (in redirects)\n // and an XMLHttpRequest instance the browser\n request: {}\n}\n```\n\nWhen using `then`, you will receive the response as follows:\n\n```js\naxios.get('/user/12345')\n .then(function(response) {\n console.log(response.data);\n console.log(response.status);\n console.log(response.statusText);\n console.log(response.headers);\n console.log(response.config);\n });\n```\n\nWhen using `catch`, or passing a [rejection callback](https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Promise/then) as second parameter of `then`, the response will be available through the `error` object as explained in the [Handling Errors](#handling-errors) section.\n\n## Config Defaults\n\nYou can specify config defaults that will be applied to every request.\n\n### Global axios defaults\n\n```js\naxios.defaults.baseURL = 'https://api.example.com';\naxios.defaults.headers.common['Authorization'] = AUTH_TOKEN;\naxios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded';\n```\n\n### Custom instance defaults\n\n```js\n// Set config defaults when creating the instance\nvar instance = axios.create({\n baseURL: 'https://api.example.com'\n});\n\n// Alter defaults after instance has been created\ninstance.defaults.headers.common['Authorization'] = AUTH_TOKEN;\n```\n\n### Config order of precedence\n\nConfig will be merged with an order of precedence. The order is library defaults found in `lib/defaults.js`, then `defaults` property of the instance, and finally `config` argument for the request. The latter will take precedence over the former. Here's an example.\n\n```js\n// Create an instance using the config defaults provided by the library\n// At this point the timeout config value is `0` as is the default for the library\nvar instance = axios.create();\n\n// Override timeout default for the library\n// Now all requests will wait 2.5 seconds before timing out\ninstance.defaults.timeout = 2500;\n\n// Override timeout for this request as it's known to take a long time\ninstance.get('/longRequest', {\n timeout: 5000\n});\n```\n\n## Interceptors\n\nYou can intercept requests or responses before they are handled by `then` or `catch`.\n\n```js\n// Add a request interceptor\naxios.interceptors.request.use(function (config) {\n // Do something before request is sent\n return config;\n }, function (error) {\n // Do something with request error\n return Promise.reject(error);\n });\n\n// Add a response interceptor\naxios.interceptors.response.use(function (response) {\n // Do something with response data\n return response;\n }, function (error) {\n // Do something with response error\n return Promise.reject(error);\n });\n```\n\nIf you may need to remove an interceptor later you can.\n\n```js\nvar myInterceptor = axios.interceptors.request.use(function () {/*...*/});\naxios.interceptors.request.eject(myInterceptor);\n```\n\nYou can add interceptors to a custom instance of axios.\n\n```js\nvar instance = axios.create();\ninstance.interceptors.request.use(function () {/*...*/});\n```\n\n## Handling Errors\n\n```js\naxios.get('/user/12345')\n .catch(function (error) {\n if (error.response) {\n // The request was made and the server responded with a status code\n // that falls out of the range of 2xx\n console.log(error.response.data);\n console.log(error.response.status);\n console.log(error.response.headers);\n } else if (error.request) {\n // The request was made but no response was received\n // `error.request` is an instance of XMLHttpRequest in the browser and an instance of\n // http.ClientRequest in node.js\n console.log(error.request);\n } else {\n // Something happened in setting up the request that triggered an Error\n console.log('Error', error.message);\n }\n console.log(error.config);\n });\n```\n\nYou can define a custom HTTP status code error range using the `validateStatus` config option.\n\n```js\naxios.get('/user/12345', {\n validateStatus: function (status) {\n return status < 500; // Reject only if the status code is greater than or equal to 500\n }\n})\n```\n\n## Cancellation\n\nYou can cancel a request using a *cancel token*.\n\n> The axios cancel token API is based on the withdrawn [cancelable promises proposal](https://github.com/tc39/proposal-cancelable-promises).\n\nYou can create a cancel token using the `CancelToken.source` factory as shown below:\n\n```js\nvar CancelToken = axios.CancelToken;\nvar source = CancelToken.source();\n\naxios.get('/user/12345', {\n cancelToken: source.token\n}).catch(function(thrown) {\n if (axios.isCancel(thrown)) {\n console.log('Request canceled', thrown.message);\n } else {\n // handle error\n }\n});\n\n// cancel the request (the message parameter is optional)\nsource.cancel('Operation canceled by the user.');\n```\n\nYou can also create a cancel token by passing an executor function to the `CancelToken` constructor:\n\n```js\nvar CancelToken = axios.CancelToken;\nvar cancel;\n\naxios.get('/user/12345', {\n cancelToken: new CancelToken(function executor(c) {\n // An executor function receives a cancel function as a parameter\n cancel = c;\n })\n});\n\n// cancel the request\ncancel();\n```\n\n> Note: you can cancel several requests with the same cancel token.\n\n## Using application/x-www-form-urlencoded format\n\nBy default, axios serializes JavaScript objects to `JSON`. To send data in the `application/x-www-form-urlencoded` format instead, you can use one of the following options.\n\n### Browser\n\nIn a browser, you can use the [`URLSearchParams`](https://developer.mozilla.org/en-US/docs/Web/API/URLSearchParams) API as follows:\n\n```js\nvar params = new URLSearchParams();\nparams.append('param1', 'value1');\nparams.append('param2', 'value2');\naxios.post('/foo', params);\n```\n\n> Note that `URLSearchParams` is not supported by all browsers, but there is a [polyfill](https://github.com/WebReflection/url-search-params) available (make sure to polyfill the global environment).\n\nAlternatively, you can encode data using the [`qs`](https://github.com/ljharb/qs) library:\n\n```js\nvar qs = require('qs');\naxios.post('/foo', qs.stringify({ 'bar': 123 }));\n```\n\n### Node.js\n\nIn node.js, you can use the [`querystring`](https://nodejs.org/api/querystring.html) module as follows:\n\n```js\nvar querystring = require('querystring');\naxios.post('http://something.com/', querystring.stringify({ foo: 'bar' }));\n```\n\nYou can also use the `qs` library.\n\n## Semver\n\nUntil axios reaches a `1.0` release, breaking changes will be released with a new minor version. For example `0.5.1`, and `0.5.4` will have the same API, but `0.6.0` will have breaking changes.\n\n## Promises\n\naxios depends on a native ES6 Promise implementation to be [supported](http://caniuse.com/promises).\nIf your environment doesn't support ES6 Promises, you can [polyfill](https://github.com/jakearchibald/es6-promise).\n\n## TypeScript\naxios includes [TypeScript](http://typescriptlang.org) definitions.\n```typescript\nimport axios from 'axios';\naxios.get('/user?ID=12345');\n```\n\n## Resources\n\n* [Changelog](https://github.com/mzabriskie/axios/blob/master/CHANGELOG.md)\n* [Upgrade Guide](https://github.com/mzabriskie/axios/blob/master/UPGRADE_GUIDE.md)\n* [Ecosystem](https://github.com/mzabriskie/axios/blob/master/ECOSYSTEM.md)\n* [Contributing Guide](https://github.com/mzabriskie/axios/blob/master/CONTRIBUTING.md)\n* [Code of Conduct](https://github.com/mzabriskie/axios/blob/master/CODE_OF_CONDUCT.md)\n\n## Credits\n\naxios is heavily inspired by the [$http service](https://docs.angularjs.org/api/ng/service/$http) provided in [Angular](https://angularjs.org/). Ultimately axios is an effort to provide a standalone `$http`-like service for use outside of Angular.\n\n## License\n\nMIT\n",
|
|
"readmeFilename": "README.md",
|
|
"repository": {
|
|
"type": "git",
|
|
"url": "git+https://github.com/mzabriskie/axios.git"
|
|
},
|
|
"scripts": {
|
|
"build": "NODE_ENV=production grunt build",
|
|
"coveralls": "cat coverage/lcov.info | ./node_modules/coveralls/bin/coveralls.js",
|
|
"examples": "node ./examples/server.js",
|
|
"postversion": "git push && git push --tags",
|
|
"preversion": "npm test",
|
|
"start": "node ./sandbox/server.js",
|
|
"test": "grunt test",
|
|
"version": "npm run build && grunt version && git add -A dist && git add CHANGELOG.md bower.json package.json"
|
|
},
|
|
"typings": "./index.d.ts",
|
|
"version": "0.16.2"
|
|
}
|