emissions-api-sdk 1.0.1 → 1.0.3

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 (115) hide show
  1. package/README.md +9 -0
  2. package/dist/Constants.js +2 -1
  3. package/dist/api/Calculation.js +4 -4
  4. package/dist/api/Factor.js +7 -7
  5. package/dist/api/FactorSets.js +1 -1
  6. package/dist/api/Fugitive.js +4 -4
  7. package/dist/api/Location.js +4 -4
  8. package/dist/api/Mobile.js +4 -6
  9. package/dist/api/Stationary.js +4 -4
  10. package/dist/api/TransportationAndDistribution.js +5 -5
  11. package/dist/api/Usage.js +26 -0
  12. package/dist/coverage/clover.xml +346 -0
  13. package/dist/coverage/coverage-final.json +20 -0
  14. package/dist/coverage/lcov-report/base.css +224 -0
  15. package/dist/coverage/lcov-report/block-navigation.js +87 -0
  16. package/dist/coverage/lcov-report/favicon.png +0 -0
  17. package/dist/coverage/lcov-report/index.html +161 -0
  18. package/dist/coverage/lcov-report/prettify.css +1 -0
  19. package/dist/coverage/lcov-report/prettify.js +2 -0
  20. package/dist/coverage/lcov-report/sort-arrow-sprite.png +0 -0
  21. package/dist/coverage/lcov-report/sorter.js +210 -0
  22. package/dist/coverage/lcov-report/src/Client.ts.html +838 -0
  23. package/dist/coverage/lcov-report/src/Constants.ts.html +214 -0
  24. package/dist/coverage/lcov-report/src/api/Calculation.ts.html +436 -0
  25. package/dist/coverage/lcov-report/src/api/Factor.ts.html +622 -0
  26. package/dist/coverage/lcov-report/src/api/FactorSets.ts.html +157 -0
  27. package/dist/coverage/lcov-report/src/api/Fugitive.ts.html +436 -0
  28. package/dist/coverage/lcov-report/src/api/Location.ts.html +433 -0
  29. package/dist/coverage/lcov-report/src/api/Mobile.ts.html +448 -0
  30. package/dist/coverage/lcov-report/src/api/Stationary.ts.html +442 -0
  31. package/dist/coverage/lcov-report/src/api/TransportationAndDistribution.ts.html +436 -0
  32. package/dist/coverage/lcov-report/src/api/Usage.ts.html +160 -0
  33. package/dist/coverage/lcov-report/src/api/index.html +236 -0
  34. package/dist/coverage/lcov-report/src/index.html +161 -0
  35. package/dist/coverage/lcov-report/src/request.ts.html +235 -0
  36. package/dist/coverage/lcov-report/src/utils.ts.html +139 -0
  37. package/dist/coverage/lcov-report/test/index.html +116 -0
  38. package/dist/coverage/lcov-report/test/mocks/CommonRequest.ts.html +142 -0
  39. package/dist/coverage/lcov-report/test/mocks/FactorRequest.ts.html +133 -0
  40. package/dist/coverage/lcov-report/test/mocks/GenericCalculationRequest.ts.html +142 -0
  41. package/dist/coverage/lcov-report/test/mocks/LocationRequest.ts.html +139 -0
  42. package/dist/coverage/lcov-report/test/mocks/SearchRequest.ts.html +142 -0
  43. package/dist/coverage/lcov-report/test/mocks/index.html +176 -0
  44. package/dist/coverage/lcov-report/test/testUtils.ts.html +97 -0
  45. package/dist/coverage/lcov.info +578 -0
  46. package/dist/index.js +2 -1
  47. package/dist/interfaces/response/AreaResponse.js +2 -0
  48. package/dist/interfaces/response/EmissionResponse.js +2 -0
  49. package/dist/interfaces/response/EmissionResponseWithDetails.js +2 -0
  50. package/dist/interfaces/response/FactorResponse.js +2 -0
  51. package/dist/interfaces/response/FactorSetResponse.js +2 -0
  52. package/dist/interfaces/response/SearchResponse.js +2 -0
  53. package/dist/interfaces/response/TypeResponse.js +2 -0
  54. package/dist/interfaces/response/UnitResponse.js +2 -0
  55. package/dist/interfaces/response/UsageResponse.js +5 -0
  56. package/dist/types/Constants.d.ts +1 -0
  57. package/dist/types/api/Calculation.d.ts +13 -8
  58. package/dist/types/api/Factor.d.ts +18 -13
  59. package/dist/types/api/FactorSets.d.ts +3 -2
  60. package/dist/types/api/Fugitive.d.ts +13 -8
  61. package/dist/types/api/Location.d.ts +13 -8
  62. package/dist/types/api/Mobile.d.ts +13 -10
  63. package/dist/types/api/Stationary.d.ts +13 -8
  64. package/dist/types/api/TransportationAndDistribution.d.ts +14 -9
  65. package/dist/types/api/Usage.d.ts +13 -0
  66. package/dist/types/index.d.ts +10 -0
  67. package/dist/types/interfaces/response/AreaResponse.d.ts +20 -0
  68. package/dist/types/interfaces/response/EmissionResponse.d.ts +31 -0
  69. package/dist/types/interfaces/response/EmissionResponseWithDetails.d.ts +144 -0
  70. package/dist/types/interfaces/response/FactorResponse.d.ts +53 -0
  71. package/dist/types/interfaces/response/FactorSetResponse.d.ts +38 -0
  72. package/dist/types/interfaces/response/SearchResponse.d.ts +41 -0
  73. package/dist/types/interfaces/response/TypeResponse.d.ts +7 -0
  74. package/dist/types/interfaces/response/UnitResponse.d.ts +16 -0
  75. package/dist/types/interfaces/response/UsageResponse.d.ts +17 -0
  76. package/docs/_sources/index.rst.txt +1 -0
  77. package/docs/_sources/reference.rst.txt +6 -0
  78. package/docs/_sources/troubleshooting.rst.txt +486 -0
  79. package/docs/authentication.html +1 -0
  80. package/docs/client.html +1 -0
  81. package/docs/genindex.html +5 -0
  82. package/docs/getting_started.html +1 -0
  83. package/docs/index.html +15 -0
  84. package/docs/objects.inv +0 -0
  85. package/docs/reference.html +71 -35
  86. package/docs/sdk.html +1 -0
  87. package/docs/search.html +1 -0
  88. package/docs/searchindex.js +1 -1
  89. package/docs/troubleshooting.html +777 -0
  90. package/package.json +1 -1
  91. package/sphinx-build/requirements.txt +5 -0
  92. package/sphinx-build/source/index.rst +1 -0
  93. package/sphinx-build/source/reference.rst +6 -0
  94. package/sphinx-build/source/troubleshooting.rst +486 -0
  95. package/src/Constants.ts +2 -0
  96. package/src/api/Calculation.ts +19 -14
  97. package/src/api/Factor.ts +27 -22
  98. package/src/api/FactorSets.ts +4 -3
  99. package/src/api/Fugitive.ts +19 -14
  100. package/src/api/Location.ts +20 -15
  101. package/src/api/Mobile.ts +19 -16
  102. package/src/api/Stationary.ts +19 -14
  103. package/src/api/TransportationAndDistribution.ts +21 -16
  104. package/src/api/Usage.ts +26 -0
  105. package/src/index.ts +35 -1
  106. package/src/interfaces/response/AreaResponse.ts +25 -0
  107. package/src/interfaces/response/EmissionResponse.ts +44 -0
  108. package/src/interfaces/response/EmissionResponseWithDetails.ts +183 -0
  109. package/src/interfaces/response/FactorResponse.ts +78 -0
  110. package/src/interfaces/response/FactorSetResponse.ts +52 -0
  111. package/src/interfaces/response/SearchResponse.ts +52 -0
  112. package/src/interfaces/response/TypeResponse.ts +7 -0
  113. package/src/interfaces/response/UnitResponse.ts +17 -0
  114. package/src/interfaces/response/UsageResponse.ts +23 -0
  115. package/test/apiTest.test.ts +35 -4
@@ -0,0 +1,622 @@
1
+
2
+ <!doctype html>
3
+ <html lang="en">
4
+
5
+ <head>
6
+ <title>Code coverage report for src/api/Factor.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> Factor.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'>27/27</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'>6/6</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'>27/27</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>
183
+ <a name='L118'></a><a href='#L118'>118</a>
184
+ <a name='L119'></a><a href='#L119'>119</a>
185
+ <a name='L120'></a><a href='#L120'>120</a>
186
+ <a name='L121'></a><a href='#L121'>121</a>
187
+ <a name='L122'></a><a href='#L122'>122</a>
188
+ <a name='L123'></a><a href='#L123'>123</a>
189
+ <a name='L124'></a><a href='#L124'>124</a>
190
+ <a name='L125'></a><a href='#L125'>125</a>
191
+ <a name='L126'></a><a href='#L126'>126</a>
192
+ <a name='L127'></a><a href='#L127'>127</a>
193
+ <a name='L128'></a><a href='#L128'>128</a>
194
+ <a name='L129'></a><a href='#L129'>129</a>
195
+ <a name='L130'></a><a href='#L130'>130</a>
196
+ <a name='L131'></a><a href='#L131'>131</a>
197
+ <a name='L132'></a><a href='#L132'>132</a>
198
+ <a name='L133'></a><a href='#L133'>133</a>
199
+ <a name='L134'></a><a href='#L134'>134</a>
200
+ <a name='L135'></a><a href='#L135'>135</a>
201
+ <a name='L136'></a><a href='#L136'>136</a>
202
+ <a name='L137'></a><a href='#L137'>137</a>
203
+ <a name='L138'></a><a href='#L138'>138</a>
204
+ <a name='L139'></a><a href='#L139'>139</a>
205
+ <a name='L140'></a><a href='#L140'>140</a>
206
+ <a name='L141'></a><a href='#L141'>141</a>
207
+ <a name='L142'></a><a href='#L142'>142</a>
208
+ <a name='L143'></a><a href='#L143'>143</a>
209
+ <a name='L144'></a><a href='#L144'>144</a>
210
+ <a name='L145'></a><a href='#L145'>145</a>
211
+ <a name='L146'></a><a href='#L146'>146</a>
212
+ <a name='L147'></a><a href='#L147'>147</a>
213
+ <a name='L148'></a><a href='#L148'>148</a>
214
+ <a name='L149'></a><a href='#L149'>149</a>
215
+ <a name='L150'></a><a href='#L150'>150</a>
216
+ <a name='L151'></a><a href='#L151'>151</a>
217
+ <a name='L152'></a><a href='#L152'>152</a>
218
+ <a name='L153'></a><a href='#L153'>153</a>
219
+ <a name='L154'></a><a href='#L154'>154</a>
220
+ <a name='L155'></a><a href='#L155'>155</a>
221
+ <a name='L156'></a><a href='#L156'>156</a>
222
+ <a name='L157'></a><a href='#L157'>157</a>
223
+ <a name='L158'></a><a href='#L158'>158</a>
224
+ <a name='L159'></a><a href='#L159'>159</a>
225
+ <a name='L160'></a><a href='#L160'>160</a>
226
+ <a name='L161'></a><a href='#L161'>161</a>
227
+ <a name='L162'></a><a href='#L162'>162</a>
228
+ <a name='L163'></a><a href='#L163'>163</a>
229
+ <a name='L164'></a><a href='#L164'>164</a>
230
+ <a name='L165'></a><a href='#L165'>165</a>
231
+ <a name='L166'></a><a href='#L166'>166</a>
232
+ <a name='L167'></a><a href='#L167'>167</a>
233
+ <a name='L168'></a><a href='#L168'>168</a>
234
+ <a name='L169'></a><a href='#L169'>169</a>
235
+ <a name='L170'></a><a href='#L170'>170</a>
236
+ <a name='L171'></a><a href='#L171'>171</a>
237
+ <a name='L172'></a><a href='#L172'>172</a>
238
+ <a name='L173'></a><a href='#L173'>173</a>
239
+ <a name='L174'></a><a href='#L174'>174</a>
240
+ <a name='L175'></a><a href='#L175'>175</a>
241
+ <a name='L176'></a><a href='#L176'>176</a>
242
+ <a name='L177'></a><a href='#L177'>177</a>
243
+ <a name='L178'></a><a href='#L178'>178</a>
244
+ <a name='L179'></a><a href='#L179'>179</a>
245
+ <a name='L180'></a><a href='#L180'>180</a></td><td class="line-coverage quiet"><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-neutral">&nbsp;</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-yes">1x</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-neutral">&nbsp;</span>
265
+ <span class="cline-any cline-neutral">&nbsp;</span>
266
+ <span class="cline-any cline-neutral">&nbsp;</span>
267
+ <span class="cline-any cline-neutral">&nbsp;</span>
268
+ <span class="cline-any cline-neutral">&nbsp;</span>
269
+ <span class="cline-any cline-neutral">&nbsp;</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-neutral">&nbsp;</span>
288
+ <span class="cline-any cline-yes">1x</span>
289
+ <span class="cline-any cline-neutral">&nbsp;</span>
290
+ <span class="cline-any cline-neutral">&nbsp;</span>
291
+ <span class="cline-any cline-yes">1x</span>
292
+ <span class="cline-any cline-yes">1x</span>
293
+ <span class="cline-any cline-neutral">&nbsp;</span>
294
+ <span class="cline-any cline-yes">1x</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>
299
+ <span class="cline-any cline-neutral">&nbsp;</span>
300
+ <span class="cline-any cline-neutral">&nbsp;</span>
301
+ <span class="cline-any cline-neutral">&nbsp;</span>
302
+ <span class="cline-any cline-neutral">&nbsp;</span>
303
+ <span class="cline-any cline-neutral">&nbsp;</span>
304
+ <span class="cline-any cline-neutral">&nbsp;</span>
305
+ <span class="cline-any cline-neutral">&nbsp;</span>
306
+ <span class="cline-any cline-neutral">&nbsp;</span>
307
+ <span class="cline-any cline-neutral">&nbsp;</span>
308
+ <span class="cline-any cline-neutral">&nbsp;</span>
309
+ <span class="cline-any cline-neutral">&nbsp;</span>
310
+ <span class="cline-any cline-neutral">&nbsp;</span>
311
+ <span class="cline-any cline-neutral">&nbsp;</span>
312
+ <span class="cline-any cline-neutral">&nbsp;</span>
313
+ <span class="cline-any cline-neutral">&nbsp;</span>
314
+ <span class="cline-any cline-neutral">&nbsp;</span>
315
+ <span class="cline-any cline-neutral">&nbsp;</span>
316
+ <span class="cline-any cline-neutral">&nbsp;</span>
317
+ <span class="cline-any cline-neutral">&nbsp;</span>
318
+ <span class="cline-any cline-neutral">&nbsp;</span>
319
+ <span class="cline-any cline-neutral">&nbsp;</span>
320
+ <span class="cline-any cline-neutral">&nbsp;</span>
321
+ <span class="cline-any cline-neutral">&nbsp;</span>
322
+ <span class="cline-any cline-neutral">&nbsp;</span>
323
+ <span class="cline-any cline-yes">1x</span>
324
+ <span class="cline-any cline-neutral">&nbsp;</span>
325
+ <span class="cline-any cline-neutral">&nbsp;</span>
326
+ <span class="cline-any cline-yes">1x</span>
327
+ <span class="cline-any cline-yes">1x</span>
328
+ <span class="cline-any cline-neutral">&nbsp;</span>
329
+ <span class="cline-any cline-yes">1x</span>
330
+ <span class="cline-any cline-neutral">&nbsp;</span>
331
+ <span class="cline-any cline-neutral">&nbsp;</span>
332
+ <span class="cline-any cline-neutral">&nbsp;</span>
333
+ <span class="cline-any cline-neutral">&nbsp;</span>
334
+ <span class="cline-any cline-neutral">&nbsp;</span>
335
+ <span class="cline-any cline-neutral">&nbsp;</span>
336
+ <span class="cline-any cline-neutral">&nbsp;</span>
337
+ <span class="cline-any cline-neutral">&nbsp;</span>
338
+ <span class="cline-any cline-neutral">&nbsp;</span>
339
+ <span class="cline-any cline-neutral">&nbsp;</span>
340
+ <span class="cline-any cline-neutral">&nbsp;</span>
341
+ <span class="cline-any cline-neutral">&nbsp;</span>
342
+ <span class="cline-any cline-neutral">&nbsp;</span>
343
+ <span class="cline-any cline-neutral">&nbsp;</span>
344
+ <span class="cline-any cline-neutral">&nbsp;</span>
345
+ <span class="cline-any cline-neutral">&nbsp;</span>
346
+ <span class="cline-any cline-yes">1x</span>
347
+ <span class="cline-any cline-neutral">&nbsp;</span>
348
+ <span class="cline-any cline-yes">1x</span>
349
+ <span class="cline-any cline-yes">1x</span>
350
+ <span class="cline-any cline-neutral">&nbsp;</span>
351
+ <span class="cline-any cline-yes">1x</span>
352
+ <span class="cline-any cline-neutral">&nbsp;</span>
353
+ <span class="cline-any cline-neutral">&nbsp;</span>
354
+ <span class="cline-any cline-neutral">&nbsp;</span>
355
+ <span class="cline-any cline-neutral">&nbsp;</span>
356
+ <span class="cline-any cline-neutral">&nbsp;</span>
357
+ <span class="cline-any cline-neutral">&nbsp;</span>
358
+ <span class="cline-any cline-neutral">&nbsp;</span>
359
+ <span class="cline-any cline-neutral">&nbsp;</span>
360
+ <span class="cline-any cline-neutral">&nbsp;</span>
361
+ <span class="cline-any cline-neutral">&nbsp;</span>
362
+ <span class="cline-any cline-neutral">&nbsp;</span>
363
+ <span class="cline-any cline-neutral">&nbsp;</span>
364
+ <span class="cline-any cline-neutral">&nbsp;</span>
365
+ <span class="cline-any cline-neutral">&nbsp;</span>
366
+ <span class="cline-any cline-neutral">&nbsp;</span>
367
+ <span class="cline-any cline-yes">1x</span>
368
+ <span class="cline-any cline-neutral">&nbsp;</span>
369
+ <span class="cline-any cline-yes">1x</span>
370
+ <span class="cline-any cline-yes">1x</span>
371
+ <span class="cline-any cline-neutral">&nbsp;</span>
372
+ <span class="cline-any cline-yes">1x</span>
373
+ <span class="cline-any cline-neutral">&nbsp;</span>
374
+ <span class="cline-any cline-neutral">&nbsp;</span>
375
+ <span class="cline-any cline-neutral">&nbsp;</span>
376
+ <span class="cline-any cline-neutral">&nbsp;</span>
377
+ <span class="cline-any cline-neutral">&nbsp;</span>
378
+ <span class="cline-any cline-neutral">&nbsp;</span>
379
+ <span class="cline-any cline-neutral">&nbsp;</span>
380
+ <span class="cline-any cline-neutral">&nbsp;</span>
381
+ <span class="cline-any cline-neutral">&nbsp;</span>
382
+ <span class="cline-any cline-neutral">&nbsp;</span>
383
+ <span class="cline-any cline-neutral">&nbsp;</span>
384
+ <span class="cline-any cline-neutral">&nbsp;</span>
385
+ <span class="cline-any cline-neutral">&nbsp;</span>
386
+ <span class="cline-any cline-neutral">&nbsp;</span>
387
+ <span class="cline-any cline-neutral">&nbsp;</span>
388
+ <span class="cline-any cline-yes">1x</span>
389
+ <span class="cline-any cline-yes">1x</span>
390
+ <span class="cline-any cline-yes">1x</span>
391
+ <span class="cline-any cline-neutral">&nbsp;</span>
392
+ <span class="cline-any cline-yes">1x</span>
393
+ <span class="cline-any cline-neutral">&nbsp;</span>
394
+ <span class="cline-any cline-neutral">&nbsp;</span>
395
+ <span class="cline-any cline-neutral">&nbsp;</span>
396
+ <span class="cline-any cline-neutral">&nbsp;</span>
397
+ <span class="cline-any cline-neutral">&nbsp;</span>
398
+ <span class="cline-any cline-neutral">&nbsp;</span>
399
+ <span class="cline-any cline-neutral">&nbsp;</span>
400
+ <span class="cline-any cline-neutral">&nbsp;</span>
401
+ <span class="cline-any cline-neutral">&nbsp;</span>
402
+ <span class="cline-any cline-neutral">&nbsp;</span>
403
+ <span class="cline-any cline-neutral">&nbsp;</span>
404
+ <span class="cline-any cline-neutral">&nbsp;</span>
405
+ <span class="cline-any cline-neutral">&nbsp;</span>
406
+ <span class="cline-any cline-neutral">&nbsp;</span>
407
+ <span class="cline-any cline-neutral">&nbsp;</span>
408
+ <span class="cline-any cline-neutral">&nbsp;</span>
409
+ <span class="cline-any cline-neutral">&nbsp;</span>
410
+ <span class="cline-any cline-neutral">&nbsp;</span>
411
+ <span class="cline-any cline-neutral">&nbsp;</span>
412
+ <span class="cline-any cline-neutral">&nbsp;</span>
413
+ <span class="cline-any cline-yes">1x</span>
414
+ <span class="cline-any cline-neutral">&nbsp;</span>
415
+ <span class="cline-any cline-neutral">&nbsp;</span>
416
+ <span class="cline-any cline-yes">1x</span>
417
+ <span class="cline-any cline-yes">1x</span>
418
+ <span class="cline-any cline-neutral">&nbsp;</span>
419
+ <span class="cline-any cline-yes">1x</span>
420
+ <span class="cline-any cline-neutral">&nbsp;</span>
421
+ <span class="cline-any cline-neutral">&nbsp;</span>
422
+ <span class="cline-any cline-neutral">&nbsp;</span>
423
+ <span class="cline-any cline-neutral">&nbsp;</span>
424
+ <span class="cline-any cline-neutral">&nbsp;</span></td><td class="text"><pre class="prettyprint lang-js">import { Client } from "../Client";
425
+ import { FACTOR_API_AREA, FACTOR_API_PATH, FACTOR_API_TYPES, FACTOR_API_UNITS, GET, POST, SEARCH_API_AREA, SEARCH_API_PATH } from "../Constants";
426
+ import { FactorRequest, SearchRequest } from "../interfaces/Api";
427
+ import { AreaResponse } from "../interfaces/response/AreaResponse";
428
+ import { FactorResponse } from "../interfaces/response/FactorResponse";
429
+ import { SearchResponse } from "../interfaces/response/SearchResponse";
430
+ import { TypeResponse } from "../interfaces/response/TypeResponse";
431
+ import { UnitResponse } from "../interfaces/response/UnitResponse";
432
+ import { makeApiRequest } from "../request";
433
+ &nbsp;
434
+ /**
435
+ * Retrieves a factor details by making a POST request to the factor API endpoint.
436
+ *
437
+ * @export
438
+ * @param {FactorRequest} payload - The factor request data to be sent to the API
439
+ * @return {Promise&lt;FactorResponse&gt;} A promise that resolves to the FactorResponse returned by the API
440
+ * @throws {Error} May throw an error if the API request fails
441
+ *
442
+ * @example
443
+ * const factorRequest = {
444
+ "activity": {
445
+ "factorId": 12345
446
+ }
447
+ };
448
+
449
+ OR
450
+ &nbsp;
451
+ const factorRequest = {
452
+ "time" : {
453
+ "date": "2025-01-04"
454
+ },
455
+ "location": {
456
+ "country": "usa",
457
+ "stateProvince": "new york"
458
+ },
459
+ "activity": {
460
+ "type":"natural gas"
461
+ },
462
+ "includeDetails": true
463
+ };
464
+ * const factor = await retrieveFactor(factorRequest);
465
+ */
466
+ &nbsp;
467
+ export async function retrieveFactor(
468
+ payload: FactorRequest
469
+ ): Promise&lt;FactorResponse&gt; {
470
+ const client = Client.getInstance();
471
+ const url = client.getDomain() + FACTOR_API_PATH;
472
+ &nbsp;
473
+ return makeApiRequest&lt;FactorResponse&gt;({
474
+ method: POST,
475
+ url,
476
+ data: payload,
477
+ });
478
+ }
479
+ &nbsp;
480
+ &nbsp;
481
+ /**
482
+ * Performs a search operation by making a POST request to the search API endpoint.
483
+ *
484
+ * @export
485
+ * @param {SearchRequest} payload - The search request data to be sent to the API
486
+ * @return {Promise&lt;SearchResponse&gt;} A promise that resolves to the search results returned by the API
487
+ * @throws {Error} May throw an error if the API request fails
488
+ *
489
+ * @example
490
+ * const searchRequest = {
491
+ "time":{
492
+ "date": "2020-06-10"
493
+ },
494
+ "activity": {
495
+ "search" : "travel"},
496
+ "location": {
497
+ "country": "USA"
498
+ }
499
+ };
500
+ * const results = await search(searchRequest);
501
+ */
502
+ export async function search(
503
+ payload: SearchRequest
504
+ ): Promise&lt;SearchResponse&gt; {
505
+ const client = Client.getInstance();
506
+ const url = client.getDomain() + SEARCH_API_PATH;
507
+ &nbsp;
508
+ return makeApiRequest&lt;SearchResponse&gt;({
509
+ method: POST,
510
+ url,
511
+ data: payload,
512
+ });
513
+ }
514
+ &nbsp;
515
+ /**
516
+ * Retrieves available emission factor types by making a GET request to the API endpoint.
517
+ *
518
+ * @export
519
+ * @return {Promise&lt;TypeResponse&gt;} A promise that resolves to a TypeResponse containing the available emission factor types
520
+ * @throws {Error} May throw an error if the API request fails
521
+ *
522
+ * @example
523
+ * const types = await getTypes();
524
+ */
525
+ export async function getTypes(
526
+ ): Promise&lt;TypeResponse&gt; {
527
+ const client = Client.getInstance();
528
+ const url = client.getDomain() + FACTOR_API_TYPES;
529
+ &nbsp;
530
+ return makeApiRequest&lt;TypeResponse&gt;({
531
+ method: GET,
532
+ url
533
+ });
534
+ }
535
+ &nbsp;
536
+ /**
537
+ * Retrieves information about geographical areas supported by the factor search API.
538
+ *
539
+ * @export
540
+ * @return {Promise&lt;AreaResponse&gt;} A promise that resolves to an AreaResponse containing the supported geographical areas
541
+ * @throws {Error} May throw an error if the API request fails
542
+ *
543
+ * @example
544
+ * const areas = await getSearchArea();
545
+ */
546
+ export async function getSearchArea(
547
+ ): Promise&lt;AreaResponse&gt; {
548
+ const client = Client.getInstance();
549
+ const url = client.getDomain() + SEARCH_API_AREA;
550
+ &nbsp;
551
+ return makeApiRequest&lt;AreaResponse&gt;({
552
+ method: GET,
553
+ url
554
+ });
555
+ }
556
+ &nbsp;
557
+ /**
558
+ * Retrieves information about geographical areas supported by the factor API.
559
+ *
560
+ * @export
561
+ * @return {Promise&lt;AreaResponse&gt;} A promise that resolves to an AreaResponse containing the supported geographical areas
562
+ * @throws {Error} May throw an error if the API request fails
563
+ *
564
+ * @example
565
+ * const areas = await getArea();
566
+ */
567
+ export async function getArea(): Promise&lt;AreaResponse&gt; {
568
+ const client = Client.getInstance();
569
+ const url = client.getDomain() + FACTOR_API_AREA;
570
+ &nbsp;
571
+ return makeApiRequest&lt;AreaResponse&gt;({
572
+ method: GET,
573
+ url
574
+ });
575
+ }
576
+ &nbsp;
577
+ /**
578
+ * Retrieves available units for a specific emission factor type.
579
+ *
580
+ * @export
581
+ * @param {string} type - The emission factor type to get units for (e.g., "Natural Gas - Scope 3:AAA")
582
+ * @return {Promise&lt;UnitResponse&gt;} A promise that resolves to a UnitResponse containing the available units
583
+ * @throws {Error} May throw an error if the API request fails
584
+ *
585
+ * @example
586
+ * // Get units for the "Natural Gas - Scope 3:AAA" emission factor type with subtype
587
+ * const units = await getUnits("Natural Gas - Scope 3:AAA");
588
+ &nbsp;
589
+ * // Get units for the "HFC-263fb" emission factor type without subtype
590
+ * const units = await getUnits("HFC-263fb");
591
+ */
592
+ export async function getUnits(
593
+ type : string
594
+ ): Promise&lt;UnitResponse&gt; {
595
+ const client = Client.getInstance();
596
+ const url = client.getDomain() + FACTOR_API_UNITS;
597
+ &nbsp;
598
+ return makeApiRequest&lt;UnitResponse&gt;({
599
+ method: GET,
600
+ url,
601
+ params : { type }
602
+ });
603
+ }</pre></td></tr></table></pre>
604
+
605
+ <div class='push'></div><!-- for sticky footer -->
606
+ </div><!-- /wrapper -->
607
+ <div class='footer quiet pad2 space-top1 center small'>
608
+ Code coverage generated by
609
+ <a href="https://istanbul.js.org/" target="_blank" rel="noopener noreferrer">istanbul</a>
610
+ at 2025-12-23T04:53:24.226Z
611
+ </div>
612
+ <script src="../../prettify.js"></script>
613
+ <script>
614
+ window.onload = function () {
615
+ prettyPrint();
616
+ };
617
+ </script>
618
+ <script src="../../sorter.js"></script>
619
+ <script src="../../block-navigation.js"></script>
620
+ </body>
621
+ </html>
622
+