mingpan 0.1.2 → 0.1.4

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 (194) hide show
  1. package/README.md +120 -47
  2. package/dist/core/bazi/BaziCore.d.ts +7 -1
  3. package/dist/core/bazi/BaziCore.d.ts.map +1 -1
  4. package/dist/core/bazi/BaziCore.js +37 -11
  5. package/dist/core/bazi/BaziCore.js.map +1 -1
  6. package/dist/core/bazi/types.d.ts +4 -0
  7. package/dist/core/bazi/types.d.ts.map +1 -1
  8. package/dist/core/qimen/FlyingRule.d.ts +60 -0
  9. package/dist/core/qimen/FlyingRule.d.ts.map +1 -0
  10. package/dist/core/qimen/FlyingRule.js +94 -0
  11. package/dist/core/qimen/FlyingRule.js.map +1 -0
  12. package/dist/core/qimen/GongMapping.d.ts +29 -0
  13. package/dist/core/qimen/GongMapping.d.ts.map +1 -0
  14. package/dist/core/qimen/GongMapping.js +83 -0
  15. package/dist/core/qimen/GongMapping.js.map +1 -0
  16. package/dist/core/qimen/RotatingRule.d.ts +76 -0
  17. package/dist/core/qimen/RotatingRule.d.ts.map +1 -0
  18. package/dist/core/qimen/RotatingRule.js +126 -0
  19. package/dist/core/qimen/RotatingRule.js.map +1 -0
  20. package/dist/core/qimen/YinYangDunCalculator.d.ts +28 -0
  21. package/dist/core/qimen/YinYangDunCalculator.d.ts.map +1 -0
  22. package/dist/core/qimen/YinYangDunCalculator.js +79 -0
  23. package/dist/core/qimen/YinYangDunCalculator.js.map +1 -0
  24. package/dist/core/qimen/index.d.ts +10 -0
  25. package/dist/core/qimen/index.d.ts.map +1 -0
  26. package/dist/core/qimen/index.js +58 -0
  27. package/dist/core/qimen/index.js.map +1 -0
  28. package/dist/core/qimen/types.d.ts +19 -0
  29. package/dist/core/qimen/types.d.ts.map +1 -0
  30. package/dist/core/qimen/types.js +7 -0
  31. package/dist/core/qimen/types.js.map +1 -0
  32. package/dist/index.d.ts +10 -5
  33. package/dist/index.d.ts.map +1 -1
  34. package/dist/index.js +14 -1311
  35. package/dist/index.js.map +1 -1
  36. package/dist/output/fortuneTextRenderer.d.ts +8 -7
  37. package/dist/output/fortuneTextRenderer.d.ts.map +1 -1
  38. package/dist/output/fortuneTextRenderer.js +83 -21
  39. package/dist/output/fortuneTextRenderer.js.map +1 -1
  40. package/dist/output/qimenTextRenderer.d.ts +36 -0
  41. package/dist/output/qimenTextRenderer.d.ts.map +1 -0
  42. package/dist/output/qimenTextRenderer.js +230 -0
  43. package/dist/output/qimenTextRenderer.js.map +1 -0
  44. package/dist/server.d.ts +11 -0
  45. package/dist/server.d.ts.map +1 -0
  46. package/dist/server.js +33 -0
  47. package/dist/server.js.map +1 -0
  48. package/dist/services/bazi/BaziService.d.ts +1 -17
  49. package/dist/services/bazi/BaziService.d.ts.map +1 -1
  50. package/dist/services/bazi/BaziService.js +9 -194
  51. package/dist/services/bazi/BaziService.js.map +1 -1
  52. package/dist/services/bazi/analyzers/TenGodsAnalyzer.js +12 -12
  53. package/dist/services/bazi/analyzers/TenGodsAnalyzer.js.map +1 -1
  54. package/dist/services/bazi/index.d.ts +0 -2
  55. package/dist/services/bazi/index.d.ts.map +1 -1
  56. package/dist/services/bazi/index.js +1 -5
  57. package/dist/services/bazi/index.js.map +1 -1
  58. package/dist/services/bazi/types.d.ts +4 -112
  59. package/dist/services/bazi/types.d.ts.map +1 -1
  60. package/dist/services/bazi/types.js +3 -102
  61. package/dist/services/bazi/types.js.map +1 -1
  62. package/dist/services/daliuren/DaliurenService.d.ts +11 -1
  63. package/dist/services/daliuren/DaliurenService.d.ts.map +1 -1
  64. package/dist/services/daliuren/DaliurenService.js +30 -0
  65. package/dist/services/daliuren/DaliurenService.js.map +1 -1
  66. package/dist/services/daliuren/calculators/TianDiPanCalculator.d.ts.map +1 -1
  67. package/dist/services/daliuren/calculators/TianDiPanCalculator.js +3 -4
  68. package/dist/services/daliuren/calculators/TianDiPanCalculator.js.map +1 -1
  69. package/dist/services/daliuren/data/constants.d.ts +7 -0
  70. package/dist/services/daliuren/data/constants.d.ts.map +1 -1
  71. package/dist/services/daliuren/data/constants.js +17 -1
  72. package/dist/services/daliuren/data/constants.js.map +1 -1
  73. package/dist/services/daliuren/types.d.ts +13 -0
  74. package/dist/services/daliuren/types.d.ts.map +1 -1
  75. package/dist/services/meihua/calculators/TiyongCalculator.d.ts.map +1 -1
  76. package/dist/services/meihua/calculators/TiyongCalculator.js +6 -5
  77. package/dist/services/meihua/calculators/TiyongCalculator.js.map +1 -1
  78. package/dist/services/qimen/QimenService.d.ts +76 -0
  79. package/dist/services/qimen/QimenService.d.ts.map +1 -0
  80. package/dist/services/qimen/QimenService.js +393 -0
  81. package/dist/services/qimen/QimenService.js.map +1 -0
  82. package/dist/services/qimen/calculators/BaMenCalculator.d.ts +45 -0
  83. package/dist/services/qimen/calculators/BaMenCalculator.d.ts.map +1 -0
  84. package/dist/services/qimen/calculators/BaMenCalculator.js +87 -0
  85. package/dist/services/qimen/calculators/BaMenCalculator.js.map +1 -0
  86. package/dist/services/qimen/calculators/BaShenCalculator.d.ts +34 -0
  87. package/dist/services/qimen/calculators/BaShenCalculator.d.ts.map +1 -0
  88. package/dist/services/qimen/calculators/BaShenCalculator.js +57 -0
  89. package/dist/services/qimen/calculators/BaShenCalculator.js.map +1 -0
  90. package/dist/services/qimen/calculators/GeJuCalculator.d.ts +141 -0
  91. package/dist/services/qimen/calculators/GeJuCalculator.d.ts.map +1 -0
  92. package/dist/services/qimen/calculators/GeJuCalculator.js +711 -0
  93. package/dist/services/qimen/calculators/GeJuCalculator.js.map +1 -0
  94. package/dist/services/qimen/calculators/JiuGongCalculator.d.ts +49 -0
  95. package/dist/services/qimen/calculators/JiuGongCalculator.d.ts.map +1 -0
  96. package/dist/services/qimen/calculators/JiuGongCalculator.js +68 -0
  97. package/dist/services/qimen/calculators/JiuGongCalculator.js.map +1 -0
  98. package/dist/services/qimen/calculators/JiuXingCalculator.d.ts +44 -0
  99. package/dist/services/qimen/calculators/JiuXingCalculator.d.ts.map +1 -0
  100. package/dist/services/qimen/calculators/JiuXingCalculator.js +72 -0
  101. package/dist/services/qimen/calculators/JiuXingCalculator.js.map +1 -0
  102. package/dist/services/qimen/calculators/JuShuCalculator.d.ts +60 -0
  103. package/dist/services/qimen/calculators/JuShuCalculator.d.ts.map +1 -0
  104. package/dist/services/qimen/calculators/JuShuCalculator.js +110 -0
  105. package/dist/services/qimen/calculators/JuShuCalculator.js.map +1 -0
  106. package/dist/services/qimen/calculators/PanTypeCalculator.d.ts +117 -0
  107. package/dist/services/qimen/calculators/PanTypeCalculator.d.ts.map +1 -0
  108. package/dist/services/qimen/calculators/PanTypeCalculator.js +237 -0
  109. package/dist/services/qimen/calculators/PanTypeCalculator.js.map +1 -0
  110. package/dist/services/qimen/calculators/SanQiLiuYiCalculator.d.ts +41 -0
  111. package/dist/services/qimen/calculators/SanQiLiuYiCalculator.d.ts.map +1 -0
  112. package/dist/services/qimen/calculators/SanQiLiuYiCalculator.js +73 -0
  113. package/dist/services/qimen/calculators/SanQiLiuYiCalculator.js.map +1 -0
  114. package/dist/services/qimen/calculators/ShenShaCalculator.d.ts +80 -0
  115. package/dist/services/qimen/calculators/ShenShaCalculator.d.ts.map +1 -0
  116. package/dist/services/qimen/calculators/ShenShaCalculator.js +300 -0
  117. package/dist/services/qimen/calculators/ShenShaCalculator.js.map +1 -0
  118. package/dist/services/qimen/calculators/YongShenCalculator.d.ts +78 -0
  119. package/dist/services/qimen/calculators/YongShenCalculator.d.ts.map +1 -0
  120. package/dist/services/qimen/calculators/YongShenCalculator.js +497 -0
  121. package/dist/services/qimen/calculators/YongShenCalculator.js.map +1 -0
  122. package/dist/services/qimen/calculators/ZhuanPanCalculator.d.ts +111 -0
  123. package/dist/services/qimen/calculators/ZhuanPanCalculator.d.ts.map +1 -0
  124. package/dist/services/qimen/calculators/ZhuanPanCalculator.js +232 -0
  125. package/dist/services/qimen/calculators/ZhuanPanCalculator.js.map +1 -0
  126. package/dist/services/qimen/data/constants.d.ts +105 -0
  127. package/dist/services/qimen/data/constants.d.ts.map +1 -0
  128. package/dist/services/qimen/data/constants.js +295 -0
  129. package/dist/services/qimen/data/constants.js.map +1 -0
  130. package/dist/services/qimen/data/shensha-rules.d.ts +177 -0
  131. package/dist/services/qimen/data/shensha-rules.d.ts.map +1 -0
  132. package/dist/services/qimen/data/shensha-rules.js +397 -0
  133. package/dist/services/qimen/data/shensha-rules.js.map +1 -0
  134. package/dist/services/qimen/data/yongshen-rules.d.ts +115 -0
  135. package/dist/services/qimen/data/yongshen-rules.d.ts.map +1 -0
  136. package/dist/services/qimen/data/yongshen-rules.js +365 -0
  137. package/dist/services/qimen/data/yongshen-rules.js.map +1 -0
  138. package/dist/services/qimen/index.d.ts +20 -0
  139. package/dist/services/qimen/index.d.ts.map +1 -0
  140. package/dist/services/qimen/index.js +43 -0
  141. package/dist/services/qimen/index.js.map +1 -0
  142. package/dist/services/qimen/types.d.ts +316 -0
  143. package/dist/services/qimen/types.d.ts.map +1 -0
  144. package/dist/services/qimen/types.js +21 -0
  145. package/dist/services/qimen/types.js.map +1 -0
  146. package/dist/services/qimen/utils/gongUtils.d.ts +80 -0
  147. package/dist/services/qimen/utils/gongUtils.d.ts.map +1 -0
  148. package/dist/services/qimen/utils/gongUtils.js +164 -0
  149. package/dist/services/qimen/utils/gongUtils.js.map +1 -0
  150. package/dist/shared/logger.d.ts +5 -0
  151. package/dist/shared/logger.d.ts.map +1 -1
  152. package/dist/shared/logger.js +11 -4
  153. package/dist/shared/logger.js.map +1 -1
  154. package/dist/tools/baziTools.d.ts +13 -0
  155. package/dist/tools/baziTools.d.ts.map +1 -0
  156. package/dist/tools/baziTools.js +331 -0
  157. package/dist/tools/baziTools.js.map +1 -0
  158. package/dist/tools/divinationTools.d.ts +9 -0
  159. package/dist/tools/divinationTools.d.ts.map +1 -0
  160. package/dist/tools/divinationTools.js +209 -0
  161. package/dist/tools/divinationTools.js.map +1 -0
  162. package/dist/tools/qimenTools.d.ts +10 -0
  163. package/dist/tools/qimenTools.d.ts.map +1 -0
  164. package/dist/tools/qimenTools.js +132 -0
  165. package/dist/tools/qimenTools.js.map +1 -0
  166. package/dist/tools/schemas.d.ts +99 -0
  167. package/dist/tools/schemas.d.ts.map +1 -0
  168. package/dist/tools/schemas.js +162 -0
  169. package/dist/tools/schemas.js.map +1 -0
  170. package/dist/tools/ziweiTools.d.ts +14 -0
  171. package/dist/tools/ziweiTools.d.ts.map +1 -0
  172. package/dist/tools/ziweiTools.js +483 -0
  173. package/dist/tools/ziweiTools.js.map +1 -0
  174. package/dist/utils/timeNormalization.d.ts +42 -17
  175. package/dist/utils/timeNormalization.d.ts.map +1 -1
  176. package/dist/utils/timeNormalization.js +99 -41
  177. package/dist/utils/timeNormalization.js.map +1 -1
  178. package/package.json +15 -9
  179. package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.d.ts +0 -16
  180. package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.d.ts.map +0 -1
  181. package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.js +0 -60
  182. package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.js.map +0 -1
  183. package/dist/services/bazi/analyzers/NaYinAnalyzer.d.ts +0 -33
  184. package/dist/services/bazi/analyzers/NaYinAnalyzer.d.ts.map +0 -1
  185. package/dist/services/bazi/analyzers/NaYinAnalyzer.js +0 -209
  186. package/dist/services/bazi/analyzers/NaYinAnalyzer.js.map +0 -1
  187. package/dist/services/bazi/analyzers/ShenShaAnalyzer.d.ts +0 -236
  188. package/dist/services/bazi/analyzers/ShenShaAnalyzer.d.ts.map +0 -1
  189. package/dist/services/bazi/analyzers/ShenShaAnalyzer.js +0 -2079
  190. package/dist/services/bazi/analyzers/ShenShaAnalyzer.js.map +0 -1
  191. package/dist/services/bazi/analyzers/TraditionalAnalyzer.d.ts +0 -46
  192. package/dist/services/bazi/analyzers/TraditionalAnalyzer.d.ts.map +0 -1
  193. package/dist/services/bazi/analyzers/TraditionalAnalyzer.js +0 -260
  194. package/dist/services/bazi/analyzers/TraditionalAnalyzer.js.map +0 -1
@@ -0,0 +1,237 @@
1
+ "use strict";
2
+ /**
3
+ * 盘类型计算器
4
+ * 处理年盘、月盘的特殊计算逻辑
5
+ *
6
+ * 年盘规则:
7
+ * 1. 阴阳遁:冬至后到夏至前为阳遁,夏至后到冬至前为阴遁
8
+ * 2. 三元:按年支确定 (子午卯酉→上元, 寅申巳亥→中元, 辰戌丑未→下元)
9
+ * 3. 局数:(年干支序数 % 9) + 1
10
+ * 4. 旬首:基于年干支
11
+ * 5. 天盘旋转:值符飞到年干所在宫
12
+ *
13
+ * 月盘规则:
14
+ * 1. 阴阳遁:按月建对应的节气确定
15
+ * 2. 三元:按月支确定(规则同年盘)
16
+ * 3. 局数:使用节气局数表
17
+ * 4. 旬首:基于月干支
18
+ * 5. 天盘旋转:值符飞到月干所在宫
19
+ */
20
+ Object.defineProperty(exports, "__esModule", { value: true });
21
+ exports.PanTypeCalculator = exports.DI_ZHI_YUAN_MAP = exports.MONTH_JIEQI_MAP = void 0;
22
+ exports.getYearPanYinYangDun = getYearPanYinYangDun;
23
+ exports.getYearPanYuan = getYearPanYuan;
24
+ exports.getYearPanJuShu = getYearPanJuShu;
25
+ exports.getMonthPanYinYangDun = getMonthPanYinYangDun;
26
+ exports.getMonthPanYuan = getMonthPanYuan;
27
+ exports.getMonthPanJuShu = getMonthPanJuShu;
28
+ exports.extractZhi = extractZhi;
29
+ exports.isValidGanZhi = isValidGanZhi;
30
+ const constants_1 = require("../data/constants");
31
+ // ============= 常量定义 =============
32
+ /**
33
+ * 月建对应的节气映射
34
+ * 月建(地支)-> 对应的节气
35
+ */
36
+ exports.MONTH_JIEQI_MAP = {
37
+ '寅': '立春', // 正月
38
+ '卯': '惊蛰', // 二月
39
+ '辰': '清明', // 三月
40
+ '巳': '立夏', // 四月
41
+ '午': '芒种', // 五月
42
+ '未': '小暑', // 六月
43
+ '申': '立秋', // 七月
44
+ '酉': '白露', // 八月
45
+ '戌': '寒露', // 九月
46
+ '亥': '立冬', // 十月
47
+ '子': '大雪', // 十一月
48
+ '丑': '小寒', // 十二月
49
+ };
50
+ /**
51
+ * 三元判定表:地支 -> 三元
52
+ * 子午卯酉 → 上元
53
+ * 寅申巳亥 → 中元
54
+ * 辰戌丑未 → 下元
55
+ */
56
+ exports.DI_ZHI_YUAN_MAP = {
57
+ '子': '上元',
58
+ '午': '上元',
59
+ '卯': '上元',
60
+ '酉': '上元',
61
+ '寅': '中元',
62
+ '申': '中元',
63
+ '巳': '中元',
64
+ '亥': '中元',
65
+ '辰': '下元',
66
+ '戌': '下元',
67
+ '丑': '下元',
68
+ '未': '下元',
69
+ };
70
+ /**
71
+ * 阳遁节气列表(冬至到芒种)
72
+ */
73
+ const YANG_DUN_JIEQI = [
74
+ '冬至', '小寒', '大寒', '立春', '雨水', '惊蛰',
75
+ '春分', '清明', '谷雨', '立夏', '小满', '芒种'
76
+ ];
77
+ /**
78
+ * 阴遁节气列表(夏至到大雪)
79
+ */
80
+ const YIN_DUN_JIEQI = [
81
+ '夏至', '小暑', '大暑', '立秋', '处暑', '白露',
82
+ '秋分', '寒露', '霜降', '立冬', '小雪', '大雪'
83
+ ];
84
+ // ============= 年盘计算 =============
85
+ /**
86
+ * 年盘阴阳遁判断
87
+ * 冬至当天为阳遁起始,夏至当天为阴遁起始
88
+ * @param currentJieQi 当前节气
89
+ * @returns 阴阳遁
90
+ */
91
+ function getYearPanYinYangDun(currentJieQi) {
92
+ if (YANG_DUN_JIEQI.includes(currentJieQi)) {
93
+ return '阳遁';
94
+ }
95
+ if (YIN_DUN_JIEQI.includes(currentJieQi)) {
96
+ return '阴遁';
97
+ }
98
+ // 默认返回阳遁(不应该发生)
99
+ return '阳遁';
100
+ }
101
+ /**
102
+ * 年盘三元判断
103
+ * 根据年支确定三元
104
+ * @param yearZhi 年支
105
+ * @returns 三元
106
+ */
107
+ function getYearPanYuan(yearZhi) {
108
+ return exports.DI_ZHI_YUAN_MAP[yearZhi];
109
+ }
110
+ /**
111
+ * 年盘局数计算
112
+ * 公式:(年干支在六十甲子中的序数 % 9) + 1
113
+ * 注意:序数从0开始,所以甲子=0, 乙丑=1, ...
114
+ * @param yearGanZhi 年干支(如 "甲辰")
115
+ * @returns 局数 (1-9)
116
+ */
117
+ function getYearPanJuShu(yearGanZhi) {
118
+ const index = constants_1.JIA_ZI_60.indexOf(yearGanZhi);
119
+ if (index === -1) {
120
+ throw new Error(`无效的年干支: ${yearGanZhi}`);
121
+ }
122
+ // 公式: (index % 9) + 1,确保结果在 1-9 之间
123
+ const ju = (index % 9) + 1;
124
+ return ju;
125
+ }
126
+ // ============= 月盘计算 =============
127
+ /**
128
+ * 月盘阴阳遁判断
129
+ * 根据月建对应的节气确定
130
+ * @param monthZhi 月支(月建)
131
+ * @returns 阴阳遁
132
+ */
133
+ function getMonthPanYinYangDun(monthZhi) {
134
+ const jieQi = exports.MONTH_JIEQI_MAP[monthZhi];
135
+ const jieQiInfo = constants_1.JIEQI_JU_MAP[jieQi];
136
+ if (!jieQiInfo) {
137
+ throw new Error(`无法找到节气信息: ${jieQi}`);
138
+ }
139
+ return jieQiInfo.dun;
140
+ }
141
+ /**
142
+ * 月盘三元判断
143
+ * 根据月支确定三元(规则同年盘)
144
+ * @param monthZhi 月支
145
+ * @returns 三元
146
+ */
147
+ function getMonthPanYuan(monthZhi) {
148
+ return exports.DI_ZHI_YUAN_MAP[monthZhi];
149
+ }
150
+ /**
151
+ * 月盘局数计算
152
+ * 使用月建对应的节气,结合三元查找局数
153
+ * @param monthZhi 月支(月建)
154
+ * @returns 局数 (1-9)
155
+ */
156
+ function getMonthPanJuShu(monthZhi) {
157
+ const jieQi = exports.MONTH_JIEQI_MAP[monthZhi];
158
+ const yuan = getMonthPanYuan(monthZhi);
159
+ const jieQiInfo = constants_1.JIEQI_JU_MAP[jieQi];
160
+ if (!jieQiInfo) {
161
+ throw new Error(`无法找到节气信息: ${jieQi}`);
162
+ }
163
+ const yuanIndex = getYuanIndex(yuan);
164
+ return jieQiInfo.ju[yuanIndex];
165
+ }
166
+ // ============= 辅助函数 =============
167
+ /**
168
+ * 获取元索引
169
+ */
170
+ function getYuanIndex(yuan) {
171
+ switch (yuan) {
172
+ case '上元': return 0;
173
+ case '中元': return 1;
174
+ case '下元': return 2;
175
+ }
176
+ }
177
+ /**
178
+ * 从干支字符串提取地支
179
+ * @param ganZhi 干支字符串(如 "甲子")
180
+ * @returns 地支
181
+ */
182
+ function extractZhi(ganZhi) {
183
+ if (ganZhi.length !== 2) {
184
+ throw new Error(`无效的干支格式: ${ganZhi}`);
185
+ }
186
+ return ganZhi.charAt(1);
187
+ }
188
+ /**
189
+ * 验证干支是否有效
190
+ * @param ganZhi 干支字符串
191
+ * @returns 是否有效
192
+ */
193
+ function isValidGanZhi(ganZhi) {
194
+ return constants_1.JIA_ZI_60.includes(ganZhi);
195
+ }
196
+ /**
197
+ * 盘类型计算器
198
+ * 统一处理年盘、月盘的阴阳遁、三元、局数计算
199
+ */
200
+ class PanTypeCalculator {
201
+ /**
202
+ * 计算年盘参数
203
+ * @param params 年盘参数
204
+ * @returns 阴阳遁、三元、局数
205
+ */
206
+ static calculateYearPan(params) {
207
+ const { yearGanZhi, currentJieQi } = params;
208
+ if (!isValidGanZhi(yearGanZhi)) {
209
+ throw new Error(`无效的年干支: ${yearGanZhi}`);
210
+ }
211
+ const yearZhi = extractZhi(yearGanZhi);
212
+ return {
213
+ yinYangDun: getYearPanYinYangDun(currentJieQi),
214
+ yuan: getYearPanYuan(yearZhi),
215
+ juShu: getYearPanJuShu(yearGanZhi),
216
+ };
217
+ }
218
+ /**
219
+ * 计算月盘参数
220
+ * @param params 月盘参数
221
+ * @returns 阴阳遁、三元、局数
222
+ */
223
+ static calculateMonthPan(params) {
224
+ const { monthGanZhi } = params;
225
+ if (!isValidGanZhi(monthGanZhi)) {
226
+ throw new Error(`无效的月干支: ${monthGanZhi}`);
227
+ }
228
+ const monthZhi = extractZhi(monthGanZhi);
229
+ return {
230
+ yinYangDun: getMonthPanYinYangDun(monthZhi),
231
+ yuan: getMonthPanYuan(monthZhi),
232
+ juShu: getMonthPanJuShu(monthZhi),
233
+ };
234
+ }
235
+ }
236
+ exports.PanTypeCalculator = PanTypeCalculator;
237
+ //# sourceMappingURL=PanTypeCalculator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"PanTypeCalculator.js","sourceRoot":"","sources":["../../../../src/services/qimen/calculators/PanTypeCalculator.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,41 @@
1
+ /**
2
+ * 三奇六仪计算器
3
+ * 计算飞盘式天盘布局
4
+ */
5
+ import type { GongWei, TianGan, YinYangDun } from '../types';
6
+ export interface TianPanResult {
7
+ /** 各宫天盘干 (宫位 -> 干) */
8
+ gongGan: Record<GongWei, TianGan>;
9
+ /** 干找宫位映射 (干 -> 宫位) */
10
+ ganGong: Record<TianGan, GongWei>;
11
+ }
12
+ /**
13
+ * 三奇六仪计算器
14
+ * 负责计算飞盘式天盘布局
15
+ */
16
+ export declare class SanQiLiuYiCalculator {
17
+ /**
18
+ * 计算飞盘式天盘布局
19
+ * @param diPanGanGong 地盘干->宫位映射
20
+ * @param refGanZhi 参考干支(时盘为时干支,余类推)
21
+ * @param yinYangDun 阴阳遁
22
+ * @returns 天盘各宫的干
23
+ *
24
+ * 原理(飞盘式):
25
+ * 1. 值符随时干:旬首六仪飞到参考干(甲用旬首仪)所在的地盘宫
26
+ * 2. 其余八干按 戊己庚辛壬癸丁丙乙 的循环顺序(自旬首仪起),
27
+ * 按宫位数字顺序(1→2→…→9→1)飞布,阳遁顺飞、阴遁逆飞
28
+ * 3. 落入中五宫之干寄坤二宫(查询时换算,显示时仍在中宫)
29
+ */
30
+ static calculate(diPanGanGong: Record<TianGan, GongWei>, refGanZhi: string, yinYangDun: YinYangDun): TianPanResult;
31
+ /**
32
+ * 获取遁甲干
33
+ * 甲遁于六仪之下,需要根据干支确定
34
+ */
35
+ private static getDunGan;
36
+ /**
37
+ * 根据天干找天盘落宫
38
+ */
39
+ static findGongByGan(ganGong: Record<TianGan, GongWei>, gan: TianGan): GongWei;
40
+ }
41
+ //# sourceMappingURL=SanQiLiuYiCalculator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SanQiLiuYiCalculator.d.ts","sourceRoot":"","sources":["../../../../src/services/qimen/calculators/SanQiLiuYiCalculator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAQ7D,MAAM,WAAW,aAAa;IAC5B,sBAAsB;IACtB,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IAClC,uBAAuB;IACvB,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;CACnC;AAED;;;GAGG;AACH,qBAAa,oBAAoB;IAC/B;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,SAAS,CACd,YAAY,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EACtC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,UAAU,GACrB,aAAa;IAiChB;;;OAGG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;IASxB;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,OAAO,GAAG,OAAO;CAI/E"}
@@ -0,0 +1,73 @@
1
+ "use strict";
2
+ /**
3
+ * 三奇六仪计算器
4
+ * 计算飞盘式天盘布局
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.SanQiLiuYiCalculator = void 0;
8
+ const constants_1 = require("../data/constants");
9
+ /**
10
+ * 三奇六仪计算器
11
+ * 负责计算飞盘式天盘布局
12
+ */
13
+ class SanQiLiuYiCalculator {
14
+ /**
15
+ * 计算飞盘式天盘布局
16
+ * @param diPanGanGong 地盘干->宫位映射
17
+ * @param refGanZhi 参考干支(时盘为时干支,余类推)
18
+ * @param yinYangDun 阴阳遁
19
+ * @returns 天盘各宫的干
20
+ *
21
+ * 原理(飞盘式):
22
+ * 1. 值符随时干:旬首六仪飞到参考干(甲用旬首仪)所在的地盘宫
23
+ * 2. 其余八干按 戊己庚辛壬癸丁丙乙 的循环顺序(自旬首仪起),
24
+ * 按宫位数字顺序(1→2→…→9→1)飞布,阳遁顺飞、阴遁逆飞
25
+ * 3. 落入中五宫之干寄坤二宫(查询时换算,显示时仍在中宫)
26
+ */
27
+ static calculate(diPanGanGong, refGanZhi, yinYangDun) {
28
+ const isYang = yinYangDun === '阳遁';
29
+ const refGan = refGanZhi.charAt(0);
30
+ // 参考干对应的遁甲干(甲遁于旬首六仪之下)
31
+ const refDunGan = this.getDunGan(refGan, refGanZhi);
32
+ // 起点宫 = 参考干(遁干)在地盘的落宫(中五寄坤二)
33
+ let startGong = diPanGanGong[refDunGan];
34
+ if (startGong === 5) {
35
+ startGong = constants_1.ZHONG_GONG_JI;
36
+ }
37
+ // 飞布序列:自旬首仪起,按戊己庚辛壬癸丁丙乙循环
38
+ const xunShou = (0, constants_1.getXunShou)(refGanZhi);
39
+ const fuGan = (0, constants_1.getLiuYiGan)(xunShou);
40
+ const fuIdx = constants_1.SAN_QI_LIU_YI.indexOf(fuGan);
41
+ const flyOrder = constants_1.SAN_QI_LIU_YI.slice(fuIdx).concat(constants_1.SAN_QI_LIU_YI.slice(0, fuIdx));
42
+ const gongGan = {};
43
+ const ganGong = {};
44
+ for (let i = 0; i < 9; i++) {
45
+ const gan = flyOrder[i];
46
+ const offset = isYang ? i : -i;
47
+ const gong = (((startGong - 1 + offset) % 9) + 9) % 9 + 1;
48
+ gongGan[gong] = gan;
49
+ ganGong[gan] = gong;
50
+ }
51
+ return { gongGan, ganGong };
52
+ }
53
+ /**
54
+ * 获取遁甲干
55
+ * 甲遁于六仪之下,需要根据干支确定
56
+ */
57
+ static getDunGan(refGan, refGanZhi) {
58
+ if (refGan !== '甲') {
59
+ return refGan;
60
+ }
61
+ const xunShou = (0, constants_1.getXunShou)(refGanZhi);
62
+ return (0, constants_1.getLiuYiGan)(xunShou);
63
+ }
64
+ /**
65
+ * 根据天干找天盘落宫
66
+ */
67
+ static findGongByGan(ganGong, gan) {
68
+ const gong = ganGong[gan];
69
+ return gong === 5 ? constants_1.ZHONG_GONG_JI : gong;
70
+ }
71
+ }
72
+ exports.SanQiLiuYiCalculator = SanQiLiuYiCalculator;
73
+ //# sourceMappingURL=SanQiLiuYiCalculator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"SanQiLiuYiCalculator.js","sourceRoot":"","sources":["../../../../src/services/qimen/calculators/SanQiLiuYiCalculator.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAGH,iDAK2B;AAS3B;;;GAGG;AACH,MAAa,oBAAoB;IAC/B;;;;;;;;;;;;OAYG;IACH,MAAM,CAAC,SAAS,CACd,YAAsC,EACtC,SAAiB,EACjB,UAAsB;QAEtB,MAAM,MAAM,GAAG,UAAU,KAAK,IAAI,CAAC;QACnC,MAAM,MAAM,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,CAAY,CAAC;QAE9C,uBAAuB;QACvB,MAAM,SAAS,GAAG,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,CAAC;QAEpD,6BAA6B;QAC7B,IAAI,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;QACxC,IAAI,SAAS,KAAK,CAAC,EAAE,CAAC;YACpB,SAAS,GAAG,yBAAa,CAAC;QAC5B,CAAC;QAED,0BAA0B;QAC1B,MAAM,OAAO,GAAG,IAAA,sBAAU,EAAC,SAAS,CAAC,CAAC;QACtC,MAAM,KAAK,GAAG,IAAA,uBAAW,EAAC,OAAO,CAAC,CAAC;QACnC,MAAM,KAAK,GAAG,yBAAa,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QAC3C,MAAM,QAAQ,GAAG,yBAAa,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,yBAAa,CAAC,KAAK,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,CAAC;QAElF,MAAM,OAAO,GAA6B,EAA8B,CAAC;QACzE,MAAM,OAAO,GAA6B,EAA8B,CAAC;QAEzE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC;YAC3B,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC;YACxB,MAAM,MAAM,GAAG,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;YAC/B,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,SAAS,GAAG,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;YAC1D,OAAO,CAAC,IAAe,CAAC,GAAG,GAAG,CAAC;YAC/B,OAAO,CAAC,GAAG,CAAC,GAAG,IAAe,CAAC;QACjC,CAAC;QAED,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC;IAC9B,CAAC;IAED;;;OAGG;IACK,MAAM,CAAC,SAAS,CAAC,MAAe,EAAE,SAAiB;QACzD,IAAI,MAAM,KAAK,GAAG,EAAE,CAAC;YACnB,OAAO,MAAM,CAAC;QAChB,CAAC;QAED,MAAM,OAAO,GAAG,IAAA,sBAAU,EAAC,SAAS,CAAC,CAAC;QACtC,OAAO,IAAA,uBAAW,EAAC,OAAO,CAAC,CAAC;IAC9B,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,OAAiC,EAAE,GAAY;QAClE,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;QAC1B,OAAO,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,yBAAa,CAAC,CAAC,CAAC,IAAI,CAAC;IAC3C,CAAC;CACF;AAvED,oDAuEC"}
@@ -0,0 +1,80 @@
1
+ /**
2
+ * 神煞计算器
3
+ *
4
+ * 负责计算奇门盘中的各类神煞
5
+ */
6
+ import type { ShenShaInfo, QimenResult, GongWei } from '../types';
7
+ export declare class ShenShaCalculator {
8
+ /**
9
+ * 计算所有神煞
10
+ *
11
+ * @param result 奇门盘结果
12
+ * @returns 神煞信息列表
13
+ */
14
+ static calculateAll(result: QimenResult): ShenShaInfo[];
15
+ /**
16
+ * 将神煞分配到各宫
17
+ *
18
+ * @param shenShaList 神煞列表
19
+ * @returns 按宫位分组的神煞
20
+ */
21
+ static distributeToGongs(shenShaList: ShenShaInfo[]): Record<GongWei, ShenShaInfo[]>;
22
+ /**
23
+ * 计算天乙贵人
24
+ */
25
+ private static calcTianYiGuiRen;
26
+ /**
27
+ * 计算驿马
28
+ */
29
+ private static calcYiMa;
30
+ /**
31
+ * 计算华盖
32
+ */
33
+ private static calcHuaGai;
34
+ /**
35
+ * 计算月德
36
+ */
37
+ private static calcYueDe;
38
+ /**
39
+ * 计算禄神
40
+ */
41
+ private static calcLuShen;
42
+ /**
43
+ * 计算桃花(咸池)
44
+ */
45
+ private static calcTaoHua;
46
+ /**
47
+ * 计算天医
48
+ */
49
+ private static calcTianYi;
50
+ /**
51
+ * 计算太岁
52
+ */
53
+ private static calcTaiSui;
54
+ /**
55
+ * 计算羊刃
56
+ */
57
+ private static calcYangRen;
58
+ /**
59
+ * 计算丁马
60
+ *
61
+ * 丁奇落宫即为丁马
62
+ */
63
+ private static calcDingMa;
64
+ /**
65
+ * 计算神煞总评分
66
+ *
67
+ * @param shenShaList 神煞列表
68
+ * @returns 总评分
69
+ */
70
+ static calcTotalScore(shenShaList: ShenShaInfo[]): number;
71
+ /**
72
+ * 按吉凶类型分组神煞
73
+ */
74
+ static groupByType(shenShaList: ShenShaInfo[]): {
75
+ ji: ShenShaInfo[];
76
+ xiong: ShenShaInfo[];
77
+ zhongxing: ShenShaInfo[];
78
+ };
79
+ }
80
+ //# sourceMappingURL=ShenShaCalculator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ShenShaCalculator.d.ts","sourceRoot":"","sources":["../../../../src/services/qimen/calculators/ShenShaCalculator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,WAAW,EACX,OAAO,EAGR,MAAM,UAAU,CAAC;AAqClB,qBAAa,iBAAiB;IAC5B;;;;;OAKG;IACH,MAAM,CAAC,YAAY,CAAC,MAAM,EAAE,WAAW,GAAG,WAAW,EAAE;IA8BvD;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CACtB,WAAW,EAAE,WAAW,EAAE,GACzB,MAAM,CAAC,OAAO,EAAE,WAAW,EAAE,CAAC;IAcjC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,gBAAgB;IAqB/B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ;IAevB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAoCzB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,SAAS;IAgBxB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAezB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAezB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAezB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAYzB;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,WAAW;IAe1B;;;;OAIG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAYzB;;;;;OAKG;IACH,MAAM,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG,MAAM;IAwBzD;;OAEG;IACH,MAAM,CAAC,WAAW,CAAC,WAAW,EAAE,WAAW,EAAE,GAAG;QAC9C,EAAE,EAAE,WAAW,EAAE,CAAC;QAClB,KAAK,EAAE,WAAW,EAAE,CAAC;QACrB,SAAS,EAAE,WAAW,EAAE,CAAC;KAC1B;CAqBF"}