@das-fed/upf-utils 6.4.0-dev.259 → 6.4.0-dev.261

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.
Files changed (64) hide show
  1. package/api-services/es5.js +1635 -1647
  2. package/api-services/index.js +1316 -1334
  3. package/api-services/index.js.gz +0 -0
  4. package/api-services/modules/app-manage/es5.js +857 -859
  5. package/api-services/modules/app-manage/index.js +672 -676
  6. package/api-services/modules/app-manage/index.js.gz +0 -0
  7. package/api-services/modules/authentication/es5.js +1119 -1128
  8. package/api-services/modules/authentication/index.js +926 -940
  9. package/api-services/modules/authentication/index.js.gz +0 -0
  10. package/api-services/modules/bems/es5.js +1148 -1136
  11. package/api-services/modules/bems/index.js +956 -938
  12. package/api-services/modules/bems/index.js.gz +0 -0
  13. package/api-services/modules/contract/es5.js +1129 -1117
  14. package/api-services/modules/contract/index.js +941 -923
  15. package/api-services/modules/contract/index.js.gz +0 -0
  16. package/api-services/modules/duty-manage/es5.js +1126 -1114
  17. package/api-services/modules/duty-manage/index.js +940 -922
  18. package/api-services/modules/duty-manage/index.js.gz +0 -0
  19. package/api-services/modules/enterpriseright/es5.js +1128 -1119
  20. package/api-services/modules/enterpriseright/index.js +940 -926
  21. package/api-services/modules/enterpriseright/index.js.gz +0 -0
  22. package/api-services/modules/es5.js +1413 -1401
  23. package/api-services/modules/file/es5.js +1270 -1282
  24. package/api-services/modules/file/index.js +1029 -1047
  25. package/api-services/modules/file/index.js.gz +0 -0
  26. package/api-services/modules/index.js +1125 -1107
  27. package/api-services/modules/index.js.gz +0 -0
  28. package/api-services/modules/knowledge/es5.js +1143 -1131
  29. package/api-services/modules/knowledge/index.js +953 -935
  30. package/api-services/modules/knowledge/index.js.gz +0 -0
  31. package/api-services/modules/permission/es5.js +857 -859
  32. package/api-services/modules/permission/index.js +672 -676
  33. package/api-services/modules/permission/index.js.gz +0 -0
  34. package/api-services/modules/platformManage/es5.js +1151 -1141
  35. package/api-services/modules/platformManage/index.js +950 -936
  36. package/api-services/modules/platformManage/index.js.gz +0 -0
  37. package/api-services/modules/portal/es5.js +867 -864
  38. package/api-services/modules/portal/index.js +679 -675
  39. package/api-services/modules/portal/index.js.gz +0 -0
  40. package/api-services/modules/space-manage/es5.js +1129 -1117
  41. package/api-services/modules/space-manage/index.js +941 -923
  42. package/api-services/modules/space-manage/index.js.gz +0 -0
  43. package/api-services/modules/supplychain-manage/es5.js +1117 -1129
  44. package/api-services/modules/supplychain-manage/index.js +923 -941
  45. package/api-services/modules/supplychain-manage/index.js.gz +0 -0
  46. package/api-services/modules/systemConfiguration/es5.js +857 -859
  47. package/api-services/modules/systemConfiguration/index.js +672 -676
  48. package/api-services/modules/systemConfiguration/index.js.gz +0 -0
  49. package/api-services/modules/tool/es5.js +1117 -1129
  50. package/api-services/modules/tool/index.js +923 -941
  51. package/api-services/modules/tool/index.js.gz +0 -0
  52. package/api-services/src/create-service/es5.js +1127 -1115
  53. package/api-services/src/create-service/index.js +940 -922
  54. package/api-services/src/create-service/index.js.gz +0 -0
  55. package/common-info/es5.js +1310 -1319
  56. package/common-info/index.js +1087 -1101
  57. package/common-info/index.js.gz +0 -0
  58. package/common-tools/timezone-format/get-iana-data/dayjs-timezone-iana-plugin.d.ts +72 -0
  59. package/common-tools/timezone-format/get-iana-data/iana-api-fetch.d.ts +18 -0
  60. package/common-tools/timezone-format/get-iana-data/moment-iana-loader.d.ts +30 -0
  61. package/create-api-service/es5.js +1128 -1116
  62. package/create-api-service/index.js +941 -923
  63. package/create-api-service/index.js.gz +0 -0
  64. package/package.json +3 -3
Binary file
@@ -0,0 +1,72 @@
1
+ export interface TimeZoneRule {
2
+ u: number[];
3
+ o: number[];
4
+ }
5
+ export interface IanaDb {
6
+ [zone: string]: TimeZoneRule;
7
+ }
8
+ /** `dayjs.extend` 时无需传 IANA 数据;须先 `await plugin.preloadFromApi()`(默认请求内置路径并带 accessToken) */
9
+ export type DayjsTimezoneIanaOption = undefined;
10
+ export interface PackedIanaData {
11
+ version?: string;
12
+ zones: string[];
13
+ links?: string[];
14
+ }
15
+ export type ParsePackedIanaResponse = (json: unknown) => PackedIanaData;
16
+ /** 默认 `fetch` 请求的第二个参数;自定义 `fetchJson` 时也会传入 */
17
+ export type IanaFetchJson = (url: string, init?: RequestInit) => Promise<unknown>;
18
+ export interface PreloadDayjsIanaOptions {
19
+ /** 默认 `/api/admin/basic-application/sys-info/v1/license/time-zone-packed-data`;未传则请求内置地址 */
20
+ url?: string;
21
+ /**
22
+ * 设置 `Authorization`;未传时从 `localStorage.getItem('accessToken')` 生成 `Bearer <token>`。
23
+ * 传 `''` 表示不附加鉴权头。
24
+ */
25
+ authorization?: string;
26
+ /** 额外请求头;与 `authorization` 合并,同名时以 `authorization` 为准 */
27
+ headers?: Record<string, string>;
28
+ /** 默认使用全局 `fetch`;Node 等环境可传入实现 */
29
+ fetchJson?: IanaFetchJson;
30
+ /** 接口外层包裹时在此解析为 `{ version?, zones, links? }` */
31
+ parseResponse?: ParsePackedIanaResponse;
32
+ }
33
+ type DayjsLike = {
34
+ utc: () => DayjsLike;
35
+ valueOf: () => number;
36
+ utcOffset: (offset: number, keepLocalTime?: boolean) => DayjsLike;
37
+ tz: (zone?: string, keepLocalTime?: boolean) => DayjsLike;
38
+ };
39
+ type DayjsClassLike = {
40
+ prototype: {
41
+ tz?: (zone?: string) => DayjsLike;
42
+ };
43
+ };
44
+ type DayjsFactoryLike = {
45
+ (value?: unknown, format?: string): DayjsLike;
46
+ utc?: (value?: unknown, format?: string) => DayjsLike;
47
+ tz?: DayjsTimezoneFactoryLike;
48
+ };
49
+ type DayjsTimezoneFactoryLike = {
50
+ (value?: unknown, timezoneOrFormat?: string, timezone?: string): DayjsLike;
51
+ setDefault?: (zone: string) => void;
52
+ guess?: () => string;
53
+ };
54
+ type DayjsPlugin = (option: DayjsTimezoneIanaOption | undefined, dayjsClass: DayjsClassLike, dayjsFactory: DayjsFactoryLike) => void;
55
+ export type DayjsTimezoneIanaPlugin = DayjsPlugin & {
56
+ /** 请求接口并解析 packed 数据,写入内部缓存;须在 `dayjs.extend(plugin)` 之前 await 完成 */
57
+ preloadFromApi: (options?: PreloadDayjsIanaOptions) => Promise<PackedIanaData>;
58
+ /** 直接写入已获取的 packed 数据,避免业务层为了复用接口结果再发起请求 */
59
+ preloadFromData: (packedData: PackedIanaData) => PackedIanaData;
60
+ /** 返回最近一次写入的 packed 数据,供公共工具同步已知时区集合 */
61
+ getCachedPackedData: () => PackedIanaData | null;
62
+ /** 清空内部缓存(测试或切换数据源时使用) */
63
+ clearIanaCache: () => void;
64
+ };
65
+ export declare function assertPackedIanaData(json: unknown): PackedIanaData;
66
+ export declare function preloadDayjsIanaFromData(packedData: PackedIanaData): PackedIanaData;
67
+ export declare function getCachedDayjsPackedIanaData(): PackedIanaData | null;
68
+ export declare function preloadDayjsIanaFromApi(options?: PreloadDayjsIanaOptions): Promise<PackedIanaData>;
69
+ export declare function clearDayjsIanaCache(): void;
70
+ export declare function createIanaDbFromPackedData(packedData: PackedIanaData): IanaDb;
71
+ declare const plugin: DayjsTimezoneIanaPlugin;
72
+ export default plugin;
@@ -0,0 +1,18 @@
1
+ export declare const TIME_ZONE_PACKED_DATA_URL: string;
2
+ /**
3
+ * 从浏览器 localStorage 读取 accessToken(非浏览器或无此项时返回 null)。
4
+ */
5
+ export declare function getAccessTokenFromLocalStorage(): string | null;
6
+ /**
7
+ * 默认 Authorization:`Bearer <accessToken>`;若 token 已含 `Bearer ` 则原样使用。
8
+ */
9
+ export declare function getDefaultIanaAuthorization(): string | undefined;
10
+ /**
11
+ * 构造 IANA 接口请求的 fetch init(Authorization 与其它头)。
12
+ * - 未传 `authorization` 时,自动使用 `localStorage.getItem('accessToken')` 生成 `Authorization`。
13
+ * - 传入 `authorization: ''` 表示不附加 Authorization(用于测试等场景)。
14
+ */
15
+ export declare function buildIanaFetchInit(options?: {
16
+ authorization?: string;
17
+ headers?: Record<string, string>;
18
+ }): RequestInit | undefined;
@@ -0,0 +1,30 @@
1
+ /**
2
+ * 将接口返回的 packed IANA 数据(与 moment-timezone 数据格式一致)注册到当前 moment 实例上。
3
+ * 业务侧须先:`import moment from 'moment'; import 'moment-timezone';`,再传入同一个 `moment`。
4
+ */
5
+ export interface PackedIanaTzData {
6
+ version?: string;
7
+ zones: string[];
8
+ links?: string[];
9
+ }
10
+ export type MomentTimezoneApi = {
11
+ load: (data: PackedIanaTzData) => void;
12
+ };
13
+ export interface MomentWithTimezone {
14
+ tz: MomentTimezoneApi | (((...args: any[]) => unknown) & MomentTimezoneApi);
15
+ }
16
+ export declare function assertPackedIanaTzData(json: unknown): PackedIanaTzData;
17
+ export declare function loadIanaData(moment: MomentWithTimezone, data: PackedIanaTzData): void;
18
+ export type ParseIanaResponse = (json: unknown) => PackedIanaTzData;
19
+ export type IanaMomentFetchJson = (url: string, init?: RequestInit) => Promise<unknown>;
20
+ export interface LoadIanaFromApiOptions {
21
+ /** 设置请求头 `Authorization`(完整值,如 `Bearer <token>`) */
22
+ authorization?: string;
23
+ /** 额外请求头;与 `authorization` 合并,同名时以 `authorization` 为准 */
24
+ headers?: Record<string, string>;
25
+ /** 自定义请求,默认使用全局 fetch */
26
+ fetchJson?: IanaMomentFetchJson;
27
+ /** 当接口外层有包裹时,在此取出 { version, zones, links } */
28
+ parseResponse?: ParseIanaResponse;
29
+ }
30
+ export declare function loadIanaFromApi(moment: MomentWithTimezone, urlOrOptions?: string | LoadIanaFromApiOptions, maybeOptions?: LoadIanaFromApiOptions): Promise<PackedIanaTzData>;