emissions-api-sdk 1.0.1 → 1.0.2

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 (106) hide show
  1. package/dist/api/Calculation.js +4 -4
  2. package/dist/api/Factor.js +7 -7
  3. package/dist/api/FactorSets.js +1 -1
  4. package/dist/api/Fugitive.js +4 -4
  5. package/dist/api/Location.js +4 -4
  6. package/dist/api/Mobile.js +4 -6
  7. package/dist/api/Stationary.js +4 -4
  8. package/dist/api/TransportationAndDistribution.js +5 -5
  9. package/dist/coverage/clover.xml +335 -0
  10. package/dist/coverage/coverage-final.json +19 -0
  11. package/dist/coverage/lcov-report/base.css +224 -0
  12. package/dist/coverage/lcov-report/block-navigation.js +87 -0
  13. package/dist/coverage/lcov-report/favicon.png +0 -0
  14. package/dist/coverage/lcov-report/index.html +161 -0
  15. package/dist/coverage/lcov-report/prettify.css +1 -0
  16. package/dist/coverage/lcov-report/prettify.js +2 -0
  17. package/dist/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  18. package/dist/coverage/lcov-report/sorter.js +210 -0
  19. package/dist/coverage/lcov-report/src/Client.ts.html +838 -0
  20. package/dist/coverage/lcov-report/src/Constants.ts.html +208 -0
  21. package/dist/coverage/lcov-report/src/api/Calculation.ts.html +436 -0
  22. package/dist/coverage/lcov-report/src/api/Factor.ts.html +622 -0
  23. package/dist/coverage/lcov-report/src/api/FactorSets.ts.html +157 -0
  24. package/dist/coverage/lcov-report/src/api/Fugitive.ts.html +436 -0
  25. package/dist/coverage/lcov-report/src/api/Location.ts.html +433 -0
  26. package/dist/coverage/lcov-report/src/api/Mobile.ts.html +448 -0
  27. package/dist/coverage/lcov-report/src/api/Stationary.ts.html +442 -0
  28. package/dist/coverage/lcov-report/src/api/TransportationAndDistribution.ts.html +436 -0
  29. package/dist/coverage/lcov-report/src/api/index.html +221 -0
  30. package/dist/coverage/lcov-report/src/index.html +161 -0
  31. package/dist/coverage/lcov-report/src/request.ts.html +235 -0
  32. package/dist/coverage/lcov-report/src/utils.ts.html +139 -0
  33. package/dist/coverage/lcov-report/test/index.html +116 -0
  34. package/dist/coverage/lcov-report/test/mocks/CommonRequest.ts.html +142 -0
  35. package/dist/coverage/lcov-report/test/mocks/FactorRequest.ts.html +133 -0
  36. package/dist/coverage/lcov-report/test/mocks/GenericCalculationRequest.ts.html +142 -0
  37. package/dist/coverage/lcov-report/test/mocks/LocationRequest.ts.html +139 -0
  38. package/dist/coverage/lcov-report/test/mocks/SearchRequest.ts.html +142 -0
  39. package/dist/coverage/lcov-report/test/mocks/index.html +176 -0
  40. package/dist/coverage/lcov-report/test/testUtils.ts.html +97 -0
  41. package/dist/coverage/lcov.info +558 -0
  42. package/dist/interfaces/response/AreaResponse.js +2 -0
  43. package/dist/interfaces/response/EmissionResponse.js +2 -0
  44. package/dist/interfaces/response/EmissionResponseWithDetails.js +2 -0
  45. package/dist/interfaces/response/FactorResponse.js +2 -0
  46. package/dist/interfaces/response/FactorSetResponse.js +2 -0
  47. package/dist/interfaces/response/SearchResponse.js +2 -0
  48. package/dist/interfaces/response/TypeResponse.js +2 -0
  49. package/dist/interfaces/response/UnitResponse.js +2 -0
  50. package/dist/types/api/Calculation.d.ts +13 -8
  51. package/dist/types/api/Factor.d.ts +18 -13
  52. package/dist/types/api/FactorSets.d.ts +3 -2
  53. package/dist/types/api/Fugitive.d.ts +13 -8
  54. package/dist/types/api/Location.d.ts +13 -8
  55. package/dist/types/api/Mobile.d.ts +13 -10
  56. package/dist/types/api/Stationary.d.ts +13 -8
  57. package/dist/types/api/TransportationAndDistribution.d.ts +14 -9
  58. package/dist/types/index.d.ts +8 -0
  59. package/dist/types/interfaces/response/AreaResponse.d.ts +20 -0
  60. package/dist/types/interfaces/response/EmissionResponse.d.ts +31 -0
  61. package/dist/types/interfaces/response/EmissionResponseWithDetails.d.ts +144 -0
  62. package/dist/types/interfaces/response/FactorResponse.d.ts +53 -0
  63. package/dist/types/interfaces/response/FactorSetResponse.d.ts +38 -0
  64. package/dist/types/interfaces/response/SearchResponse.d.ts +41 -0
  65. package/dist/types/interfaces/response/TypeResponse.d.ts +7 -0
  66. package/dist/types/interfaces/response/UnitResponse.d.ts +7 -0
  67. package/docs/_sources/index.rst.txt +1 -0
  68. package/docs/_sources/troubleshooting.rst.txt +486 -0
  69. package/docs/_static/basic.css +8 -0
  70. package/docs/_static/pygments.css +146 -164
  71. package/docs/_static/searchtools.js +5 -8
  72. package/docs/_static/styles/furo.css +1 -1
  73. package/docs/_static/styles/furo.css.map +1 -1
  74. package/docs/authentication.html +29 -19
  75. package/docs/client.html +29 -19
  76. package/docs/genindex.html +29 -19
  77. package/docs/getting_started.html +29 -19
  78. package/docs/index.html +42 -19
  79. package/docs/objects.inv +0 -0
  80. package/docs/reference.html +69 -53
  81. package/docs/sdk.html +29 -19
  82. package/docs/search.html +29 -19
  83. package/docs/searchindex.js +1 -1
  84. package/docs/troubleshooting.html +786 -0
  85. package/package.json +1 -1
  86. package/sphinx-build/requirements.txt +5 -0
  87. package/sphinx-build/source/index.rst +1 -0
  88. package/sphinx-build/source/troubleshooting.rst +486 -0
  89. package/src/api/Calculation.ts +19 -14
  90. package/src/api/Factor.ts +27 -22
  91. package/src/api/FactorSets.ts +4 -3
  92. package/src/api/Fugitive.ts +19 -14
  93. package/src/api/Location.ts +20 -15
  94. package/src/api/Mobile.ts +19 -16
  95. package/src/api/Stationary.ts +19 -14
  96. package/src/api/TransportationAndDistribution.ts +21 -16
  97. package/src/index.ts +33 -1
  98. package/src/interfaces/response/AreaResponse.ts +25 -0
  99. package/src/interfaces/response/EmissionResponse.ts +44 -0
  100. package/src/interfaces/response/EmissionResponseWithDetails.ts +183 -0
  101. package/src/interfaces/response/FactorResponse.ts +78 -0
  102. package/src/interfaces/response/FactorSetResponse.ts +52 -0
  103. package/src/interfaces/response/SearchResponse.ts +52 -0
  104. package/src/interfaces/response/TypeResponse.ts +7 -0
  105. package/src/interfaces/response/UnitResponse.ts +7 -0
  106. package/test/apiTest.test.ts +1 -1
@@ -0,0 +1,433 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/api/Location.ts</title>
7
+ <meta charset="utf-8" />
8
+ <link rel="stylesheet" href="../../prettify.css" />
9
+ <link rel="stylesheet" href="../../base.css" />
10
+ <link rel="shortcut icon" type="image/x-icon" href="../../favicon.png" />
11
+ <meta name="viewport" content="width=device-width, initial-scale=1" />
12
+ <style type='text/css'>
13
+ .coverage-summary .sorter {
14
+ background-image: url(../../sort-arrow-sprite.png);
15
+ }
16
+ </style>
17
+ </head>
18
+
19
+ <body>
20
+ <div class='wrapper'>
21
+ <div class='pad1'>
22
+ <h1><a href="../../index.html">All files</a> / <a href="index.html">src/api</a> Location.ts</h1>
23
+ <div class='clearfix'>
24
+
25
+ <div class='fl pad1y space-right2'>
26
+ <span class="strong">100% </span>
27
+ <span class="quiet">Statements</span>
28
+ <span class='fraction'>19/19</span>
29
+ </div>
30
+
31
+
32
+ <div class='fl pad1y space-right2'>
33
+ <span class="strong">100% </span>
34
+ <span class="quiet">Branches</span>
35
+ <span class='fraction'>0/0</span>
36
+ </div>
37
+
38
+
39
+ <div class='fl pad1y space-right2'>
40
+ <span class="strong">100% </span>
41
+ <span class="quiet">Functions</span>
42
+ <span class='fraction'>4/4</span>
43
+ </div>
44
+
45
+
46
+ <div class='fl pad1y space-right2'>
47
+ <span class="strong">100% </span>
48
+ <span class="quiet">Lines</span>
49
+ <span class='fraction'>19/19</span>
50
+ </div>
51
+
52
+
53
+ </div>
54
+ <p class="quiet">
55
+ Press <em>n</em> or <em>j</em> to go to the next uncovered block, <em>b</em>, <em>p</em> or <em>k</em> for the previous block.
56
+ </p>
57
+ <template id="filterTemplate">
58
+ <div class="quiet">
59
+ Filter:
60
+ <input type="search" id="fileSearch">
61
+ </div>
62
+ </template>
63
+ </div>
64
+ <div class='status-line high'></div>
65
+ <pre><table class="coverage">
66
+ <tr><td class="line-count quiet"><a name='L1'></a><a href='#L1'>1</a>
67
+ <a name='L2'></a><a href='#L2'>2</a>
68
+ <a name='L3'></a><a href='#L3'>3</a>
69
+ <a name='L4'></a><a href='#L4'>4</a>
70
+ <a name='L5'></a><a href='#L5'>5</a>
71
+ <a name='L6'></a><a href='#L6'>6</a>
72
+ <a name='L7'></a><a href='#L7'>7</a>
73
+ <a name='L8'></a><a href='#L8'>8</a>
74
+ <a name='L9'></a><a href='#L9'>9</a>
75
+ <a name='L10'></a><a href='#L10'>10</a>
76
+ <a name='L11'></a><a href='#L11'>11</a>
77
+ <a name='L12'></a><a href='#L12'>12</a>
78
+ <a name='L13'></a><a href='#L13'>13</a>
79
+ <a name='L14'></a><a href='#L14'>14</a>
80
+ <a name='L15'></a><a href='#L15'>15</a>
81
+ <a name='L16'></a><a href='#L16'>16</a>
82
+ <a name='L17'></a><a href='#L17'>17</a>
83
+ <a name='L18'></a><a href='#L18'>18</a>
84
+ <a name='L19'></a><a href='#L19'>19</a>
85
+ <a name='L20'></a><a href='#L20'>20</a>
86
+ <a name='L21'></a><a href='#L21'>21</a>
87
+ <a name='L22'></a><a href='#L22'>22</a>
88
+ <a name='L23'></a><a href='#L23'>23</a>
89
+ <a name='L24'></a><a href='#L24'>24</a>
90
+ <a name='L25'></a><a href='#L25'>25</a>
91
+ <a name='L26'></a><a href='#L26'>26</a>
92
+ <a name='L27'></a><a href='#L27'>27</a>
93
+ <a name='L28'></a><a href='#L28'>28</a>
94
+ <a name='L29'></a><a href='#L29'>29</a>
95
+ <a name='L30'></a><a href='#L30'>30</a>
96
+ <a name='L31'></a><a href='#L31'>31</a>
97
+ <a name='L32'></a><a href='#L32'>32</a>
98
+ <a name='L33'></a><a href='#L33'>33</a>
99
+ <a name='L34'></a><a href='#L34'>34</a>
100
+ <a name='L35'></a><a href='#L35'>35</a>
101
+ <a name='L36'></a><a href='#L36'>36</a>
102
+ <a name='L37'></a><a href='#L37'>37</a>
103
+ <a name='L38'></a><a href='#L38'>38</a>
104
+ <a name='L39'></a><a href='#L39'>39</a>
105
+ <a name='L40'></a><a href='#L40'>40</a>
106
+ <a name='L41'></a><a href='#L41'>41</a>
107
+ <a name='L42'></a><a href='#L42'>42</a>
108
+ <a name='L43'></a><a href='#L43'>43</a>
109
+ <a name='L44'></a><a href='#L44'>44</a>
110
+ <a name='L45'></a><a href='#L45'>45</a>
111
+ <a name='L46'></a><a href='#L46'>46</a>
112
+ <a name='L47'></a><a href='#L47'>47</a>
113
+ <a name='L48'></a><a href='#L48'>48</a>
114
+ <a name='L49'></a><a href='#L49'>49</a>
115
+ <a name='L50'></a><a href='#L50'>50</a>
116
+ <a name='L51'></a><a href='#L51'>51</a>
117
+ <a name='L52'></a><a href='#L52'>52</a>
118
+ <a name='L53'></a><a href='#L53'>53</a>
119
+ <a name='L54'></a><a href='#L54'>54</a>
120
+ <a name='L55'></a><a href='#L55'>55</a>
121
+ <a name='L56'></a><a href='#L56'>56</a>
122
+ <a name='L57'></a><a href='#L57'>57</a>
123
+ <a name='L58'></a><a href='#L58'>58</a>
124
+ <a name='L59'></a><a href='#L59'>59</a>
125
+ <a name='L60'></a><a href='#L60'>60</a>
126
+ <a name='L61'></a><a href='#L61'>61</a>
127
+ <a name='L62'></a><a href='#L62'>62</a>
128
+ <a name='L63'></a><a href='#L63'>63</a>
129
+ <a name='L64'></a><a href='#L64'>64</a>
130
+ <a name='L65'></a><a href='#L65'>65</a>
131
+ <a name='L66'></a><a href='#L66'>66</a>
132
+ <a name='L67'></a><a href='#L67'>67</a>
133
+ <a name='L68'></a><a href='#L68'>68</a>
134
+ <a name='L69'></a><a href='#L69'>69</a>
135
+ <a name='L70'></a><a href='#L70'>70</a>
136
+ <a name='L71'></a><a href='#L71'>71</a>
137
+ <a name='L72'></a><a href='#L72'>72</a>
138
+ <a name='L73'></a><a href='#L73'>73</a>
139
+ <a name='L74'></a><a href='#L74'>74</a>
140
+ <a name='L75'></a><a href='#L75'>75</a>
141
+ <a name='L76'></a><a href='#L76'>76</a>
142
+ <a name='L77'></a><a href='#L77'>77</a>
143
+ <a name='L78'></a><a href='#L78'>78</a>
144
+ <a name='L79'></a><a href='#L79'>79</a>
145
+ <a name='L80'></a><a href='#L80'>80</a>
146
+ <a name='L81'></a><a href='#L81'>81</a>
147
+ <a name='L82'></a><a href='#L82'>82</a>
148
+ <a name='L83'></a><a href='#L83'>83</a>
149
+ <a name='L84'></a><a href='#L84'>84</a>
150
+ <a name='L85'></a><a href='#L85'>85</a>
151
+ <a name='L86'></a><a href='#L86'>86</a>
152
+ <a name='L87'></a><a href='#L87'>87</a>
153
+ <a name='L88'></a><a href='#L88'>88</a>
154
+ <a name='L89'></a><a href='#L89'>89</a>
155
+ <a name='L90'></a><a href='#L90'>90</a>
156
+ <a name='L91'></a><a href='#L91'>91</a>
157
+ <a name='L92'></a><a href='#L92'>92</a>
158
+ <a name='L93'></a><a href='#L93'>93</a>
159
+ <a name='L94'></a><a href='#L94'>94</a>
160
+ <a name='L95'></a><a href='#L95'>95</a>
161
+ <a name='L96'></a><a href='#L96'>96</a>
162
+ <a name='L97'></a><a href='#L97'>97</a>
163
+ <a name='L98'></a><a href='#L98'>98</a>
164
+ <a name='L99'></a><a href='#L99'>99</a>
165
+ <a name='L100'></a><a href='#L100'>100</a>
166
+ <a name='L101'></a><a href='#L101'>101</a>
167
+ <a name='L102'></a><a href='#L102'>102</a>
168
+ <a name='L103'></a><a href='#L103'>103</a>
169
+ <a name='L104'></a><a href='#L104'>104</a>
170
+ <a name='L105'></a><a href='#L105'>105</a>
171
+ <a name='L106'></a><a href='#L106'>106</a>
172
+ <a name='L107'></a><a href='#L107'>107</a>
173
+ <a name='L108'></a><a href='#L108'>108</a>
174
+ <a name='L109'></a><a href='#L109'>109</a>
175
+ <a name='L110'></a><a href='#L110'>110</a>
176
+ <a name='L111'></a><a href='#L111'>111</a>
177
+ <a name='L112'></a><a href='#L112'>112</a>
178
+ <a name='L113'></a><a href='#L113'>113</a>
179
+ <a name='L114'></a><a href='#L114'>114</a>
180
+ <a name='L115'></a><a href='#L115'>115</a>
181
+ <a name='L116'></a><a href='#L116'>116</a>
182
+ <a name='L117'></a><a href='#L117'>117</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
183
+ <span class="cline-any cline-yes">1x</span>
184
+ <span class="cline-any cline-neutral">&nbsp;</span>
185
+ <span class="cline-any cline-neutral">&nbsp;</span>
186
+ <span class="cline-any cline-neutral">&nbsp;</span>
187
+ <span class="cline-any cline-neutral">&nbsp;</span>
188
+ <span class="cline-any cline-neutral">&nbsp;</span>
189
+ <span class="cline-any cline-neutral">&nbsp;</span>
190
+ <span class="cline-any cline-yes">1x</span>
191
+ <span class="cline-any cline-neutral">&nbsp;</span>
192
+ <span class="cline-any cline-neutral">&nbsp;</span>
193
+ <span class="cline-any cline-neutral">&nbsp;</span>
194
+ <span class="cline-any cline-neutral">&nbsp;</span>
195
+ <span class="cline-any cline-neutral">&nbsp;</span>
196
+ <span class="cline-any cline-neutral">&nbsp;</span>
197
+ <span class="cline-any cline-neutral">&nbsp;</span>
198
+ <span class="cline-any cline-neutral">&nbsp;</span>
199
+ <span class="cline-any cline-neutral">&nbsp;</span>
200
+ <span class="cline-any cline-neutral">&nbsp;</span>
201
+ <span class="cline-any cline-neutral">&nbsp;</span>
202
+ <span class="cline-any cline-neutral">&nbsp;</span>
203
+ <span class="cline-any cline-neutral">&nbsp;</span>
204
+ <span class="cline-any cline-neutral">&nbsp;</span>
205
+ <span class="cline-any cline-neutral">&nbsp;</span>
206
+ <span class="cline-any cline-neutral">&nbsp;</span>
207
+ <span class="cline-any cline-neutral">&nbsp;</span>
208
+ <span class="cline-any cline-neutral">&nbsp;</span>
209
+ <span class="cline-any cline-neutral">&nbsp;</span>
210
+ <span class="cline-any cline-neutral">&nbsp;</span>
211
+ <span class="cline-any cline-neutral">&nbsp;</span>
212
+ <span class="cline-any cline-neutral">&nbsp;</span>
213
+ <span class="cline-any cline-neutral">&nbsp;</span>
214
+ <span class="cline-any cline-neutral">&nbsp;</span>
215
+ <span class="cline-any cline-neutral">&nbsp;</span>
216
+ <span class="cline-any cline-neutral">&nbsp;</span>
217
+ <span class="cline-any cline-neutral">&nbsp;</span>
218
+ <span class="cline-any cline-yes">1x</span>
219
+ <span class="cline-any cline-neutral">&nbsp;</span>
220
+ <span class="cline-any cline-neutral">&nbsp;</span>
221
+ <span class="cline-any cline-yes">1x</span>
222
+ <span class="cline-any cline-yes">1x</span>
223
+ <span class="cline-any cline-neutral">&nbsp;</span>
224
+ <span class="cline-any cline-yes">1x</span>
225
+ <span class="cline-any cline-neutral">&nbsp;</span>
226
+ <span class="cline-any cline-neutral">&nbsp;</span>
227
+ <span class="cline-any cline-neutral">&nbsp;</span>
228
+ <span class="cline-any cline-neutral">&nbsp;</span>
229
+ <span class="cline-any cline-neutral">&nbsp;</span>
230
+ <span class="cline-any cline-neutral">&nbsp;</span>
231
+ <span class="cline-any cline-neutral">&nbsp;</span>
232
+ <span class="cline-any cline-neutral">&nbsp;</span>
233
+ <span class="cline-any cline-neutral">&nbsp;</span>
234
+ <span class="cline-any cline-neutral">&nbsp;</span>
235
+ <span class="cline-any cline-neutral">&nbsp;</span>
236
+ <span class="cline-any cline-neutral">&nbsp;</span>
237
+ <span class="cline-any cline-neutral">&nbsp;</span>
238
+ <span class="cline-any cline-neutral">&nbsp;</span>
239
+ <span class="cline-any cline-neutral">&nbsp;</span>
240
+ <span class="cline-any cline-neutral">&nbsp;</span>
241
+ <span class="cline-any cline-neutral">&nbsp;</span>
242
+ <span class="cline-any cline-neutral">&nbsp;</span>
243
+ <span class="cline-any cline-yes">1x</span>
244
+ <span class="cline-any cline-neutral">&nbsp;</span>
245
+ <span class="cline-any cline-yes">1x</span>
246
+ <span class="cline-any cline-yes">1x</span>
247
+ <span class="cline-any cline-neutral">&nbsp;</span>
248
+ <span class="cline-any cline-yes">1x</span>
249
+ <span class="cline-any cline-neutral">&nbsp;</span>
250
+ <span class="cline-any cline-neutral">&nbsp;</span>
251
+ <span class="cline-any cline-neutral">&nbsp;</span>
252
+ <span class="cline-any cline-neutral">&nbsp;</span>
253
+ <span class="cline-any cline-neutral">&nbsp;</span>
254
+ <span class="cline-any cline-neutral">&nbsp;</span>
255
+ <span class="cline-any cline-neutral">&nbsp;</span>
256
+ <span class="cline-any cline-neutral">&nbsp;</span>
257
+ <span class="cline-any cline-neutral">&nbsp;</span>
258
+ <span class="cline-any cline-neutral">&nbsp;</span>
259
+ <span class="cline-any cline-neutral">&nbsp;</span>
260
+ <span class="cline-any cline-neutral">&nbsp;</span>
261
+ <span class="cline-any cline-neutral">&nbsp;</span>
262
+ <span class="cline-any cline-neutral">&nbsp;</span>
263
+ <span class="cline-any cline-neutral">&nbsp;</span>
264
+ <span class="cline-any cline-yes">1x</span>
265
+ <span class="cline-any cline-neutral">&nbsp;</span>
266
+ <span class="cline-any cline-yes">1x</span>
267
+ <span class="cline-any cline-yes">1x</span>
268
+ <span class="cline-any cline-neutral">&nbsp;</span>
269
+ <span class="cline-any cline-yes">1x</span>
270
+ <span class="cline-any cline-neutral">&nbsp;</span>
271
+ <span class="cline-any cline-neutral">&nbsp;</span>
272
+ <span class="cline-any cline-neutral">&nbsp;</span>
273
+ <span class="cline-any cline-neutral">&nbsp;</span>
274
+ <span class="cline-any cline-neutral">&nbsp;</span>
275
+ <span class="cline-any cline-neutral">&nbsp;</span>
276
+ <span class="cline-any cline-neutral">&nbsp;</span>
277
+ <span class="cline-any cline-neutral">&nbsp;</span>
278
+ <span class="cline-any cline-neutral">&nbsp;</span>
279
+ <span class="cline-any cline-neutral">&nbsp;</span>
280
+ <span class="cline-any cline-neutral">&nbsp;</span>
281
+ <span class="cline-any cline-neutral">&nbsp;</span>
282
+ <span class="cline-any cline-neutral">&nbsp;</span>
283
+ <span class="cline-any cline-neutral">&nbsp;</span>
284
+ <span class="cline-any cline-neutral">&nbsp;</span>
285
+ <span class="cline-any cline-neutral">&nbsp;</span>
286
+ <span class="cline-any cline-neutral">&nbsp;</span>
287
+ <span class="cline-any cline-yes">1x</span>
288
+ <span class="cline-any cline-neutral">&nbsp;</span>
289
+ <span class="cline-any cline-neutral">&nbsp;</span>
290
+ <span class="cline-any cline-yes">1x</span>
291
+ <span class="cline-any cline-yes">1x</span>
292
+ <span class="cline-any cline-neutral">&nbsp;</span>
293
+ <span class="cline-any cline-yes">1x</span>
294
+ <span class="cline-any cline-neutral">&nbsp;</span>
295
+ <span class="cline-any cline-neutral">&nbsp;</span>
296
+ <span class="cline-any cline-neutral">&nbsp;</span>
297
+ <span class="cline-any cline-neutral">&nbsp;</span>
298
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { Client } from "../Client";
299
+ import { GET, LOCATION_API_AREA, LOCATION_API_PATH, LOCATION_API_UNITS, LOCATION_TYPES, POST } from "../Constants";
300
+ import { LocationRequest } from "../interfaces/Api";
301
+ import { AreaResponse } from "../interfaces/response/AreaResponse";
302
+ import { EmissionResponse } from "../interfaces/response/EmissionResponse";
303
+ import { EmissionResponseWithDetails } from "../interfaces/response/EmissionResponseWithDetails";
304
+ import { TypeResponse } from "../interfaces/response/TypeResponse";
305
+ import { UnitResponse } from "../interfaces/response/UnitResponse";
306
+ import { makeApiRequest } from "../request";
307
+ &nbsp;
308
+ /**
309
+ * Performs scope 2 purchased energy Emission calculations by making a POST request to the location API endpoint.
310
+ *
311
+ * @export
312
+ * @param {LocationRequest} payload - The location request data to be sent to the API
313
+ * @return {Promise&lt;EmissionResponse | EmissionResponseWithDetails&gt;} A promise that resolves to the emission calculation result. Returns EmissionResponseWithDetails if includeDetails is true, otherwise EmissionResponse
314
+ * @throws {Error} May throw an error if the API request fails
315
+ *
316
+ * @example
317
+ * const calculationRequest = {
318
+ "time" : {
319
+ "date": "2025-01-04"
320
+ },
321
+ "location": {
322
+ "country": "usa",
323
+ "stateProvince": "new york"
324
+ },
325
+ "activity": {
326
+ "type":"electricity",
327
+ "unit": "kwh",
328
+ "value": 14123143
329
+ },
330
+ "includeDetails": true
331
+ };
332
+ * const result = await calculate(calculationRequest);
333
+ */
334
+ export async function calculate(
335
+ payload: LocationRequest
336
+ ): Promise&lt;EmissionResponse | EmissionResponseWithDetails&gt; {
337
+ const client = Client.getInstance();
338
+ const url = client.getDomain() + LOCATION_API_PATH;
339
+ &nbsp;
340
+ return makeApiRequest&lt;EmissionResponse | EmissionResponseWithDetails&gt;({
341
+ method: POST,
342
+ url,
343
+ data: payload,
344
+ });
345
+ }
346
+ &nbsp;
347
+ &nbsp;
348
+ /**
349
+ * Retrieves available location-based calculation types by making a GET request to the location types API endpoint.
350
+ *
351
+ * @export
352
+ * @return {Promise&lt;TypeResponse&gt;} A promise that resolves to a TypeResponse containing the available location-based calculation types
353
+ * @throws {Error} May throw an error if the API request fails
354
+ *
355
+ * @example
356
+ *
357
+ * const types = await getTypes();
358
+ */
359
+ export async function getTypes(
360
+ ): Promise&lt;TypeResponse&gt; {
361
+ const client = Client.getInstance();
362
+ const url = client.getDomain() + LOCATION_TYPES;
363
+ &nbsp;
364
+ return makeApiRequest&lt;TypeResponse&gt;({
365
+ method: GET,
366
+ url
367
+ });
368
+ }
369
+ &nbsp;
370
+ /**
371
+ * Retrieves information about geographical areas supported by the location-based calculation API.
372
+ *
373
+ * @export
374
+ * @return {Promise&lt;AreaResponse&gt;} A promise that resolves to an AreaResponse containing the supported geographical areas
375
+ * @throws {Error} May throw an error if the API request fails
376
+ *
377
+ * @example
378
+ * const areas = await getArea();
379
+ */
380
+ export async function getArea(
381
+ ): Promise&lt;AreaResponse&gt; {
382
+ const client = Client.getInstance();
383
+ const url = client.getDomain() + LOCATION_API_AREA;
384
+ &nbsp;
385
+ return makeApiRequest&lt;AreaResponse&gt;({
386
+ method: GET,
387
+ url
388
+ });
389
+ }
390
+ &nbsp;
391
+ /**
392
+ * Retrieves available units for a specific location-based calculation type.
393
+ *
394
+ * @export
395
+ * @param {string} type - The location-based calculation type to get units for (e.g., "electricity")
396
+ * @return {Promise&lt;UnitResponse&gt;} A promise that resolves to a UnitResponse containing the available units
397
+ * @throws {Error} May throw an error if the API request fails
398
+ *
399
+ * @example
400
+ * // Get units for the "electricity" location type
401
+ * const units = await getUnits("electricity");
402
+ */
403
+ export async function getUnits(
404
+ type : string
405
+ ): Promise&lt;UnitResponse&gt; {
406
+ const client = Client.getInstance();
407
+ const url = client.getDomain() + LOCATION_API_UNITS;
408
+ &nbsp;
409
+ return makeApiRequest&lt;UnitResponse&gt;({
410
+ method: GET,
411
+ url,
412
+ params : { type }
413
+ });
414
+ }</pre></td></tr></table></pre>
415
+
416
+ <div class='push'></div><!-- for sticky footer -->
417
+ </div><!-- /wrapper -->
418
+ <div class='footer quiet pad2 space-top1 center small'>
419
+ Code coverage generated by
420
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
421
+ at 2025-12-11T17:06:20.018Z
422
+ </div>
423
+ <script src="../../prettify.js"></script>
424
+ <script>
425
+ window.onload = function () {
426
+ prettyPrint();
427
+ };
428
+ </script>
429
+ <script src="../../sorter.js"></script>
430
+ <script src="../../block-navigation.js"></script>
431
+ </body>
432
+ </html>
433
+