amaran-light-cli 1.4.0 → 1.5.0

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 (203) hide show
  1. package/README.md +13 -18
  2. package/dist/__tests__/autoCct.test.js +2 -2
  3. package/dist/__tests__/autoCct.test.js.map +1 -1
  4. package/dist/__tests__/autostart.test.js +1 -1
  5. package/dist/__tests__/autostart.test.js.map +1 -1
  6. package/dist/__tests__/cctUtil.test.js +2 -2
  7. package/dist/__tests__/cctUtil.test.js.map +1 -1
  8. package/dist/__tests__/intensityApi.test.js +4 -1
  9. package/dist/__tests__/intensityApi.test.js.map +1 -1
  10. package/dist/__tests__/lightControl.test.js +1 -1
  11. package/dist/__tests__/lightControl.test.js.map +1 -1
  12. package/dist/__tests__/simulateSchedule.test.js +2 -2
  13. package/dist/__tests__/simulateSchedule.test.js.map +1 -1
  14. package/dist/cli.d.ts +2 -2
  15. package/dist/cli.d.ts.map +1 -1
  16. package/dist/cli.js +4 -4
  17. package/dist/cli.js.map +1 -1
  18. package/dist/commands/__tests__/integration.test.js +1 -1
  19. package/dist/commands/__tests__/integration.test.js.map +1 -1
  20. package/dist/commands/cmdUtils.d.ts +23 -0
  21. package/dist/commands/cmdUtils.d.ts.map +1 -0
  22. package/dist/commands/cmdUtils.js +43 -0
  23. package/dist/commands/cmdUtils.js.map +1 -0
  24. package/dist/commands/daylightSimulation/autoCct.d.ts +5 -0
  25. package/dist/commands/daylightSimulation/autoCct.d.ts.map +1 -0
  26. package/dist/commands/{autoCct.js → daylightSimulation/autoCct.js} +12 -13
  27. package/dist/commands/daylightSimulation/autoCct.js.map +1 -0
  28. package/dist/commands/{graphSchedule.d.ts → daylightSimulation/graphSchedule.d.ts} +1 -1
  29. package/dist/commands/daylightSimulation/graphSchedule.d.ts.map +1 -0
  30. package/dist/commands/daylightSimulation/graphSchedule.js +65 -0
  31. package/dist/commands/daylightSimulation/graphSchedule.js.map +1 -0
  32. package/dist/commands/daylightSimulation/printSchedule.d.ts +5 -0
  33. package/dist/commands/daylightSimulation/printSchedule.d.ts.map +1 -0
  34. package/dist/commands/daylightSimulation/printSchedule.js +65 -0
  35. package/dist/commands/daylightSimulation/printSchedule.js.map +1 -0
  36. package/dist/commands/{service.d.ts → daylightSimulation/service.d.ts} +1 -1
  37. package/dist/commands/daylightSimulation/service.d.ts.map +1 -0
  38. package/dist/commands/{service.js → daylightSimulation/service.js} +47 -35
  39. package/dist/commands/daylightSimulation/service.js.map +1 -0
  40. package/dist/commands/{simulateSchedule.d.ts → daylightSimulation/simulateSchedule.d.ts} +1 -1
  41. package/dist/commands/daylightSimulation/simulateSchedule.d.ts.map +1 -0
  42. package/dist/commands/daylightSimulation/simulateSchedule.js +123 -0
  43. package/dist/commands/daylightSimulation/simulateSchedule.js.map +1 -0
  44. package/dist/commands/{cct.d.ts → deviceControl/cct.d.ts} +1 -1
  45. package/dist/commands/deviceControl/cct.d.ts.map +1 -0
  46. package/dist/commands/{cct.js → deviceControl/cct.js} +31 -36
  47. package/dist/commands/deviceControl/cct.js.map +1 -0
  48. package/dist/commands/{color.d.ts → deviceControl/color.d.ts} +1 -1
  49. package/dist/commands/deviceControl/color.d.ts.map +1 -0
  50. package/dist/commands/deviceControl/color.js +52 -0
  51. package/dist/commands/deviceControl/color.js.map +1 -0
  52. package/dist/commands/{config.d.ts → deviceControl/config.d.ts} +1 -1
  53. package/dist/commands/deviceControl/config.d.ts.map +1 -0
  54. package/dist/commands/{config.js → deviceControl/config.js} +11 -7
  55. package/dist/commands/deviceControl/config.js.map +1 -0
  56. package/dist/commands/{discover.d.ts → deviceControl/discover.d.ts} +1 -1
  57. package/dist/commands/deviceControl/discover.d.ts.map +1 -0
  58. package/dist/commands/{discover.js → deviceControl/discover.js} +8 -4
  59. package/dist/commands/deviceControl/discover.js.map +1 -0
  60. package/dist/commands/{hsi.d.ts → deviceControl/hsi.d.ts} +1 -1
  61. package/dist/commands/deviceControl/hsi.d.ts.map +1 -0
  62. package/dist/commands/deviceControl/hsi.js +50 -0
  63. package/dist/commands/deviceControl/hsi.js.map +1 -0
  64. package/dist/commands/{intensity.d.ts → deviceControl/intensity.d.ts} +1 -1
  65. package/dist/commands/deviceControl/intensity.d.ts.map +1 -0
  66. package/dist/commands/deviceControl/intensity.js +41 -0
  67. package/dist/commands/deviceControl/intensity.js.map +1 -0
  68. package/dist/commands/{list.d.ts → deviceControl/list.d.ts} +1 -1
  69. package/dist/commands/deviceControl/list.d.ts.map +1 -0
  70. package/dist/commands/{list.js → deviceControl/list.js} +7 -3
  71. package/dist/commands/deviceControl/list.js.map +1 -0
  72. package/dist/commands/{power.d.ts → deviceControl/power.d.ts} +1 -1
  73. package/dist/commands/deviceControl/power.d.ts.map +1 -0
  74. package/dist/commands/deviceControl/power.js +78 -0
  75. package/dist/commands/deviceControl/power.js.map +1 -0
  76. package/dist/commands/{status.d.ts → deviceControl/status.d.ts} +1 -1
  77. package/dist/commands/deviceControl/status.d.ts.map +1 -0
  78. package/dist/commands/deviceControl/status.js +48 -0
  79. package/dist/commands/deviceControl/status.js.map +1 -0
  80. package/dist/commands.d.ts +1 -1
  81. package/dist/commands.d.ts.map +1 -1
  82. package/dist/commands.js +17 -43
  83. package/dist/commands.js.map +1 -1
  84. package/dist/daylightSimulation/cctUtil.d.ts +5 -0
  85. package/dist/daylightSimulation/cctUtil.d.ts.map +1 -0
  86. package/dist/daylightSimulation/cctUtil.js +163 -0
  87. package/dist/daylightSimulation/cctUtil.js.map +1 -0
  88. package/dist/{constants.d.ts → daylightSimulation/constants.d.ts} +0 -18
  89. package/dist/daylightSimulation/constants.d.ts.map +1 -0
  90. package/dist/{constants.js → daylightSimulation/constants.js} +0 -13
  91. package/dist/daylightSimulation/constants.js.map +1 -0
  92. package/dist/daylightSimulation/curves/approximations.d.ts +19 -0
  93. package/dist/daylightSimulation/curves/approximations.d.ts.map +1 -0
  94. package/dist/daylightSimulation/curves/approximations.js +27 -0
  95. package/dist/daylightSimulation/curves/approximations.js.map +1 -0
  96. package/dist/daylightSimulation/curves/index.d.ts +15 -0
  97. package/dist/daylightSimulation/curves/index.d.ts.map +1 -0
  98. package/dist/daylightSimulation/curves/index.js +56 -0
  99. package/dist/daylightSimulation/curves/index.js.map +1 -0
  100. package/dist/daylightSimulation/curves/mathematical.d.ts +15 -0
  101. package/dist/daylightSimulation/curves/mathematical.d.ts.map +1 -0
  102. package/dist/daylightSimulation/curves/mathematical.js +33 -0
  103. package/dist/daylightSimulation/curves/mathematical.js.map +1 -0
  104. package/dist/daylightSimulation/curves/realistic.d.ts +43 -0
  105. package/dist/daylightSimulation/curves/realistic.d.ts.map +1 -0
  106. package/dist/daylightSimulation/curves/realistic.js +259 -0
  107. package/dist/daylightSimulation/curves/realistic.js.map +1 -0
  108. package/dist/daylightSimulation/geoipUtil.d.ts.map +1 -0
  109. package/dist/daylightSimulation/geoipUtil.js.map +1 -0
  110. package/dist/daylightSimulation/graphSchedule.d.ts +8 -0
  111. package/dist/daylightSimulation/graphSchedule.d.ts.map +1 -0
  112. package/dist/daylightSimulation/graphSchedule.js +94 -0
  113. package/dist/daylightSimulation/graphSchedule.js.map +1 -0
  114. package/dist/daylightSimulation/scheduleMaker.d.ts +36 -0
  115. package/dist/daylightSimulation/scheduleMaker.d.ts.map +1 -0
  116. package/dist/daylightSimulation/scheduleMaker.js +192 -0
  117. package/dist/daylightSimulation/scheduleMaker.js.map +1 -0
  118. package/dist/daylightSimulation/textSchedule.d.ts +9 -0
  119. package/dist/daylightSimulation/textSchedule.d.ts.map +1 -0
  120. package/dist/daylightSimulation/textSchedule.js +172 -0
  121. package/dist/daylightSimulation/textSchedule.js.map +1 -0
  122. package/dist/{cctUtil.d.ts → daylightSimulation/types.d.ts} +6 -5
  123. package/dist/daylightSimulation/types.d.ts.map +1 -0
  124. package/dist/daylightSimulation/types.js +16 -0
  125. package/dist/daylightSimulation/types.js.map +1 -0
  126. package/dist/deviceControl/autostart.d.ts.map +1 -0
  127. package/dist/deviceControl/autostart.js.map +1 -0
  128. package/dist/deviceControl/constants.d.ts +23 -0
  129. package/dist/deviceControl/constants.d.ts.map +1 -0
  130. package/dist/deviceControl/constants.js +20 -0
  131. package/dist/deviceControl/constants.js.map +1 -0
  132. package/dist/deviceControl/discovery.d.ts.map +1 -0
  133. package/dist/deviceControl/discovery.js.map +1 -0
  134. package/dist/deviceControl/lightControl.d.ts.map +1 -0
  135. package/dist/deviceControl/lightControl.js.map +1 -0
  136. package/dist/deviceControl/types.d.ts.map +1 -0
  137. package/dist/deviceControl/types.js.map +1 -0
  138. package/package.json +4 -1
  139. package/scripts/release.js +2 -2
  140. package/CHANGELOG.md +0 -67
  141. package/dist/autostart.d.ts.map +0 -1
  142. package/dist/autostart.js.map +0 -1
  143. package/dist/cctUtil.d.ts.map +0 -1
  144. package/dist/cctUtil.js +0 -435
  145. package/dist/cctUtil.js.map +0 -1
  146. package/dist/commands/autoCct.d.ts +0 -5
  147. package/dist/commands/autoCct.d.ts.map +0 -1
  148. package/dist/commands/autoCct.js.map +0 -1
  149. package/dist/commands/cct.d.ts.map +0 -1
  150. package/dist/commands/cct.js.map +0 -1
  151. package/dist/commands/color.d.ts.map +0 -1
  152. package/dist/commands/color.js +0 -57
  153. package/dist/commands/color.js.map +0 -1
  154. package/dist/commands/config.d.ts.map +0 -1
  155. package/dist/commands/config.js.map +0 -1
  156. package/dist/commands/discover.d.ts.map +0 -1
  157. package/dist/commands/discover.js.map +0 -1
  158. package/dist/commands/graphSchedule.d.ts.map +0 -1
  159. package/dist/commands/graphSchedule.js +0 -293
  160. package/dist/commands/graphSchedule.js.map +0 -1
  161. package/dist/commands/hsi.d.ts.map +0 -1
  162. package/dist/commands/hsi.js +0 -59
  163. package/dist/commands/hsi.js.map +0 -1
  164. package/dist/commands/intensity.d.ts.map +0 -1
  165. package/dist/commands/intensity.js +0 -50
  166. package/dist/commands/intensity.js.map +0 -1
  167. package/dist/commands/list.d.ts.map +0 -1
  168. package/dist/commands/list.js.map +0 -1
  169. package/dist/commands/power.d.ts.map +0 -1
  170. package/dist/commands/power.js +0 -120
  171. package/dist/commands/power.js.map +0 -1
  172. package/dist/commands/printSchedule.d.ts +0 -5
  173. package/dist/commands/printSchedule.d.ts.map +0 -1
  174. package/dist/commands/printSchedule.js +0 -452
  175. package/dist/commands/printSchedule.js.map +0 -1
  176. package/dist/commands/service.d.ts.map +0 -1
  177. package/dist/commands/service.js.map +0 -1
  178. package/dist/commands/simulateSchedule.d.ts.map +0 -1
  179. package/dist/commands/simulateSchedule.js +0 -199
  180. package/dist/commands/simulateSchedule.js.map +0 -1
  181. package/dist/commands/status.d.ts.map +0 -1
  182. package/dist/commands/status.js +0 -48
  183. package/dist/commands/status.js.map +0 -1
  184. package/dist/constants.d.ts.map +0 -1
  185. package/dist/constants.js.map +0 -1
  186. package/dist/discovery.d.ts.map +0 -1
  187. package/dist/discovery.js.map +0 -1
  188. package/dist/geoipUtil.d.ts.map +0 -1
  189. package/dist/geoipUtil.js.map +0 -1
  190. package/dist/lightControl.d.ts.map +0 -1
  191. package/dist/lightControl.js.map +0 -1
  192. package/dist/types.d.ts.map +0 -1
  193. package/dist/types.js.map +0 -1
  194. /package/dist/{geoipUtil.d.ts → daylightSimulation/geoipUtil.d.ts} +0 -0
  195. /package/dist/{geoipUtil.js → daylightSimulation/geoipUtil.js} +0 -0
  196. /package/dist/{autostart.d.ts → deviceControl/autostart.d.ts} +0 -0
  197. /package/dist/{autostart.js → deviceControl/autostart.js} +0 -0
  198. /package/dist/{discovery.d.ts → deviceControl/discovery.d.ts} +0 -0
  199. /package/dist/{discovery.js → deviceControl/discovery.js} +0 -0
  200. /package/dist/{lightControl.d.ts → deviceControl/lightControl.d.ts} +0 -0
  201. /package/dist/{lightControl.js → deviceControl/lightControl.js} +0 -0
  202. /package/dist/{types.d.ts → deviceControl/types.d.ts} +0 -0
  203. /package/dist/{types.js → deviceControl/types.js} +0 -0
@@ -28,7 +28,7 @@ const runCommand = (command) => {
28
28
  };
29
29
 
30
30
  const updateChangelog = async (version, releaseNotes) => {
31
- const changelogPath = path.join(__dirname, '../CHANGELOG.md');
31
+ const changelogPath = path.join(__dirname, '../docs/CHANGELOG.md');
32
32
  let changelog = '';
33
33
 
34
34
  try {
@@ -83,7 +83,7 @@ const main = async () => {
83
83
  await updateChangelog(newVersion, releaseNotes);
84
84
 
85
85
  // Commit changes
86
- runCommand('git add package.json CHANGELOG.md');
86
+ runCommand('git add package.json docs/CHANGELOG.md');
87
87
  runCommand(`git commit -m "chore(release): v${newVersion}"`);
88
88
  runCommand(`git tag -a v${newVersion} -m "v${newVersion}"`);
89
89
 
package/CHANGELOG.md DELETED
@@ -1,67 +0,0 @@
1
- ## [1.4.0] - 2025-12-15
2
-
3
- - **Feature**: Added `graph-schedule` command to generate visual graphs of the lighting schedule.
4
-
5
- ## [1.3.6] - 2025-12-14
6
-
7
- - **Fix**: Updated workflow to use latest `npm` version for better OIDC support.
8
-
9
- ## [1.3.5] - 2025-12-14
10
-
11
- - **Fix**: Re-applied `registry-url` configuration fix (previous attempt in v1.3.4 failed to update workflow).
12
-
13
- ## [1.3.4] - 2025-12-14
14
-
15
- - **Fix**: Restored `registry-url` configuration (required for OIDC `ENEEDAUTH` fix).
16
-
17
- ## [1.3.3] - 2025-12-14
18
-
19
- - **Fix**: Removed conflicting `registry-url` configuration to enable OIDC authentication.
20
-
21
- ## [1.3.2] - 2025-12-14
22
-
23
- - **Fix**: Updated release workflow to use NPM Trusted Publishing (OIDC) instead of auth tokens.
24
-
25
- ## [1.3.1] - 2025-12-14
26
-
27
- - **Fix**: Resolved timezone issue in integration tests causing CI failures.
28
-
29
- ## [1.3.0] - 2025-12-14
30
-
31
- - **Breaking**: Migrated project to ESM (`type: module`).
32
- - **Breaking**: Migrated testing framework from Jest to Vitest.
33
- - **Feature**: Added `intensityMultiplier` support to `auto-cct`.
34
- - **Feature**: `auto-cct` command now accepts a device argument (defaults to 'all').
35
- - **Refactor**: Renamed `schedule` command to `print-schedule`.
36
- - **Fix**: Resolved `suncalc` import issues.
37
- - **Fix**: Improved CLI output styling for light mode terminals.
38
- - **Chore**: Comprehensive linting and formatting fixes.
39
-
40
- ## [1.1.4] - 2025-11-02
41
-
42
- - test token config
43
-
44
- ## [1.1.3] - 2025-11-02
45
-
46
- - curve config and refactors
47
-
48
- ## [1.1.2] - 2025-11-01
49
-
50
- - Enhanced CLI help output and documentation
51
-
52
- ## [1.1.0] - 2025-10-31
53
-
54
- - Added more curves for auto-cct
55
- - Improved schedule table display with all curves
56
- - Better range for start/stop times for curves
57
- - Added simulation of full day curve in seconds
58
- - Added auto-start for the desktop app if closed
59
- - Added more special times in schedule (e.g., Nautical Dawn)
60
- - Various tests and refactoring
61
-
62
- ## [1.0.3] - 2025-10-30
63
-
64
- - Initial stable release with full CLI functionality
65
- - WebSocket control for Aputure Amaran lights
66
- - Auto-CCT circadian lighting feature
67
- - Service automation for continuous lighting adjustment
@@ -1 +0,0 @@
1
- {"version":3,"file":"autostart.d.ts","sourceRoot":"","sources":["../src/autostart.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,SAAS;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAkCD;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAuBjF;AAED;;;GAGG;AACH,wBAAsB,cAAc,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAkE7E;AAED;;;GAGG;AACH,wBAAsB,eAAe,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,OAAO,CAAC,CAuC9E"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"autostart.js","sourceRoot":"","sources":["../src/autostart.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,MAAM,oBAAoB,CAAC;AAC1C,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,MAAM,OAAO,CAAC;AAgB1B,MAAM,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,kBAAkB,CAAC,CAAC;AAEzE,SAAS,UAAU;IACjB,IAAI,CAAC;QACH,IAAI,EAAE,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,CAAC;YAC9B,MAAM,UAAU,GAAG,EAAE,CAAC,YAAY,CAAC,UAAU,EAAE,MAAM,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,qCAAqC,CAAC,CAAC,CAAC;QAClE,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,SAAS,YAAY,CAAC,OAAe,EAAE,QAAiB,KAAK;IAC3D,MAAM,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,IAAI,SAAS,iBAAiB,OAAO,EAAE,CAAC;IAE3D,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC;IACtC,CAAC;IAED,qCAAqC;IACrC,IAAI,CAAC;QACH,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,EAAE,2BAA2B,CAAC,CAAC;QAC/E,EAAE,CAAC,cAAc,CAAC,OAAO,EAAE,GAAG,UAAU,IAAI,CAAC,CAAC;IAChD,CAAC;IAAC,OAAO,MAAM,EAAE,CAAC;QAChB,wBAAwB;IAC1B,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CAAC,QAAiB,KAAK;IAC7D,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,IAAI,CAAC,kDAAkD,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE;YACzE,IAAI,KAAK,EAAE,CAAC;gBACV,IAAI,KAAK,EAAE,CAAC;oBACV,YAAY,CAAC,sCAAsC,KAAK,CAAC,OAAO,EAAE,EAAE,KAAK,CAAC,CAAC;gBAC7E,CAAC;gBACD,OAAO,CAAC,KAAK,CAAC,CAAC;gBACf,OAAO;YACT,CAAC;YAED,MAAM,SAAS,GAAG,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC;YAE3C,IAAI,KAAK,EAAE,CAAC;gBACV,YAAY,CAAC,sBAAsB,SAAS,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,EAAE,EAAE,KAAK,CAAC,CAAC;gBAC/E,IAAI,SAAS,EAAE,CAAC;oBACd,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,gDAAgD,MAAM,EAAE,CAAC,CAAC,CAAC;gBACpF,CAAC;YACH,CAAC;YAED,OAAO,CAAC,SAAS,CAAC,CAAC;QACrB,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CAAC,QAAiB,KAAK;IACzD,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAE5B,2CAA2C;IAC3C,IAAI,MAAM,EAAE,YAAY,KAAK,KAAK,EAAE,CAAC;QACnC,YAAY,CAAC,wCAAwC,EAAE,KAAK,CAAC,CAAC;QAC9D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC7B,YAAY,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;QAEjE,kDAAkD;QAClD,MAAM,YAAY,GAAG;YACnB,sCAAsC;YACtC,sCAAsC;YACtC,sCAAsC;YACtC,sCAAsC;YACtC,qDAAqD;YACrD,qDAAqD;SACtD,CAAC;QAEF,IAAI,WAAW,GAAG,CAAC,CAAC;QAEpB,MAAM,aAAa,GAAG,GAAG,EAAE;YACzB,IAAI,WAAW,IAAI,YAAY,CAAC,MAAM,EAAE,CAAC;gBACvC,YAAY,CAAC,+CAA+C,EAAE,KAAK,CAAC,CAAC;gBAErE,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,wDAAwD,CAAC,CAAC,CAAC;oBACpF,YAAY,CAAC,OAAO,CAAC,CAAC,MAAM,EAAE,EAAE;wBAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,MAAM,EAAE,CAAC,CAAC,CAAC;oBAC3C,CAAC,CAAC,CAAC;oBACH,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,2FAA2F,CAAC,CAC1G,CAAC;gBACJ,CAAC;gBAED,OAAO,CAAC,KAAK,CAAC,CAAC;gBACf,OAAO;YACT,CAAC;YAED,MAAM,MAAM,GAAG,YAAY,CAAC,WAAW,CAAC,CAAC;YACzC,IAAI,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;gBACrB,IAAI,KAAK,EAAE,CAAC;oBACV,sBAAsB;oBACtB,WAAW,EAAE,CAAC;oBACd,aAAa,EAAE,CAAC;oBAChB,OAAO;gBACT,CAAC;gBAED,YAAY,CAAC,mCAAmC,MAAM,EAAE,EAAE,KAAK,CAAC,CAAC;gBAEjE,IAAI,KAAK,EAAE,CAAC;oBACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,yCAAyC,MAAM,EAAE,CAAC,CAAC,CAAC;gBAC9E,CAAC;gBAED,oCAAoC;gBACpC,UAAU,CAAC,GAAG,EAAE;oBACd,OAAO,CAAC,IAAI,CAAC,CAAC;gBAChB,CAAC,EAAE,IAAI,CAAC,CAAC;YACX,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,aAAa,EAAE,CAAC;IAClB,CAAC,CAAC,CAAC;AACL,CAAC;AAED;;;GAGG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CAAC,QAAiB,KAAK;IAC1D,MAAM,MAAM,GAAG,UAAU,EAAE,CAAC;IAE5B,4BAA4B;IAC5B,MAAM,gBAAgB,GAAG,MAAM,EAAE,YAAY,KAAK,KAAK,CAAC,CAAC,kBAAkB;IAC3E,YAAY,CAAC,sBAAsB,gBAAgB,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,UAAU,EAAE,EAAE,KAAK,CAAC,CAAC;IAEvF,IAAI,CAAC,gBAAgB,EAAE,CAAC;QACtB,YAAY,CAAC,+CAA+C,EAAE,KAAK,CAAC,CAAC;QACrE,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,yFAAyF,CAAC,CACxG,CAAC;QACJ,CAAC;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,SAAS,GAAG,MAAM,kBAAkB,CAAC,KAAK,CAAC,CAAC;IAClD,IAAI,SAAS,EAAE,CAAC;QACd,YAAY,CAAC,2CAA2C,EAAE,KAAK,CAAC,CAAC;QACjE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,YAAY,CAAC,0CAA0C,EAAE,KAAK,CAAC,CAAC;IAChE,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC,CAAC;IAE5C,IAAI,OAAO,EAAE,CAAC;QACZ,YAAY,CAAC,yCAAyC,EAAE,KAAK,CAAC,CAAC;QAC/D,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC,CAAC;QAClF,CAAC;IACH,CAAC;SAAM,CAAC;QACN,YAAY,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;QAC1D,IAAI,KAAK,EAAE,CAAC;YACV,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,gDAAgD,CAAC,CAAC,CAAC;QAC3E,CAAC;IACH,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cctUtil.d.ts","sourceRoot":"","sources":["../src/cctUtil.ts"],"names":[],"mappings":"AAMA,MAAM,WAAW,SAAS;IACxB,GAAG,EAAE,MAAM,CAAC;IACZ,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,UAAU;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;CAC1B;AAED,oBAAY,SAAS;IACnB,IAAI,SAAS;IACb,kBAAkB,uBAAuB;IACzC,mBAAmB,wBAAwB;IAC3C,kBAAkB,uBAAuB;IACzC,YAAY,iBAAiB;IAC7B,YAAY,iBAAiB;IAC7B,cAAc,mBAAmB;CAClC;AAED,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,OAAO,SAAS,CAuBpE;AAED,wBAAgB,kBAAkB,IAAI,MAAM,EAAE,CAE7C;AAwbD,wBAAgB,YAAY,CAC1B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,IAAI,GAAE,IAAiB,EACvB,IAAI,CAAC,EAAE,UAAU,EACjB,SAAS,GAAE,SAA0B,GACpC,SAAS,CAgBX"}
package/dist/cctUtil.js DELETED
@@ -1,435 +0,0 @@
1
- import SunCalc from 'suncalc';
2
- const { getPosition, getTimes } = SunCalc;
3
- import { CCT_DEFAULTS } from './constants.js';
4
- export var CurveType;
5
- (function (CurveType) {
6
- CurveType["HANN"] = "hann";
7
- CurveType["WIDER_MIDDLE_SMALL"] = "wider-middle-small";
8
- CurveType["WIDER_MIDDLE_MEDIUM"] = "wider-middle-medium";
9
- CurveType["WIDER_MIDDLE_LARGE"] = "wider-middle-large";
10
- CurveType["CIE_DAYLIGHT"] = "cie-daylight";
11
- CurveType["SUN_ALTITUDE"] = "sun-altitude";
12
- CurveType["PEREZ_DAYLIGHT"] = "perez-daylight";
13
- })(CurveType || (CurveType = {}));
14
- export function parseCurveType(curve) {
15
- const normalizedCurve = curve.toLowerCase();
16
- if (normalizedCurve === 'hann') {
17
- return 'HANN';
18
- }
19
- else if (normalizedCurve === 'wider-middle-small') {
20
- return 'WIDER_MIDDLE_SMALL';
21
- }
22
- else if (normalizedCurve === 'wider-middle-medium') {
23
- return 'WIDER_MIDDLE_MEDIUM';
24
- }
25
- else if (normalizedCurve === 'wider-middle-large') {
26
- return 'WIDER_MIDDLE_LARGE';
27
- }
28
- else if (normalizedCurve === 'wider-middle') {
29
- return 'WIDER_MIDDLE_MEDIUM'; // Default to medium for backwards compatibility
30
- }
31
- else if (normalizedCurve === 'cie-daylight') {
32
- return 'CIE_DAYLIGHT';
33
- }
34
- else if (normalizedCurve === 'sun-altitude') {
35
- return 'SUN_ALTITUDE';
36
- }
37
- else if (normalizedCurve === 'perez-daylight') {
38
- return 'PEREZ_DAYLIGHT';
39
- }
40
- else {
41
- throw new Error('Invalid curve type. Use "hann", "wider-middle-small", "wider-middle-medium", "wider-middle-large", "cie-daylight", "sun-altitude", or "perez-daylight"');
42
- }
43
- }
44
- export function getAvailableCurves() {
45
- return Object.values(CurveType);
46
- }
47
- const CURVE_FUNCTIONS = {
48
- [CurveType.HANN]: hannCurve,
49
- [CurveType.WIDER_MIDDLE_SMALL]: (x) => widerMiddleCurve(x, 'small'),
50
- [CurveType.WIDER_MIDDLE_MEDIUM]: (x) => widerMiddleCurve(x, 'medium'),
51
- [CurveType.WIDER_MIDDLE_LARGE]: (x) => widerMiddleCurve(x, 'large'),
52
- [CurveType.CIE_DAYLIGHT]: cieDaylightCurve,
53
- [CurveType.SUN_ALTITUDE]: sunAltitudeCurve,
54
- [CurveType.PEREZ_DAYLIGHT]: perezDaylightCurve,
55
- };
56
- function hannCurve(x) {
57
- return 0.5 * (1 - Math.cos(2 * Math.PI * x));
58
- }
59
- function widerMiddleCurve(x, width = 'medium') {
60
- const widthConfig = {
61
- small: { start: 0.35, end: 0.65 }, // Narrow plateau (30% of day)
62
- medium: { start: 0.2, end: 0.8 }, // Medium plateau (60% of day)
63
- large: { start: 0.1, end: 0.9 }, // Wide plateau (80% of day)
64
- };
65
- const { start: plateauStart, end: plateauEnd } = widthConfig[width];
66
- if (x < plateauStart) {
67
- return Math.sin(((x / plateauStart) * Math.PI) / 2);
68
- }
69
- else if (x > plateauEnd) {
70
- return Math.cos((((x - plateauEnd) / (1 - plateauEnd)) * Math.PI) / 2);
71
- }
72
- else {
73
- return 1;
74
- }
75
- }
76
- // Scientifically-based daylight curves using suncalc data
77
- // Realistic daylight calculation functions
78
- function calculateRealisticSunAltitude(altitude, maxAltitude) {
79
- // Convert altitude to degrees for easier calculations
80
- const altitudeDeg = (altitude * 180) / Math.PI;
81
- const maxAltitudeDeg = (maxAltitude * 180) / Math.PI;
82
- // CCT: Based on real-world color temperature at different sun angles
83
- // Civil twilight (-6° to 0°): 4000-5000K
84
- // Sunrise to 30°: 5000-6500K
85
- // 30° to 60°: 5500-7000K
86
- // Above 60°: 6500-7500K
87
- let cctFactor;
88
- if (altitudeDeg < -6) {
89
- cctFactor = 0; // Before civil twilight - minimum CCT
90
- }
91
- else if (altitudeDeg < 0) {
92
- // Civil twilight: 4000-5000K range
93
- cctFactor = 0.3 + ((altitudeDeg + 6) / 6) * 0.2; // 0.3 to 0.5
94
- }
95
- else if (altitudeDeg < 30) {
96
- // Morning/afternoon: 5000-6500K
97
- cctFactor = 0.5 + (altitudeDeg / 30) * 0.3; // 0.5 to 0.8
98
- }
99
- else if (altitudeDeg < 60) {
100
- // High sun: 5500-7000K
101
- cctFactor = 0.8 + ((altitudeDeg - 30) / 30) * 0.2; // 0.8 to 1.0
102
- }
103
- else {
104
- // Very high sun: 6500-7500K
105
- cctFactor = 1.0;
106
- }
107
- // Calculate raw intensity factor based on absolute altitude
108
- const calculateIntensity = (altDeg) => {
109
- if (altDeg < -6)
110
- return 0;
111
- if (altDeg < 0)
112
- return ((altDeg + 6) / 6) ** 2 * 0.05;
113
- if (altDeg < 10)
114
- return 0.05 + (altDeg / 10) * 0.15;
115
- if (altDeg < 30)
116
- return 0.2 + ((altDeg - 10) / 20) * 0.4;
117
- // For higher altitudes, use a standard curve that would reach 1.0 at 90 degrees
118
- // This serves as our "raw" value before normalization
119
- return 0.6 + ((altDeg - 30) / 60) * 0.4;
120
- };
121
- const rawIntensity = calculateIntensity(altitudeDeg);
122
- // Calculate the maximum possible intensity for this day (at solar noon)
123
- // This ensures that even on winter days with low max altitude, we can reach 100%
124
- const maxDailyIntensity = calculateIntensity(maxAltitudeDeg);
125
- // Normalize: Scale the current intensity so that at maxAltitude it reaches 1.0
126
- // Avoid division by zero if maxDailyIntensity is very small (e.g. polar night)
127
- let intensityFactor = maxDailyIntensity > 0.01 ? rawIntensity / maxDailyIntensity : 0;
128
- // Cap at 1.0 just in case
129
- intensityFactor = Math.min(1.0, intensityFactor);
130
- return [Math.max(0, Math.min(1, cctFactor)), Math.max(0, Math.min(1, intensityFactor))];
131
- }
132
- function calculateRealisticCIEDaylight(altitude, maxAltitude) {
133
- // CIE daylight with more realistic atmospheric modeling
134
- const altitudeDeg = (altitude * 180) / Math.PI;
135
- const maxAltitudeDeg = (maxAltitude * 180) / Math.PI;
136
- // CCT: CIE standard illuminant D series with atmospheric scattering
137
- let cctFactor;
138
- if (altitudeDeg < -6) {
139
- cctFactor = 0;
140
- }
141
- else if (altitudeDeg < 0) {
142
- // Enhanced blue during civil twilight due to Rayleigh scattering
143
- cctFactor = 0.4 + ((altitudeDeg + 6) / 6) ** 1.5 * 0.2; // 0.4 to 0.6
144
- }
145
- else if (altitudeDeg < 15) {
146
- // Golden hour effect: warmer light
147
- cctFactor = 0.6 - Math.sin((altitudeDeg * Math.PI) / 30) * 0.1; // Slight dip to 0.5
148
- }
149
- else if (altitudeDeg < 45) {
150
- // Mid-morning: rapid blue increase
151
- cctFactor = 0.5 + ((altitudeDeg - 15) / 30) * 0.4; // 0.5 to 0.9
152
- }
153
- else {
154
- // High sun: maximum blue
155
- cctFactor = 0.9 + Math.min(0.1, ((altitudeDeg - 45) / 45) * 0.1); // 0.9 to 1.0
156
- }
157
- // Calculate raw intensity based on absolute altitude (0-90 degrees)
158
- const calculateRawIntensity = (altDeg) => {
159
- if (altDeg < -6)
160
- return 0;
161
- if (altDeg < 0)
162
- return ((altDeg + 6) / 6) ** 3 * 0.03; // Very low start
163
- if (altDeg < 15) {
164
- // Atmospheric path length effect - gradual start
165
- // Fix: Use radians directly for sin() since altitude was originally radians,
166
- // but here we are working with degrees, so convert back or just use the degree value logic?
167
- // Actually airMass formula: 1 / sin(elevation). elevation in radians.
168
- // We have altDeg. Convert to radians: altDeg * PI / 180.
169
- const altRad = Math.max(0.01, (altDeg * Math.PI) / 180);
170
- const airMass = 1 / Math.sin(altRad);
171
- return Math.min(0.25, 1 / airMass ** 0.7);
172
- }
173
- if (altDeg < 40) {
174
- // Mid-morning increase
175
- // Map 15..40 to 0.25..0.80
176
- return 0.25 + ((altDeg - 15) / 25) * 0.55;
177
- }
178
- if (altDeg < 70) {
179
- // Approach peak
180
- // Map 40..70 to 0.80..0.95
181
- return 0.8 + ((altDeg - 40) / 30) * 0.15;
182
- }
183
- // High sun > 70
184
- // Map 70..90 to 0.95..1.0
185
- return 0.95 + ((altDeg - 70) / 20) * 0.05;
186
- };
187
- const rawIntensity = calculateRawIntensity(altitudeDeg);
188
- // Calculate max possible intensity for this day (normalization factor)
189
- const maxDailyIntensity = calculateRawIntensity(maxAltitudeDeg);
190
- // Normalize
191
- const intensityFactor = maxDailyIntensity > 0.001 ? rawIntensity / maxDailyIntensity : 0;
192
- return [Math.max(0, Math.min(1, cctFactor)), Math.max(0, Math.min(1, intensityFactor))];
193
- }
194
- function calculateRealisticPerezDaylight(altitude, maxAltitude) {
195
- // Perez daylight model with turbidity and atmospheric effects
196
- const altitudeDeg = (altitude * 180) / Math.PI;
197
- const maxAltitudeDeg = (maxAltitude * 180) / Math.PI;
198
- // CCT: Perez model with atmospheric turbidity
199
- let cctFactor;
200
- if (altitudeDeg < -6) {
201
- cctFactor = 0;
202
- }
203
- else if (altitudeDeg < 0) {
204
- // Strong blue during twilight (high turbidity effect)
205
- cctFactor = 0.35 + ((altitudeDeg + 6) / 6) ** 2 * 0.25; // 0.35 to 0.6
206
- }
207
- else if (altitudeDeg < 25) {
208
- // Warm golden hour with Perez atmospheric correction
209
- const goldenHourEffect = Math.exp(-((altitudeDeg - 12.5) ** 2) / 100);
210
- cctFactor = 0.6 - goldenHourEffect * 0.15 + (altitudeDeg / 25) * 0.3; // 0.45 to 0.75
211
- }
212
- else if (altitudeDeg < 50) {
213
- // Transition to neutral white
214
- cctFactor = 0.75 + ((altitudeDeg - 25) / 25) * 0.2; // 0.75 to 0.95
215
- }
216
- else {
217
- // Slight cooling at very high angles
218
- cctFactor = Math.min(1.0, 0.95 + ((altitudeDeg - 50) / 40) * 0.05); // 0.95 to 1.0
219
- }
220
- // Calculate raw intensity based on absolute altitude (0-90 degrees)
221
- const calculateRawIntensity = (altDeg) => {
222
- if (altDeg < -6)
223
- return 0;
224
- if (altDeg < 5) {
225
- // Very low light near horizon
226
- return (Math.max(0, altDeg + 6) / 11) ** 4 * 0.15;
227
- }
228
- if (altDeg < 20) {
229
- // Morning increase with atmospheric effects
230
- const zenithAngle = Math.max(0.01, ((90 - altDeg) * Math.PI) / 180);
231
- const relativeLuminance = Math.exp(-0.2 / Math.max(0.01, Math.cos(zenithAngle)));
232
- return Math.min(0.4, relativeLuminance * 0.35 + 0.05);
233
- }
234
- if (altDeg < 45) {
235
- // Strong increase to midday
236
- // Map 20..45 to 0.25..0.9
237
- return 0.25 + ((altDeg - 20) / 25) * 0.65;
238
- }
239
- if (altDeg < 80) {
240
- // Peak approach
241
- // Map 45..80 to 0.9..1.0
242
- return 0.9 + ((altDeg - 45) / 35) * 0.1;
243
- }
244
- // High sun > 80
245
- return 1.0;
246
- };
247
- const rawIntensity = calculateRawIntensity(altitudeDeg);
248
- // Calculate max possible intensity for this day (normalization factor)
249
- const maxDailyIntensity = calculateRawIntensity(maxAltitudeDeg);
250
- // Normalize
251
- const intensityFactor = maxDailyIntensity > 0.001 ? rawIntensity / maxDailyIntensity : 0;
252
- return [Math.max(0, Math.min(1, cctFactor)), Math.max(0, Math.min(1, intensityFactor))];
253
- }
254
- function cieDaylightCurve(x) {
255
- // CIE daylight locus approximation
256
- // Maps time of day to CCT based on CIE standard illuminant D series
257
- // Higher CCT (bluer) at midday, lower CCT (warmer) at sunrise/sunset
258
- return Math.sin(Math.PI * x) ** 0.8;
259
- }
260
- function sunAltitudeCurve(x) {
261
- // Simple sun altitude-based approximation
262
- // CCT ≈ 2000 + 4500 × (1 - cos(altitude))
263
- // This creates a more gradual transition than simple sine
264
- return 1 - Math.cos(Math.PI * x);
265
- }
266
- function perezDaylightCurve(x) {
267
- // Perez daylight model approximation
268
- // Accounts for atmospheric scattering and turbidity
269
- // More realistic transition with slightly flatter midday peak
270
- const zenithAngle = Math.PI * (0.5 - Math.abs(x - 0.5));
271
- const scattering = Math.exp(-2.0 * Math.max(0, Math.cos(zenithAngle)));
272
- return Math.sin(Math.PI * x) ** 0.6 * (1 - 0.2 * scattering);
273
- }
274
- function isValidSunTimes(sunrise, sunset, solarNoon) {
275
- return (sunrise instanceof Date &&
276
- !Number.isNaN(sunrise.getTime()) &&
277
- sunset instanceof Date &&
278
- !Number.isNaN(sunset.getTime()) &&
279
- solarNoon instanceof Date &&
280
- !Number.isNaN(solarNoon.getTime()) &&
281
- sunset.getTime() > sunrise.getTime() &&
282
- solarNoon.getTime() > sunrise.getTime() &&
283
- solarNoon.getTime() < sunset.getTime());
284
- }
285
- function calculateCCTCore(lat, lon, date, minK, maxK, minIntensity, maxIntensity, curveType) {
286
- const curve = CURVE_FUNCTIONS[curveType];
287
- const times = getTimes(date, lat, lon);
288
- const sunrise = times.sunrise;
289
- const sunset = times.sunset;
290
- const _solarNoon = times.solarNoon;
291
- const nightEnd = times.nightEnd;
292
- const night = times.night;
293
- let f;
294
- // Scientific curves (CIE, SUN_ALTITUDE, PEREZ) use altitude-based calculations
295
- if (curveType === CurveType.CIE_DAYLIGHT ||
296
- curveType === CurveType.SUN_ALTITUDE ||
297
- curveType === CurveType.PEREZ_DAYLIGHT) {
298
- f = 0; // Initialize f
299
- if (isValidSunTimes(sunrise, sunset, _solarNoon)) {
300
- const [t, _noon] = [date.getTime(), _solarNoon.getTime()];
301
- // For scientific curves, handle cases where nightEnd/night might not be available
302
- let nightEndTime;
303
- let nightStartTime;
304
- if (nightEnd instanceof Date &&
305
- !Number.isNaN(nightEnd.getTime()) &&
306
- night instanceof Date &&
307
- !Number.isNaN(night.getTime())) {
308
- // Normal case: both nightEnd and night are available
309
- nightEndTime = nightEnd.getTime();
310
- nightStartTime = night.getTime();
311
- if (t <= nightEndTime || t >= nightStartTime) {
312
- return { cct: minK, intensity: minIntensity };
313
- }
314
- }
315
- else {
316
- // Edge case: no proper night (e.g., summer in high latitudes)
317
- // Use sunrise/sunset as boundaries for scientific curves
318
- nightEndTime = sunrise.getTime() - 30 * 60 * 1000; // 30 min before sunrise
319
- nightStartTime = sunset.getTime() + 30 * 60 * 1000; // 30 min after sunset
320
- if (t <= nightEndTime || t >= nightStartTime) {
321
- return { cct: minK, intensity: minIntensity };
322
- }
323
- }
324
- const pos = getPosition(date, lat, lon);
325
- const altitude = pos.altitude;
326
- // Get maximum altitude for normalization (at solar noon on this day)
327
- const noonPos = getPosition(_solarNoon, lat, lon);
328
- const maxAltitude = noonPos.altitude;
329
- if (curveType === CurveType.SUN_ALTITUDE) {
330
- // Realistic sun altitude-based calculations
331
- const [cctFactor, intensityFactor] = calculateRealisticSunAltitude(altitude, maxAltitude);
332
- const cct = minK + (maxK - minK) * cctFactor;
333
- const intensity = minIntensity + (maxIntensity - minIntensity) * intensityFactor;
334
- return {
335
- cct: Math.round(cct),
336
- intensity: Math.round(intensity),
337
- };
338
- }
339
- else if (curveType === CurveType.CIE_DAYLIGHT) {
340
- // Realistic CIE daylight locus calculations
341
- const [cctFactor, intensityFactor] = calculateRealisticCIEDaylight(altitude, maxAltitude);
342
- const cct = minK + (maxK - minK) * cctFactor;
343
- const intensity = minIntensity + (maxIntensity - minIntensity) * intensityFactor;
344
- return {
345
- cct: Math.round(cct),
346
- intensity: Math.round(intensity),
347
- };
348
- }
349
- else if (curveType === CurveType.PEREZ_DAYLIGHT) {
350
- // Realistic Perez daylight model calculations
351
- const [cctFactor, intensityFactor] = calculateRealisticPerezDaylight(altitude, maxAltitude);
352
- const cct = minK + (maxK - minK) * cctFactor;
353
- const intensity = minIntensity + (maxIntensity - minIntensity) * intensityFactor;
354
- return {
355
- cct: Math.round(cct),
356
- intensity: Math.round(intensity),
357
- };
358
- }
359
- }
360
- else {
361
- // Fallback for scientific curves when sun times are invalid
362
- f = 0;
363
- const cct = minK + (maxK - minK) * f;
364
- const intensity = minIntensity + (maxIntensity - minIntensity) * f;
365
- return {
366
- cct: Math.round(cct),
367
- intensity: Math.round(intensity),
368
- };
369
- }
370
- }
371
- // Empirical curves (HANN, WIDER_MIDDLE) use time-based calculations with nightEnd/night like scientific curves
372
- if (isValidSunTimes(sunrise, sunset, _solarNoon) &&
373
- nightEnd instanceof Date &&
374
- !Number.isNaN(nightEnd.getTime()) &&
375
- night instanceof Date &&
376
- !Number.isNaN(night.getTime())) {
377
- const [t, noon, nightStartTime, nightEndTime] = [
378
- date.getTime(),
379
- _solarNoon.getTime(),
380
- night.getTime(),
381
- nightEnd.getTime(),
382
- ];
383
- if (t <= nightEndTime || t >= nightStartTime) {
384
- return { cct: minK, intensity: minIntensity };
385
- }
386
- let x;
387
- if (t <= noon) {
388
- // Morning: map [nightEnd, solarNoon] to [0, 0.5]
389
- x = ((t - nightEndTime) / (noon - nightEndTime)) * 0.5;
390
- }
391
- else {
392
- // Afternoon: map [solarNoon, night] to [0.5, 1]
393
- x = 0.5 + ((t - noon) / (nightStartTime - noon)) * 0.5;
394
- }
395
- f = curve(x);
396
- const cct = minK + (maxK - minK) * f;
397
- const intensity = minIntensity + (maxIntensity - minIntensity) * f;
398
- return {
399
- cct: Math.round(cct),
400
- intensity: Math.round(intensity),
401
- };
402
- }
403
- // Fallback for empirical curves when night times are not available
404
- try {
405
- const pos = getPosition(date, lat, lon);
406
- const altitude = pos.altitude;
407
- if (altitude <= 0)
408
- return { cct: minK, intensity: minIntensity };
409
- f = Math.max(0, Math.sin(altitude));
410
- const cct = minK + (maxK - minK) * f;
411
- const intensity = minIntensity + (maxIntensity - minIntensity) * f;
412
- return {
413
- cct: Math.round(cct),
414
- intensity: Math.round(intensity),
415
- };
416
- }
417
- catch (_error) {
418
- return { cct: minK, intensity: minIntensity };
419
- }
420
- }
421
- export function calculateCCT(lat, lon, date = new Date(), opts, curveType = CurveType.HANN) {
422
- const clamp = (v, lo, hi) => Math.min(hi, Math.max(lo, v));
423
- const cctMinK = clamp(opts?.cctMinK ?? CCT_DEFAULTS.cctMinK, 1000, 20000);
424
- const cctMaxK = clamp(opts?.cctMaxK ?? CCT_DEFAULTS.cctMaxK, 1000, 20000);
425
- const minK = Math.min(cctMinK, cctMaxK);
426
- const maxK = Math.max(cctMinK, cctMaxK);
427
- const intensityMinPct = clamp(opts?.intensityMinPct ?? CCT_DEFAULTS.intensityMinPct, 0, 100);
428
- const intensityMaxPct = clamp(opts?.intensityMaxPct ?? CCT_DEFAULTS.intensityMaxPct, 0, 100);
429
- const minPct = Math.min(intensityMinPct, intensityMaxPct);
430
- const maxPct = Math.max(intensityMinPct, intensityMaxPct);
431
- const minIntensity = Math.round(minPct * 10);
432
- const maxIntensity = Math.round(maxPct * 10);
433
- return calculateCCTCore(lat, lon, date, minK, maxK, minIntensity, maxIntensity, curveType);
434
- }
435
- //# sourceMappingURL=cctUtil.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"cctUtil.js","sourceRoot":"","sources":["../src/cctUtil.ts"],"names":[],"mappings":"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"}
@@ -1,5 +0,0 @@
1
- import type { Command } from 'commander';
2
- import type { CommandDeps } from '../types.js';
3
- declare function registerAutoCct(program: Command, deps: CommandDeps): void;
4
- export default registerAutoCct;
5
- //# sourceMappingURL=autoCct.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"autoCct.d.ts","sourceRoot":"","sources":["../../src/commands/autoCct.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE/C,iBAAS,eAAe,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,QAuX3D;AAED,eAAe,eAAe,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"autoCct.js","sourceRoot":"","sources":["../../src/commands/autoCct.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cct.d.ts","sourceRoot":"","sources":["../../src/commands/cct.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAEzC,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAE/D,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,QA0F9D;AAED,eAAe,WAAW,CAAC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"cct.js","sourceRoot":"","sources":["../../src/commands/cct.ts"],"names":[],"mappings":"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"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"color.d.ts","sourceRoot":"","sources":["../../src/commands/color.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACzC,OAAO,KAAK,EAAE,WAAW,EAAkB,MAAM,aAAa,CAAC;AAE/D,wBAAgB,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,WAAW,QA4DhE;AAED,eAAe,aAAa,CAAC"}