dbweb-common
Version:
用`yarn add dbweb-common`安装,不要忘记修改`angular.json`里的 `architect\build\options\assets`,加上
58 lines • 4.46 kB
JavaScript
/**
* @fileoverview added by tsickle
* @suppress {checkTypes,extraRequire,missingOverride,missingReturn,unusedPrivateMembers,uselessCode} checked by tsc
*/
import * as pinyin_ from 'pinyin';
/** @type {?} */
var pinyin = pinyin_;
/**
* @param {?} v
* @return {?}
*/
export function map2WithLetter(v) {
/** @type {?} */
var mapList = new Map();
v.forEach((/**
* @param {?} vv
* @return {?}
*/
function (vv) {
/** @type {?} */
var headerLetter;
// 增加对英文字段的支持
if (vv.match('^[a-zA-Z].*')) {
headerLetter = vv[0].toUpperCase();
}
else {
headerLetter = pinyin(vv, { style: pinyin.STYLE_FIRST_LETTER }).map((/**
* @param {?} s
* @return {?}
*/
function (s) { return s[0]; }))[0];
}
if (mapList.has(headerLetter)) {
mapList.get(headerLetter).push(vv);
}
else {
mapList.set(headerLetter, [vv]);
}
}));
// 排序
/** @type {?} */
var rev = (/** @type {?} */ ([]));
mapList.forEach((/**
* @param {?} columns
* @param {?} letter
* @return {?}
*/
function (columns, letter) {
rev.push((/** @type {?} */ ({ Letter: letter, Columns: columns })));
}));
return rev.sort((/**
* @param {?} a
* @param {?} b
* @return {?}
*/
function (a, b) { return a.Letter.localeCompare(b.Letter); }));
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoibWFwbGV0dGVyLmpzIiwic291cmNlUm9vdCI6Im5nOi8vZGJ3ZWItY29tbW9uLyIsInNvdXJjZXMiOlsibGliL3NlcnZpY2VzL2VsZXZpZXcvbWFwbGV0dGVyLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiI7Ozs7QUFDQSxPQUFPLEtBQUssT0FBTyxNQUFNLFFBQVEsQ0FBQzs7SUFDNUIsTUFBTSxHQUFHLE9BQU87Ozs7O0FBQ3RCLE1BQU0sVUFBVSxjQUFjLENBQUMsQ0FBVzs7UUFDbkMsT0FBTyxHQUFHLElBQUksR0FBRyxFQUFvQjtJQUMzQyxDQUFDLENBQUMsT0FBTzs7OztJQUFDLFVBQUEsRUFBRTs7WUFDUCxZQUFvQjtRQUN4QixhQUFhO1FBQ2IsSUFBSSxFQUFFLENBQUMsS0FBSyxDQUFDLGFBQWEsQ0FBQyxFQUFFO1lBQzVCLFlBQVksR0FBRyxFQUFFLENBQUMsQ0FBQyxDQUFDLENBQUMsV0FBVyxFQUFFLENBQUM7U0FDbkM7YUFBTTtZQUNOLFlBQVksR0FBRyxNQUFNLENBQUMsRUFBRSxFQUFFLEVBQUUsS0FBSyxFQUFFLE1BQU0sQ0FBQyxrQkFBa0IsRUFBRSxDQUFDLENBQUMsR0FBRzs7OztZQUFDLFVBQUEsQ0FBQyxJQUFJLE9BQUEsQ0FBQyxDQUFDLENBQUMsQ0FBQyxFQUFKLENBQUksRUFBQyxDQUFDLENBQUMsQ0FBQyxDQUFDO1NBQ2xGO1FBQ0QsSUFBSSxPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksQ0FBQyxFQUFFO1lBQzlCLE9BQU8sQ0FBQyxHQUFHLENBQUMsWUFBWSxDQUFDLENBQUMsSUFBSSxDQUFDLEVBQUUsQ0FBQyxDQUFDO1NBQ25DO2FBQU07WUFDTixPQUFPLENBQUMsR0FBRyxDQUFDLFlBQVksRUFBRSxDQUFDLEVBQUUsQ0FBQyxDQUFDLENBQUM7U0FDaEM7SUFDRixDQUFDLEVBQUMsQ0FBQzs7O1FBR0csR0FBRyxHQUFHLG1CQUFBLEVBQUUsRUFBdUI7SUFDckMsT0FBTyxDQUFDLE9BQU87Ozs7O0lBQUMsVUFBQyxPQUFPLEVBQUUsTUFBTTtRQUMvQixHQUFHLENBQUMsSUFBSSxDQUFDLG1CQUFBLEVBQUUsTUFBTSxFQUFFLE1BQU0sRUFBRSxPQUFPLEVBQUUsT0FBTyxFQUFFLEVBQXFCLENBQUMsQ0FBQztJQUNyRSxDQUFDLEVBQUMsQ0FBQztJQUNILE9BQU8sR0FBRyxDQUFDLElBQUk7Ozs7O0lBQUMsVUFBQyxDQUFDLEVBQUUsQ0FBQyxJQUFLLE9BQUEsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxhQUFhLENBQUMsQ0FBQyxDQUFDLE1BQU0sQ0FBQyxFQUFoQyxDQUFnQyxFQUFDLENBQUM7QUFDN0QsQ0FBQyIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENvbHVtbnNXaXRoTGV0dGVyIH0gZnJvbSAnLi90eXBlcy9tb2RlbCc7XHJcbmltcG9ydCAqIGFzIHBpbnlpbl8gZnJvbSAncGlueWluJztcclxuY29uc3QgcGlueWluID0gcGlueWluXztcclxuZXhwb3J0IGZ1bmN0aW9uIG1hcDJXaXRoTGV0dGVyKHY6IHN0cmluZ1tdKSB7XHJcblx0Y29uc3QgbWFwTGlzdCA9IG5ldyBNYXA8c3RyaW5nLCBzdHJpbmdbXT4oKTtcclxuXHR2LmZvckVhY2godnYgPT4ge1xyXG5cdFx0bGV0IGhlYWRlckxldHRlcjogc3RyaW5nO1xyXG5cdFx0Ly8g5aKe5Yqg5a+56Iux5paH5a2X5q6155qE5pSv5oyBXHJcblx0XHRpZiAodnYubWF0Y2goJ15bYS16QS1aXS4qJykpIHtcclxuXHRcdFx0aGVhZGVyTGV0dGVyID0gdnZbMF0udG9VcHBlckNhc2UoKTtcclxuXHRcdH0gZWxzZSB7XHJcblx0XHRcdGhlYWRlckxldHRlciA9IHBpbnlpbih2diwgeyBzdHlsZTogcGlueWluLlNUWUxFX0ZJUlNUX0xFVFRFUiB9KS5tYXAocyA9PiBzWzBdKVswXTtcclxuXHRcdH1cclxuXHRcdGlmIChtYXBMaXN0LmhhcyhoZWFkZXJMZXR0ZXIpKSB7XHJcblx0XHRcdG1hcExpc3QuZ2V0KGhlYWRlckxldHRlcikucHVzaCh2dik7XHJcblx0XHR9IGVsc2Uge1xyXG5cdFx0XHRtYXBMaXN0LnNldChoZWFkZXJMZXR0ZXIsIFt2dl0pO1xyXG5cdFx0fVxyXG5cdH0pO1xyXG5cdC8vIOaOkuW6j1xyXG5cclxuXHRjb25zdCByZXYgPSBbXSBhcyBDb2x1bW5zV2l0aExldHRlcltdO1xyXG5cdG1hcExpc3QuZm9yRWFjaCgoY29sdW1ucywgbGV0dGVyKSA9PiB7XHJcblx0XHRyZXYucHVzaCh7IExldHRlcjogbGV0dGVyLCBDb2x1bW5zOiBjb2x1bW5zIH0gYXMgQ29sdW1uc1dpdGhMZXR0ZXIpO1xyXG5cdH0pO1xyXG5cdHJldHVybiByZXYuc29ydCgoYSwgYikgPT4gYS5MZXR0ZXIubG9jYWxlQ29tcGFyZShiLkxldHRlcikpO1xyXG59XHJcbiJdfQ==