UNPKG

dbweb-common

Version:

用`yarn add dbweb-common`安装,不要忘记修改`angular.json`里的 `architect\build\options\assets`,加上

58 lines 4.41 kB
/** * @fileoverview added by tsickle * @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc */ import * as pinyin_ from 'pinyin'; /** @type {?} */ const pinyin = pinyin_; /** * @param {?} v * @return {?} */ export function map2WithLetter(v) { /** @type {?} */ const mapList = new Map(); v.forEach((/** * @param {?} vv * @return {?} */ vv => { /** @type {?} */ let headerLetter; // 增加对英文字段的支持 if (vv.match('^[a-zA-Z].*')) { headerLetter = vv[0].toUpperCase(); } else { headerLetter = pinyin(vv, { style: pinyin.STYLE_FIRST_LETTER }).map((/** * @param {?} s * @return {?} */ s => s[0]))[0]; } if (mapList.has(headerLetter)) { mapList.get(headerLetter).push(vv); } else { mapList.set(headerLetter, [vv]); } })); // 排序 /** @type {?} */ const rev = (/** @type {?} */ ([])); mapList.forEach((/** * @param {?} columns * @param {?} letter * @return {?} */ (columns, letter) => { rev.push((/** @type {?} */ ({ Letter: letter, Columns: columns }))); })); return rev.sort((/** * @param {?} a * @param {?} b * @return {?} */ (a, b) => a.Letter.localeCompare(b.Letter))); } //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwbGV0dGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vZGJ3ZWItY29tbW9uLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2VsZXZpZXcvbWFwbGV0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQzs7TUFDNUIsTUFBTSxHQUFHLE9BQU87Ozs7O0FBQ3RCLE1BQU0sVUFBVSxjQUFjLENBQUMsQ0FBVzs7VUFDbkMsT0FBTyxHQUFHLElBQUksR0FBRyxFQUFvQjtJQUMzQyxDQUFDLENBQUMsT0FBTzs7OztJQUFDLEVBQUUsQ0FBQyxFQUFFOztZQUNWLFlBQW9CO1FBQ3hCLGFBQWE7UUFDYixJQUFJLEVBQUUsQ0FBQyxLQUFLLENBQUMsYUFBYSxDQUFDLEVBQUU7WUFDNUIsWUFBWSxHQUFHLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxXQUFXLEVBQUUsQ0FBQztTQUNuQzthQUFNO1lBQ04sWUFBWSxHQUFHLE1BQU0sQ0FBQyxFQUFFLEVBQUUsRUFBRSxLQUFLLEVBQUUsTUFBTSxDQUFDLGtCQUFrQixFQUFFLENBQUMsQ0FBQyxHQUFHOzs7O1lBQUMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUMsQ0FBQyxDQUFDLEVBQUMsQ0FBQyxDQUFDLENBQUMsQ0FBQztTQUNsRjtRQUNELElBQUksT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLENBQUMsRUFBRTtZQUM5QixPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxDQUFDLElBQUksQ0FBQyxFQUFFLENBQUMsQ0FBQztTQUNuQzthQUFNO1lBQ04sT0FBTyxDQUFDLEdBQUcsQ0FBQyxZQUFZLEVBQUUsQ0FBQyxFQUFFLENBQUMsQ0FBQyxDQUFDO1NBQ2hDO0lBQ0YsQ0FBQyxFQUFDLENBQUM7OztVQUdHLEdBQUcsR0FBRyxtQkFBQSxFQUFFLEVBQXVCO0lBQ3JDLE9BQU8sQ0FBQyxPQUFPOzs7OztJQUFDLENBQUMsT0FBTyxFQUFFLE1BQU0sRUFBRSxFQUFFO1FBQ25DLEdBQUcsQ0FBQyxJQUFJLENBQUMsbUJBQUEsRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLE9BQU8sRUFBRSxPQUFPLEVBQUUsRUFBcUIsQ0FBQyxDQUFDO0lBQ3JFLENBQUMsRUFBQyxDQUFDO0lBQ0gsT0FBTyxHQUFHLENBQUMsSUFBSTs7Ozs7SUFBQyxDQUFDLENBQUMsRUFBRSxDQUFDLEVBQUUsRUFBRSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsYUFBYSxDQUFDLENBQUMsQ0FBQyxNQUFNLENBQUMsRUFBQyxDQUFDO0FBQzdELENBQUMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBDb2x1bW5zV2l0aExldHRlciB9IGZyb20gJy4vdHlwZXMvbW9kZWwnO1xyXG5pbXBvcnQgKiBhcyBwaW55aW5fIGZyb20gJ3Bpbnlpbic7XHJcbmNvbnN0IHBpbnlpbiA9IHBpbnlpbl87XHJcbmV4cG9ydCBmdW5jdGlvbiBtYXAyV2l0aExldHRlcih2OiBzdHJpbmdbXSkge1xyXG5cdGNvbnN0IG1hcExpc3QgPSBuZXcgTWFwPHN0cmluZywgc3RyaW5nW10+KCk7XHJcblx0di5mb3JFYWNoKHZ2ID0+IHtcclxuXHRcdGxldCBoZWFkZXJMZXR0ZXI6IHN0cmluZztcclxuXHRcdC8vIOWinuWKoOWvueiLseaWh+Wtl+auteeahOaUr+aMgVxyXG5cdFx0aWYgKHZ2Lm1hdGNoKCdeW2EtekEtWl0uKicpKSB7XHJcblx0XHRcdGhlYWRlckxldHRlciA9IHZ2WzBdLnRvVXBwZXJDYXNlKCk7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRoZWFkZXJMZXR0ZXIgPSBwaW55aW4odnYsIHsgc3R5bGU6IHBpbnlpbi5TVFlMRV9GSVJTVF9MRVRURVIgfSkubWFwKHMgPT4gc1swXSlbMF07XHJcblx0XHR9XHJcblx0XHRpZiAobWFwTGlzdC5oYXMoaGVhZGVyTGV0dGVyKSkge1xyXG5cdFx0XHRtYXBMaXN0LmdldChoZWFkZXJMZXR0ZXIpLnB1c2godnYpO1xyXG5cdFx0fSBlbHNlIHtcclxuXHRcdFx0bWFwTGlzdC5zZXQoaGVhZGVyTGV0dGVyLCBbdnZdKTtcclxuXHRcdH1cclxuXHR9KTtcclxuXHQvLyDmjpLluo9cclxuXHJcblx0Y29uc3QgcmV2ID0gW10gYXMgQ29sdW1uc1dpdGhMZXR0ZXJbXTtcclxuXHRtYXBMaXN0LmZvckVhY2goKGNvbHVtbnMsIGxldHRlcikgPT4ge1xyXG5cdFx0cmV2LnB1c2goeyBMZXR0ZXI6IGxldHRlciwgQ29sdW1uczogY29sdW1ucyB9IGFzIENvbHVtbnNXaXRoTGV0dGVyKTtcclxuXHR9KTtcclxuXHRyZXR1cm4gcmV2LnNvcnQoKGEsIGIpID0+IGEuTGV0dGVyLmxvY2FsZUNvbXBhcmUoYi5MZXR0ZXIpKTtcclxufVxyXG4iXX0=