mingpan 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.
Files changed (231) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +118 -0
  3. package/dist/core/bazi/BaziCore.d.ts +112 -0
  4. package/dist/core/bazi/BaziCore.d.ts.map +1 -0
  5. package/dist/core/bazi/BaziCore.js +606 -0
  6. package/dist/core/bazi/BaziCore.js.map +1 -0
  7. package/dist/core/bazi/SolarTermCalculator.d.ts +46 -0
  8. package/dist/core/bazi/SolarTermCalculator.d.ts.map +1 -0
  9. package/dist/core/bazi/SolarTermCalculator.js +452 -0
  10. package/dist/core/bazi/SolarTermCalculator.js.map +1 -0
  11. package/dist/core/bazi/TrueSolarTime.d.ts +64 -0
  12. package/dist/core/bazi/TrueSolarTime.d.ts.map +1 -0
  13. package/dist/core/bazi/TrueSolarTime.js +210 -0
  14. package/dist/core/bazi/TrueSolarTime.js.map +1 -0
  15. package/dist/core/bazi/ephemerisData.d.ts +10 -0
  16. package/dist/core/bazi/ephemerisData.d.ts.map +1 -0
  17. package/dist/core/bazi/ephemerisData.js +88 -0
  18. package/dist/core/bazi/ephemerisData.js.map +1 -0
  19. package/dist/core/bazi/index.d.ts +8 -0
  20. package/dist/core/bazi/index.d.ts.map +1 -0
  21. package/dist/core/bazi/index.js +30 -0
  22. package/dist/core/bazi/index.js.map +1 -0
  23. package/dist/core/bazi/types.d.ts +116 -0
  24. package/dist/core/bazi/types.d.ts.map +1 -0
  25. package/dist/core/bazi/types.js +7 -0
  26. package/dist/core/bazi/types.js.map +1 -0
  27. package/dist/core/calendar/SolarTermsCalculator.d.ts +33 -0
  28. package/dist/core/calendar/SolarTermsCalculator.d.ts.map +1 -0
  29. package/dist/core/calendar/SolarTermsCalculator.js +111 -0
  30. package/dist/core/calendar/SolarTermsCalculator.js.map +1 -0
  31. package/dist/core/calendar/astronomicalCalendar.d.ts +74 -0
  32. package/dist/core/calendar/astronomicalCalendar.d.ts.map +1 -0
  33. package/dist/core/calendar/astronomicalCalendar.js +276 -0
  34. package/dist/core/calendar/astronomicalCalendar.js.map +1 -0
  35. package/dist/core/calendar/calendar.d.ts +81 -0
  36. package/dist/core/calendar/calendar.d.ts.map +1 -0
  37. package/dist/core/calendar/calendar.js +223 -0
  38. package/dist/core/calendar/calendar.js.map +1 -0
  39. package/dist/core/calendar/constants.d.ts +151 -0
  40. package/dist/core/calendar/constants.d.ts.map +1 -0
  41. package/dist/core/calendar/constants.js +97 -0
  42. package/dist/core/calendar/constants.js.map +1 -0
  43. package/dist/core/calendar/julian.d.ts +54 -0
  44. package/dist/core/calendar/julian.d.ts.map +1 -0
  45. package/dist/core/calendar/julian.js +142 -0
  46. package/dist/core/calendar/julian.js.map +1 -0
  47. package/dist/core/calendar/lunarCalendar.d.ts +79 -0
  48. package/dist/core/calendar/lunarCalendar.d.ts.map +1 -0
  49. package/dist/core/calendar/lunarCalendar.js +164 -0
  50. package/dist/core/calendar/lunarCalendar.js.map +1 -0
  51. package/dist/core/calendar/solarTerms.d.ts +105 -0
  52. package/dist/core/calendar/solarTerms.d.ts.map +1 -0
  53. package/dist/core/calendar/solarTerms.js +487 -0
  54. package/dist/core/calendar/solarTerms.js.map +1 -0
  55. package/dist/core/constants/bazi.d.ts +138 -0
  56. package/dist/core/constants/bazi.d.ts.map +1 -0
  57. package/dist/core/constants/bazi.js +332 -0
  58. package/dist/core/constants/bazi.js.map +1 -0
  59. package/dist/core/constants/index.d.ts +6 -0
  60. package/dist/core/constants/index.d.ts.map +1 -0
  61. package/dist/core/constants/index.js +37 -0
  62. package/dist/core/constants/index.js.map +1 -0
  63. package/dist/core/constants/positions.d.ts +27 -0
  64. package/dist/core/constants/positions.d.ts.map +1 -0
  65. package/dist/core/constants/positions.js +39 -0
  66. package/dist/core/constants/positions.js.map +1 -0
  67. package/dist/core/ziwei/BrightnessSystem.d.ts +53 -0
  68. package/dist/core/ziwei/BrightnessSystem.d.ts.map +1 -0
  69. package/dist/core/ziwei/BrightnessSystem.js +278 -0
  70. package/dist/core/ziwei/BrightnessSystem.js.map +1 -0
  71. package/dist/core/ziwei/IztroAdapter.d.ts +78 -0
  72. package/dist/core/ziwei/IztroAdapter.d.ts.map +1 -0
  73. package/dist/core/ziwei/IztroAdapter.js +314 -0
  74. package/dist/core/ziwei/IztroAdapter.js.map +1 -0
  75. package/dist/core/ziwei/MutagenCore.d.ts +81 -0
  76. package/dist/core/ziwei/MutagenCore.d.ts.map +1 -0
  77. package/dist/core/ziwei/MutagenCore.js +246 -0
  78. package/dist/core/ziwei/MutagenCore.js.map +1 -0
  79. package/dist/index.d.ts +13 -0
  80. package/dist/index.d.ts.map +1 -0
  81. package/dist/index.js +1101 -0
  82. package/dist/index.js.map +1 -0
  83. package/dist/output/fortuneTextRenderer.d.ts +63 -0
  84. package/dist/output/fortuneTextRenderer.d.ts.map +1 -0
  85. package/dist/output/fortuneTextRenderer.js +384 -0
  86. package/dist/output/fortuneTextRenderer.js.map +1 -0
  87. package/dist/output/listTextRenderer.d.ts +298 -0
  88. package/dist/output/listTextRenderer.d.ts.map +1 -0
  89. package/dist/output/listTextRenderer.js +942 -0
  90. package/dist/output/listTextRenderer.js.map +1 -0
  91. package/dist/services/bazi/BaziService.d.ts +83 -0
  92. package/dist/services/bazi/BaziService.d.ts.map +1 -0
  93. package/dist/services/bazi/BaziService.js +635 -0
  94. package/dist/services/bazi/BaziService.js.map +1 -0
  95. package/dist/services/bazi/analyzers/ClimateAnalyzer.d.ts +31 -0
  96. package/dist/services/bazi/analyzers/ClimateAnalyzer.d.ts.map +1 -0
  97. package/dist/services/bazi/analyzers/ClimateAnalyzer.js +194 -0
  98. package/dist/services/bazi/analyzers/ClimateAnalyzer.js.map +1 -0
  99. package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.d.ts +16 -0
  100. package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.d.ts.map +1 -0
  101. package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.js +60 -0
  102. package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.js.map +1 -0
  103. package/dist/services/bazi/analyzers/NaYinAnalyzer.d.ts +33 -0
  104. package/dist/services/bazi/analyzers/NaYinAnalyzer.d.ts.map +1 -0
  105. package/dist/services/bazi/analyzers/NaYinAnalyzer.js +209 -0
  106. package/dist/services/bazi/analyzers/NaYinAnalyzer.js.map +1 -0
  107. package/dist/services/bazi/analyzers/PatternAnalyzer.d.ts +159 -0
  108. package/dist/services/bazi/analyzers/PatternAnalyzer.d.ts.map +1 -0
  109. package/dist/services/bazi/analyzers/PatternAnalyzer.js +1150 -0
  110. package/dist/services/bazi/analyzers/PatternAnalyzer.js.map +1 -0
  111. package/dist/services/bazi/analyzers/RelationsAnalyzer.d.ts +114 -0
  112. package/dist/services/bazi/analyzers/RelationsAnalyzer.d.ts.map +1 -0
  113. package/dist/services/bazi/analyzers/RelationsAnalyzer.js +704 -0
  114. package/dist/services/bazi/analyzers/RelationsAnalyzer.js.map +1 -0
  115. package/dist/services/bazi/analyzers/ShenShaAnalyzer.d.ts +236 -0
  116. package/dist/services/bazi/analyzers/ShenShaAnalyzer.d.ts.map +1 -0
  117. package/dist/services/bazi/analyzers/ShenShaAnalyzer.js +2079 -0
  118. package/dist/services/bazi/analyzers/ShenShaAnalyzer.js.map +1 -0
  119. package/dist/services/bazi/analyzers/StrengthAnalyzer.d.ts +181 -0
  120. package/dist/services/bazi/analyzers/StrengthAnalyzer.d.ts.map +1 -0
  121. package/dist/services/bazi/analyzers/StrengthAnalyzer.js +1119 -0
  122. package/dist/services/bazi/analyzers/StrengthAnalyzer.js.map +1 -0
  123. package/dist/services/bazi/analyzers/TenGodsAnalyzer.d.ts +78 -0
  124. package/dist/services/bazi/analyzers/TenGodsAnalyzer.d.ts.map +1 -0
  125. package/dist/services/bazi/analyzers/TenGodsAnalyzer.js +383 -0
  126. package/dist/services/bazi/analyzers/TenGodsAnalyzer.js.map +1 -0
  127. package/dist/services/bazi/analyzers/TraditionalAnalyzer.d.ts +46 -0
  128. package/dist/services/bazi/analyzers/TraditionalAnalyzer.d.ts.map +1 -0
  129. package/dist/services/bazi/analyzers/TraditionalAnalyzer.js +260 -0
  130. package/dist/services/bazi/analyzers/TraditionalAnalyzer.js.map +1 -0
  131. package/dist/services/bazi/analyzers/YongShenAnalyzer.d.ts +70 -0
  132. package/dist/services/bazi/analyzers/YongShenAnalyzer.d.ts.map +1 -0
  133. package/dist/services/bazi/analyzers/YongShenAnalyzer.js +858 -0
  134. package/dist/services/bazi/analyzers/YongShenAnalyzer.js.map +1 -0
  135. package/dist/services/bazi/calculators/DaYunCalculator.d.ts +71 -0
  136. package/dist/services/bazi/calculators/DaYunCalculator.d.ts.map +1 -0
  137. package/dist/services/bazi/calculators/DaYunCalculator.js +496 -0
  138. package/dist/services/bazi/calculators/DaYunCalculator.js.map +1 -0
  139. package/dist/services/bazi/calculators/LiuNianCalculator.d.ts +88 -0
  140. package/dist/services/bazi/calculators/LiuNianCalculator.d.ts.map +1 -0
  141. package/dist/services/bazi/calculators/LiuNianCalculator.js +546 -0
  142. package/dist/services/bazi/calculators/LiuNianCalculator.js.map +1 -0
  143. package/dist/services/bazi/calculators/LiuRiCalculator.d.ts +66 -0
  144. package/dist/services/bazi/calculators/LiuRiCalculator.d.ts.map +1 -0
  145. package/dist/services/bazi/calculators/LiuRiCalculator.js +497 -0
  146. package/dist/services/bazi/calculators/LiuRiCalculator.js.map +1 -0
  147. package/dist/services/bazi/calculators/LiuYueCalculator.d.ts +50 -0
  148. package/dist/services/bazi/calculators/LiuYueCalculator.d.ts.map +1 -0
  149. package/dist/services/bazi/calculators/LiuYueCalculator.js +338 -0
  150. package/dist/services/bazi/calculators/LiuYueCalculator.js.map +1 -0
  151. package/dist/services/bazi/calculators/LuckCycleCalculator.d.ts +123 -0
  152. package/dist/services/bazi/calculators/LuckCycleCalculator.d.ts.map +1 -0
  153. package/dist/services/bazi/calculators/LuckCycleCalculator.js +414 -0
  154. package/dist/services/bazi/calculators/LuckCycleCalculator.js.map +1 -0
  155. package/dist/services/bazi/index.d.ts +21 -0
  156. package/dist/services/bazi/index.d.ts.map +1 -0
  157. package/dist/services/bazi/index.js +83 -0
  158. package/dist/services/bazi/index.js.map +1 -0
  159. package/dist/services/bazi/types.d.ts +597 -0
  160. package/dist/services/bazi/types.d.ts.map +1 -0
  161. package/dist/services/bazi/types.js +123 -0
  162. package/dist/services/bazi/types.js.map +1 -0
  163. package/dist/services/ziwei/ZiweiService.d.ts +86 -0
  164. package/dist/services/ziwei/ZiweiService.d.ts.map +1 -0
  165. package/dist/services/ziwei/ZiweiService.js +343 -0
  166. package/dist/services/ziwei/ZiweiService.js.map +1 -0
  167. package/dist/services/ziwei/calculators/BrightnessCalculator.d.ts +38 -0
  168. package/dist/services/ziwei/calculators/BrightnessCalculator.d.ts.map +1 -0
  169. package/dist/services/ziwei/calculators/BrightnessCalculator.js +142 -0
  170. package/dist/services/ziwei/calculators/BrightnessCalculator.js.map +1 -0
  171. package/dist/services/ziwei/calculators/DailyCalculator.d.ts +27 -0
  172. package/dist/services/ziwei/calculators/DailyCalculator.d.ts.map +1 -0
  173. package/dist/services/ziwei/calculators/DailyCalculator.js +55 -0
  174. package/dist/services/ziwei/calculators/DailyCalculator.js.map +1 -0
  175. package/dist/services/ziwei/calculators/DecadeCalculator.d.ts +46 -0
  176. package/dist/services/ziwei/calculators/DecadeCalculator.d.ts.map +1 -0
  177. package/dist/services/ziwei/calculators/DecadeCalculator.js +181 -0
  178. package/dist/services/ziwei/calculators/DecadeCalculator.js.map +1 -0
  179. package/dist/services/ziwei/calculators/HoroscopeStarsCalculator.d.ts +28 -0
  180. package/dist/services/ziwei/calculators/HoroscopeStarsCalculator.d.ts.map +1 -0
  181. package/dist/services/ziwei/calculators/HoroscopeStarsCalculator.js +84 -0
  182. package/dist/services/ziwei/calculators/HoroscopeStarsCalculator.js.map +1 -0
  183. package/dist/services/ziwei/calculators/HourlyCalculator.d.ts +41 -0
  184. package/dist/services/ziwei/calculators/HourlyCalculator.d.ts.map +1 -0
  185. package/dist/services/ziwei/calculators/HourlyCalculator.js +139 -0
  186. package/dist/services/ziwei/calculators/HourlyCalculator.js.map +1 -0
  187. package/dist/services/ziwei/calculators/MinorLimitCalculator.d.ts +30 -0
  188. package/dist/services/ziwei/calculators/MinorLimitCalculator.d.ts.map +1 -0
  189. package/dist/services/ziwei/calculators/MinorLimitCalculator.js +90 -0
  190. package/dist/services/ziwei/calculators/MinorLimitCalculator.js.map +1 -0
  191. package/dist/services/ziwei/calculators/MonthlyCalculator.d.ts +39 -0
  192. package/dist/services/ziwei/calculators/MonthlyCalculator.d.ts.map +1 -0
  193. package/dist/services/ziwei/calculators/MonthlyCalculator.js +128 -0
  194. package/dist/services/ziwei/calculators/MonthlyCalculator.js.map +1 -0
  195. package/dist/services/ziwei/calculators/MutagenCalculator.d.ts +20 -0
  196. package/dist/services/ziwei/calculators/MutagenCalculator.d.ts.map +1 -0
  197. package/dist/services/ziwei/calculators/MutagenCalculator.js +121 -0
  198. package/dist/services/ziwei/calculators/MutagenCalculator.js.map +1 -0
  199. package/dist/services/ziwei/calculators/PalaceDynamicCalculator.d.ts +35 -0
  200. package/dist/services/ziwei/calculators/PalaceDynamicCalculator.d.ts.map +1 -0
  201. package/dist/services/ziwei/calculators/PalaceDynamicCalculator.js +55 -0
  202. package/dist/services/ziwei/calculators/PalaceDynamicCalculator.js.map +1 -0
  203. package/dist/services/ziwei/calculators/YearlyCalculator.d.ts +35 -0
  204. package/dist/services/ziwei/calculators/YearlyCalculator.d.ts.map +1 -0
  205. package/dist/services/ziwei/calculators/YearlyCalculator.js +119 -0
  206. package/dist/services/ziwei/calculators/YearlyCalculator.js.map +1 -0
  207. package/dist/services/ziwei/index.d.ts +15 -0
  208. package/dist/services/ziwei/index.d.ts.map +1 -0
  209. package/dist/services/ziwei/index.js +48 -0
  210. package/dist/services/ziwei/index.js.map +1 -0
  211. package/dist/services/ziwei/transformers/PalaceTransformer.d.ts +62 -0
  212. package/dist/services/ziwei/transformers/PalaceTransformer.d.ts.map +1 -0
  213. package/dist/services/ziwei/transformers/PalaceTransformer.js +153 -0
  214. package/dist/services/ziwei/transformers/PalaceTransformer.js.map +1 -0
  215. package/dist/services/ziwei/types.d.ts +185 -0
  216. package/dist/services/ziwei/types.d.ts.map +1 -0
  217. package/dist/services/ziwei/types.js +54 -0
  218. package/dist/services/ziwei/types.js.map +1 -0
  219. package/dist/shared/logger.d.ts +51 -0
  220. package/dist/shared/logger.d.ts.map +1 -0
  221. package/dist/shared/logger.js +136 -0
  222. package/dist/shared/logger.js.map +1 -0
  223. package/dist/shared/types.d.ts +91 -0
  224. package/dist/shared/types.d.ts.map +1 -0
  225. package/dist/shared/types.js +7 -0
  226. package/dist/shared/types.js.map +1 -0
  227. package/dist/utils/ageCalculator.d.ts +30 -0
  228. package/dist/utils/ageCalculator.d.ts.map +1 -0
  229. package/dist/utils/ageCalculator.js +51 -0
  230. package/dist/utils/ageCalculator.js.map +1 -0
  231. package/package.json +54 -0
@@ -0,0 +1,332 @@
1
+ "use strict";
2
+ /**
3
+ * BaZi Constants
4
+ * Core constants for BaZi calculations
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.FIVE_ELEMENTS_RELATIONS = exports.MONTHLY_STRENGTH = exports.TEN_GODS_SHORT = exports.TEN_GODS_ARRAY = exports.GROWTH_STAGE_MAPPING = exports.TWELVE_GROWTH_STAGES = exports.SOLAR_TERM_TO_ZHI = exports.SOLAR_TERMS = exports.SHEN_SHA_DEFINITIONS = exports.STEM_YIN_YANG = exports.YIN_YANG = exports.BRANCH_RELATIONS = exports.NA_YIN = exports.TEN_GODS = exports.BRANCH_HIDDEN_STEMS = exports.HIDDEN_STEMS = exports.BRANCH_ELEMENTS = exports.STEM_ELEMENTS = exports.FIVE_ELEMENTS_ARRAY = exports.FIVE_ELEMENTS = exports.EARTHLY_BRANCHES_ARRAY = exports.EARTHLY_BRANCHES = exports.HEAVENLY_STEMS_ARRAY = exports.HEAVENLY_STEMS = void 0;
8
+ // Heavenly Stems (天干)
9
+ exports.HEAVENLY_STEMS = [
10
+ { name: '甲', element: '木', yinYang: 'yang' },
11
+ { name: '乙', element: '木', yinYang: 'yin' },
12
+ { name: '丙', element: '火', yinYang: 'yang' },
13
+ { name: '丁', element: '火', yinYang: 'yin' },
14
+ { name: '戊', element: '土', yinYang: 'yang' },
15
+ { name: '己', element: '土', yinYang: 'yin' },
16
+ { name: '庚', element: '金', yinYang: 'yang' },
17
+ { name: '辛', element: '金', yinYang: 'yin' },
18
+ { name: '壬', element: '水', yinYang: 'yang' },
19
+ { name: '癸', element: '水', yinYang: 'yin' }
20
+ ];
21
+ exports.HEAVENLY_STEMS_ARRAY = ['甲', '乙', '丙', '丁', '戊', '己', '庚', '辛', '壬', '癸'];
22
+ // Earthly Branches (地支)
23
+ exports.EARTHLY_BRANCHES = [
24
+ { name: '子', element: '水', zodiac: '鼠' },
25
+ { name: '丑', element: '土', zodiac: '牛' },
26
+ { name: '寅', element: '木', zodiac: '虎' },
27
+ { name: '卯', element: '木', zodiac: '兔' },
28
+ { name: '辰', element: '土', zodiac: '龙' },
29
+ { name: '巳', element: '火', zodiac: '蛇' },
30
+ { name: '午', element: '火', zodiac: '马' },
31
+ { name: '未', element: '土', zodiac: '羊' },
32
+ { name: '申', element: '金', zodiac: '猴' },
33
+ { name: '酉', element: '金', zodiac: '鸡' },
34
+ { name: '戌', element: '土', zodiac: '狗' },
35
+ { name: '亥', element: '水', zodiac: '猪' }
36
+ ];
37
+ exports.EARTHLY_BRANCHES_ARRAY = ['子', '丑', '寅', '卯', '辰', '巳', '午', '未', '申', '酉', '戌', '亥'];
38
+ // Five Elements (五行)
39
+ exports.FIVE_ELEMENTS = [
40
+ { name: '木', color: 'green' },
41
+ { name: '火', color: 'red' },
42
+ { name: '土', color: 'yellow' },
43
+ { name: '金', color: 'white' },
44
+ { name: '水', color: 'black' }
45
+ ];
46
+ exports.FIVE_ELEMENTS_ARRAY = ['木', '火', '土', '金', '水'];
47
+ // Stem Elements mapping
48
+ exports.STEM_ELEMENTS = {
49
+ '甲': '木', '乙': '木',
50
+ '丙': '火', '丁': '火',
51
+ '戊': '土', '己': '土',
52
+ '庚': '金', '辛': '金',
53
+ '壬': '水', '癸': '水'
54
+ };
55
+ // Branch Elements mapping
56
+ exports.BRANCH_ELEMENTS = {
57
+ '子': '水', '丑': '土', '寅': '木', '卯': '木',
58
+ '辰': '土', '巳': '火', '午': '火', '未': '土',
59
+ '申': '金', '酉': '金', '戌': '土', '亥': '水'
60
+ };
61
+ // Hidden Stems (藏干)
62
+ exports.HIDDEN_STEMS = {
63
+ '子': [{ stem: '癸', power: 1.0 }],
64
+ '丑': [{ stem: '己', power: 0.6 }, { stem: '辛', power: 0.3 }, { stem: '癸', power: 0.1 }],
65
+ '寅': [{ stem: '甲', power: 0.6 }, { stem: '丙', power: 0.3 }, { stem: '戊', power: 0.1 }],
66
+ '卯': [{ stem: '乙', power: 1.0 }],
67
+ '辰': [{ stem: '戊', power: 0.6 }, { stem: '乙', power: 0.3 }, { stem: '癸', power: 0.1 }],
68
+ '巳': [{ stem: '丙', power: 0.6 }, { stem: '戊', power: 0.3 }, { stem: '庚', power: 0.1 }],
69
+ '午': [{ stem: '丁', power: 0.7 }, { stem: '己', power: 0.3 }],
70
+ '未': [{ stem: '己', power: 0.6 }, { stem: '丁', power: 0.3 }, { stem: '乙', power: 0.1 }],
71
+ '申': [{ stem: '庚', power: 0.6 }, { stem: '壬', power: 0.3 }, { stem: '戊', power: 0.1 }],
72
+ '酉': [{ stem: '辛', power: 1.0 }],
73
+ '戌': [{ stem: '戊', power: 0.6 }, { stem: '辛', power: 0.3 }, { stem: '丁', power: 0.1 }],
74
+ '亥': [{ stem: '壬', power: 0.7 }, { stem: '甲', power: 0.3 }]
75
+ };
76
+ // Alias for compatibility
77
+ exports.BRANCH_HIDDEN_STEMS = exports.HIDDEN_STEMS;
78
+ // Ten Gods (十神)
79
+ exports.TEN_GODS = {
80
+ '甲': { '甲': '比肩', '乙': '劫財', '丙': '食神', '丁': '傷官', '戊': '偏財', '己': '正財', '庚': '七殺', '辛': '正官', '壬': '偏印', '癸': '正印' },
81
+ '乙': { '甲': '劫財', '乙': '比肩', '丙': '傷官', '丁': '食神', '戊': '正財', '己': '偏財', '庚': '正官', '辛': '七殺', '壬': '正印', '癸': '偏印' },
82
+ '丙': { '甲': '偏印', '乙': '正印', '丙': '比肩', '丁': '劫財', '戊': '食神', '己': '傷官', '庚': '偏財', '辛': '正財', '壬': '七殺', '癸': '正官' },
83
+ '丁': { '甲': '正印', '乙': '偏印', '丙': '劫財', '丁': '比肩', '戊': '傷官', '己': '食神', '庚': '正財', '辛': '偏財', '壬': '正官', '癸': '七殺' },
84
+ '戊': { '甲': '七殺', '乙': '正官', '丙': '偏印', '丁': '正印', '戊': '比肩', '己': '劫財', '庚': '食神', '辛': '傷官', '壬': '偏財', '癸': '正財' },
85
+ '己': { '甲': '正官', '乙': '七殺', '丙': '正印', '丁': '偏印', '戊': '劫財', '己': '比肩', '庚': '傷官', '辛': '食神', '壬': '正財', '癸': '偏財' },
86
+ '庚': { '甲': '偏財', '乙': '正財', '丙': '七殺', '丁': '正官', '戊': '偏印', '己': '正印', '庚': '比肩', '辛': '劫財', '壬': '食神', '癸': '傷官' },
87
+ '辛': { '甲': '正財', '乙': '偏財', '丙': '正官', '丁': '七殺', '戊': '正印', '己': '偏印', '庚': '劫財', '辛': '比肩', '壬': '傷官', '癸': '食神' },
88
+ '壬': { '甲': '食神', '乙': '傷官', '丙': '偏財', '丁': '正財', '戊': '七殺', '己': '正官', '庚': '偏印', '辛': '正印', '壬': '比肩', '癸': '劫財' },
89
+ '癸': { '甲': '傷官', '乙': '食神', '丙': '正財', '丁': '偏財', '戊': '正官', '己': '七殺', '庚': '正印', '辛': '偏印', '壬': '劫財', '癸': '比肩' }
90
+ };
91
+ // NaYin (纳音)
92
+ exports.NA_YIN = {
93
+ '甲子': '海中金', '乙丑': '海中金',
94
+ '丙寅': '炉中火', '丁卯': '炉中火',
95
+ '戊辰': '大林木', '己巳': '大林木',
96
+ '庚午': '路旁土', '辛未': '路旁土',
97
+ '壬申': '剑锋金', '癸酉': '剑锋金',
98
+ '甲戌': '山头火', '乙亥': '山头火',
99
+ '丙子': '涧下水', '丁丑': '涧下水',
100
+ '戊寅': '城头土', '己卯': '城头土',
101
+ '庚辰': '白蜡金', '辛巳': '白蜡金',
102
+ '壬午': '杨柳木', '癸未': '杨柳木',
103
+ '甲申': '泉中水', '乙酉': '泉中水',
104
+ '丙戌': '屋上土', '丁亥': '屋上土',
105
+ '戊子': '霹雳火', '己丑': '霹雳火',
106
+ '庚寅': '松柏木', '辛卯': '松柏木',
107
+ '壬辰': '长流水', '癸巳': '长流水',
108
+ '甲午': '砂中金', '乙未': '砂中金',
109
+ '丙申': '山下火', '丁酉': '山下火',
110
+ '戊戌': '平地木', '己亥': '平地木',
111
+ '庚子': '壁上土', '辛丑': '壁上土',
112
+ '壬寅': '金箔金', '癸卯': '金箔金',
113
+ '甲辰': '覆灯火', '乙巳': '覆灯火',
114
+ '丙午': '天河水', '丁未': '天河水',
115
+ '戊申': '大驿土', '己酉': '大驿土',
116
+ '庚戌': '钗钏金', '辛亥': '钗钏金',
117
+ '壬子': '桑柘木', '癸丑': '桑柘木',
118
+ '甲寅': '大溪水', '乙卯': '大溪水',
119
+ '丙辰': '沙中土', '丁巳': '沙中土',
120
+ '戊午': '天上火', '己未': '天上火',
121
+ '庚申': '石榴木', '辛酉': '石榴木',
122
+ '壬戌': '大海水', '癸亥': '大海水'
123
+ };
124
+ // Branch Relations (地支关系)
125
+ exports.BRANCH_RELATIONS = {
126
+ // 地支相合
127
+ harmony: {
128
+ '子': ['丑'],
129
+ '寅': ['亥'],
130
+ '卯': ['戌'],
131
+ '辰': ['酉'],
132
+ '巳': ['申'],
133
+ '午': ['未']
134
+ },
135
+ // 地支相冲
136
+ clash: {
137
+ '子': ['午'],
138
+ '丑': ['未'],
139
+ '寅': ['申'],
140
+ '卯': ['酉'],
141
+ '辰': ['戌'],
142
+ '巳': ['亥']
143
+ },
144
+ // 地支相刑
145
+ punishment: {
146
+ '子': ['卯'],
147
+ '丑': ['戌', '未'],
148
+ '寅': ['巳', '申'],
149
+ '卯': ['子'],
150
+ '辰': ['辰'],
151
+ '巳': ['申', '寅'],
152
+ '午': ['午'],
153
+ '未': ['丑', '戌'],
154
+ '申': ['寅', '巳'],
155
+ '酉': ['酉'],
156
+ '戌': ['未', '丑'],
157
+ '亥': ['亥']
158
+ },
159
+ // 地支相害
160
+ harm: {
161
+ '子': ['未'],
162
+ '丑': ['午'],
163
+ '寅': ['巳'],
164
+ '卯': ['辰'],
165
+ '巳': ['寅'],
166
+ '午': ['丑'],
167
+ '未': ['子'],
168
+ '申': ['亥'],
169
+ '酉': ['戌'],
170
+ '戌': ['酉'],
171
+ '亥': ['申']
172
+ },
173
+ // 三合局
174
+ threeHarmony: [
175
+ ['申', '子', '辰'], // 水局
176
+ ['亥', '卯', '未'], // 木局
177
+ ['寅', '午', '戌'], // 火局
178
+ ['巳', '酉', '丑'] // 金局
179
+ ]
180
+ };
181
+ // Yin Yang mapping
182
+ exports.YIN_YANG = {
183
+ '甲': 'yang', '乙': 'yin',
184
+ '丙': 'yang', '丁': 'yin',
185
+ '戊': 'yang', '己': 'yin',
186
+ '庚': 'yang', '辛': 'yin',
187
+ '壬': 'yang', '癸': 'yin',
188
+ '子': 'yang', '丑': 'yin',
189
+ '寅': 'yang', '卯': 'yin',
190
+ '辰': 'yang', '巳': 'yin',
191
+ '午': 'yang', '未': 'yin',
192
+ '申': 'yang', '酉': 'yin',
193
+ '戌': 'yang', '亥': 'yin'
194
+ };
195
+ // Stem Yin Yang
196
+ exports.STEM_YIN_YANG = exports.YIN_YANG;
197
+ // Shen Sha definitions (simplified for now)
198
+ exports.SHEN_SHA_DEFINITIONS = {
199
+ tianyi: {
200
+ name: '天乙贵人',
201
+ type: 'auspicious',
202
+ rules: {
203
+ '甲': ['丑', '未'],
204
+ '乙': ['子', '申'],
205
+ '丙': ['亥', '酉'],
206
+ '丁': ['亥', '酉'],
207
+ '戊': ['丑', '未'],
208
+ '己': ['子', '申'],
209
+ '庚': ['丑', '未'],
210
+ '辛': ['寅', '午'],
211
+ '壬': ['卯', '巳'],
212
+ '癸': ['卯', '巳']
213
+ }
214
+ },
215
+ // Add more ShenSha definitions as needed
216
+ };
217
+ // Solar Terms (节气)
218
+ exports.SOLAR_TERMS = [
219
+ '立春', '雨水', '惊蛰', '春分', '清明', '谷雨',
220
+ '立夏', '小满', '芒种', '夏至', '小暑', '大暑',
221
+ '立秋', '处暑', '白露', '秋分', '寒露', '霜降',
222
+ '立冬', '小雪', '大雪', '冬至', '小寒', '大寒'
223
+ ];
224
+ // Solar Term to Earthly Branch mapping
225
+ exports.SOLAR_TERM_TO_ZHI = {
226
+ '立春': '寅', '雨水': '寅',
227
+ '惊蛰': '卯', '春分': '卯',
228
+ '清明': '辰', '谷雨': '辰',
229
+ '立夏': '巳', '小满': '巳',
230
+ '芒种': '午', '夏至': '午',
231
+ '小暑': '未', '大暑': '未',
232
+ '立秋': '申', '处暑': '申',
233
+ '白露': '酉', '秋分': '酉',
234
+ '寒露': '戌', '霜降': '戌',
235
+ '立冬': '亥', '小雪': '亥',
236
+ '大雪': '子', '冬至': '子',
237
+ '小寒': '丑', '大寒': '丑'
238
+ };
239
+ // Twelve Growth Stages (十二长生)
240
+ exports.TWELVE_GROWTH_STAGES = [
241
+ '长生', '沐浴', '冠带', '临官', '帝旺', '衰', '病', '死', '墓', '绝', '胎', '养'
242
+ ];
243
+ // Growth stage mapping by element
244
+ exports.GROWTH_STAGE_MAPPING = {
245
+ '木': {
246
+ '亥': '长生', '子': '沐浴', '丑': '冠带', '寅': '临官', '卯': '帝旺',
247
+ '辰': '衰', '巳': '病', '午': '死', '未': '墓', '申': '绝', '酉': '胎', '戌': '养'
248
+ },
249
+ '火': {
250
+ '寅': '长生', '卯': '沐浴', '辰': '冠带', '巳': '临官', '午': '帝旺',
251
+ '未': '衰', '申': '病', '酉': '死', '戌': '墓', '亥': '绝', '子': '胎', '丑': '养'
252
+ },
253
+ '土': {
254
+ '寅': '长生', '卯': '沐浴', '辰': '冠带', '巳': '临官', '午': '帝旺',
255
+ '未': '衰', '申': '病', '酉': '死', '戌': '墓', '亥': '绝', '子': '胎', '丑': '养'
256
+ },
257
+ '金': {
258
+ '巳': '长生', '午': '沐浴', '未': '冠带', '申': '临官', '酉': '帝旺',
259
+ '戌': '衰', '亥': '病', '子': '死', '丑': '墓', '寅': '绝', '卯': '胎', '辰': '养'
260
+ },
261
+ '水': {
262
+ '申': '长生', '酉': '沐浴', '戌': '冠带', '亥': '临官', '子': '帝旺',
263
+ '丑': '衰', '寅': '病', '卯': '死', '辰': '墓', '巳': '绝', '午': '胎', '未': '养'
264
+ }
265
+ };
266
+ // Ten Gods Array (for easy iteration)
267
+ exports.TEN_GODS_ARRAY = [
268
+ '正官', '七杀', '正印', '偏印', '正财', '偏财', '食神', '伤官', '比肩', '劫财'
269
+ ];
270
+ // Ten Gods Short Form Mapping (單字縮寫)
271
+ exports.TEN_GODS_SHORT = {
272
+ '正官': '官',
273
+ '七殺': '殺',
274
+ '正印': '印',
275
+ '偏印': '梟',
276
+ '正財': '財',
277
+ '偏財': '才',
278
+ '食神': '食',
279
+ '傷官': '傷',
280
+ '比肩': '比',
281
+ '劫財': '劫',
282
+ // For compatibility with different naming conventions
283
+ '偏官': '殺'
284
+ };
285
+ // Monthly Strength (seasonal strength by branch)
286
+ exports.MONTHLY_STRENGTH = {
287
+ '寅': { '木': 1.2, '火': 1.1, '土': 0.9, '金': 0.7, '水': 0.8 },
288
+ '卯': { '木': 1.2, '火': 1.1, '土': 0.9, '金': 0.7, '水': 0.8 },
289
+ '辰': { '木': 1.1, '火': 1.0, '土': 1.1, '金': 0.8, '水': 0.9 },
290
+ '巳': { '木': 0.9, '火': 1.2, '土': 1.0, '金': 0.8, '水': 0.7 },
291
+ '午': { '木': 0.8, '火': 1.2, '土': 1.0, '金': 0.8, '水': 0.7 },
292
+ '未': { '木': 0.9, '火': 1.0, '土': 1.2, '金': 0.9, '水': 0.8 },
293
+ '申': { '木': 0.7, '火': 0.8, '土': 1.0, '金': 1.2, '水': 1.1 },
294
+ '酉': { '木': 0.7, '火': 0.8, '土': 1.0, '金': 1.2, '水': 1.1 },
295
+ '戌': { '木': 0.8, '火': 0.9, '土': 1.2, '金': 1.0, '水': 0.9 },
296
+ '亥': { '木': 1.1, '火': 0.7, '土': 0.9, '金': 0.8, '水': 1.2 },
297
+ '子': { '木': 1.1, '火': 0.7, '土': 0.9, '金': 0.8, '水': 1.2 },
298
+ '丑': { '木': 0.9, '火': 0.8, '土': 1.1, '金': 1.0, '水': 1.0 }
299
+ };
300
+ // Five Elements Relations
301
+ exports.FIVE_ELEMENTS_RELATIONS = {
302
+ generating: {
303
+ '木': '火',
304
+ '火': '土',
305
+ '土': '金',
306
+ '金': '水',
307
+ '水': '木'
308
+ },
309
+ controlling: {
310
+ '木': '土',
311
+ '土': '水',
312
+ '水': '火',
313
+ '火': '金',
314
+ '金': '木'
315
+ },
316
+ // Reverse mappings (who generates/controls me)
317
+ generateBy: {
318
+ '木': '水',
319
+ '火': '木',
320
+ '土': '火',
321
+ '金': '土',
322
+ '水': '金'
323
+ },
324
+ restrictBy: {
325
+ '木': '金',
326
+ '火': '水',
327
+ '土': '木',
328
+ '金': '火',
329
+ '水': '土'
330
+ }
331
+ };
332
+ //# sourceMappingURL=bazi.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bazi.js","sourceRoot":"","sources":["../../../src/core/constants/bazi.ts"],"names":[],"mappings":"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AAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;IACrH,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;IACrH,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;IACrH,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;IACrH,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;IACrH,GAAG,EAAE,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE;IACrH,GAAG,EAAE,EAAE,GAAG,EAAE,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"}
@@ -0,0 +1,6 @@
1
+ /**
2
+ * Core constants exports
3
+ */
4
+ export * from './bazi';
5
+ export { HEAVENLY_STEMS, EARTHLY_BRANCHES, FIVE_ELEMENTS, HEAVENLY_STEMS_ARRAY, EARTHLY_BRANCHES_ARRAY, FIVE_ELEMENTS_ARRAY, TEN_GODS, STEM_ELEMENTS, BRANCH_ELEMENTS, HIDDEN_STEMS, BRANCH_RELATIONS, YIN_YANG } from './bazi';
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/core/constants/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,QAAQ,CAAC;AAGvB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,aAAa,EACb,oBAAoB,EACpB,sBAAsB,EACtB,mBAAmB,EACnB,QAAQ,EACR,aAAa,EACb,eAAe,EACf,YAAY,EACZ,gBAAgB,EAChB,QAAQ,EACT,MAAM,QAAQ,CAAC"}
@@ -0,0 +1,37 @@
1
+ "use strict";
2
+ /**
3
+ * Core constants exports
4
+ */
5
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
6
+ if (k2 === undefined) k2 = k;
7
+ var desc = Object.getOwnPropertyDescriptor(m, k);
8
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
9
+ desc = { enumerable: true, get: function() { return m[k]; } };
10
+ }
11
+ Object.defineProperty(o, k2, desc);
12
+ }) : (function(o, m, k, k2) {
13
+ if (k2 === undefined) k2 = k;
14
+ o[k2] = m[k];
15
+ }));
16
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
17
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
18
+ };
19
+ Object.defineProperty(exports, "__esModule", { value: true });
20
+ exports.YIN_YANG = exports.BRANCH_RELATIONS = exports.HIDDEN_STEMS = exports.BRANCH_ELEMENTS = exports.STEM_ELEMENTS = exports.TEN_GODS = exports.FIVE_ELEMENTS_ARRAY = exports.EARTHLY_BRANCHES_ARRAY = exports.HEAVENLY_STEMS_ARRAY = exports.FIVE_ELEMENTS = exports.EARTHLY_BRANCHES = exports.HEAVENLY_STEMS = void 0;
21
+ // Export all BaZi constants
22
+ __exportStar(require("./bazi"), exports);
23
+ // Re-export commonly used constants for convenience
24
+ var bazi_1 = require("./bazi");
25
+ Object.defineProperty(exports, "HEAVENLY_STEMS", { enumerable: true, get: function () { return bazi_1.HEAVENLY_STEMS; } });
26
+ Object.defineProperty(exports, "EARTHLY_BRANCHES", { enumerable: true, get: function () { return bazi_1.EARTHLY_BRANCHES; } });
27
+ Object.defineProperty(exports, "FIVE_ELEMENTS", { enumerable: true, get: function () { return bazi_1.FIVE_ELEMENTS; } });
28
+ Object.defineProperty(exports, "HEAVENLY_STEMS_ARRAY", { enumerable: true, get: function () { return bazi_1.HEAVENLY_STEMS_ARRAY; } });
29
+ Object.defineProperty(exports, "EARTHLY_BRANCHES_ARRAY", { enumerable: true, get: function () { return bazi_1.EARTHLY_BRANCHES_ARRAY; } });
30
+ Object.defineProperty(exports, "FIVE_ELEMENTS_ARRAY", { enumerable: true, get: function () { return bazi_1.FIVE_ELEMENTS_ARRAY; } });
31
+ Object.defineProperty(exports, "TEN_GODS", { enumerable: true, get: function () { return bazi_1.TEN_GODS; } });
32
+ Object.defineProperty(exports, "STEM_ELEMENTS", { enumerable: true, get: function () { return bazi_1.STEM_ELEMENTS; } });
33
+ Object.defineProperty(exports, "BRANCH_ELEMENTS", { enumerable: true, get: function () { return bazi_1.BRANCH_ELEMENTS; } });
34
+ Object.defineProperty(exports, "HIDDEN_STEMS", { enumerable: true, get: function () { return bazi_1.HIDDEN_STEMS; } });
35
+ Object.defineProperty(exports, "BRANCH_RELATIONS", { enumerable: true, get: function () { return bazi_1.BRANCH_RELATIONS; } });
36
+ Object.defineProperty(exports, "YIN_YANG", { enumerable: true, get: function () { return bazi_1.YIN_YANG; } });
37
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/core/constants/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAEH,4BAA4B;AAC5B,yCAAuB;AAEvB,oDAAoD;AACpD,+BAagB;AAZd,sGAAA,cAAc,OAAA;AACd,wGAAA,gBAAgB,OAAA;AAChB,qGAAA,aAAa,OAAA;AACb,4GAAA,oBAAoB,OAAA;AACpB,8GAAA,sBAAsB,OAAA;AACtB,2GAAA,mBAAmB,OAAA;AACnB,gGAAA,QAAQ,OAAA;AACR,qGAAA,aAAa,OAAA;AACb,uGAAA,eAAe,OAAA;AACf,oGAAA,YAAY,OAAA;AACZ,wGAAA,gBAAgB,OAAA;AAChB,gGAAA,QAAQ,OAAA"}
@@ -0,0 +1,27 @@
1
+ /**
2
+ * 统一的位置常量定义
3
+ * 遵循DRY原则,所有位置相关的值都从这里引用
4
+ */
5
+ export declare const POSITION_KEYS: {
6
+ readonly YEAR: "year";
7
+ readonly MONTH: "month";
8
+ readonly DAY: "day";
9
+ readonly HOUR: "hour";
10
+ };
11
+ export declare const POSITION_NAMES: {
12
+ readonly year: "年柱";
13
+ readonly month: "月柱";
14
+ readonly day: "日柱";
15
+ readonly hour: "時柱";
16
+ };
17
+ export declare const POSITION_INDICES: {
18
+ readonly year: 0;
19
+ readonly month: 1;
20
+ readonly day: 2;
21
+ readonly hour: 3;
22
+ };
23
+ export type PositionKey = typeof POSITION_KEYS[keyof typeof POSITION_KEYS];
24
+ export type PositionName = typeof POSITION_NAMES[keyof typeof POSITION_NAMES];
25
+ export declare function getPositionKeyByName(name: PositionName): PositionKey | undefined;
26
+ export declare function getPositionNameByKey(key: PositionKey): PositionName;
27
+ //# sourceMappingURL=positions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"positions.d.ts","sourceRoot":"","sources":["../../../src/core/constants/positions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAGH,eAAO,MAAM,aAAa;;;;;CAKhB,CAAC;AAGX,eAAO,MAAM,cAAc;;;;;CAKjB,CAAC;AAGX,eAAO,MAAM,gBAAgB;;;;;CAKnB,CAAC;AAGX,MAAM,MAAM,WAAW,GAAG,OAAO,aAAa,CAAC,MAAM,OAAO,aAAa,CAAC,CAAC;AAC3E,MAAM,MAAM,YAAY,GAAG,OAAO,cAAc,CAAC,MAAM,OAAO,cAAc,CAAC,CAAC;AAG9E,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,YAAY,GAAG,WAAW,GAAG,SAAS,CAEhF;AAGD,wBAAgB,oBAAoB,CAAC,GAAG,EAAE,WAAW,GAAG,YAAY,CAEnE"}
@@ -0,0 +1,39 @@
1
+ "use strict";
2
+ /**
3
+ * 统一的位置常量定义
4
+ * 遵循DRY原则,所有位置相关的值都从这里引用
5
+ */
6
+ Object.defineProperty(exports, "__esModule", { value: true });
7
+ exports.POSITION_INDICES = exports.POSITION_NAMES = exports.POSITION_KEYS = void 0;
8
+ exports.getPositionKeyByName = getPositionKeyByName;
9
+ exports.getPositionNameByKey = getPositionNameByKey;
10
+ // 位置的内部标识符(用于逻辑计算)
11
+ exports.POSITION_KEYS = {
12
+ YEAR: 'year',
13
+ MONTH: 'month',
14
+ DAY: 'day',
15
+ HOUR: 'hour'
16
+ };
17
+ // 位置的中文名称(用于显示)
18
+ exports.POSITION_NAMES = {
19
+ [exports.POSITION_KEYS.YEAR]: '年柱',
20
+ [exports.POSITION_KEYS.MONTH]: '月柱',
21
+ [exports.POSITION_KEYS.DAY]: '日柱',
22
+ [exports.POSITION_KEYS.HOUR]: '時柱'
23
+ };
24
+ // 位置索引(用于距离计算)
25
+ exports.POSITION_INDICES = {
26
+ [exports.POSITION_KEYS.YEAR]: 0,
27
+ [exports.POSITION_KEYS.MONTH]: 1,
28
+ [exports.POSITION_KEYS.DAY]: 2,
29
+ [exports.POSITION_KEYS.HOUR]: 3
30
+ };
31
+ // 工具函数:从中文名称获取内部键
32
+ function getPositionKeyByName(name) {
33
+ return Object.entries(exports.POSITION_NAMES).find(([key, value]) => value === name)?.[0];
34
+ }
35
+ // 工具函数:从内部键获取中文名称
36
+ function getPositionNameByKey(key) {
37
+ return exports.POSITION_NAMES[key];
38
+ }
39
+ //# sourceMappingURL=positions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"positions.js","sourceRoot":"","sources":["../../../src/core/constants/positions.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AA+BH,oDAEC;AAGD,oDAEC;AApCD,mBAAmB;AACN,QAAA,aAAa,GAAG;IAC3B,IAAI,EAAE,MAAM;IACZ,KAAK,EAAE,OAAO;IACd,GAAG,EAAE,KAAK;IACV,IAAI,EAAE,MAAM;CACJ,CAAC;AAEX,gBAAgB;AACH,QAAA,cAAc,GAAG;IAC5B,CAAC,qBAAa,CAAC,IAAI,CAAC,EAAE,IAAI;IAC1B,CAAC,qBAAa,CAAC,KAAK,CAAC,EAAE,IAAI;IAC3B,CAAC,qBAAa,CAAC,GAAG,CAAC,EAAE,IAAI;IACzB,CAAC,qBAAa,CAAC,IAAI,CAAC,EAAE,IAAI;CAClB,CAAC;AAEX,eAAe;AACF,QAAA,gBAAgB,GAAG;IAC9B,CAAC,qBAAa,CAAC,IAAI,CAAC,EAAE,CAAC;IACvB,CAAC,qBAAa,CAAC,KAAK,CAAC,EAAE,CAAC;IACxB,CAAC,qBAAa,CAAC,GAAG,CAAC,EAAE,CAAC;IACtB,CAAC,qBAAa,CAAC,IAAI,CAAC,EAAE,CAAC;CACf,CAAC;AAMX,kBAAkB;AAClB,SAAgB,oBAAoB,CAAC,IAAkB;IACrD,OAAO,MAAM,CAAC,OAAO,CAAC,sBAAc,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC,KAAK,KAAK,IAAI,CAAC,EAAE,CAAC,CAAC,CAAgB,CAAC;AACnG,CAAC;AAED,kBAAkB;AAClB,SAAgB,oBAAoB,CAAC,GAAgB;IACnD,OAAO,sBAAc,CAAC,GAAG,CAAC,CAAC;AAC7B,CAAC"}
@@ -0,0 +1,53 @@
1
+ /**
2
+ * 紫微斗数星曜亮度计算系统
3
+ * 根据星曜性质和所在宫位地支计算亮度等级
4
+ *
5
+ * 从 /lib/ziwei/core/brightness.ts 迁移并增强
6
+ */
7
+ export type BrightnessLevel = '庙' | '旺' | '得' | '利' | '平' | '不' | '陷';
8
+ export declare class BrightnessSystem {
9
+ private static readonly MAJOR_STARS_BRIGHTNESS;
10
+ private static readonly MINOR_STARS_BRIGHTNESS;
11
+ /**
12
+ * 计算星曜亮度
13
+ * @param starName 星曜名称
14
+ * @param branch 所在宫位地支
15
+ * @returns 亮度等级
16
+ */
17
+ static calculateBrightness(starName: string, branch: string): BrightnessLevel;
18
+ /**
19
+ * 获取亮度的数值评分(用于分析)
20
+ */
21
+ static getBrightnessScore(level: BrightnessLevel): number;
22
+ /**
23
+ * 获取亮度等级的描述(多语言支持)
24
+ */
25
+ static getBrightnessDescription(level: BrightnessLevel, language?: string): string;
26
+ /**
27
+ * 标准化星曜名称
28
+ */
29
+ private static normalizeStarName;
30
+ /**
31
+ * 标准化语言代码
32
+ */
33
+ private static normalizeLanguage;
34
+ /**
35
+ * 批量计算多个星曜的亮度
36
+ */
37
+ static calculateMultipleBrightness(stars: string[], branch: string): Record<string, BrightnessLevel>;
38
+ /**
39
+ * 获取某个地支中所有星曜的最佳亮度
40
+ */
41
+ static getBestStarsInBranch(branch: string): string[];
42
+ /**
43
+ * 应用亮度到星曜数据
44
+ */
45
+ static applyBrightnessToStars(stars: Array<{
46
+ name: string;
47
+ brightness?: string;
48
+ }>, branch: string): Array<{
49
+ name: string;
50
+ brightness: string;
51
+ }>;
52
+ }
53
+ //# sourceMappingURL=BrightnessSystem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"BrightnessSystem.d.ts","sourceRoot":"","sources":["../../../src/core/ziwei/BrightnessSystem.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,MAAM,MAAM,eAAe,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,GAAG,CAAC;AAStE,qBAAa,gBAAgB;IAE3B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CAuE5C;IAGF,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,sBAAsB,CA+B5C;IAEF;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,GAAG,eAAe;IAoB7E;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,KAAK,EAAE,eAAe,GAAG,MAAM;IAazD;;OAEG;IACH,MAAM,CAAC,wBAAwB,CAAC,KAAK,EAAE,eAAe,EAAE,QAAQ,GAAE,MAAgB,GAAG,MAAM;IA4C3F;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAsBhC;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,iBAAiB;IAYhC;;OAEG;IACH,MAAM,CAAC,2BAA2B,CAChC,KAAK,EAAE,MAAM,EAAE,EACf,MAAM,EAAE,MAAM,GACb,MAAM,CAAC,MAAM,EAAE,eAAe,CAAC;IAUlC;;OAEG;IACH,MAAM,CAAC,oBAAoB,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE;IAoBrD;;OAEG;IACH,MAAM,CAAC,sBAAsB,CAC3B,KAAK,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,EACnD,MAAM,EAAE,MAAM,GACb,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CAM/C"}