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.
- package/LICENSE +201 -0
- package/README.md +118 -0
- package/dist/core/bazi/BaziCore.d.ts +112 -0
- package/dist/core/bazi/BaziCore.d.ts.map +1 -0
- package/dist/core/bazi/BaziCore.js +606 -0
- package/dist/core/bazi/BaziCore.js.map +1 -0
- package/dist/core/bazi/SolarTermCalculator.d.ts +46 -0
- package/dist/core/bazi/SolarTermCalculator.d.ts.map +1 -0
- package/dist/core/bazi/SolarTermCalculator.js +452 -0
- package/dist/core/bazi/SolarTermCalculator.js.map +1 -0
- package/dist/core/bazi/TrueSolarTime.d.ts +64 -0
- package/dist/core/bazi/TrueSolarTime.d.ts.map +1 -0
- package/dist/core/bazi/TrueSolarTime.js +210 -0
- package/dist/core/bazi/TrueSolarTime.js.map +1 -0
- package/dist/core/bazi/ephemerisData.d.ts +10 -0
- package/dist/core/bazi/ephemerisData.d.ts.map +1 -0
- package/dist/core/bazi/ephemerisData.js +88 -0
- package/dist/core/bazi/ephemerisData.js.map +1 -0
- package/dist/core/bazi/index.d.ts +8 -0
- package/dist/core/bazi/index.d.ts.map +1 -0
- package/dist/core/bazi/index.js +30 -0
- package/dist/core/bazi/index.js.map +1 -0
- package/dist/core/bazi/types.d.ts +116 -0
- package/dist/core/bazi/types.d.ts.map +1 -0
- package/dist/core/bazi/types.js +7 -0
- package/dist/core/bazi/types.js.map +1 -0
- package/dist/core/calendar/SolarTermsCalculator.d.ts +33 -0
- package/dist/core/calendar/SolarTermsCalculator.d.ts.map +1 -0
- package/dist/core/calendar/SolarTermsCalculator.js +111 -0
- package/dist/core/calendar/SolarTermsCalculator.js.map +1 -0
- package/dist/core/calendar/astronomicalCalendar.d.ts +74 -0
- package/dist/core/calendar/astronomicalCalendar.d.ts.map +1 -0
- package/dist/core/calendar/astronomicalCalendar.js +276 -0
- package/dist/core/calendar/astronomicalCalendar.js.map +1 -0
- package/dist/core/calendar/calendar.d.ts +81 -0
- package/dist/core/calendar/calendar.d.ts.map +1 -0
- package/dist/core/calendar/calendar.js +223 -0
- package/dist/core/calendar/calendar.js.map +1 -0
- package/dist/core/calendar/constants.d.ts +151 -0
- package/dist/core/calendar/constants.d.ts.map +1 -0
- package/dist/core/calendar/constants.js +97 -0
- package/dist/core/calendar/constants.js.map +1 -0
- package/dist/core/calendar/julian.d.ts +54 -0
- package/dist/core/calendar/julian.d.ts.map +1 -0
- package/dist/core/calendar/julian.js +142 -0
- package/dist/core/calendar/julian.js.map +1 -0
- package/dist/core/calendar/lunarCalendar.d.ts +79 -0
- package/dist/core/calendar/lunarCalendar.d.ts.map +1 -0
- package/dist/core/calendar/lunarCalendar.js +164 -0
- package/dist/core/calendar/lunarCalendar.js.map +1 -0
- package/dist/core/calendar/solarTerms.d.ts +105 -0
- package/dist/core/calendar/solarTerms.d.ts.map +1 -0
- package/dist/core/calendar/solarTerms.js +487 -0
- package/dist/core/calendar/solarTerms.js.map +1 -0
- package/dist/core/constants/bazi.d.ts +138 -0
- package/dist/core/constants/bazi.d.ts.map +1 -0
- package/dist/core/constants/bazi.js +332 -0
- package/dist/core/constants/bazi.js.map +1 -0
- package/dist/core/constants/index.d.ts +6 -0
- package/dist/core/constants/index.d.ts.map +1 -0
- package/dist/core/constants/index.js +37 -0
- package/dist/core/constants/index.js.map +1 -0
- package/dist/core/constants/positions.d.ts +27 -0
- package/dist/core/constants/positions.d.ts.map +1 -0
- package/dist/core/constants/positions.js +39 -0
- package/dist/core/constants/positions.js.map +1 -0
- package/dist/core/ziwei/BrightnessSystem.d.ts +53 -0
- package/dist/core/ziwei/BrightnessSystem.d.ts.map +1 -0
- package/dist/core/ziwei/BrightnessSystem.js +278 -0
- package/dist/core/ziwei/BrightnessSystem.js.map +1 -0
- package/dist/core/ziwei/IztroAdapter.d.ts +78 -0
- package/dist/core/ziwei/IztroAdapter.d.ts.map +1 -0
- package/dist/core/ziwei/IztroAdapter.js +314 -0
- package/dist/core/ziwei/IztroAdapter.js.map +1 -0
- package/dist/core/ziwei/MutagenCore.d.ts +81 -0
- package/dist/core/ziwei/MutagenCore.d.ts.map +1 -0
- package/dist/core/ziwei/MutagenCore.js +246 -0
- package/dist/core/ziwei/MutagenCore.js.map +1 -0
- package/dist/index.d.ts +13 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +1101 -0
- package/dist/index.js.map +1 -0
- package/dist/output/fortuneTextRenderer.d.ts +63 -0
- package/dist/output/fortuneTextRenderer.d.ts.map +1 -0
- package/dist/output/fortuneTextRenderer.js +384 -0
- package/dist/output/fortuneTextRenderer.js.map +1 -0
- package/dist/output/listTextRenderer.d.ts +298 -0
- package/dist/output/listTextRenderer.d.ts.map +1 -0
- package/dist/output/listTextRenderer.js +942 -0
- package/dist/output/listTextRenderer.js.map +1 -0
- package/dist/services/bazi/BaziService.d.ts +83 -0
- package/dist/services/bazi/BaziService.d.ts.map +1 -0
- package/dist/services/bazi/BaziService.js +635 -0
- package/dist/services/bazi/BaziService.js.map +1 -0
- package/dist/services/bazi/analyzers/ClimateAnalyzer.d.ts +31 -0
- package/dist/services/bazi/analyzers/ClimateAnalyzer.d.ts.map +1 -0
- package/dist/services/bazi/analyzers/ClimateAnalyzer.js +194 -0
- package/dist/services/bazi/analyzers/ClimateAnalyzer.js.map +1 -0
- package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.d.ts +16 -0
- package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.d.ts.map +1 -0
- package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.js +60 -0
- package/dist/services/bazi/analyzers/HiddenStemsAnalyzer.js.map +1 -0
- package/dist/services/bazi/analyzers/NaYinAnalyzer.d.ts +33 -0
- package/dist/services/bazi/analyzers/NaYinAnalyzer.d.ts.map +1 -0
- package/dist/services/bazi/analyzers/NaYinAnalyzer.js +209 -0
- package/dist/services/bazi/analyzers/NaYinAnalyzer.js.map +1 -0
- package/dist/services/bazi/analyzers/PatternAnalyzer.d.ts +159 -0
- package/dist/services/bazi/analyzers/PatternAnalyzer.d.ts.map +1 -0
- package/dist/services/bazi/analyzers/PatternAnalyzer.js +1150 -0
- package/dist/services/bazi/analyzers/PatternAnalyzer.js.map +1 -0
- package/dist/services/bazi/analyzers/RelationsAnalyzer.d.ts +114 -0
- package/dist/services/bazi/analyzers/RelationsAnalyzer.d.ts.map +1 -0
- package/dist/services/bazi/analyzers/RelationsAnalyzer.js +704 -0
- package/dist/services/bazi/analyzers/RelationsAnalyzer.js.map +1 -0
- package/dist/services/bazi/analyzers/ShenShaAnalyzer.d.ts +236 -0
- package/dist/services/bazi/analyzers/ShenShaAnalyzer.d.ts.map +1 -0
- package/dist/services/bazi/analyzers/ShenShaAnalyzer.js +2079 -0
- package/dist/services/bazi/analyzers/ShenShaAnalyzer.js.map +1 -0
- package/dist/services/bazi/analyzers/StrengthAnalyzer.d.ts +181 -0
- package/dist/services/bazi/analyzers/StrengthAnalyzer.d.ts.map +1 -0
- package/dist/services/bazi/analyzers/StrengthAnalyzer.js +1119 -0
- package/dist/services/bazi/analyzers/StrengthAnalyzer.js.map +1 -0
- package/dist/services/bazi/analyzers/TenGodsAnalyzer.d.ts +78 -0
- package/dist/services/bazi/analyzers/TenGodsAnalyzer.d.ts.map +1 -0
- package/dist/services/bazi/analyzers/TenGodsAnalyzer.js +383 -0
- package/dist/services/bazi/analyzers/TenGodsAnalyzer.js.map +1 -0
- package/dist/services/bazi/analyzers/TraditionalAnalyzer.d.ts +46 -0
- package/dist/services/bazi/analyzers/TraditionalAnalyzer.d.ts.map +1 -0
- package/dist/services/bazi/analyzers/TraditionalAnalyzer.js +260 -0
- package/dist/services/bazi/analyzers/TraditionalAnalyzer.js.map +1 -0
- package/dist/services/bazi/analyzers/YongShenAnalyzer.d.ts +70 -0
- package/dist/services/bazi/analyzers/YongShenAnalyzer.d.ts.map +1 -0
- package/dist/services/bazi/analyzers/YongShenAnalyzer.js +858 -0
- package/dist/services/bazi/analyzers/YongShenAnalyzer.js.map +1 -0
- package/dist/services/bazi/calculators/DaYunCalculator.d.ts +71 -0
- package/dist/services/bazi/calculators/DaYunCalculator.d.ts.map +1 -0
- package/dist/services/bazi/calculators/DaYunCalculator.js +496 -0
- package/dist/services/bazi/calculators/DaYunCalculator.js.map +1 -0
- package/dist/services/bazi/calculators/LiuNianCalculator.d.ts +88 -0
- package/dist/services/bazi/calculators/LiuNianCalculator.d.ts.map +1 -0
- package/dist/services/bazi/calculators/LiuNianCalculator.js +546 -0
- package/dist/services/bazi/calculators/LiuNianCalculator.js.map +1 -0
- package/dist/services/bazi/calculators/LiuRiCalculator.d.ts +66 -0
- package/dist/services/bazi/calculators/LiuRiCalculator.d.ts.map +1 -0
- package/dist/services/bazi/calculators/LiuRiCalculator.js +497 -0
- package/dist/services/bazi/calculators/LiuRiCalculator.js.map +1 -0
- package/dist/services/bazi/calculators/LiuYueCalculator.d.ts +50 -0
- package/dist/services/bazi/calculators/LiuYueCalculator.d.ts.map +1 -0
- package/dist/services/bazi/calculators/LiuYueCalculator.js +338 -0
- package/dist/services/bazi/calculators/LiuYueCalculator.js.map +1 -0
- package/dist/services/bazi/calculators/LuckCycleCalculator.d.ts +123 -0
- package/dist/services/bazi/calculators/LuckCycleCalculator.d.ts.map +1 -0
- package/dist/services/bazi/calculators/LuckCycleCalculator.js +414 -0
- package/dist/services/bazi/calculators/LuckCycleCalculator.js.map +1 -0
- package/dist/services/bazi/index.d.ts +21 -0
- package/dist/services/bazi/index.d.ts.map +1 -0
- package/dist/services/bazi/index.js +83 -0
- package/dist/services/bazi/index.js.map +1 -0
- package/dist/services/bazi/types.d.ts +597 -0
- package/dist/services/bazi/types.d.ts.map +1 -0
- package/dist/services/bazi/types.js +123 -0
- package/dist/services/bazi/types.js.map +1 -0
- package/dist/services/ziwei/ZiweiService.d.ts +86 -0
- package/dist/services/ziwei/ZiweiService.d.ts.map +1 -0
- package/dist/services/ziwei/ZiweiService.js +343 -0
- package/dist/services/ziwei/ZiweiService.js.map +1 -0
- package/dist/services/ziwei/calculators/BrightnessCalculator.d.ts +38 -0
- package/dist/services/ziwei/calculators/BrightnessCalculator.d.ts.map +1 -0
- package/dist/services/ziwei/calculators/BrightnessCalculator.js +142 -0
- package/dist/services/ziwei/calculators/BrightnessCalculator.js.map +1 -0
- package/dist/services/ziwei/calculators/DailyCalculator.d.ts +27 -0
- package/dist/services/ziwei/calculators/DailyCalculator.d.ts.map +1 -0
- package/dist/services/ziwei/calculators/DailyCalculator.js +55 -0
- package/dist/services/ziwei/calculators/DailyCalculator.js.map +1 -0
- package/dist/services/ziwei/calculators/DecadeCalculator.d.ts +46 -0
- package/dist/services/ziwei/calculators/DecadeCalculator.d.ts.map +1 -0
- package/dist/services/ziwei/calculators/DecadeCalculator.js +181 -0
- package/dist/services/ziwei/calculators/DecadeCalculator.js.map +1 -0
- package/dist/services/ziwei/calculators/HoroscopeStarsCalculator.d.ts +28 -0
- package/dist/services/ziwei/calculators/HoroscopeStarsCalculator.d.ts.map +1 -0
- package/dist/services/ziwei/calculators/HoroscopeStarsCalculator.js +84 -0
- package/dist/services/ziwei/calculators/HoroscopeStarsCalculator.js.map +1 -0
- package/dist/services/ziwei/calculators/HourlyCalculator.d.ts +41 -0
- package/dist/services/ziwei/calculators/HourlyCalculator.d.ts.map +1 -0
- package/dist/services/ziwei/calculators/HourlyCalculator.js +139 -0
- package/dist/services/ziwei/calculators/HourlyCalculator.js.map +1 -0
- package/dist/services/ziwei/calculators/MinorLimitCalculator.d.ts +30 -0
- package/dist/services/ziwei/calculators/MinorLimitCalculator.d.ts.map +1 -0
- package/dist/services/ziwei/calculators/MinorLimitCalculator.js +90 -0
- package/dist/services/ziwei/calculators/MinorLimitCalculator.js.map +1 -0
- package/dist/services/ziwei/calculators/MonthlyCalculator.d.ts +39 -0
- package/dist/services/ziwei/calculators/MonthlyCalculator.d.ts.map +1 -0
- package/dist/services/ziwei/calculators/MonthlyCalculator.js +128 -0
- package/dist/services/ziwei/calculators/MonthlyCalculator.js.map +1 -0
- package/dist/services/ziwei/calculators/MutagenCalculator.d.ts +20 -0
- package/dist/services/ziwei/calculators/MutagenCalculator.d.ts.map +1 -0
- package/dist/services/ziwei/calculators/MutagenCalculator.js +121 -0
- package/dist/services/ziwei/calculators/MutagenCalculator.js.map +1 -0
- package/dist/services/ziwei/calculators/PalaceDynamicCalculator.d.ts +35 -0
- package/dist/services/ziwei/calculators/PalaceDynamicCalculator.d.ts.map +1 -0
- package/dist/services/ziwei/calculators/PalaceDynamicCalculator.js +55 -0
- package/dist/services/ziwei/calculators/PalaceDynamicCalculator.js.map +1 -0
- package/dist/services/ziwei/calculators/YearlyCalculator.d.ts +35 -0
- package/dist/services/ziwei/calculators/YearlyCalculator.d.ts.map +1 -0
- package/dist/services/ziwei/calculators/YearlyCalculator.js +119 -0
- package/dist/services/ziwei/calculators/YearlyCalculator.js.map +1 -0
- package/dist/services/ziwei/index.d.ts +15 -0
- package/dist/services/ziwei/index.d.ts.map +1 -0
- package/dist/services/ziwei/index.js +48 -0
- package/dist/services/ziwei/index.js.map +1 -0
- package/dist/services/ziwei/transformers/PalaceTransformer.d.ts +62 -0
- package/dist/services/ziwei/transformers/PalaceTransformer.d.ts.map +1 -0
- package/dist/services/ziwei/transformers/PalaceTransformer.js +153 -0
- package/dist/services/ziwei/transformers/PalaceTransformer.js.map +1 -0
- package/dist/services/ziwei/types.d.ts +185 -0
- package/dist/services/ziwei/types.d.ts.map +1 -0
- package/dist/services/ziwei/types.js +54 -0
- package/dist/services/ziwei/types.js.map +1 -0
- package/dist/shared/logger.d.ts +51 -0
- package/dist/shared/logger.d.ts.map +1 -0
- package/dist/shared/logger.js +136 -0
- package/dist/shared/logger.js.map +1 -0
- package/dist/shared/types.d.ts +91 -0
- package/dist/shared/types.d.ts.map +1 -0
- package/dist/shared/types.js +7 -0
- package/dist/shared/types.js.map +1 -0
- package/dist/utils/ageCalculator.d.ts +30 -0
- package/dist/utils/ageCalculator.d.ts.map +1 -0
- package/dist/utils/ageCalculator.js +51 -0
- package/dist/utils/ageCalculator.js.map +1 -0
- package/package.json +54 -0
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 宫位动态计算器
|
|
3
|
+
* 计算每个宫位在大限和流年的动态名称
|
|
4
|
+
*/
|
|
5
|
+
export declare class PalaceDynamicCalculator {
|
|
6
|
+
private static readonly PALACE_NAMES;
|
|
7
|
+
/**
|
|
8
|
+
* 计算宫位在大限时的名称
|
|
9
|
+
* @param originalIndex 原始宫位索引
|
|
10
|
+
* @param decadePalaceIndex 大限命宫所在的宫位索引
|
|
11
|
+
* @returns 该宫位在大限时的名称
|
|
12
|
+
*/
|
|
13
|
+
static getDecadePalaceName(originalIndex: number, decadePalaceIndex: number): string;
|
|
14
|
+
/**
|
|
15
|
+
* 计算宫位在流年时的名称
|
|
16
|
+
* @param originalIndex 原始宫位索引
|
|
17
|
+
* @param yearlyPalaceIndex 流年命宫所在的宫位索引
|
|
18
|
+
* @returns 该宫位在流年时的名称
|
|
19
|
+
*/
|
|
20
|
+
static getYearlyPalaceName(originalIndex: number, yearlyPalaceIndex: number): string;
|
|
21
|
+
/**
|
|
22
|
+
* 获取完整的三重宫位信息
|
|
23
|
+
* @param palaceIndex 宫位索引
|
|
24
|
+
* @param palaceName 本命宫位名称
|
|
25
|
+
* @param decadePalaceIndex 大限命宫索引
|
|
26
|
+
* @param yearlyPalaceIndex 流年命宫索引
|
|
27
|
+
* @returns 三重宫位描述
|
|
28
|
+
*/
|
|
29
|
+
static getTriplePalaceInfo(palaceIndex: number, palaceName: string, decadePalaceIndex: number, yearlyPalaceIndex: number): {
|
|
30
|
+
natal: string;
|
|
31
|
+
decade: string;
|
|
32
|
+
yearly: string;
|
|
33
|
+
};
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=PalaceDynamicCalculator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PalaceDynamicCalculator.d.ts","sourceRoot":"","sources":["../../../../src/services/ziwei/calculators/PalaceDynamicCalculator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,qBAAa,uBAAuB;IAClC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAGlC;IAEF;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM;IAUpF;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,aAAa,EAAE,MAAM,EAAE,iBAAiB,EAAE,MAAM,GAAG,MAAM;IAOpF;;;;;;;OAOG;IACH,MAAM,CAAC,mBAAmB,CACxB,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAClB,iBAAiB,EAAE,MAAM,EACzB,iBAAiB,EAAE,MAAM,GACxB;QACD,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,MAAM,EAAE,MAAM,CAAC;KAChB;CAOF"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* 宫位动态计算器
|
|
4
|
+
* 计算每个宫位在大限和流年的动态名称
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.PalaceDynamicCalculator = void 0;
|
|
8
|
+
class PalaceDynamicCalculator {
|
|
9
|
+
static PALACE_NAMES = [
|
|
10
|
+
'命宮', '兄弟', '夫妻', '子女', '財帛', '疾厄',
|
|
11
|
+
'遷移', '僕役', '官祿', '田宅', '福德', '父母'
|
|
12
|
+
];
|
|
13
|
+
/**
|
|
14
|
+
* 计算宫位在大限时的名称
|
|
15
|
+
* @param originalIndex 原始宫位索引
|
|
16
|
+
* @param decadePalaceIndex 大限命宫所在的宫位索引
|
|
17
|
+
* @returns 该宫位在大限时的名称
|
|
18
|
+
*/
|
|
19
|
+
static getDecadePalaceName(originalIndex, decadePalaceIndex) {
|
|
20
|
+
// 在大限盘中,大限命宫成为新的命宫(索引0)
|
|
21
|
+
// 计算本命宫位在大限盘中的新位置
|
|
22
|
+
// 例如:大限在子女宫(索引3),本命命宫(索引0)在大限盘中的位置是 (0 + (12 - 3)) % 12 = 9(田宅)
|
|
23
|
+
const newPosition = (originalIndex + (12 - decadePalaceIndex)) % 12;
|
|
24
|
+
return this.PALACE_NAMES[newPosition];
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* 计算宫位在流年时的名称
|
|
28
|
+
* @param originalIndex 原始宫位索引
|
|
29
|
+
* @param yearlyPalaceIndex 流年命宫所在的宫位索引
|
|
30
|
+
* @returns 该宫位在流年时的名称
|
|
31
|
+
*/
|
|
32
|
+
static getYearlyPalaceName(originalIndex, yearlyPalaceIndex) {
|
|
33
|
+
// 在流年盘中,流年命宫成为新的命宫(索引0)
|
|
34
|
+
// 计算本命宫位在流年盘中的新位置
|
|
35
|
+
const newPosition = (originalIndex + (12 - yearlyPalaceIndex)) % 12;
|
|
36
|
+
return this.PALACE_NAMES[newPosition];
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* 获取完整的三重宫位信息
|
|
40
|
+
* @param palaceIndex 宫位索引
|
|
41
|
+
* @param palaceName 本命宫位名称
|
|
42
|
+
* @param decadePalaceIndex 大限命宫索引
|
|
43
|
+
* @param yearlyPalaceIndex 流年命宫索引
|
|
44
|
+
* @returns 三重宫位描述
|
|
45
|
+
*/
|
|
46
|
+
static getTriplePalaceInfo(palaceIndex, palaceName, decadePalaceIndex, yearlyPalaceIndex) {
|
|
47
|
+
return {
|
|
48
|
+
natal: palaceName,
|
|
49
|
+
decade: this.getDecadePalaceName(palaceIndex, decadePalaceIndex),
|
|
50
|
+
yearly: this.getYearlyPalaceName(palaceIndex, yearlyPalaceIndex)
|
|
51
|
+
};
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
exports.PalaceDynamicCalculator = PalaceDynamicCalculator;
|
|
55
|
+
//# sourceMappingURL=PalaceDynamicCalculator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PalaceDynamicCalculator.js","sourceRoot":"","sources":["../../../../src/services/ziwei/calculators/PalaceDynamicCalculator.ts"],"names":[],"mappings":";AAAA;;;GAGG;;;AAEH,MAAa,uBAAuB;IAC1B,MAAM,CAAU,YAAY,GAAG;QACrC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;QAClC,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI;KACnC,CAAC;IAEF;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,aAAqB,EAAE,iBAAyB;QACzE,wBAAwB;QACxB,kBAAkB;QAClB,gEAAgE;QAChE,MAAM,WAAW,GAAG,CAAC,aAAa,GAAG,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,GAAG,EAAE,CAAC;QAGpE,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED;;;;;OAKG;IACH,MAAM,CAAC,mBAAmB,CAAC,aAAqB,EAAE,iBAAyB;QACzE,wBAAwB;QACxB,kBAAkB;QAClB,MAAM,WAAW,GAAG,CAAC,aAAa,GAAG,CAAC,EAAE,GAAG,iBAAiB,CAAC,CAAC,GAAG,EAAE,CAAC;QACpE,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED;;;;;;;OAOG;IACH,MAAM,CAAC,mBAAmB,CACxB,WAAmB,EACnB,UAAkB,EAClB,iBAAyB,EACzB,iBAAyB;QAMzB,OAAO;YACL,KAAK,EAAE,UAAU;YACjB,MAAM,EAAE,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,iBAAiB,CAAC;YAChE,MAAM,EAAE,IAAI,CAAC,mBAAmB,CAAC,WAAW,EAAE,iBAAiB,CAAC;SACjE,CAAC;IACJ,CAAC;;AA1DH,0DA2DC"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 流年计算器
|
|
3
|
+
* 负责计算流年相关信息
|
|
4
|
+
*/
|
|
5
|
+
import { YearlyInfo, Palace } from '../types';
|
|
6
|
+
export declare class YearlyCalculator {
|
|
7
|
+
/**
|
|
8
|
+
* 已知的年份对照表(用于验证)
|
|
9
|
+
*/
|
|
10
|
+
private static readonly KNOWN_YEARS;
|
|
11
|
+
/**
|
|
12
|
+
* 计算指定年份的流年信息
|
|
13
|
+
*/
|
|
14
|
+
static calculate(year: number, birthYear: number, palaces: Palace[]): YearlyInfo;
|
|
15
|
+
/**
|
|
16
|
+
* 获取指定年份的天干地支
|
|
17
|
+
*/
|
|
18
|
+
static getYearStemBranch(year: number): {
|
|
19
|
+
stem: string;
|
|
20
|
+
branch: string;
|
|
21
|
+
};
|
|
22
|
+
/**
|
|
23
|
+
* 修正iztro返回的流年信息
|
|
24
|
+
*/
|
|
25
|
+
static fixYearlyInfo(horoscopeYearly: any, targetYear: number): any;
|
|
26
|
+
/**
|
|
27
|
+
* 根据日期判断农历年份
|
|
28
|
+
*/
|
|
29
|
+
static getLunarYear(date: string): number;
|
|
30
|
+
/**
|
|
31
|
+
* 获取流年宫位名称映射
|
|
32
|
+
*/
|
|
33
|
+
static getYearlyPalaceNames(yearlyBranch: string, palaces: Palace[]): Map<number, string>;
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=YearlyCalculator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"YearlyCalculator.d.ts","sourceRoot":"","sources":["../../../../src/services/ziwei/calculators/YearlyCalculator.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EACL,UAAU,EACV,MAAM,EAGP,MAAM,UAAU,CAAC;AAGlB,qBAAa,gBAAgB;IAC3B;;OAEG;IACH,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAYjC;IAEF;;OAEG;IACH,MAAM,CAAC,SAAS,CACd,IAAI,EAAE,MAAM,EACZ,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,MAAM,EAAE,GAChB,UAAU;IAmBb;;OAEG;IACH,MAAM,CAAC,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAiBxE;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,eAAe,EAAE,GAAG,EAAE,UAAU,EAAE,MAAM,GAAG,GAAG;IAwBnE;;OAEG;IACH,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM;IAazC;;OAEG;IACH,MAAM,CAAC,oBAAoB,CAAC,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,GAAG,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;CAqB1F"}
|
|
@@ -0,0 +1,119 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* 流年计算器
|
|
4
|
+
* 负责计算流年相关信息
|
|
5
|
+
*/
|
|
6
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
7
|
+
exports.YearlyCalculator = void 0;
|
|
8
|
+
const types_1 = require("../types");
|
|
9
|
+
const ageCalculator_1 = require("../../../utils/ageCalculator");
|
|
10
|
+
class YearlyCalculator {
|
|
11
|
+
/**
|
|
12
|
+
* 已知的年份对照表(用于验证)
|
|
13
|
+
*/
|
|
14
|
+
static KNOWN_YEARS = {
|
|
15
|
+
2020: { stem: '庚', branch: '子' },
|
|
16
|
+
2021: { stem: '辛', branch: '丑' },
|
|
17
|
+
2022: { stem: '壬', branch: '寅' },
|
|
18
|
+
2023: { stem: '癸', branch: '卯' },
|
|
19
|
+
2024: { stem: '甲', branch: '辰' },
|
|
20
|
+
2025: { stem: '乙', branch: '巳' },
|
|
21
|
+
2026: { stem: '丙', branch: '午' },
|
|
22
|
+
2027: { stem: '丁', branch: '未' },
|
|
23
|
+
2028: { stem: '戊', branch: '申' },
|
|
24
|
+
2029: { stem: '己', branch: '酉' },
|
|
25
|
+
2030: { stem: '庚', branch: '戌' }
|
|
26
|
+
};
|
|
27
|
+
/**
|
|
28
|
+
* 计算指定年份的流年信息
|
|
29
|
+
*/
|
|
30
|
+
static calculate(year, birthYear, palaces) {
|
|
31
|
+
// 计算虚岁
|
|
32
|
+
const age = (0, ageCalculator_1.calculateNominalAge)(birthYear, year);
|
|
33
|
+
// 获取流年天干地支
|
|
34
|
+
const { stem, branch } = this.getYearStemBranch(year);
|
|
35
|
+
// 找到流年地支对应的宫位(流年命宫)
|
|
36
|
+
const palaceIndex = palaces.findIndex(p => p.earthlyBranch === branch);
|
|
37
|
+
return {
|
|
38
|
+
year,
|
|
39
|
+
age,
|
|
40
|
+
heavenlyStem: stem,
|
|
41
|
+
earthlyBranch: branch,
|
|
42
|
+
palaceIndex: palaceIndex !== -1 ? palaceIndex : 0
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* 获取指定年份的天干地支
|
|
47
|
+
*/
|
|
48
|
+
static getYearStemBranch(year) {
|
|
49
|
+
// 如果有已知的对照表,直接返回
|
|
50
|
+
if (this.KNOWN_YEARS[year]) {
|
|
51
|
+
return this.KNOWN_YEARS[year];
|
|
52
|
+
}
|
|
53
|
+
// 使用公元4年为甲子年的基准进行计算
|
|
54
|
+
const offset = year - 4;
|
|
55
|
+
const stemIndex = offset % 10;
|
|
56
|
+
const branchIndex = offset % 12;
|
|
57
|
+
return {
|
|
58
|
+
stem: types_1.HEAVENLY_STEMS[stemIndex],
|
|
59
|
+
branch: types_1.EARTHLY_BRANCHES[branchIndex]
|
|
60
|
+
};
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* 修正iztro返回的流年信息
|
|
64
|
+
*/
|
|
65
|
+
static fixYearlyInfo(horoscopeYearly, targetYear) {
|
|
66
|
+
if (!horoscopeYearly)
|
|
67
|
+
return null;
|
|
68
|
+
const correct = this.getYearStemBranch(targetYear);
|
|
69
|
+
// 检查是否需要修正
|
|
70
|
+
if (horoscopeYearly.earthlyBranch !== correct.branch) {
|
|
71
|
+
console.warn(`Fixing yearly branch: ${targetYear} should be ${correct.stem}${correct.branch}, ` +
|
|
72
|
+
`but iztro returned ${horoscopeYearly.heavenlyStem || '?'}${horoscopeYearly.earthlyBranch}`);
|
|
73
|
+
return {
|
|
74
|
+
...horoscopeYearly,
|
|
75
|
+
heavenlyStem: correct.stem,
|
|
76
|
+
earthlyBranch: correct.branch,
|
|
77
|
+
_fixed: true,
|
|
78
|
+
_originalBranch: horoscopeYearly.earthlyBranch
|
|
79
|
+
};
|
|
80
|
+
}
|
|
81
|
+
return horoscopeYearly;
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* 根据日期判断农历年份
|
|
85
|
+
*/
|
|
86
|
+
static getLunarYear(date) {
|
|
87
|
+
const [year, month, day] = date.split('-').map(Number);
|
|
88
|
+
// 农历新年通常在1月21日至2月20日之间
|
|
89
|
+
// 简化判断:如果在1-2月,可能属于上一年
|
|
90
|
+
if (month === 1 || (month === 2 && day < 20)) {
|
|
91
|
+
// TODO: 需要更精确的农历转换
|
|
92
|
+
return year - 1;
|
|
93
|
+
}
|
|
94
|
+
return year;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* 获取流年宫位名称映射
|
|
98
|
+
*/
|
|
99
|
+
static getYearlyPalaceNames(yearlyBranch, palaces) {
|
|
100
|
+
const mapping = new Map();
|
|
101
|
+
// 找到流年地支对应的宫位作为流年命宫
|
|
102
|
+
const yearlyMingIndex = palaces.findIndex(p => p.earthlyBranch === yearlyBranch);
|
|
103
|
+
if (yearlyMingIndex === -1)
|
|
104
|
+
return mapping;
|
|
105
|
+
// 十二宫位名称
|
|
106
|
+
const palaceNames = [
|
|
107
|
+
'命宮', '兄弟', '夫妻', '子女', '財帛', '疾厄',
|
|
108
|
+
'遷移', '交友', '官祿', '田宅', '福德', '父母'
|
|
109
|
+
];
|
|
110
|
+
// 根据流年命宫重新排列
|
|
111
|
+
for (let i = 0; i < 12; i++) {
|
|
112
|
+
const currentIndex = (yearlyMingIndex + i) % 12;
|
|
113
|
+
mapping.set(currentIndex, `年${palaceNames[i]}`);
|
|
114
|
+
}
|
|
115
|
+
return mapping;
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
exports.YearlyCalculator = YearlyCalculator;
|
|
119
|
+
//# sourceMappingURL=YearlyCalculator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"YearlyCalculator.js","sourceRoot":"","sources":["../../../../src/services/ziwei/calculators/YearlyCalculator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 紫微斗数服务统一导出
|
|
3
|
+
*/
|
|
4
|
+
export { ZiweiService, ziweiService } from './ZiweiService';
|
|
5
|
+
export * from './types';
|
|
6
|
+
export { DecadeCalculator } from './calculators/DecadeCalculator';
|
|
7
|
+
export { MinorLimitCalculator } from './calculators/MinorLimitCalculator';
|
|
8
|
+
export { YearlyCalculator } from './calculators/YearlyCalculator';
|
|
9
|
+
export { MutagenCalculator } from './calculators/MutagenCalculator';
|
|
10
|
+
export { BrightnessCalculator } from './calculators/BrightnessCalculator';
|
|
11
|
+
export { PalaceTransformer } from './transformers/PalaceTransformer';
|
|
12
|
+
export { BrightnessSystem } from '../../core/ziwei/BrightnessSystem';
|
|
13
|
+
export { MutagenCore } from '../../core/ziwei/MutagenCore';
|
|
14
|
+
export { IztroAdapter } from '../../core/ziwei/IztroAdapter';
|
|
15
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/services/ziwei/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAG5D,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAC1E,OAAO,EAAE,gBAAgB,EAAE,MAAM,gCAAgC,CAAC;AAClE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAG1E,OAAO,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAGrE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AACrE,OAAO,EAAE,WAAW,EAAE,MAAM,8BAA8B,CAAC;AAC3D,OAAO,EAAE,YAAY,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* 紫微斗数服务统一导出
|
|
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.IztroAdapter = exports.MutagenCore = exports.BrightnessSystem = exports.PalaceTransformer = exports.BrightnessCalculator = exports.MutagenCalculator = exports.YearlyCalculator = exports.MinorLimitCalculator = exports.DecadeCalculator = exports.ziweiService = exports.ZiweiService = void 0;
|
|
21
|
+
// 导出主服务
|
|
22
|
+
var ZiweiService_1 = require("./ZiweiService");
|
|
23
|
+
Object.defineProperty(exports, "ZiweiService", { enumerable: true, get: function () { return ZiweiService_1.ZiweiService; } });
|
|
24
|
+
Object.defineProperty(exports, "ziweiService", { enumerable: true, get: function () { return ZiweiService_1.ziweiService; } });
|
|
25
|
+
// 导出所有类型
|
|
26
|
+
__exportStar(require("./types"), exports);
|
|
27
|
+
// 导出计算器(如果需要单独使用)
|
|
28
|
+
var DecadeCalculator_1 = require("./calculators/DecadeCalculator");
|
|
29
|
+
Object.defineProperty(exports, "DecadeCalculator", { enumerable: true, get: function () { return DecadeCalculator_1.DecadeCalculator; } });
|
|
30
|
+
var MinorLimitCalculator_1 = require("./calculators/MinorLimitCalculator");
|
|
31
|
+
Object.defineProperty(exports, "MinorLimitCalculator", { enumerable: true, get: function () { return MinorLimitCalculator_1.MinorLimitCalculator; } });
|
|
32
|
+
var YearlyCalculator_1 = require("./calculators/YearlyCalculator");
|
|
33
|
+
Object.defineProperty(exports, "YearlyCalculator", { enumerable: true, get: function () { return YearlyCalculator_1.YearlyCalculator; } });
|
|
34
|
+
var MutagenCalculator_1 = require("./calculators/MutagenCalculator");
|
|
35
|
+
Object.defineProperty(exports, "MutagenCalculator", { enumerable: true, get: function () { return MutagenCalculator_1.MutagenCalculator; } });
|
|
36
|
+
var BrightnessCalculator_1 = require("./calculators/BrightnessCalculator");
|
|
37
|
+
Object.defineProperty(exports, "BrightnessCalculator", { enumerable: true, get: function () { return BrightnessCalculator_1.BrightnessCalculator; } });
|
|
38
|
+
// 导出转换器
|
|
39
|
+
var PalaceTransformer_1 = require("./transformers/PalaceTransformer");
|
|
40
|
+
Object.defineProperty(exports, "PalaceTransformer", { enumerable: true, get: function () { return PalaceTransformer_1.PalaceTransformer; } });
|
|
41
|
+
// 导出核心系统(高级用户使用)
|
|
42
|
+
var BrightnessSystem_1 = require("../../core/ziwei/BrightnessSystem");
|
|
43
|
+
Object.defineProperty(exports, "BrightnessSystem", { enumerable: true, get: function () { return BrightnessSystem_1.BrightnessSystem; } });
|
|
44
|
+
var MutagenCore_1 = require("../../core/ziwei/MutagenCore");
|
|
45
|
+
Object.defineProperty(exports, "MutagenCore", { enumerable: true, get: function () { return MutagenCore_1.MutagenCore; } });
|
|
46
|
+
var IztroAdapter_1 = require("../../core/ziwei/IztroAdapter");
|
|
47
|
+
Object.defineProperty(exports, "IztroAdapter", { enumerable: true, get: function () { return IztroAdapter_1.IztroAdapter; } });
|
|
48
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/services/ziwei/index.ts"],"names":[],"mappings":";AAAA;;GAEG;;;;;;;;;;;;;;;;;AAEH,QAAQ;AACR,+CAA4D;AAAnD,4GAAA,YAAY,OAAA;AAAE,4GAAA,YAAY,OAAA;AAEnC,SAAS;AACT,0CAAwB;AAExB,kBAAkB;AAClB,mEAAkE;AAAzD,oHAAA,gBAAgB,OAAA;AACzB,2EAA0E;AAAjE,4HAAA,oBAAoB,OAAA;AAC7B,mEAAkE;AAAzD,oHAAA,gBAAgB,OAAA;AACzB,qEAAoE;AAA3D,sHAAA,iBAAiB,OAAA;AAC1B,2EAA0E;AAAjE,4HAAA,oBAAoB,OAAA;AAE7B,QAAQ;AACR,sEAAqE;AAA5D,sHAAA,iBAAiB,OAAA;AAE1B,iBAAiB;AACjB,sEAAqE;AAA5D,oHAAA,gBAAgB,OAAA;AACzB,4DAA2D;AAAlD,0GAAA,WAAW,OAAA;AACpB,8DAA6D;AAApD,4GAAA,YAAY,OAAA"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* 宫位转换器
|
|
3
|
+
* 处理大限、流年时的宫位名称变化和三方四正计算
|
|
4
|
+
*
|
|
5
|
+
* 整合了原 ziweiPalaceService.ts 的功能
|
|
6
|
+
*/
|
|
7
|
+
import { Palace, DecadeInfo, YearlyInfo } from '../types';
|
|
8
|
+
export declare class PalaceTransformer {
|
|
9
|
+
/**
|
|
10
|
+
* 获取三方四正宫位索引
|
|
11
|
+
* @param palaceIndex 宫位索引
|
|
12
|
+
* @returns 三方四正的宫位索引数组
|
|
13
|
+
*/
|
|
14
|
+
static getSurroundedIndexes(palaceIndex: number): number[];
|
|
15
|
+
/**
|
|
16
|
+
* 判断是否为三方四正宫位
|
|
17
|
+
*/
|
|
18
|
+
static isSurroundedPalace(targetIndex: number, baseIndex: number): boolean;
|
|
19
|
+
/**
|
|
20
|
+
* 获取大限时期的宫位名称映射
|
|
21
|
+
*/
|
|
22
|
+
static getDecadalPalaceNames(originalMingIndex: number, decadeInfo: DecadeInfo, isClockwise?: boolean): Map<number, string>;
|
|
23
|
+
/**
|
|
24
|
+
* 获取流年时期的宫位名称映射
|
|
25
|
+
*/
|
|
26
|
+
static getYearlyPalaceNames(yearlyInfo: YearlyInfo, palaces: Palace[]): Map<number, string>;
|
|
27
|
+
/**
|
|
28
|
+
* 获取完整的宫位信息(包含本命、大限、流年)
|
|
29
|
+
*/
|
|
30
|
+
static getCompletePalaceInfo(palace: Palace, palaceIndex: number, mingGongIndex: number, currentDecade?: DecadeInfo, currentYearly?: YearlyInfo, isClockwise?: boolean, allPalaces?: Palace[]): {
|
|
31
|
+
original: string;
|
|
32
|
+
decadal?: string;
|
|
33
|
+
yearly?: string;
|
|
34
|
+
isDecadalMing?: boolean;
|
|
35
|
+
isYearlyMing?: boolean;
|
|
36
|
+
};
|
|
37
|
+
/**
|
|
38
|
+
* 获取飞星路径
|
|
39
|
+
* @param fromPalaceIndex 起始宫位
|
|
40
|
+
* @param toPalaceIndex 目标宫位
|
|
41
|
+
* @returns 飞星路径描述
|
|
42
|
+
*/
|
|
43
|
+
static getFlyingStarPath(fromPalaceIndex: number, toPalaceIndex: number, palaces: Palace[]): {
|
|
44
|
+
from: string;
|
|
45
|
+
to: string;
|
|
46
|
+
distance: number;
|
|
47
|
+
direction: 'clockwise' | 'counterclockwise';
|
|
48
|
+
};
|
|
49
|
+
/**
|
|
50
|
+
* 计算宫位之间的关系
|
|
51
|
+
*/
|
|
52
|
+
static getPalaceRelation(palace1Index: number, palace2Index: number): string;
|
|
53
|
+
/**
|
|
54
|
+
* 判断宫位是否为空宫(无主星)
|
|
55
|
+
*/
|
|
56
|
+
static isEmptyPalace(palace: Palace): boolean;
|
|
57
|
+
/**
|
|
58
|
+
* 获取借星宫位(空宫时从对宫借星)
|
|
59
|
+
*/
|
|
60
|
+
static getBorrowedStars(palace: Palace, palaceIndex: number, allPalaces: Palace[]): Palace['majorStars'];
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=PalaceTransformer.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PalaceTransformer.d.ts","sourceRoot":"","sources":["../../../../src/services/ziwei/transformers/PalaceTransformer.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,EAAE,UAAU,EAAE,UAAU,EAAgB,MAAM,UAAU,CAAC;AAExE,qBAAa,iBAAiB;IAC5B;;;;OAIG;IACH,MAAM,CAAC,oBAAoB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE;IAU1D;;OAEG;IACH,MAAM,CAAC,kBAAkB,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO;IAK1E;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAC1B,iBAAiB,EAAE,MAAM,EACzB,UAAU,EAAE,UAAU,EACtB,WAAW,GAAE,OAAc,GAC1B,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAgBtB;;OAEG;IACH,MAAM,CAAC,oBAAoB,CACzB,UAAU,EAAE,UAAU,EACtB,OAAO,EAAE,MAAM,EAAE,GAChB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC;IAgBtB;;OAEG;IACH,MAAM,CAAC,qBAAqB,CAC1B,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,aAAa,EAAE,MAAM,EACrB,aAAa,CAAC,EAAE,UAAU,EAC1B,aAAa,CAAC,EAAE,UAAU,EAC1B,WAAW,GAAE,OAAc,EAC3B,UAAU,CAAC,EAAE,MAAM,EAAE,GACpB;QACD,QAAQ,EAAE,MAAM,CAAC;QACjB,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,aAAa,CAAC,EAAE,OAAO,CAAC;QACxB,YAAY,CAAC,EAAE,OAAO,CAAC;KACxB;IA4BD;;;;;OAKG;IACH,MAAM,CAAC,iBAAiB,CACtB,eAAe,EAAE,MAAM,EACvB,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE,MAAM,EAAE,GAChB;QACD,IAAI,EAAE,MAAM,CAAC;QACb,EAAE,EAAE,MAAM,CAAC;QACX,QAAQ,EAAE,MAAM,CAAC;QACjB,SAAS,EAAE,WAAW,GAAG,kBAAkB,CAAC;KAC7C;IAoBD;;OAEG;IACH,MAAM,CAAC,iBAAiB,CACtB,YAAY,EAAE,MAAM,EACpB,YAAY,EAAE,MAAM,GACnB,MAAM;IAmBT;;OAEG;IACH,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO;IAI7C;;OAEG;IACH,MAAM,CAAC,gBAAgB,CACrB,MAAM,EAAE,MAAM,EACd,WAAW,EAAE,MAAM,EACnB,UAAU,EAAE,MAAM,EAAE,GACnB,MAAM,CAAC,YAAY,CAAC;CAWxB"}
|
|
@@ -0,0 +1,153 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* 宫位转换器
|
|
4
|
+
* 处理大限、流年时的宫位名称变化和三方四正计算
|
|
5
|
+
*
|
|
6
|
+
* 整合了原 ziweiPalaceService.ts 的功能
|
|
7
|
+
*/
|
|
8
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
9
|
+
exports.PalaceTransformer = void 0;
|
|
10
|
+
const types_1 = require("../types");
|
|
11
|
+
class PalaceTransformer {
|
|
12
|
+
/**
|
|
13
|
+
* 获取三方四正宫位索引
|
|
14
|
+
* @param palaceIndex 宫位索引
|
|
15
|
+
* @returns 三方四正的宫位索引数组
|
|
16
|
+
*/
|
|
17
|
+
static getSurroundedIndexes(palaceIndex) {
|
|
18
|
+
// 三方四正:本宫、对宫、财帛位(+4)、官禄位(+8)
|
|
19
|
+
return [
|
|
20
|
+
palaceIndex,
|
|
21
|
+
(palaceIndex + 6) % 12, // 对宫
|
|
22
|
+
(palaceIndex + 4) % 12, // 财帛位
|
|
23
|
+
(palaceIndex + 8) % 12 // 官禄位
|
|
24
|
+
];
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* 判断是否为三方四正宫位
|
|
28
|
+
*/
|
|
29
|
+
static isSurroundedPalace(targetIndex, baseIndex) {
|
|
30
|
+
const surroundedIndexes = this.getSurroundedIndexes(baseIndex);
|
|
31
|
+
return surroundedIndexes.includes(targetIndex);
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* 获取大限时期的宫位名称映射
|
|
35
|
+
*/
|
|
36
|
+
static getDecadalPalaceNames(originalMingIndex, decadeInfo, isClockwise = true) {
|
|
37
|
+
const mapping = new Map();
|
|
38
|
+
// 大限命宫位置直接使用 decadeInfo.palaceIndex
|
|
39
|
+
const decadalMingIndex = decadeInfo.palaceIndex;
|
|
40
|
+
// 根据大限命宫重新排列十二宫
|
|
41
|
+
// 顺行和逆行都是从大限命宫开始,按顺序分配宫名
|
|
42
|
+
for (let i = 0; i < 12; i++) {
|
|
43
|
+
const currentIndex = (decadalMingIndex + i) % 12;
|
|
44
|
+
mapping.set(currentIndex, `限${types_1.PALACE_NAMES[i]}`);
|
|
45
|
+
}
|
|
46
|
+
return mapping;
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* 获取流年时期的宫位名称映射
|
|
50
|
+
*/
|
|
51
|
+
static getYearlyPalaceNames(yearlyInfo, palaces) {
|
|
52
|
+
const mapping = new Map();
|
|
53
|
+
// 找到流年地支对应的宫位作为流年命宫
|
|
54
|
+
const yearlyMingIndex = palaces.findIndex(p => p.earthlyBranch === yearlyInfo.earthlyBranch);
|
|
55
|
+
if (yearlyMingIndex === -1)
|
|
56
|
+
return mapping;
|
|
57
|
+
// 根据流年命宫重新排列十二宫
|
|
58
|
+
for (let i = 0; i < 12; i++) {
|
|
59
|
+
const currentIndex = (yearlyMingIndex + i) % 12;
|
|
60
|
+
mapping.set(currentIndex, `年${types_1.PALACE_NAMES[i]}`);
|
|
61
|
+
}
|
|
62
|
+
return mapping;
|
|
63
|
+
}
|
|
64
|
+
/**
|
|
65
|
+
* 获取完整的宫位信息(包含本命、大限、流年)
|
|
66
|
+
*/
|
|
67
|
+
static getCompletePalaceInfo(palace, palaceIndex, mingGongIndex, currentDecade, currentYearly, isClockwise = true, allPalaces) {
|
|
68
|
+
const result = {
|
|
69
|
+
original: palace.name
|
|
70
|
+
};
|
|
71
|
+
// 大限信息
|
|
72
|
+
if (currentDecade) {
|
|
73
|
+
const decadalNames = this.getDecadalPalaceNames(mingGongIndex, currentDecade, isClockwise);
|
|
74
|
+
const decadalName = decadalNames.get(palaceIndex);
|
|
75
|
+
if (decadalName) {
|
|
76
|
+
result.decadal = decadalName;
|
|
77
|
+
result.isDecadalMing = decadalName === '限命宮';
|
|
78
|
+
}
|
|
79
|
+
}
|
|
80
|
+
// 流年信息
|
|
81
|
+
if (currentYearly && allPalaces) {
|
|
82
|
+
const yearlyNames = this.getYearlyPalaceNames(currentYearly, allPalaces);
|
|
83
|
+
const yearlyName = yearlyNames.get(palaceIndex);
|
|
84
|
+
if (yearlyName) {
|
|
85
|
+
result.yearly = yearlyName;
|
|
86
|
+
result.isYearlyMing = yearlyName === '年命宮';
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
return result;
|
|
90
|
+
}
|
|
91
|
+
/**
|
|
92
|
+
* 获取飞星路径
|
|
93
|
+
* @param fromPalaceIndex 起始宫位
|
|
94
|
+
* @param toPalaceIndex 目标宫位
|
|
95
|
+
* @returns 飞星路径描述
|
|
96
|
+
*/
|
|
97
|
+
static getFlyingStarPath(fromPalaceIndex, toPalaceIndex, palaces) {
|
|
98
|
+
const fromPalace = palaces[fromPalaceIndex];
|
|
99
|
+
const toPalace = palaces[toPalaceIndex];
|
|
100
|
+
// 计算距离
|
|
101
|
+
const clockwiseDistance = (toPalaceIndex - fromPalaceIndex + 12) % 12;
|
|
102
|
+
const counterclockwiseDistance = (fromPalaceIndex - toPalaceIndex + 12) % 12;
|
|
103
|
+
// 选择较短的路径
|
|
104
|
+
const isClockwise = clockwiseDistance <= counterclockwiseDistance;
|
|
105
|
+
const distance = isClockwise ? clockwiseDistance : counterclockwiseDistance;
|
|
106
|
+
return {
|
|
107
|
+
from: fromPalace.name,
|
|
108
|
+
to: toPalace.name,
|
|
109
|
+
distance,
|
|
110
|
+
direction: isClockwise ? 'clockwise' : 'counterclockwise'
|
|
111
|
+
};
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* 计算宫位之间的关系
|
|
115
|
+
*/
|
|
116
|
+
static getPalaceRelation(palace1Index, palace2Index) {
|
|
117
|
+
const distance = Math.abs(palace1Index - palace2Index);
|
|
118
|
+
switch (distance) {
|
|
119
|
+
case 0:
|
|
120
|
+
return '同宫';
|
|
121
|
+
case 6:
|
|
122
|
+
return '对宫';
|
|
123
|
+
case 3:
|
|
124
|
+
case 9:
|
|
125
|
+
return '三合';
|
|
126
|
+
case 4:
|
|
127
|
+
case 8:
|
|
128
|
+
return '三方';
|
|
129
|
+
default:
|
|
130
|
+
return '一般';
|
|
131
|
+
}
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* 判断宫位是否为空宫(无主星)
|
|
135
|
+
*/
|
|
136
|
+
static isEmptyPalace(palace) {
|
|
137
|
+
return palace.majorStars.length === 0;
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* 获取借星宫位(空宫时从对宫借星)
|
|
141
|
+
*/
|
|
142
|
+
static getBorrowedStars(palace, palaceIndex, allPalaces) {
|
|
143
|
+
if (!this.isEmptyPalace(palace)) {
|
|
144
|
+
return [];
|
|
145
|
+
}
|
|
146
|
+
// 从对宫借星
|
|
147
|
+
const oppositeIndex = (palaceIndex + 6) % 12;
|
|
148
|
+
const oppositePalace = allPalaces[oppositeIndex];
|
|
149
|
+
return oppositePalace ? oppositePalace.majorStars : [];
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
exports.PalaceTransformer = PalaceTransformer;
|
|
153
|
+
//# sourceMappingURL=PalaceTransformer.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PalaceTransformer.js","sourceRoot":"","sources":["../../../../src/services/ziwei/transformers/PalaceTransformer.ts"],"names":[],"mappings":"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"}
|