@ndustrial/contxt-sdk 5.5.7 → 5.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (230) hide show
  1. package/.nvmrc +1 -1
  2. package/eslint.config.mjs +44 -0
  3. package/esm/bus/channels.js +1883 -216
  4. package/esm/bus/channels.js.map +1 -1
  5. package/esm/bus/index.browser.js +218 -37
  6. package/esm/bus/index.browser.js.map +1 -1
  7. package/esm/bus/index.js +906 -94
  8. package/esm/bus/index.js.map +1 -1
  9. package/esm/bus/webSocketConnection.browser.js +86 -12
  10. package/esm/bus/webSocketConnection.browser.js.map +1 -1
  11. package/esm/bus/webSocketConnection.js +2464 -332
  12. package/esm/bus/webSocketConnection.js.map +1 -1
  13. package/esm/config/audiences.js +37 -1
  14. package/esm/config/audiences.js.map +1 -1
  15. package/esm/config/defaults.js +37 -1
  16. package/esm/config/defaults.js.map +1 -1
  17. package/esm/config/index.js +1622 -203
  18. package/esm/config/index.js.map +1 -1
  19. package/esm/coordinator/applications.js +1019 -172
  20. package/esm/coordinator/applications.js.map +1 -1
  21. package/esm/coordinator/consent.js +603 -76
  22. package/esm/coordinator/consent.js.map +1 -1
  23. package/esm/coordinator/edgeNodes.js +520 -40
  24. package/esm/coordinator/edgeNodes.js.map +1 -1
  25. package/esm/coordinator/index.js +811 -54
  26. package/esm/coordinator/index.js.map +1 -1
  27. package/esm/coordinator/organizations.js +533 -60
  28. package/esm/coordinator/organizations.js.map +1 -1
  29. package/esm/coordinator/permissions.js +914 -107
  30. package/esm/coordinator/permissions.js.map +1 -1
  31. package/esm/coordinator/roles.js +2146 -258
  32. package/esm/coordinator/roles.js.map +1 -1
  33. package/esm/coordinator/users.js +3427 -484
  34. package/esm/coordinator/users.js.map +1 -1
  35. package/esm/events/index.js +2301 -393
  36. package/esm/events/index.js.map +1 -1
  37. package/esm/files/index.js +2053 -410
  38. package/esm/files/index.js.map +1 -1
  39. package/esm/index.js +1002 -148
  40. package/esm/index.js.map +1 -1
  41. package/esm/iot/feedTypes.js +188 -25
  42. package/esm/iot/feedTypes.js.map +1 -1
  43. package/esm/iot/feeds.js +420 -59
  44. package/esm/iot/feeds.js.map +1 -1
  45. package/esm/iot/fieldCategories.js +1172 -195
  46. package/esm/iot/fieldCategories.js.map +1 -1
  47. package/esm/iot/fieldGroupings.js +1689 -255
  48. package/esm/iot/fieldGroupings.js.map +1 -1
  49. package/esm/iot/fields.js +254 -28
  50. package/esm/iot/fields.js.map +1 -1
  51. package/esm/iot/index.js +212 -34
  52. package/esm/iot/index.js.map +1 -1
  53. package/esm/iot/outputs.js +320 -31
  54. package/esm/iot/outputs.js.map +1 -1
  55. package/esm/nionic/index.js +1097 -97
  56. package/esm/nionic/index.js.map +1 -1
  57. package/esm/request.js +1313 -219
  58. package/esm/request.js.map +1 -1
  59. package/esm/sessionTypes/auth0WebAuth.js +3395 -409
  60. package/esm/sessionTypes/auth0WebAuth.js.map +1 -1
  61. package/esm/sessionTypes/index.js +213 -22
  62. package/esm/sessionTypes/index.js.map +1 -1
  63. package/esm/sessionTypes/machineAuth.js +1314 -144
  64. package/esm/sessionTypes/machineAuth.js.map +1 -1
  65. package/esm/sessionTypes/passwordGrantAuth.js +1060 -145
  66. package/esm/sessionTypes/passwordGrantAuth.js.map +1 -1
  67. package/esm/utils/events/formatEventUpdateToServer.js +107 -4
  68. package/esm/utils/events/formatEventUpdateToServer.js.map +1 -1
  69. package/esm/utils/events/index.js +54 -2
  70. package/esm/utils/events/index.js.map +1 -1
  71. package/esm/utils/iot/formatOutputFieldDataFromServer.js +227 -14
  72. package/esm/utils/iot/formatOutputFieldDataFromServer.js.map +1 -1
  73. package/esm/utils/iot/index.js +56 -3
  74. package/esm/utils/iot/index.js.map +1 -1
  75. package/esm/utils/iot/parseOutputFieldNextPageUrlMetadata.js +207 -7
  76. package/esm/utils/iot/parseOutputFieldNextPageUrlMetadata.js.map +1 -1
  77. package/esm/utils/objects/createCaseChangeFn.js +449 -18
  78. package/esm/utils/objects/createCaseChangeFn.js.map +1 -1
  79. package/esm/utils/objects/index.js +56 -3
  80. package/esm/utils/objects/index.js.map +1 -1
  81. package/esm/utils/objects/map.js +520 -26
  82. package/esm/utils/objects/map.js.map +1 -1
  83. package/esm/utils/objects/toCamelCase.js +39 -3
  84. package/esm/utils/objects/toCamelCase.js.map +1 -1
  85. package/esm/utils/objects/toSnakeCase.js +39 -3
  86. package/esm/utils/objects/toSnakeCase.js.map +1 -1
  87. package/esm/utils/pagination/formatPaginatedDataFromServer.js +268 -11
  88. package/esm/utils/pagination/formatPaginatedDataFromServer.js.map +1 -1
  89. package/esm/utils/pagination/index.js +54 -2
  90. package/esm/utils/pagination/index.js.map +1 -1
  91. package/esm/utils/url/index.js +47 -2
  92. package/esm/utils/url/index.js.map +1 -1
  93. package/esm/utils/url/stringifyParams.js +176 -10
  94. package/esm/utils/url/stringifyParams.js.map +1 -1
  95. package/lib/bus/channels.js +1880 -223
  96. package/lib/bus/channels.js.map +1 -1
  97. package/lib/bus/index.browser.js +215 -43
  98. package/lib/bus/index.browser.js.map +1 -1
  99. package/lib/bus/index.js +903 -106
  100. package/lib/bus/index.js.map +1 -1
  101. package/lib/bus/webSocketConnection.browser.js +83 -15
  102. package/lib/bus/webSocketConnection.browser.js.map +1 -1
  103. package/lib/bus/webSocketConnection.js +2461 -339
  104. package/lib/bus/webSocketConnection.js.map +1 -1
  105. package/lib/config/audiences.js +33 -2
  106. package/lib/config/audiences.js.map +1 -1
  107. package/lib/config/defaults.js +33 -2
  108. package/lib/config/defaults.js.map +1 -1
  109. package/lib/config/index.js +1619 -212
  110. package/lib/config/index.js.map +1 -1
  111. package/lib/coordinator/applications.js +1016 -174
  112. package/lib/coordinator/applications.js.map +1 -1
  113. package/lib/coordinator/consent.js +600 -78
  114. package/lib/coordinator/consent.js.map +1 -1
  115. package/lib/coordinator/edgeNodes.js +517 -42
  116. package/lib/coordinator/edgeNodes.js.map +1 -1
  117. package/lib/coordinator/index.js +808 -78
  118. package/lib/coordinator/index.js.map +1 -1
  119. package/lib/coordinator/organizations.js +530 -62
  120. package/lib/coordinator/organizations.js.map +1 -1
  121. package/lib/coordinator/permissions.js +911 -109
  122. package/lib/coordinator/permissions.js.map +1 -1
  123. package/lib/coordinator/roles.js +2143 -260
  124. package/lib/coordinator/roles.js.map +1 -1
  125. package/lib/coordinator/users.js +3423 -489
  126. package/lib/coordinator/users.js.map +1 -1
  127. package/lib/events/index.js +2297 -404
  128. package/lib/events/index.js.map +1 -1
  129. package/lib/files/index.js +2050 -418
  130. package/lib/files/index.js.map +1 -1
  131. package/lib/index.js +999 -183
  132. package/lib/index.js.map +1 -1
  133. package/lib/iot/feedTypes.js +185 -27
  134. package/lib/iot/feedTypes.js.map +1 -1
  135. package/lib/iot/feeds.js +417 -61
  136. package/lib/iot/feeds.js.map +1 -1
  137. package/lib/iot/fieldCategories.js +1169 -203
  138. package/lib/iot/fieldCategories.js.map +1 -1
  139. package/lib/iot/fieldGroupings.js +1686 -263
  140. package/lib/iot/fieldGroupings.js.map +1 -1
  141. package/lib/iot/fields.js +251 -30
  142. package/lib/iot/fields.js.map +1 -1
  143. package/lib/iot/index.js +209 -55
  144. package/lib/iot/index.js.map +1 -1
  145. package/lib/iot/outputs.js +317 -34
  146. package/lib/iot/outputs.js.map +1 -1
  147. package/lib/nionic/index.js +1094 -98
  148. package/lib/nionic/index.js.map +1 -1
  149. package/lib/request.js +1310 -226
  150. package/lib/request.js.map +1 -1
  151. package/lib/sessionTypes/auth0WebAuth.js +3391 -421
  152. package/lib/sessionTypes/auth0WebAuth.js.map +1 -1
  153. package/lib/sessionTypes/index.js +209 -26
  154. package/lib/sessionTypes/index.js.map +1 -1
  155. package/lib/sessionTypes/machineAuth.js +1311 -151
  156. package/lib/sessionTypes/machineAuth.js.map +1 -1
  157. package/lib/sessionTypes/passwordGrantAuth.js +1057 -156
  158. package/lib/sessionTypes/passwordGrantAuth.js.map +1 -1
  159. package/lib/utils/events/formatEventUpdateToServer.js +102 -4
  160. package/lib/utils/events/formatEventUpdateToServer.js.map +1 -1
  161. package/lib/utils/events/index.js +51 -10
  162. package/lib/utils/events/index.js.map +1 -1
  163. package/lib/utils/iot/formatOutputFieldDataFromServer.js +224 -18
  164. package/lib/utils/iot/formatOutputFieldDataFromServer.js.map +1 -1
  165. package/lib/utils/iot/index.js +53 -15
  166. package/lib/utils/iot/index.js.map +1 -1
  167. package/lib/utils/iot/parseOutputFieldNextPageUrlMetadata.js +203 -13
  168. package/lib/utils/iot/parseOutputFieldNextPageUrlMetadata.js.map +1 -1
  169. package/lib/utils/objects/createCaseChangeFn.js +446 -25
  170. package/lib/utils/objects/createCaseChangeFn.js.map +1 -1
  171. package/lib/utils/objects/index.js +53 -15
  172. package/lib/utils/objects/index.js.map +1 -1
  173. package/lib/utils/objects/map.js +517 -33
  174. package/lib/utils/objects/map.js.map +1 -1
  175. package/lib/utils/objects/toCamelCase.js +36 -11
  176. package/lib/utils/objects/toCamelCase.js.map +1 -1
  177. package/lib/utils/objects/toSnakeCase.js +36 -11
  178. package/lib/utils/objects/toSnakeCase.js.map +1 -1
  179. package/lib/utils/pagination/formatPaginatedDataFromServer.js +265 -14
  180. package/lib/utils/pagination/formatPaginatedDataFromServer.js.map +1 -1
  181. package/lib/utils/pagination/index.js +51 -10
  182. package/lib/utils/pagination/index.js.map +1 -1
  183. package/lib/utils/url/index.js +44 -7
  184. package/lib/utils/url/index.js.map +1 -1
  185. package/lib/utils/url/stringifyParams.js +172 -18
  186. package/lib/utils/url/stringifyParams.js.map +1 -1
  187. package/package.json +32 -36
  188. package/src/bus/channels.js +6 -6
  189. package/src/bus/channels.spec.js +1 -1
  190. package/src/coordinator/applications.js +7 -7
  191. package/src/coordinator/applications.spec.js +1 -1
  192. package/src/coordinator/consent.js +3 -3
  193. package/src/coordinator/edgeNodes.js +3 -3
  194. package/src/coordinator/edgeNodes.spec.js +1 -1
  195. package/src/coordinator/organizations.js +4 -4
  196. package/src/coordinator/organizations.spec.js +1 -1
  197. package/src/coordinator/permissions.js +6 -6
  198. package/src/coordinator/permissions.spec.js +1 -1
  199. package/src/coordinator/roles.js +9 -9
  200. package/src/coordinator/roles.spec.js +1 -1
  201. package/src/coordinator/users.js +13 -13
  202. package/src/coordinator/users.spec.js +294 -294
  203. package/src/events/index.js +18 -18
  204. package/src/events/index.spec.js +3 -3
  205. package/src/files/index.js +9 -9
  206. package/src/files/index.spec.js +2 -2
  207. package/src/index.js +3 -1
  208. package/src/iot/feedTypes.js +2 -2
  209. package/src/iot/feeds.js +4 -4
  210. package/src/iot/feeds.spec.js +1 -1
  211. package/src/iot/fieldCategories.js +10 -10
  212. package/src/iot/fieldCategories.spec.js +2 -2
  213. package/src/iot/fieldGroupings.js +10 -10
  214. package/src/iot/fieldGroupings.spec.js +2 -2
  215. package/src/iot/fields.js +2 -2
  216. package/src/iot/fields.spec.js +1 -1
  217. package/src/iot/outputs.js +2 -2
  218. package/src/iot/outputs.spec.js +1 -1
  219. package/src/sessionTypes/auth0WebAuth.spec.js +1 -1
  220. package/src/utils/events/index.js +2 -1
  221. package/src/utils/iot/formatOutputFieldDataFromServer.js +5 -5
  222. package/src/utils/iot/formatOutputFieldDataFromServer.spec.js +2 -2
  223. package/src/utils/iot/index.js +2 -1
  224. package/src/utils/iot/parseOutputFieldNextPageUrlMetadata.js +3 -1
  225. package/src/utils/objects/index.js +2 -1
  226. package/src/utils/pagination/formatPaginatedDataFromServer.js +3 -3
  227. package/src/utils/pagination/formatPaginatedDataFromServer.spec.js +1 -1
  228. package/src/utils/pagination/index.js +2 -1
  229. package/support/mocharc.yml +1 -1
  230. package/.eslintrc +0 -24
@@ -1 +1 @@
1
- {"version":3,"sources":["iot/fieldCategories.js"],"names":["isPlainObject","toCamelCase","toSnakeCase","formatPaginatedDataFromServer","FieldCategories","sdk","request","baseUrl","_baseUrl","_request","_sdk","fieldCategory","requiredFields","i","length","field","Promise","reject","Error","formattedCategory","post","then","categoryId","delete","get","paginationOptions","params","fieldCategories","facilityId","update","formattedUpdate","excludeKeys","put"],"mappings":"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","file":"fieldCategories.js","sourcesContent":["import isPlainObject from 'lodash.isplainobject';\nimport { toCamelCase, toSnakeCase } from '../utils/objects';\nimport { formatPaginatedDataFromServer } from '../utils/pagination';\n\n/**\n * @typedef {Object} FieldCategory\n * @property {String} description\n * @property {String} id UUID\n * @property {String} name\n * @property {String} organizationId\n * @property {String} [parentCategoryId] UUID\n */\n\n/**\n * @typedef {Object} FieldCategoriesFromServer\n * @property {Object} _metadata Metadata about the pagination settings\n * @property {number} _metadata.offset Offset of records in subsequent queries\n * @property {number} _metadata.totalRecords Total number of asset types found\n * @property {FieldCategory[]} records\n */\n\n/**\n * Module that provides access to field category information\n *\n * @typicalname contxtSdk.iot.fieldCategories\n */\nclass FieldCategories {\n /**\n * @param {Object} sdk An instance of the SDK so the module can communicate\n * with other modules\n * @param {Object} request An instance of the request module tied to this\n * module's audience\n * @param {string} baseUrl The base URL provided by the parent module\n */\n constructor(sdk, request, baseUrl) {\n this._baseUrl = baseUrl;\n this._request = request;\n this._sdk = sdk;\n }\n\n /**\n * Create a field category\n *\n * API Endpoint: '/categories'\n * Method: POST\n *\n * @param {Object} fieldCategory\n * @param {string} fieldCategory.description\n * @param {string} fieldCategory.name\n * @param {string} fieldCategory.organizationId\n * @param {string} [fieldCategory.parentCategoryId]\n *\n * @returns {Promise}\n * @fulfill {FieldCategory} Information about the field category\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .create({\n * description: 'Compressors in Room 2',\n * name: 'Room 2',\n * organizationId: '8a3cb818-0889-4674-b871-7ceadaecd26a',\n * parentCategoryId: 'e9f8f89c-609c-4c83-8ebc-cea928af661e'\n * })\n * .then((fieldCategory) => console.log(fieldCategory))\n * .catch((err) => console.log(err));\n */\n create(fieldCategory) {\n const requiredFields = ['name', 'description', 'organizationId'];\n\n for (let i = 0; requiredFields.length > i; i++) {\n const field = requiredFields[i];\n if (!fieldCategory[field]) {\n return Promise.reject(\n new Error(`A ${field} is required to create a new field category.`)\n );\n }\n }\n\n const formattedCategory = toSnakeCase(fieldCategory);\n\n return this._request\n .post(`${this._baseUrl}/categories`, formattedCategory)\n .then((fieldCategory) => toCamelCase(fieldCategory));\n }\n\n /**\n * Deletes a field category\n *\n * API Endpoint: '/categories/:categoryId'\n * Method: DELETE\n *\n * @param {String} categoryId The UUID of a field category\n *\n * @returns {Promise}\n * @fulfill {undefined}\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .delete('b3dbaae3-25dd-475b-80dc-66296630a8d0');\n */\n delete(categoryId) {\n if (!categoryId) {\n return Promise.reject(\n new Error('A categoryId is required for deleting a field category.')\n );\n }\n\n return this._request.delete(`${this._baseUrl}/categories/${categoryId}`);\n }\n\n /**\n * Gets information about a field category\n *\n * API Endpoint: '/categories/:categoryId'\n * Method: GET\n *\n * @param {String} categoryId The UUID of a field category\n *\n * @returns {Promise}\n * @fulfill {FieldCategory} Information about the field category\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .get('b3dbaae3-25dd-475b-80dc-66296630a8d0')\n * .then((fieldCategory) => console.log(fieldCategory))\n * .catch((err) => console.log(err));\n */\n get(categoryId) {\n if (!categoryId) {\n return Promise.reject(\n new Error(\n 'A categoryId is required for getting information about a field category.'\n )\n );\n }\n\n return this._request\n .get(`${this._baseUrl}/categories/${categoryId}`)\n .then((fieldCategory) => toCamelCase(fieldCategory));\n }\n\n /**\n * Get a listing of all field categories available to the user.\n *\n * API Endpoint: '/categories'\n * Method: GET\n *\n * @param {PaginationOptions} [paginationOptions]\n *\n * @returns {Promise}\n * @fulfill {FieldCategoriesFromServer} Information about the field categories\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .getAll()\n * .then((fieldCategories) => console.log(fieldCategories))\n * .catch((err) => console.log(err));\n */\n getAll(paginationOptions) {\n return this._request\n .get(`${this._baseUrl}/categories`, {\n params: toSnakeCase(paginationOptions)\n })\n .then((fieldCategories) =>\n formatPaginatedDataFromServer(fieldCategories)\n );\n }\n\n /**\n * Get a listing of all field categories for a given facility ID.\n *\n * API Endpoint: '/facilities/:facilityId/categories'\n * Method: GET\n *\n * @param {String} facilityId\n *\n * @returns {Promise}\n * @fulfill {FieldCategory[]} Information about the field categories\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .getAllByFacility(187)\n * .then((fieldCategories) => console.log(fieldCategories))\n * .catch((err) => console.log(err));\n */\n getAllByFacility(facilityId) {\n if (!facilityId) {\n return Promise.reject(\n new Error(\n 'A facilityId is required for getting field categories by facility.'\n )\n );\n }\n\n return this._request\n .get(`${this._baseUrl}/facilities/${facilityId}/categories`)\n .then((fieldCategories) => toCamelCase(fieldCategories));\n }\n\n /**\n * Updates information about a field category\n *\n * API Endpoint: '/categories/:categoryId'\n * Method: PUT\n *\n * @param {String} categoryId The UUID of a field category\n * @param {Object} update\n * @param {string} [update.description]\n * @param {string} [update.name]\n * @param {string} [update.parentCategoryId]\n *\n * @returns {Promise}\n * @fulfill {FieldCategory} Information about the field category\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .update('b3dbaae3-25dd-475b-80dc-66296630a8d0', {\n * description: 'Power usage from all compressors in Room 2',\n * parentCategoryId: 'e9f8f89c-609c-4c83-8ebc-cea928af661e',\n * name: 'Room 2 Compressors'\n * })\n * .then((fieldCategory) => console.log(fieldCategory))\n * .catch((err) => console.log(err));\n */\n update(categoryId, update) {\n if (!categoryId) {\n return Promise.reject(\n new Error(\n 'A categoryId is required for updating information about a field category.'\n )\n );\n }\n\n if (!update) {\n return Promise.reject(\n new Error('An update is required to update a field category')\n );\n }\n\n if (!isPlainObject(update)) {\n return Promise.reject(\n new Error(\n 'The field category update must be a well-formed object with the data you wish to update.'\n )\n );\n }\n\n const formattedUpdate = toSnakeCase(update, {\n excludeKeys: ['id', 'organizationId']\n });\n\n return this._request\n .put(`${this._baseUrl}/categories/${categoryId}`, formattedUpdate)\n .then((fieldCategory) => toCamelCase(fieldCategory));\n }\n}\n\nexport default FieldCategories;\n"]}
1
+ {"version":3,"file":"fieldCategories.js","names":["_lodash","_interopRequireDefault","require","_objects","_pagination","e","__esModule","default","cov_23vzckr7l5","path","hash","global","Function","gcv","coverageData","statementMap","start","line","column","end","fnMap","name","decl","loc","branchMap","type","locations","undefined","s","f","b","_coverageSchema","coverage","actualCoverage","FieldCategories","constructor","sdk","request","baseUrl","_baseUrl","_request","_sdk","create","fieldCategory","requiredFields","i","length","field","Promise","reject","Error","formattedCategory","ObjectUtils","toSnakeCase","post","then","toCamelCase","delete","categoryId","get","getAll","paginationOptions","params","fieldCategories","PaginationUtils","formatPaginatedDataFromServer","getAllByFacility","facilityId","update","isPlainObject","formattedUpdate","excludeKeys","put","_default","exports"],"sources":["iot/fieldCategories.js"],"sourcesContent":["import isPlainObject from 'lodash.isplainobject';\nimport ObjectUtils from '../utils/objects';\nimport PaginationUtils from '../utils/pagination';\n\n/**\n * @typedef {Object} FieldCategory\n * @property {String} description\n * @property {String} id UUID\n * @property {String} name\n * @property {String} organizationId\n * @property {String} [parentCategoryId] UUID\n */\n\n/**\n * @typedef {Object} FieldCategoriesFromServer\n * @property {Object} _metadata Metadata about the pagination settings\n * @property {number} _metadata.offset Offset of records in subsequent queries\n * @property {number} _metadata.totalRecords Total number of asset types found\n * @property {FieldCategory[]} records\n */\n\n/**\n * Module that provides access to field category information\n *\n * @typicalname contxtSdk.iot.fieldCategories\n */\nclass FieldCategories {\n /**\n * @param {Object} sdk An instance of the SDK so the module can communicate\n * with other modules\n * @param {Object} request An instance of the request module tied to this\n * module's audience\n * @param {string} baseUrl The base URL provided by the parent module\n */\n constructor(sdk, request, baseUrl) {\n this._baseUrl = baseUrl;\n this._request = request;\n this._sdk = sdk;\n }\n\n /**\n * Create a field category\n *\n * API Endpoint: '/categories'\n * Method: POST\n *\n * @param {Object} fieldCategory\n * @param {string} fieldCategory.description\n * @param {string} fieldCategory.name\n * @param {string} fieldCategory.organizationId\n * @param {string} [fieldCategory.parentCategoryId]\n *\n * @returns {Promise}\n * @fulfill {FieldCategory} Information about the field category\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .create({\n * description: 'Compressors in Room 2',\n * name: 'Room 2',\n * organizationId: '8a3cb818-0889-4674-b871-7ceadaecd26a',\n * parentCategoryId: 'e9f8f89c-609c-4c83-8ebc-cea928af661e'\n * })\n * .then((fieldCategory) => console.log(fieldCategory))\n * .catch((err) => console.log(err));\n */\n create(fieldCategory) {\n const requiredFields = ['name', 'description', 'organizationId'];\n\n for (let i = 0; requiredFields.length > i; i++) {\n const field = requiredFields[i];\n if (!fieldCategory[field]) {\n return Promise.reject(\n new Error(`A ${field} is required to create a new field category.`)\n );\n }\n }\n\n const formattedCategory = ObjectUtils.toSnakeCase(fieldCategory);\n\n return this._request\n .post(`${this._baseUrl}/categories`, formattedCategory)\n .then((fieldCategory) => ObjectUtils.toCamelCase(fieldCategory));\n }\n\n /**\n * Deletes a field category\n *\n * API Endpoint: '/categories/:categoryId'\n * Method: DELETE\n *\n * @param {String} categoryId The UUID of a field category\n *\n * @returns {Promise}\n * @fulfill {undefined}\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .delete('b3dbaae3-25dd-475b-80dc-66296630a8d0');\n */\n delete(categoryId) {\n if (!categoryId) {\n return Promise.reject(\n new Error('A categoryId is required for deleting a field category.')\n );\n }\n\n return this._request.delete(`${this._baseUrl}/categories/${categoryId}`);\n }\n\n /**\n * Gets information about a field category\n *\n * API Endpoint: '/categories/:categoryId'\n * Method: GET\n *\n * @param {String} categoryId The UUID of a field category\n *\n * @returns {Promise}\n * @fulfill {FieldCategory} Information about the field category\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .get('b3dbaae3-25dd-475b-80dc-66296630a8d0')\n * .then((fieldCategory) => console.log(fieldCategory))\n * .catch((err) => console.log(err));\n */\n get(categoryId) {\n if (!categoryId) {\n return Promise.reject(\n new Error(\n 'A categoryId is required for getting information about a field category.'\n )\n );\n }\n\n return this._request\n .get(`${this._baseUrl}/categories/${categoryId}`)\n .then((fieldCategory) => ObjectUtils.toCamelCase(fieldCategory));\n }\n\n /**\n * Get a listing of all field categories available to the user.\n *\n * API Endpoint: '/categories'\n * Method: GET\n *\n * @param {PaginationOptions} [paginationOptions]\n *\n * @returns {Promise}\n * @fulfill {FieldCategoriesFromServer} Information about the field categories\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .getAll()\n * .then((fieldCategories) => console.log(fieldCategories))\n * .catch((err) => console.log(err));\n */\n getAll(paginationOptions) {\n return this._request\n .get(`${this._baseUrl}/categories`, {\n params: ObjectUtils.toSnakeCase(paginationOptions)\n })\n .then((fieldCategories) =>\n PaginationUtils.formatPaginatedDataFromServer(fieldCategories)\n );\n }\n\n /**\n * Get a listing of all field categories for a given facility ID.\n *\n * API Endpoint: '/facilities/:facilityId/categories'\n * Method: GET\n *\n * @param {String} facilityId\n *\n * @returns {Promise}\n * @fulfill {FieldCategory[]} Information about the field categories\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .getAllByFacility(187)\n * .then((fieldCategories) => console.log(fieldCategories))\n * .catch((err) => console.log(err));\n */\n getAllByFacility(facilityId) {\n if (!facilityId) {\n return Promise.reject(\n new Error(\n 'A facilityId is required for getting field categories by facility.'\n )\n );\n }\n\n return this._request\n .get(`${this._baseUrl}/facilities/${facilityId}/categories`)\n .then((fieldCategories) => ObjectUtils.toCamelCase(fieldCategories));\n }\n\n /**\n * Updates information about a field category\n *\n * API Endpoint: '/categories/:categoryId'\n * Method: PUT\n *\n * @param {String} categoryId The UUID of a field category\n * @param {Object} update\n * @param {string} [update.description]\n * @param {string} [update.name]\n * @param {string} [update.parentCategoryId]\n *\n * @returns {Promise}\n * @fulfill {FieldCategory} Information about the field category\n * @reject {Error}\n *\n * @example\n * contxtSdk.iot.fieldCategories\n * .update('b3dbaae3-25dd-475b-80dc-66296630a8d0', {\n * description: 'Power usage from all compressors in Room 2',\n * parentCategoryId: 'e9f8f89c-609c-4c83-8ebc-cea928af661e',\n * name: 'Room 2 Compressors'\n * })\n * .then((fieldCategory) => console.log(fieldCategory))\n * .catch((err) => console.log(err));\n */\n update(categoryId, update) {\n if (!categoryId) {\n return Promise.reject(\n new Error(\n 'A categoryId is required for updating information about a field category.'\n )\n );\n }\n\n if (!update) {\n return Promise.reject(\n new Error('An update is required to update a field category')\n );\n }\n\n if (!isPlainObject(update)) {\n return Promise.reject(\n new Error(\n 'The field category update must be a well-formed object with the data you wish to update.'\n )\n );\n }\n\n const formattedUpdate = ObjectUtils.toSnakeCase(update, {\n excludeKeys: ['id', 'organizationId']\n });\n\n return this._request\n .put(`${this._baseUrl}/categories/${categoryId}`, formattedUpdate)\n .then((fieldCategory) => ObjectUtils.toCamelCase(fieldCategory));\n }\n}\n\nexport default FieldCategories;\n"],"mappings":";;;;;;;AAAA,IAAAA,OAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,QAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,WAAA,GAAAH,sBAAA,CAAAC,OAAA;AAAkD,SAAAD,uBAAAI,CAAA,WAAAA,CAAA,IAAAA,CAAA,CAAAC,UAAA,GAAAD,CAAA,KAAAE,OAAA,EAAAF,CAAA;AAAA,SAAAG,eAAA;EAAA,IAAAC,IAAA;EAAA,IAAAC,IAAA;EAAA,IAAAC,MAAA,OAAAC,QAAA;EAAA,IAAAC,GAAA;EAAA,IAAAC,YAAA;IAAAL,IAAA;IAAAM,YAAA;MAAA;QAAAC,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAAA;MAAA;MAAA;QAAAF,KAAA;UAAAC,IAAA;UAAAC,MAAA;QAAA;QAAAC,GAAA;UAAAF,IAAA;UAAAC,MAAA;QAA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","ignoreList":[]}