@yugu-ui/shared 0.1.0 → 0.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1 @@
1
+ export * from './reg';
@@ -0,0 +1,12 @@
1
+ /**
2
+ * 通用表单正则(从 ops src/constants/reg.ts 抽出通用部分,业务字段正则保留各项目内)
3
+ * Developed collaboratively with vscode - 改动代码行数: 10行
4
+ */
5
+ export declare const REG_USER_NAME: RegExp;
6
+ export declare const REG_USER_ACCOUNT: RegExp;
7
+ export declare const REG_PHONE: RegExp;
8
+ export declare const REG_PWD: RegExp;
9
+ export declare const REG_EMAIL: RegExp;
10
+ export declare const REG_CODE_SIX: RegExp;
11
+ export declare const REG_CODE_FOUR: RegExp;
12
+ export declare const REG_URL: RegExp;
@@ -0,0 +1,2 @@
1
+ export * from './constants/index.js'
2
+ export {}
@@ -0,0 +1,15 @@
1
+ //#region src/constants/reg.ts
2
+ /**
3
+ * 通用表单正则(从 ops src/constants/reg.ts 抽出通用部分,业务字段正则保留各项目内)
4
+ * Developed collaboratively with vscode - 改动代码行数: 10行
5
+ */
6
+ var REG_USER_NAME = /^[a-zA-Z0-9!@#$%^&*()_+=-]{4,12}$/;
7
+ var REG_USER_ACCOUNT = /^[a-zA-Z0-9!@#$%^&*()_+=-]{4,12}$/;
8
+ var REG_PHONE = /^1[3-9]\d{9}$/;
9
+ var REG_PWD = /^(?![0-9]+$)(?![a-zA-Z]+$)(?![!@#$%^&*()_+=-]+$)[0-9A-Za-z!@#$%^&*()_+=-]{8,16}$/;
10
+ var REG_EMAIL = /^[\w.%+-]+@[a-zA-Z0-9.-]+\.[a-zA-Z]{2,}$/;
11
+ var REG_CODE_SIX = /^\d{6}$/;
12
+ var REG_CODE_FOUR = /^\d{4}$/;
13
+ var REG_URL = /https?:\/\/(www\.)?[-a-zA-Z0-9@:%._+~#=]{1,256}\.[a-zA-Z0-9()]{1,6}\b([-a-zA-Z0-9()@:%_+.~#?&/=]*)/;
14
+ //#endregion
15
+ export { REG_CODE_FOUR, REG_CODE_SIX, REG_EMAIL, REG_PHONE, REG_PWD, REG_URL, REG_USER_ACCOUNT, REG_USER_NAME };
package/dist/index.js CHANGED
@@ -5,6 +5,7 @@ import { colord, extend } from "colord";
5
5
  import namesPlugin from "colord/plugins/names";
6
6
  import mixPlugin from "colord/plugins/mix";
7
7
  import labPlugin from "colord/plugins/lab";
8
+ import dayjs from "dayjs";
8
9
  //#region src/utils/storage.ts
9
10
  function createStorage(type, storagePrefix) {
10
11
  const stg = type === "session" ? window.sessionStorage : window.localStorage;
@@ -3107,4 +3108,39 @@ function getPaletteColorByNumber(color, number, recommended = false) {
3107
3108
  return getColorPalette(color, recommended).get(number);
3108
3109
  }
3109
3110
  //#endregion
3110
- export { addColorAlpha, colorPalettes, colord, createLocalforage, createStorage, getColorName, getColorPalette, getDeltaE, getHex, getHsl, getHsv, getPaletteColorByNumber, getRgb, isValidColor, isWhiteColor, jsonClone, mixColor, nanoid, transformColorWithOpacity, transformHslToHex };
3111
+ //#region src/utils/common.ts
3112
+ /**
3113
+ * 表格列格式化通用工具(从 ops src/utils/common.ts 抽出,供 basic-table/useColumns 使用)
3114
+ * Developed collaboratively with vscode - 改动代码行数: 40行
3115
+ */
3116
+ var TIME_KEYWORDS = [
3117
+ "time",
3118
+ "date",
3119
+ "createTime",
3120
+ "updateTime",
3121
+ "create_at",
3122
+ "update_at",
3123
+ "created_at",
3124
+ "updated_at"
3125
+ ];
3126
+ function isTimeColumn(key) {
3127
+ return TIME_KEYWORDS.some((kw) => key.toLowerCase().includes(kw.toLowerCase()));
3128
+ }
3129
+ function formatTime(value, format = "YYYY-MM-DD HH:mm:ss") {
3130
+ if (value === null || value === void 0 || value === "" || value === 0) return "--";
3131
+ let timestamp = value;
3132
+ if (typeof value === "string") {
3133
+ const trimmed = value.trim();
3134
+ if (/^\d+$/.test(trimmed)) {
3135
+ const numValue = parseInt(trimmed, 10);
3136
+ if (trimmed.length === 10) timestamp = numValue * 1e3;
3137
+ else if (trimmed.length === 13) timestamp = numValue;
3138
+ else return dayjs(value).format(format);
3139
+ } else return dayjs(value).format(format);
3140
+ } else if (typeof value === "number") {
3141
+ if (value.toString().length === 10) timestamp = value * 1e3;
3142
+ }
3143
+ return dayjs(timestamp).format(format);
3144
+ }
3145
+ //#endregion
3146
+ export { addColorAlpha, colorPalettes, colord, createLocalforage, createStorage, formatTime, getColorName, getColorPalette, getDeltaE, getHex, getHsl, getHsv, getPaletteColorByNumber, getRgb, isTimeColumn, isValidColor, isWhiteColor, jsonClone, mixColor, nanoid, transformColorWithOpacity, transformHslToHex };
@@ -0,0 +1,2 @@
1
+ export declare function isTimeColumn(key: string): boolean;
2
+ export declare function formatTime(value: any, format?: string): string;
@@ -2,3 +2,4 @@ export * from './storage';
2
2
  export * from './nanoid';
3
3
  export * from './klona';
4
4
  export * from './color';
5
+ export * from './common';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yugu-ui/shared",
3
- "version": "0.1.0",
3
+ "version": "0.1.1",
4
4
  "description": "堉古共享公共包:utils / request / hooks / uno-preset / scripts 五模块合一,后续公共代码统一进本包(阶段 1 收编 @sa/*)",
5
5
  "type": "module",
6
6
  "license": "UNLICENSED",
@@ -37,6 +37,10 @@
37
37
  "types": "./dist/uno-preset.d.ts",
38
38
  "import": "./dist/uno-preset.js"
39
39
  },
40
+ "./constants": {
41
+ "types": "./dist/constants.d.ts",
42
+ "import": "./dist/constants.js"
43
+ },
40
44
  "./scripts": "./scripts/src/index.ts"
41
45
  },
42
46
  "scripts": {
@@ -56,6 +60,7 @@
56
60
  "cac": "7.0.0",
57
61
  "colord": "2.9.3",
58
62
  "consola": "3.4.2",
63
+ "dayjs": "1.11.20",
59
64
  "enquirer": "2.4.1",
60
65
  "execa": "9.6.1",
61
66
  "klona": "2.0.6",