+11
-0
@@ -5,2 +5,13 @@ # Changelog | ||
| ## [0.4.0](https://github.com/numb86/ken-all/compare/v0.3.0...v0.4.0) (2021-05-07) | ||
| ### ⚠ BREAKING CHANGES | ||
| * esm 形式のみに対応し、umd 形式と cjs 形式は対応から外す (#70) | ||
| ### Features | ||
| * esm 形式のみに対応し、umd 形式と cjs 形式は対応から外す ([#70](https://github.com/numb86/ken-all/issues/70)) ([88578d1](https://github.com/numb86/ken-all/commit/88578d1c3413c2a537b2dff6d805680f995bce71)) | ||
| ## [0.3.0](https://github.com/numb86/ken-all/compare/v0.2.3...v0.3.0) (2021-05-07) | ||
@@ -7,0 +18,0 @@ |
+1
-1
@@ -1,3 +0,3 @@ | ||
| import { NormalizedAddress } from './address'; | ||
| import { NormalizedAddress } from './address.js'; | ||
| declare const KenAll: (postCode: string) => Promise<NormalizedAddress[]>; | ||
| export default KenAll; |
+3
-2
@@ -37,4 +37,5 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
| }; | ||
| import { generateAddressListFromText, extractTargetAddress, normalizeAddressList, } from './address'; | ||
| import fetchCsv from './fetchCsv'; | ||
| // To publish as an ESM package, need to use the .js extension | ||
| import { generateAddressListFromText, extractTargetAddress, normalizeAddressList, } from './address.js'; | ||
| import fetchCsv from './fetchCsv.js'; | ||
| var KenAll = function (postCode) { return __awaiter(void 0, void 0, void 0, function () { | ||
@@ -41,0 +42,0 @@ var res, rawData, addressList, targetList; |
+1
-1
@@ -1,1 +0,1 @@ | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,GAErB,MAAM,WAAW,CAAC;AACnB,OAAO,QAAQ,MAAM,YAAY,CAAC;AAElC,IAAM,MAAM,GAAG,UAAO,QAAgB;;;;;gBACpC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;oBAChC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;iBACnD;gBACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAChC,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;iBAC7E;gBAEW,qBAAM,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAA;;gBAA1C,GAAG,GAAG,SAAoC;gBAChD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;oBACtB,sBAAO,EAAE,EAAC;iBACX;gBACD,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE;oBACrB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;iBACnC;gBAEuB,qBAAM,GAAG,CAAC,IAAI,EAAE,EAAA;;gBAAlC,OAAO,GAAW,SAAgB;gBAElC,WAAW,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;gBACnD,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;gBACxE,sBAAO,oBAAoB,CAAC,UAAU,CAAC,EAAC;;;KACzC,CAAC;AAEF,eAAe,MAAM,CAAC"} | ||
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,8DAA8D;AAC9D,OAAO,EACL,2BAA2B,EAC3B,oBAAoB,EACpB,oBAAoB,GAErB,MAAM,cAAc,CAAC;AACtB,OAAO,QAAQ,MAAM,eAAe,CAAC;AAErC,IAAM,MAAM,GAAG,UAAO,QAAgB;;;;;gBACpC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;oBAChC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;iBACnD;gBACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAChC,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;iBAC7E;gBAEW,qBAAM,QAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAA;;gBAA1C,GAAG,GAAG,SAAoC;gBAChD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;oBACtB,sBAAO,EAAE,EAAC;iBACX;gBACD,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE;oBACrB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;iBACnC;gBAEuB,qBAAM,GAAG,CAAC,IAAI,EAAE,EAAA;;gBAAlC,OAAO,GAAW,SAAgB;gBAElC,WAAW,GAAG,2BAA2B,CAAC,OAAO,CAAC,CAAC;gBACnD,UAAU,GAAG,oBAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;gBACxE,sBAAO,oBAAoB,CAAC,UAAU,CAAC,EAAC;;;KACzC,CAAC;AAEF,eAAe,MAAM,CAAC"} |
+8
-19
| { | ||
| "name": "ken-all", | ||
| "version": "0.3.0", | ||
| "version": "0.4.0", | ||
| "description": "Ken All は、郵便番号で住所を検索できる npm パッケージです。", | ||
@@ -11,3 +11,3 @@ "keywords": [ | ||
| "engines": { | ||
| "node": ">=12.13.0", | ||
| "node": ">=12.22.1", | ||
| "yarn": ">=1.19.0" | ||
@@ -28,15 +28,10 @@ }, | ||
| "license": "MIT", | ||
| "main": "./dist/index.js", | ||
| "module": "./esm/index.js", | ||
| "types": "./dist/index.d.ts", | ||
| "exports": "./esm/index.js", | ||
| "type": "module", | ||
| "types": "./esm/index.d.ts", | ||
| "files": [ | ||
| "dist", | ||
| "esm", | ||
| "umd" | ||
| "esm" | ||
| ], | ||
| "scripts": { | ||
| "build": "yarn && run-p build:*", | ||
| "build:cjs": "mkdir -p ./dist && rm -rf dist/* && tsc -p ./tsconfig.cjs.json", | ||
| "build:esm": "mkdir -p ./esm && rm -rf esm/* && tsc -p ./tsconfig.esm.json", | ||
| "build:umd": "mkdir -p ./umd && rm -rf umd/* && webpack --mode=production", | ||
| "build": "yarn && mkdir -p ./esm && rm -rf esm/* && tsc -p ./tsconfig.esm.json", | ||
| "lint": "run-p lint:*", | ||
@@ -73,6 +68,3 @@ "lint:src": "eslint './src/**/*.ts'", | ||
| "standard-version": "^9.0.0", | ||
| "ts-loader": "^6.2.0", | ||
| "ts-node": "^8.4.1", | ||
| "webpack": "^4.43.0", | ||
| "webpack-cli": "^3.3.9" | ||
| "ts-node": "^8.4.1" | ||
| }, | ||
@@ -82,6 +74,3 @@ "dependencies": { | ||
| "typescript": "^4.2.3" | ||
| }, | ||
| "resolutions": { | ||
| "terser-webpack-plugin": "^1.4.5" | ||
| } | ||
| } |
+5
-5
@@ -203,4 +203,4 @@ <div align="center"> | ||
| `0.2.0`以降のバージョンは`https://unpkg.com/ken-all@{バージョン番号}/umd/index.js`で読み込めます。 | ||
| 読み込み後、`KenAll.default`という形で利用できます。 | ||
| `0.4.0`以降のバージョンは`https://unpkg.com/ken-all@{バージョン番号}/esm/index.js`で読み込めます。 | ||
| 読み込み後、`KenAll`という形で利用できます。 | ||
@@ -218,4 +218,4 @@ ```html | ||
| <script src="https://unpkg.com/ken-all@0.2.0/umd/index.js"></script> | ||
| <script> | ||
| <script src="https://unpkg.com/ken-all@0.4.0/esm/index.js" type="module"></script> | ||
| <script type="module"> | ||
| const searchBoxElem = document.querySelector('#post-code'); | ||
@@ -228,3 +228,3 @@ | ||
| const resultTextElem = document.querySelector('#result'); | ||
| KenAll.default(postCode).then(res => { | ||
| KenAll(postCode).then(res => { | ||
| if (res.length === 0) { | ||
@@ -231,0 +231,0 @@ resultTextElem.textContent = '該当する住所はありません'; |
| declare type Address = [string, string, string, string]; | ||
| export declare type NormalizedAddress = [string, string, string]; | ||
| export declare const generateAddressListFromText: (rawData: string) => Address[]; | ||
| export declare const extractTargetAddress: (postCodeBack: string, addressList: Address[]) => Address[]; | ||
| export declare const normalizeAddressList: (addressList: Address[]) => NormalizedAddress[]; | ||
| export {}; |
| "use strict"; | ||
| var __spreadArray = (this && this.__spreadArray) || function (to, from) { | ||
| for (var i = 0, il = from.length, j = to.length; i < il; i++, j++) | ||
| to[j] = from[i]; | ||
| return to; | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| exports.normalizeAddressList = exports.extractTargetAddress = exports.generateAddressListFromText = void 0; | ||
| var generateAddressListFromText = function (rawData) { | ||
| var lines = rawData | ||
| .split('\n') | ||
| .filter(function (line) { return line.length > 0; }); | ||
| return lines.map(function (line) { | ||
| var address = line.split(','); | ||
| if (address.length !== 4) | ||
| throw new Error('CSV was broken.'); | ||
| return address.map(function (item) { | ||
| return item.replace(/"/g, ''); | ||
| }); | ||
| }); | ||
| }; | ||
| exports.generateAddressListFromText = generateAddressListFromText; | ||
| var extractTargetAddress = function (postCodeBack, addressList) { | ||
| return addressList.filter(function (address) { return address[0] === postCodeBack; }); | ||
| }; | ||
| exports.extractTargetAddress = extractTargetAddress; | ||
| var removeFirstItemFromAddress = function (address) { | ||
| var copiedArray = __spreadArray([], address); | ||
| copiedArray.shift(); | ||
| if (copiedArray.length !== 3) { | ||
| throw new Error('Failed removeFirstItemFromAddress.'); | ||
| } | ||
| return copiedArray; | ||
| }; | ||
| var normalizeAddressList = function (addressList) { | ||
| return addressList.map(function (address) { return removeFirstItemFromAddress(address); }); | ||
| }; | ||
| exports.normalizeAddressList = normalizeAddressList; | ||
| //# sourceMappingURL=address.js.map |
| {"version":3,"file":"address.js","sourceRoot":"","sources":["../src/address.ts"],"names":[],"mappings":";;;;;;;;AAGO,IAAM,2BAA2B,GAAG,UAAC,OAAe;IACzD,IAAM,KAAK,GAAa,OAAO;SAC5B,KAAK,CAAC,IAAI,CAAC;SACX,MAAM,CAAC,UAAC,IAAY,IAAc,OAAA,IAAI,CAAC,MAAM,GAAG,CAAC,EAAf,CAAe,CAAC,CAAC;IACtD,OAAO,KAAK,CAAC,GAAG,CACd,UAAC,IAAY;QACX,IAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAChC,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QAC7D,OAAO,OAAO,CAAC,GAAG,CAAC,UAAC,IAAY;YAC9B,OAAA,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC;QAAtB,CAAsB,CACZ,CAAC;IACf,CAAC,CACF,CAAC;AACJ,CAAC,CAAC;AAbW,QAAA,2BAA2B,+BAatC;AAEK,IAAM,oBAAoB,GAAG,UAClC,YAAoB,EACpB,WAAsB;IAEtB,OAAA,WAAW,CAAC,MAAM,CAChB,UAAC,OAAgB,IAAc,OAAA,OAAO,CAAC,CAAC,CAAC,KAAK,YAAY,EAA3B,CAA2B,CAC3D;AAFD,CAEC,CAAC;AANS,QAAA,oBAAoB,wBAM7B;AAEJ,IAAM,0BAA0B,GAAG,UAAC,OAAgB;IAClD,IAAM,WAAW,qBAAO,OAAO,CAAC,CAAC;IACjC,WAAW,CAAC,KAAK,EAAE,CAAC;IACpB,IAAI,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE;QAC5B,MAAM,IAAI,KAAK,CAAC,oCAAoC,CAAC,CAAC;KACvD;IACD,OAAO,WAAgC,CAAC;AAC1C,CAAC,CAAC;AAEK,IAAM,oBAAoB,GAAG,UAClC,WAAsB;IAEtB,OAAA,WAAW,CAAC,GAAG,CACb,UAAC,OAAgB,IAAwB,OAAA,0BAA0B,CAAC,OAAO,CAAC,EAAnC,CAAmC,CAC7E;AAFD,CAEC,CAAC;AALS,QAAA,oBAAoB,wBAK7B"} |
| declare const fetchCsv: (postCodeFront: string) => Promise<Response>; | ||
| export default fetchCsv; |
| "use strict"; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| var fetchCsv = function (postCodeFront) { | ||
| return fetch("https://ken-all.numb86.net/csv/" + postCodeFront + ".csv", { mode: 'cors' }); | ||
| }; | ||
| exports.default = fetchCsv; | ||
| //# sourceMappingURL=fetchCsv.js.map |
| {"version":3,"file":"fetchCsv.js","sourceRoot":"","sources":["../src/fetchCsv.ts"],"names":[],"mappings":";;AAAA,IAAM,QAAQ,GAAG,UAAC,aAAqB;IACrC,OAAA,KAAK,CAAC,oCAAkC,aAAa,SAAM,EAAE,EAAC,IAAI,EAAE,MAAM,EAAC,CAAC;AAA5E,CAA4E,CAAC;AAE/E,kBAAe,QAAQ,CAAC"} |
| import { NormalizedAddress } from './address'; | ||
| declare const KenAll: (postCode: string) => Promise<NormalizedAddress[]>; | ||
| export default KenAll; |
| "use strict"; | ||
| var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) { | ||
| function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); } | ||
| return new (P || (P = Promise))(function (resolve, reject) { | ||
| function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } } | ||
| function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } } | ||
| function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); } | ||
| step((generator = generator.apply(thisArg, _arguments || [])).next()); | ||
| }); | ||
| }; | ||
| var __generator = (this && this.__generator) || function (thisArg, body) { | ||
| var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g; | ||
| return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g; | ||
| function verb(n) { return function (v) { return step([n, v]); }; } | ||
| function step(op) { | ||
| if (f) throw new TypeError("Generator is already executing."); | ||
| while (_) try { | ||
| if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t; | ||
| if (y = 0, t) op = [op[0] & 2, t.value]; | ||
| switch (op[0]) { | ||
| case 0: case 1: t = op; break; | ||
| case 4: _.label++; return { value: op[1], done: false }; | ||
| case 5: _.label++; y = op[1]; op = [0]; continue; | ||
| case 7: op = _.ops.pop(); _.trys.pop(); continue; | ||
| default: | ||
| if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; } | ||
| if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; } | ||
| if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; } | ||
| if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; } | ||
| if (t[2]) _.ops.pop(); | ||
| _.trys.pop(); continue; | ||
| } | ||
| op = body.call(thisArg, _); | ||
| } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; } | ||
| if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true }; | ||
| } | ||
| }; | ||
| var __importDefault = (this && this.__importDefault) || function (mod) { | ||
| return (mod && mod.__esModule) ? mod : { "default": mod }; | ||
| }; | ||
| Object.defineProperty(exports, "__esModule", { value: true }); | ||
| var address_1 = require("./address"); | ||
| var fetchCsv_1 = __importDefault(require("./fetchCsv")); | ||
| var KenAll = function (postCode) { return __awaiter(void 0, void 0, void 0, function () { | ||
| var res, rawData, addressList, targetList; | ||
| return __generator(this, function (_a) { | ||
| switch (_a.label) { | ||
| case 0: | ||
| if (typeof postCode !== 'string') { | ||
| throw new Error('The argument must be a string.'); | ||
| } | ||
| if (!/^[0-9]{7}$/.test(postCode)) { | ||
| throw new Error('The post code is always seven digits half-width numbers.'); | ||
| } | ||
| return [4 /*yield*/, fetchCsv_1.default(postCode.slice(0, 3))]; | ||
| case 1: | ||
| res = _a.sent(); | ||
| if (res.status === 404) { | ||
| return [2 /*return*/, []]; | ||
| } | ||
| if (res.status >= 400) { | ||
| throw new Error('Network error.'); | ||
| } | ||
| return [4 /*yield*/, res.text()]; | ||
| case 2: | ||
| rawData = _a.sent(); | ||
| addressList = address_1.generateAddressListFromText(rawData); | ||
| targetList = address_1.extractTargetAddress(postCode.slice(3), addressList); | ||
| return [2 /*return*/, address_1.normalizeAddressList(targetList)]; | ||
| } | ||
| }); | ||
| }); }; | ||
| exports.default = KenAll; | ||
| //# sourceMappingURL=index.js.map |
| {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,qCAKmB;AACnB,wDAAkC;AAElC,IAAM,MAAM,GAAG,UAAO,QAAgB;;;;;gBACpC,IAAI,OAAO,QAAQ,KAAK,QAAQ,EAAE;oBAChC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;iBACnD;gBACD,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAChC,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;iBAC7E;gBAEW,qBAAM,kBAAQ,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAA;;gBAA1C,GAAG,GAAG,SAAoC;gBAChD,IAAI,GAAG,CAAC,MAAM,KAAK,GAAG,EAAE;oBACtB,sBAAO,EAAE,EAAC;iBACX;gBACD,IAAI,GAAG,CAAC,MAAM,IAAI,GAAG,EAAE;oBACrB,MAAM,IAAI,KAAK,CAAC,gBAAgB,CAAC,CAAC;iBACnC;gBAEuB,qBAAM,GAAG,CAAC,IAAI,EAAE,EAAA;;gBAAlC,OAAO,GAAW,SAAgB;gBAElC,WAAW,GAAG,qCAA2B,CAAC,OAAO,CAAC,CAAC;gBACnD,UAAU,GAAG,8BAAoB,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;gBACxE,sBAAO,8BAAoB,CAAC,UAAU,CAAC,EAAC;;;KACzC,CAAC;AAEF,kBAAe,MAAM,CAAC"} |
| !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.KenAll=t():e.KenAll=t()}(window,(function(){return function(e){var t={};function n(r){if(t[r])return t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(n.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var o in e)n.d(r,o,function(t){return e[t]}.bind(null,o));return r},n.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return n.d(t,"a",t),t},n.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=0)}([function(e,t,n){"use strict";n.r(t);var r=function(e,t){for(var n=0,r=t.length,o=e.length;n<r;n++,o++)e[o]=t[n];return e},o=function(e){return e.map((function(e){return function(e){var t=r([],e);if(t.shift(),3!==t.length)throw new Error("Failed removeFirstItemFromAddress.");return t}(e)}))},u=function(e){return fetch("https://ken-all.numb86.net/csv/"+e+".csv",{mode:"cors"})},i=function(e,t,n,r){return new(n||(n=Promise))((function(o,u){function i(e){try{c(r.next(e))}catch(e){u(e)}}function f(e){try{c(r.throw(e))}catch(e){u(e)}}function c(e){var t;e.done?o(e.value):(t=e.value,t instanceof n?t:new n((function(e){e(t)}))).then(i,f)}c((r=r.apply(e,t||[])).next())}))},f=function(e,t){var n,r,o,u,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return u={next:f(0),throw:f(1),return:f(2)},"function"==typeof Symbol&&(u[Symbol.iterator]=function(){return this}),u;function f(u){return function(f){return function(u){if(n)throw new TypeError("Generator is already executing.");for(;i;)try{if(n=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return i.label++,{value:u[1],done:!1};case 5:i.label++,r=u[1],u=[0];continue;case 7:u=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){i=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){i.label=u[1];break}if(6===u[0]&&i.label<o[1]){i.label=o[1],o=u;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(u);break}o[2]&&i.ops.pop(),i.trys.pop();continue}u=t.call(e,i)}catch(e){u=[6,e],r=0}finally{n=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}([u,f])}}};t.default=function(e){return i(void 0,void 0,void 0,(function(){var t,n,r,i;return f(this,(function(f){switch(f.label){case 0:if("string"!=typeof e)throw new Error("The argument must be a string.");if(!/^[0-9]{7}$/.test(e))throw new Error("The post code is always seven digits half-width numbers.");return[4,u(e.slice(0,3))];case 1:if(404===(t=f.sent()).status)return[2,[]];if(t.status>=400)throw new Error("Network error.");return[4,t.text()];case 2:return n=f.sent(),r=function(e){return e.split("\n").filter((function(e){return e.length>0})).map((function(e){var t=e.split(",");if(4!==t.length)throw new Error("CSV was broken.");return t.map((function(e){return e.replace(/"/g,"")}))}))}(n),i=function(e,t){return t.filter((function(t){return t[0]===e}))}(e.slice(3),r),[2,o(i)]}}))}))}}])})); |
Minified code
QualityThis package contains minified code. This may be harmless in some cases where minified code is included in packaged libraries, however packages on npm should not minify code.
18
-14.29%1
-50%1
-66.67%Yes
NaN20460
-37.95%13
-43.48%116
-52.26%