mingyu-core 0.1.11 → 0.1.13
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.
- package/README.md +6 -6
- package/dist/calendar/timeManager.d.ts +2 -1
- package/dist/calendar/timeManager.d.ts.map +1 -1
- package/dist/calendar/timeManager.js +4 -2
- package/dist/calendar/timeManager.js.map +1 -1
- package/dist/divination/algorithms/lenormand.d.ts +2 -1
- package/dist/divination/algorithms/lenormand.d.ts.map +1 -1
- package/dist/divination/algorithms/lenormand.js +6 -4
- package/dist/divination/algorithms/lenormand.js.map +1 -1
- package/dist/divination/algorithms/meihua/helpers/methods.d.ts +3 -10
- package/dist/divination/algorithms/meihua/helpers/methods.d.ts.map +1 -1
- package/dist/divination/algorithms/meihua/helpers/methods.js +6 -115
- package/dist/divination/algorithms/meihua/helpers/methods.js.map +1 -1
- package/dist/divination/algorithms/meihua/index.d.ts +3 -3
- package/dist/divination/algorithms/meihua/index.d.ts.map +1 -1
- package/dist/divination/algorithms/meihua/index.js +5 -7
- package/dist/divination/algorithms/meihua/index.js.map +1 -1
- package/dist/divination/algorithms/ssgw.d.ts +3 -1
- package/dist/divination/algorithms/ssgw.d.ts.map +1 -1
- package/dist/divination/algorithms/ssgw.js +6 -21
- package/dist/divination/algorithms/ssgw.js.map +1 -1
- package/dist/divination/divination-helpers.d.ts +0 -1
- package/dist/divination/divination-helpers.d.ts.map +1 -1
- package/dist/divination/divination-helpers.js +0 -11
- package/dist/divination/divination-helpers.js.map +1 -1
- package/dist/divination/tarot-data.d.ts +0 -10
- package/dist/divination/tarot-data.d.ts.map +1 -1
- package/dist/divination/tarot-data.js +8 -93
- package/dist/divination/tarot-data.js.map +1 -1
- package/dist/divination/tarot.d.ts +3 -42
- package/dist/divination/tarot.d.ts.map +1 -1
- package/dist/divination/tarot.js +11 -48
- package/dist/divination/tarot.js.map +1 -1
- package/dist/shared/random.d.ts +10 -0
- package/dist/shared/random.d.ts.map +1 -0
- package/dist/shared/random.js +45 -0
- package/dist/shared/random.js.map +1 -0
- package/dist/types/divination.d.ts +4 -26
- package/dist/types/divination.d.ts.map +1 -1
- package/package.json +7 -12
|
@@ -6,17 +6,6 @@
|
|
|
6
6
|
* 梅花易数专用工具函数
|
|
7
7
|
*/
|
|
8
8
|
export const MeihuaHelpers = {
|
|
9
|
-
getExternalOmenSourceLabel(source) {
|
|
10
|
-
const sourceLabels = {
|
|
11
|
-
direction: '方位',
|
|
12
|
-
person: '人物',
|
|
13
|
-
animal: '动物',
|
|
14
|
-
object: '物件',
|
|
15
|
-
sound: '声音',
|
|
16
|
-
color: '颜色',
|
|
17
|
-
};
|
|
18
|
-
return sourceLabels[source] || '外应';
|
|
19
|
-
},
|
|
20
9
|
getSeasonByJieQi(jieQi) {
|
|
21
10
|
const seasonByJieQi = {
|
|
22
11
|
立春: '春',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"divination-helpers.js","sourceRoot":"","sources":["../../src/divination/divination-helpers.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,
|
|
1
|
+
{"version":3,"file":"divination-helpers.js","sourceRoot":"","sources":["../../src/divination/divination-helpers.ts"],"names":[],"mappings":"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"}
|
|
@@ -15,70 +15,60 @@ export declare const tarotSpreads: {
|
|
|
15
15
|
description: string;
|
|
16
16
|
positions: string[];
|
|
17
17
|
cardCount: number;
|
|
18
|
-
defaultQuestions: string[];
|
|
19
18
|
};
|
|
20
19
|
three: {
|
|
21
20
|
name: string;
|
|
22
21
|
description: string;
|
|
23
22
|
positions: string[];
|
|
24
23
|
cardCount: number;
|
|
25
|
-
defaultQuestions: string[];
|
|
26
24
|
};
|
|
27
25
|
love: {
|
|
28
26
|
name: string;
|
|
29
27
|
description: string;
|
|
30
28
|
positions: string[];
|
|
31
29
|
cardCount: number;
|
|
32
|
-
defaultQuestions: string[];
|
|
33
30
|
};
|
|
34
31
|
career: {
|
|
35
32
|
name: string;
|
|
36
33
|
description: string;
|
|
37
34
|
positions: string[];
|
|
38
35
|
cardCount: number;
|
|
39
|
-
defaultQuestions: string[];
|
|
40
36
|
};
|
|
41
37
|
decision: {
|
|
42
38
|
name: string;
|
|
43
39
|
description: string;
|
|
44
40
|
positions: string[];
|
|
45
41
|
cardCount: number;
|
|
46
|
-
defaultQuestions: string[];
|
|
47
42
|
};
|
|
48
43
|
celtic: {
|
|
49
44
|
name: string;
|
|
50
45
|
description: string;
|
|
51
46
|
positions: string[];
|
|
52
47
|
cardCount: number;
|
|
53
|
-
defaultQuestions: string[];
|
|
54
48
|
};
|
|
55
49
|
chakra: {
|
|
56
50
|
name: string;
|
|
57
51
|
description: string;
|
|
58
52
|
positions: string[];
|
|
59
53
|
cardCount: number;
|
|
60
|
-
defaultQuestions: string[];
|
|
61
54
|
};
|
|
62
55
|
year: {
|
|
63
56
|
name: string;
|
|
64
57
|
description: string;
|
|
65
58
|
positions: string[];
|
|
66
59
|
cardCount: number;
|
|
67
|
-
defaultQuestions: string[];
|
|
68
60
|
};
|
|
69
61
|
mindBodySpirit: {
|
|
70
62
|
name: string;
|
|
71
63
|
description: string;
|
|
72
64
|
positions: string[];
|
|
73
65
|
cardCount: number;
|
|
74
|
-
defaultQuestions: string[];
|
|
75
66
|
};
|
|
76
67
|
horseshoe: {
|
|
77
68
|
name: string;
|
|
78
69
|
description: string;
|
|
79
70
|
positions: string[];
|
|
80
71
|
cardCount: number;
|
|
81
|
-
defaultQuestions: string[];
|
|
82
72
|
};
|
|
83
73
|
};
|
|
84
74
|
//# sourceMappingURL=tarot-data.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tarot-data.d.ts","sourceRoot":"","sources":["../../src/divination/tarot-data.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"tarot-data.d.ts","sourceRoot":"","sources":["../../src/divination/tarot-data.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU;;;;;;;;;;IAwFtB,CAAC;AAEF,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAqGxB,CAAC"}
|
|
@@ -1,4 +1,3 @@
|
|
|
1
|
-
// 塔罗牌数据 - 与原项目完全一致,78张完整牌组
|
|
2
1
|
export const tarotCards = [
|
|
3
2
|
// 大阿卡纳 (22张)
|
|
4
3
|
{ name: '愚者', type: '大阿卡纳', number: 1 },
|
|
@@ -84,85 +83,40 @@ export const tarotCards = [
|
|
|
84
83
|
{ name: '钱币王后', type: '小阿卡纳', suit: '钱币', number: 77 },
|
|
85
84
|
{ name: '钱币国王', type: '小阿卡纳', suit: '钱币', number: 78 },
|
|
86
85
|
];
|
|
87
|
-
// 塔罗牌阵定义
|
|
88
86
|
export const tarotSpreads = {
|
|
89
87
|
single: {
|
|
90
88
|
name: '单牌指引',
|
|
91
|
-
description: '
|
|
89
|
+
description: '以一张牌给出当前问题的核心线索,适合快速聚焦当下状态。',
|
|
92
90
|
positions: ['当前指引'],
|
|
93
91
|
cardCount: 1,
|
|
94
|
-
defaultQuestions: [
|
|
95
|
-
'今天我需要关注什么?',
|
|
96
|
-
'我现在最需要的指引是什么?',
|
|
97
|
-
'宇宙想要告诉我什么?',
|
|
98
|
-
'我应该如何面对当前的困惑?',
|
|
99
|
-
'今日的能量指引',
|
|
100
|
-
],
|
|
101
92
|
},
|
|
102
93
|
three: {
|
|
103
94
|
name: '时间流牌阵',
|
|
104
|
-
description: '
|
|
95
|
+
description: '按过去、现在、未来梳理事件脉络,适合观察趋势推进。',
|
|
105
96
|
positions: ['过去', '现在', '未来'],
|
|
106
97
|
cardCount: 3,
|
|
107
|
-
defaultQuestions: [
|
|
108
|
-
'我的人生发展趋势如何?',
|
|
109
|
-
'这个问题的来龙去脉是什么?',
|
|
110
|
-
'我的过去如何影响现在和未来?',
|
|
111
|
-
'我应该如何规划接下来的发展?',
|
|
112
|
-
'时间会如何改变我的处境?',
|
|
113
|
-
],
|
|
114
98
|
},
|
|
115
99
|
love: {
|
|
116
100
|
name: '爱情牌阵',
|
|
117
|
-
description: '
|
|
101
|
+
description: '从双方状态、关系现状、建议与走向观察亲密关系。',
|
|
118
102
|
positions: ['你的内心', '对方的内心', '关系现状', '发展建议', '未来走向'],
|
|
119
103
|
cardCount: 5,
|
|
120
|
-
defaultQuestions: [
|
|
121
|
-
'我和TA的感情会如何发展?',
|
|
122
|
-
'TA对我的真实想法是什么?',
|
|
123
|
-
'我们的关系现在处于什么状态?',
|
|
124
|
-
'如何改善我们之间的关系?',
|
|
125
|
-
'我的感情生活会有什么变化?',
|
|
126
|
-
'我应该如何表达我的感情?',
|
|
127
|
-
'这段关系值得我继续投入吗?',
|
|
128
|
-
'我们之间的问题如何解决?',
|
|
129
|
-
],
|
|
130
104
|
},
|
|
131
105
|
career: {
|
|
132
106
|
name: '事业牌阵',
|
|
133
|
-
description: '
|
|
107
|
+
description: '从现状、优势、挑战、机会、行动与结果观察事业议题。',
|
|
134
108
|
positions: ['当前状况', '优势', '挑战', '机会', '行动建议', '结果'],
|
|
135
109
|
cardCount: 6,
|
|
136
|
-
defaultQuestions: [
|
|
137
|
-
'我的事业发展前景如何?',
|
|
138
|
-
'我应该换工作吗?',
|
|
139
|
-
'如何在职场中获得更好的发展?',
|
|
140
|
-
'我的职业规划应该如何调整?',
|
|
141
|
-
'这个工作机会适合我吗?',
|
|
142
|
-
'如何提升我的职场竞争力?',
|
|
143
|
-
'我的事业瓶颈如何突破?',
|
|
144
|
-
'什么时候是跳槽的最佳时机?',
|
|
145
|
-
],
|
|
146
110
|
},
|
|
147
111
|
decision: {
|
|
148
112
|
name: '选择牌阵',
|
|
149
|
-
description: '
|
|
113
|
+
description: '比较两个选择的条件与走向,适合需要权衡取舍的问题。',
|
|
150
114
|
positions: ['现状', '选择A', '选择A结果', '选择B', '选择B结果', '最佳建议'],
|
|
151
115
|
cardCount: 6,
|
|
152
|
-
defaultQuestions: [
|
|
153
|
-
'我应该选择A还是B?',
|
|
154
|
-
'这两个选择哪个更适合我?',
|
|
155
|
-
'我应该接受这个offer吗?',
|
|
156
|
-
'搬家还是留在原地?',
|
|
157
|
-
'继续这段关系还是分手?',
|
|
158
|
-
'创业还是继续打工?',
|
|
159
|
-
'出国还是留在国内发展?',
|
|
160
|
-
'现在投资还是继续观望?',
|
|
161
|
-
],
|
|
162
116
|
},
|
|
163
117
|
celtic: {
|
|
164
118
|
name: '凯尔特十字',
|
|
165
|
-
description: '
|
|
119
|
+
description: '从背景、阻碍、环境、态度与结果多层观察复杂问题。',
|
|
166
120
|
positions: [
|
|
167
121
|
'当前状况',
|
|
168
122
|
'挑战/阻碍',
|
|
@@ -176,19 +130,10 @@ export const tarotSpreads = {
|
|
|
176
130
|
'最终结果',
|
|
177
131
|
],
|
|
178
132
|
cardCount: 10,
|
|
179
|
-
defaultQuestions: [
|
|
180
|
-
'我人生的整体状况如何?',
|
|
181
|
-
'这个复杂问题的全面分析',
|
|
182
|
-
'我的人生方向是否正确?',
|
|
183
|
-
'如何解决我面临的复杂困境?',
|
|
184
|
-
'我的人生会有什么重大转变?',
|
|
185
|
-
'深度分析我的人际关系',
|
|
186
|
-
'我的内心世界和外在环境如何平衡?',
|
|
187
|
-
],
|
|
188
133
|
},
|
|
189
134
|
chakra: {
|
|
190
135
|
name: '七脉轮牌阵',
|
|
191
|
-
description: '
|
|
136
|
+
description: '按七个脉轮位置观察身心状态与能量侧重。',
|
|
192
137
|
positions: [
|
|
193
138
|
'海底轮(生存)',
|
|
194
139
|
'脐轮(情感)',
|
|
@@ -199,19 +144,10 @@ export const tarotSpreads = {
|
|
|
199
144
|
'顶轮(灵性)',
|
|
200
145
|
],
|
|
201
146
|
cardCount: 7,
|
|
202
|
-
defaultQuestions: [
|
|
203
|
-
'我的身心灵状态如何?',
|
|
204
|
-
'如何平衡我的各个脉轮能量?',
|
|
205
|
-
'我的能量阻塞在哪里?',
|
|
206
|
-
'如何提升我的整体能量状态?',
|
|
207
|
-
'我的灵性成长方向是什么?',
|
|
208
|
-
'如何实现内在的和谐统一?',
|
|
209
|
-
'我需要在哪个层面加强修炼?',
|
|
210
|
-
],
|
|
211
147
|
},
|
|
212
148
|
year: {
|
|
213
149
|
name: '年运牌阵',
|
|
214
|
-
description: '
|
|
150
|
+
description: '按年度阶段与主题位置观察一整年的重点变化。',
|
|
215
151
|
positions: [
|
|
216
152
|
'整体运势',
|
|
217
153
|
'1-3月',
|
|
@@ -227,27 +163,12 @@ export const tarotSpreads = {
|
|
|
227
163
|
'机遇',
|
|
228
164
|
],
|
|
229
165
|
cardCount: 12,
|
|
230
|
-
defaultQuestions: [
|
|
231
|
-
'我今年的整体运势如何?',
|
|
232
|
-
'新的一年我应该关注什么?',
|
|
233
|
-
'今年我的爱情和事业会如何发展?',
|
|
234
|
-
'今年我会遇到什么机遇和挑战?',
|
|
235
|
-
'如何让今年过得更加顺利?',
|
|
236
|
-
'今年我的财运状况如何?',
|
|
237
|
-
'今年我需要特别注意什么?',
|
|
238
|
-
],
|
|
239
166
|
},
|
|
240
167
|
mindBodySpirit: {
|
|
241
168
|
name: '身心灵牌阵',
|
|
242
169
|
description: '检视个人在思想、情感和精神层面的状态,找到内在平衡与和谐。',
|
|
243
170
|
positions: ['心灵/思想', '身体/行动', '精神/灵性'],
|
|
244
171
|
cardCount: 3,
|
|
245
|
-
defaultQuestions: [
|
|
246
|
-
'我当前的身心灵状态如何?',
|
|
247
|
-
'我需要在哪个层面进行调整?',
|
|
248
|
-
'如何获得内在的平衡?',
|
|
249
|
-
'我的思想、行动和灵性是否一致?',
|
|
250
|
-
],
|
|
251
172
|
},
|
|
252
173
|
horseshoe: {
|
|
253
174
|
name: '马蹄铁牌阵',
|
|
@@ -262,12 +183,6 @@ export const tarotSpreads = {
|
|
|
262
183
|
'最终的结果',
|
|
263
184
|
],
|
|
264
185
|
cardCount: 7,
|
|
265
|
-
defaultQuestions: [
|
|
266
|
-
'关于[某件事],我需要知道些什么?',
|
|
267
|
-
'这个状况的全面分析是怎样的?',
|
|
268
|
-
'我应该如何应对当前的挑战?',
|
|
269
|
-
'这个决定的最终结果会是什么?',
|
|
270
|
-
],
|
|
271
186
|
},
|
|
272
187
|
};
|
|
273
188
|
//# sourceMappingURL=tarot-data.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tarot-data.js","sourceRoot":"","sources":["../../src/divination/tarot-data.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"tarot-data.js","sourceRoot":"","sources":["../../src/divination/tarot-data.ts"],"names":[],"mappings":"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,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IAEtD,aAAa;IACb,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IAEtD,aAAa;IACb,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IAEtD,aAAa;IACb,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACtD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,EAAE,EAAE;IACrD,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,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"}
|
|
@@ -1,19 +1,7 @@
|
|
|
1
1
|
import { tarotSpreads } from './tarot-data';
|
|
2
|
+
import type { RandomOptions } from '../shared/random';
|
|
2
3
|
export { tarotSpreads } from './tarot-data';
|
|
3
|
-
|
|
4
|
-
* 抽取单张塔罗牌
|
|
5
|
-
*
|
|
6
|
-
* 从 78 张塔罗牌中随机洗牌后抽取第一张,用于单牌指引类占卜。
|
|
7
|
-
*
|
|
8
|
-
* @returns 一张塔罗牌,含牌名、正逆位、位置(固定为"当前指引")和时间戳。
|
|
9
|
-
*
|
|
10
|
-
* @example
|
|
11
|
-
* ```ts
|
|
12
|
-
* const result = drawSingleCard();
|
|
13
|
-
* // => { card: { number: 1, name: '魔术师', ... }, isReversed: false, position: '当前指引', timestamp: 1700000000000 }
|
|
14
|
-
* ```
|
|
15
|
-
*/
|
|
16
|
-
export declare function drawSingleCard(): {
|
|
4
|
+
export declare function drawSingleCard(options?: RandomOptions): {
|
|
17
5
|
card: {
|
|
18
6
|
name: string;
|
|
19
7
|
type: string;
|
|
@@ -29,38 +17,11 @@ export declare function drawSingleCard(): {
|
|
|
29
17
|
position: string;
|
|
30
18
|
timestamp: number;
|
|
31
19
|
};
|
|
32
|
-
|
|
33
|
-
* 抽取指定牌阵的多张塔罗牌
|
|
34
|
-
*
|
|
35
|
-
* 根据 spreadType 从已定义牌阵中取对应数量和位置的牌。
|
|
36
|
-
* 支持 single、three、love、career、celtic 等十余种牌阵。
|
|
37
|
-
*
|
|
38
|
-
* @param spreadType 牌阵类型,必须是 tarotSpreads 中定义的键名。
|
|
39
|
-
* @returns 牌阵结果,含牌名、正逆位、位置名称和时间戳。
|
|
40
|
-
*
|
|
41
|
-
* @example
|
|
42
|
-
* ```ts
|
|
43
|
-
* const result = drawSpreadCards('three');
|
|
44
|
-
* // => { spreadType: 'three', spreadName: '三张牌阵', cards: [...] }
|
|
45
|
-
* ```
|
|
46
|
-
*/
|
|
47
|
-
export declare function drawSpreadCards(spreadType: keyof typeof tarotSpreads): {
|
|
20
|
+
export declare function drawSpreadCards(spreadType: keyof typeof tarotSpreads, options?: RandomOptions): {
|
|
48
21
|
spreadType: "year" | "career" | "single" | "three" | "love" | "decision" | "celtic" | "chakra" | "mindBodySpirit" | "horseshoe";
|
|
49
22
|
spreadName: string;
|
|
50
23
|
cards: any[];
|
|
51
24
|
timestamp: number;
|
|
52
25
|
};
|
|
53
|
-
/**
|
|
54
|
-
* 获取塔罗牌关键字描述
|
|
55
|
-
*
|
|
56
|
-
* @param cardName 塔罗牌名称,如 "愚者"、"魔术师"
|
|
57
|
-
* @returns 逗号分隔的关键字字符串
|
|
58
|
-
*
|
|
59
|
-
* @example
|
|
60
|
-
* ```ts
|
|
61
|
-
* const keywords = getCardKeywords('愚者');
|
|
62
|
-
* // => '开始,冒险,纯真,自由,新旅程'
|
|
63
|
-
* ```
|
|
64
|
-
*/
|
|
65
26
|
export declare function getCardKeywords(cardName: string): string;
|
|
66
27
|
//# sourceMappingURL=tarot.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tarot.d.ts","sourceRoot":"","sources":["../../src/divination/tarot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"tarot.d.ts","sourceRoot":"","sources":["../../src/divination/tarot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAc,YAAY,EAAE,MAAM,cAAc,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAGtD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAW5C,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,aAAa;;;;;;;;;;;;;;;EAYrD;AAED,wBAAgB,eAAe,CAAC,UAAU,EAAE,MAAM,OAAO,YAAY,EAAE,OAAO,CAAC,EAAE,aAAa;;;;;EA2B7F;AAED,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAmFxD"}
|
package/dist/divination/tarot.js
CHANGED
|
@@ -1,30 +1,19 @@
|
|
|
1
1
|
import { tarotCards, tarotSpreads } from './tarot-data.js';
|
|
2
|
+
import { createRandomSource, randomFloat, randomInt } from '../shared/random.js';
|
|
2
3
|
export { tarotSpreads } from './tarot-data.js';
|
|
3
|
-
function shuffleCards() {
|
|
4
|
+
function shuffleCards(rng) {
|
|
4
5
|
const shuffled = [...tarotCards];
|
|
5
6
|
for (let i = shuffled.length - 1; i > 0; i--) {
|
|
6
|
-
const j =
|
|
7
|
+
const j = randomInt(i + 1, rng);
|
|
7
8
|
[shuffled[i], shuffled[j]] = [shuffled[j], shuffled[i]];
|
|
8
9
|
}
|
|
9
10
|
return shuffled;
|
|
10
11
|
}
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
* 从 78 张塔罗牌中随机洗牌后抽取第一张,用于单牌指引类占卜。
|
|
15
|
-
*
|
|
16
|
-
* @returns 一张塔罗牌,含牌名、正逆位、位置(固定为"当前指引")和时间戳。
|
|
17
|
-
*
|
|
18
|
-
* @example
|
|
19
|
-
* ```ts
|
|
20
|
-
* const result = drawSingleCard();
|
|
21
|
-
* // => { card: { number: 1, name: '魔术师', ... }, isReversed: false, position: '当前指引', timestamp: 1700000000000 }
|
|
22
|
-
* ```
|
|
23
|
-
*/
|
|
24
|
-
export function drawSingleCard() {
|
|
25
|
-
const shuffled = shuffleCards();
|
|
12
|
+
export function drawSingleCard(options) {
|
|
13
|
+
const rng = createRandomSource(options);
|
|
14
|
+
const shuffled = shuffleCards(rng);
|
|
26
15
|
const card = shuffled[0];
|
|
27
|
-
const isReversed =
|
|
16
|
+
const isReversed = randomFloat(rng) < 0.5;
|
|
28
17
|
return {
|
|
29
18
|
card: card,
|
|
30
19
|
isReversed: isReversed,
|
|
@@ -32,31 +21,17 @@ export function drawSingleCard() {
|
|
|
32
21
|
timestamp: Date.now(),
|
|
33
22
|
};
|
|
34
23
|
}
|
|
35
|
-
|
|
36
|
-
* 抽取指定牌阵的多张塔罗牌
|
|
37
|
-
*
|
|
38
|
-
* 根据 spreadType 从已定义牌阵中取对应数量和位置的牌。
|
|
39
|
-
* 支持 single、three、love、career、celtic 等十余种牌阵。
|
|
40
|
-
*
|
|
41
|
-
* @param spreadType 牌阵类型,必须是 tarotSpreads 中定义的键名。
|
|
42
|
-
* @returns 牌阵结果,含牌名、正逆位、位置名称和时间戳。
|
|
43
|
-
*
|
|
44
|
-
* @example
|
|
45
|
-
* ```ts
|
|
46
|
-
* const result = drawSpreadCards('three');
|
|
47
|
-
* // => { spreadType: 'three', spreadName: '三张牌阵', cards: [...] }
|
|
48
|
-
* ```
|
|
49
|
-
*/
|
|
50
|
-
export function drawSpreadCards(spreadType) {
|
|
24
|
+
export function drawSpreadCards(spreadType, options) {
|
|
51
25
|
const spread = tarotSpreads[spreadType];
|
|
52
26
|
if (!spread) {
|
|
53
27
|
throw new Error(`未知的牌阵类型: ${spreadType}`);
|
|
54
28
|
}
|
|
55
|
-
const
|
|
29
|
+
const rng = createRandomSource(options);
|
|
30
|
+
const shuffled = shuffleCards(rng);
|
|
56
31
|
const cards = [];
|
|
57
32
|
for (let i = 0; i < spread.cardCount; i++) {
|
|
58
33
|
const card = shuffled[i];
|
|
59
|
-
const isReversed =
|
|
34
|
+
const isReversed = randomFloat(rng) < 0.5;
|
|
60
35
|
cards.push({
|
|
61
36
|
card: card,
|
|
62
37
|
isReversed: isReversed,
|
|
@@ -70,18 +45,6 @@ export function drawSpreadCards(spreadType) {
|
|
|
70
45
|
timestamp: Date.now(),
|
|
71
46
|
};
|
|
72
47
|
}
|
|
73
|
-
/**
|
|
74
|
-
* 获取塔罗牌关键字描述
|
|
75
|
-
*
|
|
76
|
-
* @param cardName 塔罗牌名称,如 "愚者"、"魔术师"
|
|
77
|
-
* @returns 逗号分隔的关键字字符串
|
|
78
|
-
*
|
|
79
|
-
* @example
|
|
80
|
-
* ```ts
|
|
81
|
-
* const keywords = getCardKeywords('愚者');
|
|
82
|
-
* // => '开始,冒险,纯真,自由,新旅程'
|
|
83
|
-
* ```
|
|
84
|
-
*/
|
|
85
48
|
export function getCardKeywords(cardName) {
|
|
86
49
|
const keywordsMap = {
|
|
87
50
|
愚者: '新开始,冒险,纯真',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tarot.js","sourceRoot":"","sources":["../../src/divination/tarot.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAExD,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAE5C,SAAS,YAAY;
|
|
1
|
+
{"version":3,"file":"tarot.js","sourceRoot":"","sources":["../../src/divination/tarot.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export type RandomSource = () => number;
|
|
2
|
+
export interface RandomOptions {
|
|
3
|
+
seed?: string | number;
|
|
4
|
+
rng?: RandomSource;
|
|
5
|
+
}
|
|
6
|
+
export declare function createSeededRandom(seed: string | number): RandomSource;
|
|
7
|
+
export declare function createRandomSource(options?: RandomOptions): RandomSource;
|
|
8
|
+
export declare function randomFloat(rng: RandomSource): number;
|
|
9
|
+
export declare function randomInt(maxExclusive: number, rng: RandomSource): number;
|
|
10
|
+
//# sourceMappingURL=random.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"random.d.ts","sourceRoot":"","sources":["../../src/shared/random.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,YAAY,GAAG,MAAM,MAAM,CAAC;AAExC,MAAM,WAAW,aAAa;IAC5B,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,GAAG,CAAC,EAAE,YAAY,CAAC;CACpB;AAYD,wBAAgB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,YAAY,CAStE;AAED,wBAAgB,kBAAkB,CAAC,OAAO,CAAC,EAAE,aAAa,GAAG,YAAY,CAQxE;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,YAAY,GAAG,MAAM,CASrD;AAED,wBAAgB,SAAS,CAAC,YAAY,EAAE,MAAM,EAAE,GAAG,EAAE,YAAY,GAAG,MAAM,CAKzE"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
function hashSeed(seed) {
|
|
2
|
+
const text = String(seed);
|
|
3
|
+
let hash = 2166136261;
|
|
4
|
+
for (let i = 0; i < text.length; i++) {
|
|
5
|
+
hash ^= text.charCodeAt(i);
|
|
6
|
+
hash = Math.imul(hash, 16777619);
|
|
7
|
+
}
|
|
8
|
+
return hash >>> 0;
|
|
9
|
+
}
|
|
10
|
+
export function createSeededRandom(seed) {
|
|
11
|
+
let state = hashSeed(seed) || 1;
|
|
12
|
+
return () => {
|
|
13
|
+
state = (state + 0x6d2b79f5) >>> 0;
|
|
14
|
+
let value = state;
|
|
15
|
+
value = Math.imul(value ^ (value >>> 15), value | 1);
|
|
16
|
+
value ^= value + Math.imul(value ^ (value >>> 7), value | 61);
|
|
17
|
+
return ((value ^ (value >>> 14)) >>> 0) / 4294967296;
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
export function createRandomSource(options) {
|
|
21
|
+
if (options?.rng) {
|
|
22
|
+
return options.rng;
|
|
23
|
+
}
|
|
24
|
+
if (options?.seed !== undefined) {
|
|
25
|
+
return createSeededRandom(options.seed);
|
|
26
|
+
}
|
|
27
|
+
return Math.random;
|
|
28
|
+
}
|
|
29
|
+
export function randomFloat(rng) {
|
|
30
|
+
const value = rng();
|
|
31
|
+
if (!Number.isFinite(value) || value <= 0) {
|
|
32
|
+
return 0;
|
|
33
|
+
}
|
|
34
|
+
if (value >= 1) {
|
|
35
|
+
return 0.999999999999;
|
|
36
|
+
}
|
|
37
|
+
return value;
|
|
38
|
+
}
|
|
39
|
+
export function randomInt(maxExclusive, rng) {
|
|
40
|
+
if (!Number.isInteger(maxExclusive) || maxExclusive <= 0) {
|
|
41
|
+
throw new Error('随机整数范围必须是正整数');
|
|
42
|
+
}
|
|
43
|
+
return Math.floor(randomFloat(rng) * maxExclusive);
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=random.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"random.js","sourceRoot":"","sources":["../../src/shared/random.ts"],"names":[],"mappings":"AAOA,SAAS,QAAQ,CAAC,IAAqB;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,IAAI,IAAI,GAAG,UAAU,CAAC;IACtB,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;QAC3B,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;IACnC,CAAC;IACD,OAAO,IAAI,KAAK,CAAC,CAAC;AACpB,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,IAAqB;IACtD,IAAI,KAAK,GAAG,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAChC,OAAO,GAAG,EAAE;QACV,KAAK,GAAG,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,KAAK,GAAG,KAAK,CAAC;QAClB,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,EAAE,KAAK,GAAG,CAAC,CAAC,CAAC;QACrD,KAAK,IAAI,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,KAAK,KAAK,CAAC,CAAC,EAAE,KAAK,GAAG,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,CAAC,KAAK,GAAG,CAAC,KAAK,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,UAAU,CAAC;IACvD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,kBAAkB,CAAC,OAAuB;IACxD,IAAI,OAAO,EAAE,GAAG,EAAE,CAAC;QACjB,OAAO,OAAO,CAAC,GAAG,CAAC;IACrB,CAAC;IACD,IAAI,OAAO,EAAE,IAAI,KAAK,SAAS,EAAE,CAAC;QAChC,OAAO,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1C,CAAC;IACD,OAAO,IAAI,CAAC,MAAM,CAAC;AACrB,CAAC;AAED,MAAM,UAAU,WAAW,CAAC,GAAiB;IAC3C,MAAM,KAAK,GAAG,GAAG,EAAE,CAAC;IACpB,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QAC1C,OAAO,CAAC,CAAC;IACX,CAAC;IACD,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC;QACf,OAAO,cAAc,CAAC;IACxB,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,UAAU,SAAS,CAAC,YAAoB,EAAE,GAAiB;IAC/D,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,YAAY,CAAC,IAAI,YAAY,IAAI,CAAC,EAAE,CAAC;QACzD,MAAM,IAAI,KAAK,CAAC,cAAc,CAAC,CAAC;IAClC,CAAC;IACD,OAAO,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,YAAY,CAAC,CAAC;AACrD,CAAC"}
|
|
@@ -1,26 +1,12 @@
|
|
|
1
|
+
import type { RandomOptions } from '../shared/random';
|
|
2
|
+
export type { RandomOptions, RandomSource } from '../shared/random';
|
|
1
3
|
export type SixGod = '青龙' | '朱雀' | '勾陈' | '螣蛇' | '白虎' | '玄武';
|
|
2
4
|
export type DivinationType = 'liuyao' | 'meihua' | 'xiaoliuren' | 'qimen' | 'liuren' | 'tarot' | 'tarot_single' | 'ssgw' | 'almanac' | 'lenormand' | 'astrolabe';
|
|
3
|
-
export type MeihuaDivinationMethod = 'time' | 'number' | 'random' | '
|
|
5
|
+
export type MeihuaDivinationMethod = 'time' | 'number' | 'random' | 'timeTrigram';
|
|
4
6
|
export type XiaoliurenDivinationMethod = 'time' | 'number' | 'random';
|
|
5
|
-
export
|
|
6
|
-
export type MeihuaExternalPerson = '老父' | '老妇' | '长男' | '长女' | '中男' | '中女' | '少男' | '少女';
|
|
7
|
-
export type MeihuaExternalAnimal = '马' | '牛' | '龙' | '鸡' | '猪' | '雉' | '狗' | '羊';
|
|
8
|
-
export type MeihuaExternalObject = '金玉圆器' | '布帛陶器' | '竹木乐器' | '绳索长木' | '水器液体' | '火电文书' | '石块门板' | '刀剪口器';
|
|
9
|
-
export type MeihuaExternalSound = '洪亮金石' | '沉厚低缓' | '雷鸣震动' | '风声呼啸' | '流水滴答' | '爆裂鸣叫' | '闷阻叩击' | '清脆笑语';
|
|
10
|
-
export type MeihuaExternalColor = '金白' | '土黄' | '青碧' | '青绿' | '黑蓝' | '赤紫' | '棕黄' | '银白';
|
|
11
|
-
export interface MeihuaExternalOmens {
|
|
12
|
-
direction?: MeihuaExternalDirection;
|
|
13
|
-
count?: number;
|
|
14
|
-
person?: MeihuaExternalPerson;
|
|
15
|
-
animal?: MeihuaExternalAnimal;
|
|
16
|
-
object?: MeihuaExternalObject;
|
|
17
|
-
sound?: MeihuaExternalSound;
|
|
18
|
-
color?: MeihuaExternalColor;
|
|
19
|
-
}
|
|
20
|
-
export interface MeihuaSettings {
|
|
7
|
+
export interface MeihuaSettings extends RandomOptions {
|
|
21
8
|
method?: MeihuaDivinationMethod;
|
|
22
9
|
number?: number;
|
|
23
|
-
externalOmens?: MeihuaExternalOmens;
|
|
24
10
|
}
|
|
25
11
|
export interface XiaoliurenPalaceDetail {
|
|
26
12
|
name: '大安' | '留连' | '速喜' | '赤口' | '小吉' | '空亡';
|
|
@@ -248,14 +234,6 @@ export interface MeihuaCalculation {
|
|
|
248
234
|
lowerTrigramIndex?: number;
|
|
249
235
|
movingYaoIndex?: number;
|
|
250
236
|
methodKey?: MeihuaDivinationMethod;
|
|
251
|
-
externalOmens?: MeihuaExternalOmens;
|
|
252
|
-
externalSummary?: string;
|
|
253
|
-
externalMappedOmens?: Array<{
|
|
254
|
-
source: string;
|
|
255
|
-
label: string;
|
|
256
|
-
trigram: string;
|
|
257
|
-
trigramIndex: number;
|
|
258
|
-
}>;
|
|
259
237
|
[key: string]: unknown;
|
|
260
238
|
}
|
|
261
239
|
export interface MeihuaData extends BaseHexagramData {
|