@loaders.gl/i3s 4.0.0-beta.2 → 4.0.0-beta.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 (207) hide show
  1. package/dist/arcgis-webscene-loader.d.ts.map +1 -0
  2. package/dist/{esm/arcgis-webscene-loader.js → arcgis-webscene-loader.js} +2 -2
  3. package/dist/arcgis-webscene-loader.js.map +1 -0
  4. package/dist/dist.dev.js +14694 -0
  5. package/dist/i3s-attribute-loader.d.ts.map +1 -0
  6. package/dist/{esm/i3s-attribute-loader.js → i3s-attribute-loader.js} +3 -3
  7. package/dist/i3s-attribute-loader.js.map +1 -0
  8. package/dist/i3s-building-scene-layer-loader.d.ts.map +1 -0
  9. package/dist/{esm/i3s-building-scene-layer-loader.js → i3s-building-scene-layer-loader.js} +2 -2
  10. package/dist/i3s-building-scene-layer-loader.js.map +1 -0
  11. package/dist/i3s-content-loader.d.ts.map +1 -0
  12. package/dist/{esm/i3s-content-loader.js → i3s-content-loader.js} +2 -2
  13. package/dist/i3s-content-loader.js.map +1 -0
  14. package/dist/i3s-content-worker-node.js +300 -155
  15. package/dist/i3s-content-worker-node.js.map +4 -4
  16. package/dist/i3s-content-worker.js +1337 -483
  17. package/dist/i3s-loader.d.ts.map +1 -0
  18. package/dist/{esm/i3s-loader.js → i3s-loader.js} +4 -4
  19. package/dist/i3s-loader.js.map +1 -0
  20. package/dist/i3s-node-page-loader.d.ts.map +1 -0
  21. package/dist/{esm/i3s-node-page-loader.js → i3s-node-page-loader.js} +1 -1
  22. package/dist/i3s-node-page-loader.js.map +1 -0
  23. package/dist/{src/i3s-slpk-loader.d.ts → i3s-slpk-loader.d.ts} +3 -1
  24. package/dist/i3s-slpk-loader.d.ts.map +1 -0
  25. package/dist/i3s-slpk-loader.js +19 -0
  26. package/dist/i3s-slpk-loader.js.map +1 -0
  27. package/dist/index.cjs +1587 -0
  28. package/dist/{src/index.d.ts → index.d.ts} +2 -1
  29. package/dist/index.d.ts.map +1 -0
  30. package/dist/index.js +10 -0
  31. package/dist/index.js.map +1 -0
  32. package/dist/lib/helpers/i3s-nodepages-tiles.d.ts.map +1 -0
  33. package/dist/{esm/lib → lib}/helpers/i3s-nodepages-tiles.js +16 -17
  34. package/dist/lib/helpers/i3s-nodepages-tiles.js.map +1 -0
  35. package/dist/lib/parsers/constants.d.ts.map +1 -0
  36. package/dist/{esm/lib → lib}/parsers/constants.js +2 -2
  37. package/dist/lib/parsers/constants.js.map +1 -0
  38. package/dist/lib/parsers/parse-arcgis-webscene.d.ts.map +1 -0
  39. package/dist/lib/parsers/parse-arcgis-webscene.js.map +1 -0
  40. package/dist/lib/parsers/parse-i3s-attribute.d.ts.map +1 -0
  41. package/dist/{esm/lib → lib}/parsers/parse-i3s-attribute.js +1 -1
  42. package/dist/lib/parsers/parse-i3s-attribute.js.map +1 -0
  43. package/dist/lib/parsers/parse-i3s-building-scene-layer.d.ts.map +1 -0
  44. package/dist/{esm/lib → lib}/parsers/parse-i3s-building-scene-layer.js +1 -1
  45. package/dist/lib/parsers/parse-i3s-building-scene-layer.js.map +1 -0
  46. package/dist/lib/parsers/parse-i3s-tile-content.d.ts.map +1 -0
  47. package/dist/{esm/lib → lib}/parsers/parse-i3s-tile-content.js +6 -5
  48. package/dist/lib/parsers/parse-i3s-tile-content.js.map +1 -0
  49. package/dist/lib/parsers/parse-i3s.d.ts.map +1 -0
  50. package/dist/{esm/lib → lib}/parsers/parse-i3s.js +6 -6
  51. package/dist/lib/parsers/parse-i3s.js.map +1 -0
  52. package/dist/{src/lib → lib}/parsers/parse-slpk/parse-slpk.d.ts +1 -1
  53. package/dist/lib/parsers/parse-slpk/parse-slpk.d.ts.map +1 -0
  54. package/dist/{esm/lib → lib}/parsers/parse-slpk/parse-slpk.js +9 -11
  55. package/dist/lib/parsers/parse-slpk/parse-slpk.js.map +1 -0
  56. package/dist/{src/lib → lib}/parsers/parse-slpk/slpk-archieve.d.ts +10 -7
  57. package/dist/lib/parsers/parse-slpk/slpk-archieve.d.ts.map +1 -0
  58. package/dist/{esm/lib → lib}/parsers/parse-slpk/slpk-archieve.js +21 -21
  59. package/dist/lib/parsers/parse-slpk/slpk-archieve.js.map +1 -0
  60. package/dist/lib/utils/convert-i3s-obb-to-mbs.d.ts.map +1 -0
  61. package/dist/lib/utils/convert-i3s-obb-to-mbs.js.map +1 -0
  62. package/dist/lib/utils/customize-/321/201olors.d.ts.map +1 -0
  63. package/dist/{esm/lib → lib}/utils/customize-/321/201olors.js +2 -2
  64. package/dist/lib/utils/customize-/321/201olors.js.map +1 -0
  65. package/dist/lib/utils/url-utils.d.ts.map +1 -0
  66. package/dist/{esm/lib → lib}/utils/url-utils.js +3 -3
  67. package/dist/lib/utils/url-utils.js.map +1 -0
  68. package/dist/types.d.ts.map +1 -0
  69. package/dist/types.js.map +1 -0
  70. package/dist/workers/i3s-content-worker-node.d.ts.map +1 -0
  71. package/dist/{esm/workers → workers}/i3s-content-worker-node.js +1 -1
  72. package/dist/workers/i3s-content-worker-node.js.map +1 -0
  73. package/dist/workers/i3s-content-worker.d.ts.map +1 -0
  74. package/dist/workers/i3s-content-worker.js +4 -0
  75. package/dist/workers/i3s-content-worker.js.map +1 -0
  76. package/package.json +25 -17
  77. package/src/i3s-slpk-loader.ts +9 -18
  78. package/src/index.ts +3 -1
  79. package/src/lib/parsers/parse-i3s-tile-content.ts +2 -1
  80. package/src/lib/parsers/parse-slpk/parse-slpk.ts +13 -13
  81. package/src/lib/parsers/parse-slpk/slpk-archieve.ts +27 -19
  82. package/dist/dist.min.js +0 -15742
  83. package/dist/es5/arcgis-webscene-loader.js +0 -40
  84. package/dist/es5/arcgis-webscene-loader.js.map +0 -1
  85. package/dist/es5/bundle.js +0 -6
  86. package/dist/es5/bundle.js.map +0 -1
  87. package/dist/es5/i3s-attribute-loader.js +0 -195
  88. package/dist/es5/i3s-attribute-loader.js.map +0 -1
  89. package/dist/es5/i3s-building-scene-layer-loader.js +0 -46
  90. package/dist/es5/i3s-building-scene-layer-loader.js.map +0 -1
  91. package/dist/es5/i3s-content-loader.js +0 -56
  92. package/dist/es5/i3s-content-loader.js.map +0 -1
  93. package/dist/es5/i3s-loader.js +0 -193
  94. package/dist/es5/i3s-loader.js.map +0 -1
  95. package/dist/es5/i3s-node-page-loader.js +0 -41
  96. package/dist/es5/i3s-node-page-loader.js.map +0 -1
  97. package/dist/es5/i3s-slpk-loader.js +0 -48
  98. package/dist/es5/i3s-slpk-loader.js.map +0 -1
  99. package/dist/es5/index.js +0 -75
  100. package/dist/es5/index.js.map +0 -1
  101. package/dist/es5/lib/helpers/i3s-nodepages-tiles.js +0 -316
  102. package/dist/es5/lib/helpers/i3s-nodepages-tiles.js.map +0 -1
  103. package/dist/es5/lib/parsers/constants.js +0 -71
  104. package/dist/es5/lib/parsers/constants.js.map +0 -1
  105. package/dist/es5/lib/parsers/parse-arcgis-webscene.js +0 -158
  106. package/dist/es5/lib/parsers/parse-arcgis-webscene.js.map +0 -1
  107. package/dist/es5/lib/parsers/parse-i3s-attribute.js +0 -76
  108. package/dist/es5/lib/parsers/parse-i3s-attribute.js.map +0 -1
  109. package/dist/es5/lib/parsers/parse-i3s-building-scene-layer.js +0 -65
  110. package/dist/es5/lib/parsers/parse-i3s-building-scene-layer.js.map +0 -1
  111. package/dist/es5/lib/parsers/parse-i3s-tile-content.js +0 -513
  112. package/dist/es5/lib/parsers/parse-i3s-tile-content.js.map +0 -1
  113. package/dist/es5/lib/parsers/parse-i3s.js +0 -128
  114. package/dist/es5/lib/parsers/parse-i3s.js.map +0 -1
  115. package/dist/es5/lib/parsers/parse-slpk/parse-slpk.js +0 -69
  116. package/dist/es5/lib/parsers/parse-slpk/parse-slpk.js.map +0 -1
  117. package/dist/es5/lib/parsers/parse-slpk/slpk-archieve.js +0 -254
  118. package/dist/es5/lib/parsers/parse-slpk/slpk-archieve.js.map +0 -1
  119. package/dist/es5/lib/utils/convert-i3s-obb-to-mbs.js +0 -17
  120. package/dist/es5/lib/utils/convert-i3s-obb-to-mbs.js.map +0 -1
  121. package/dist/es5/lib/utils/customize-/321/201olors.js +0 -184
  122. package/dist/es5/lib/utils/customize-/321/201olors.js.map +0 -1
  123. package/dist/es5/lib/utils/url-utils.js +0 -33
  124. package/dist/es5/lib/utils/url-utils.js.map +0 -1
  125. package/dist/es5/types.js +0 -13
  126. package/dist/es5/types.js.map +0 -1
  127. package/dist/es5/workers/i3s-content-worker-node.js +0 -7
  128. package/dist/es5/workers/i3s-content-worker-node.js.map +0 -1
  129. package/dist/es5/workers/i3s-content-worker.js +0 -6
  130. package/dist/es5/workers/i3s-content-worker.js.map +0 -1
  131. package/dist/esm/arcgis-webscene-loader.js.map +0 -1
  132. package/dist/esm/bundle.js +0 -4
  133. package/dist/esm/bundle.js.map +0 -1
  134. package/dist/esm/i3s-attribute-loader.js.map +0 -1
  135. package/dist/esm/i3s-building-scene-layer-loader.js.map +0 -1
  136. package/dist/esm/i3s-content-loader.js.map +0 -1
  137. package/dist/esm/i3s-loader.js.map +0 -1
  138. package/dist/esm/i3s-node-page-loader.js.map +0 -1
  139. package/dist/esm/i3s-slpk-loader.js +0 -19
  140. package/dist/esm/i3s-slpk-loader.js.map +0 -1
  141. package/dist/esm/index.js +0 -10
  142. package/dist/esm/index.js.map +0 -1
  143. package/dist/esm/lib/helpers/i3s-nodepages-tiles.js.map +0 -1
  144. package/dist/esm/lib/parsers/constants.js.map +0 -1
  145. package/dist/esm/lib/parsers/parse-arcgis-webscene.js.map +0 -1
  146. package/dist/esm/lib/parsers/parse-i3s-attribute.js.map +0 -1
  147. package/dist/esm/lib/parsers/parse-i3s-building-scene-layer.js.map +0 -1
  148. package/dist/esm/lib/parsers/parse-i3s-tile-content.js.map +0 -1
  149. package/dist/esm/lib/parsers/parse-i3s.js.map +0 -1
  150. package/dist/esm/lib/parsers/parse-slpk/parse-slpk.js.map +0 -1
  151. package/dist/esm/lib/parsers/parse-slpk/slpk-archieve.js.map +0 -1
  152. package/dist/esm/lib/utils/convert-i3s-obb-to-mbs.js.map +0 -1
  153. package/dist/esm/lib/utils/customize-/321/201olors.js.map +0 -1
  154. package/dist/esm/lib/utils/url-utils.js.map +0 -1
  155. package/dist/esm/types.js.map +0 -1
  156. package/dist/esm/workers/i3s-content-worker-node.js.map +0 -1
  157. package/dist/esm/workers/i3s-content-worker.js +0 -4
  158. package/dist/esm/workers/i3s-content-worker.js.map +0 -1
  159. package/dist/src/arcgis-webscene-loader.d.ts.map +0 -1
  160. package/dist/src/bundle.d.ts +0 -2
  161. package/dist/src/bundle.d.ts.map +0 -1
  162. package/dist/src/i3s-attribute-loader.d.ts.map +0 -1
  163. package/dist/src/i3s-building-scene-layer-loader.d.ts.map +0 -1
  164. package/dist/src/i3s-content-loader.d.ts.map +0 -1
  165. package/dist/src/i3s-loader.d.ts.map +0 -1
  166. package/dist/src/i3s-node-page-loader.d.ts.map +0 -1
  167. package/dist/src/i3s-slpk-loader.d.ts.map +0 -1
  168. package/dist/src/index.d.ts.map +0 -1
  169. package/dist/src/lib/helpers/i3s-nodepages-tiles.d.ts.map +0 -1
  170. package/dist/src/lib/parsers/constants.d.ts.map +0 -1
  171. package/dist/src/lib/parsers/parse-arcgis-webscene.d.ts.map +0 -1
  172. package/dist/src/lib/parsers/parse-i3s-attribute.d.ts.map +0 -1
  173. package/dist/src/lib/parsers/parse-i3s-building-scene-layer.d.ts.map +0 -1
  174. package/dist/src/lib/parsers/parse-i3s-tile-content.d.ts.map +0 -1
  175. package/dist/src/lib/parsers/parse-i3s.d.ts.map +0 -1
  176. package/dist/src/lib/parsers/parse-slpk/parse-slpk.d.ts.map +0 -1
  177. package/dist/src/lib/parsers/parse-slpk/slpk-archieve.d.ts.map +0 -1
  178. package/dist/src/lib/utils/convert-i3s-obb-to-mbs.d.ts.map +0 -1
  179. package/dist/src/lib/utils/customize-/321/201olors.d.ts.map +0 -1
  180. package/dist/src/lib/utils/url-utils.d.ts.map +0 -1
  181. package/dist/src/types.d.ts.map +0 -1
  182. package/dist/src/workers/i3s-content-worker-node.d.ts.map +0 -1
  183. package/dist/src/workers/i3s-content-worker.d.ts.map +0 -1
  184. package/dist/tsconfig.tsbuildinfo +0 -1
  185. package/src/bundle.ts +0 -4
  186. /package/dist/{src/arcgis-webscene-loader.d.ts → arcgis-webscene-loader.d.ts} +0 -0
  187. /package/dist/{src/i3s-attribute-loader.d.ts → i3s-attribute-loader.d.ts} +0 -0
  188. /package/dist/{src/i3s-building-scene-layer-loader.d.ts → i3s-building-scene-layer-loader.d.ts} +0 -0
  189. /package/dist/{src/i3s-content-loader.d.ts → i3s-content-loader.d.ts} +0 -0
  190. /package/dist/{src/i3s-loader.d.ts → i3s-loader.d.ts} +0 -0
  191. /package/dist/{src/i3s-node-page-loader.d.ts → i3s-node-page-loader.d.ts} +0 -0
  192. /package/dist/{src/lib → lib}/helpers/i3s-nodepages-tiles.d.ts +0 -0
  193. /package/dist/{src/lib → lib}/parsers/constants.d.ts +0 -0
  194. /package/dist/{src/lib → lib}/parsers/parse-arcgis-webscene.d.ts +0 -0
  195. /package/dist/{esm/lib → lib}/parsers/parse-arcgis-webscene.js +0 -0
  196. /package/dist/{src/lib → lib}/parsers/parse-i3s-attribute.d.ts +0 -0
  197. /package/dist/{src/lib → lib}/parsers/parse-i3s-building-scene-layer.d.ts +0 -0
  198. /package/dist/{src/lib → lib}/parsers/parse-i3s-tile-content.d.ts +0 -0
  199. /package/dist/{src/lib → lib}/parsers/parse-i3s.d.ts +0 -0
  200. /package/dist/{src/lib → lib}/utils/convert-i3s-obb-to-mbs.d.ts +0 -0
  201. /package/dist/{esm/lib → lib}/utils/convert-i3s-obb-to-mbs.js +0 -0
  202. /package/dist/{src/lib → lib}/utils/customize-/321/201olors.d.ts" +0 -0
  203. /package/dist/{src/lib → lib}/utils/url-utils.d.ts +0 -0
  204. /package/dist/{src/types.d.ts → types.d.ts} +0 -0
  205. /package/dist/{esm/types.js → types.js} +0 -0
  206. /package/dist/{src/workers → workers}/i3s-content-worker-node.d.ts +0 -0
  207. /package/dist/{src/workers → workers}/i3s-content-worker.d.ts +0 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i3s-attribute-loader.d.ts","sourceRoot":"","sources":["../src/i3s-attribute-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAgB,gBAAgB,EAAC,MAAM,0BAA0B,CAAC;AAE9E,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAC,iBAAiB,EAAC,MAAM,mCAAmC,CAAC;AAUzE;;GAEG;AACH,eAAO,MAAM,kBAAkB,EAAE,gBAAgB,CAAC,iBAAiB,EAAE,KAAK,EAAE,gBAAgB,CAU3F,CAAC;AAKF;;;;;;GAMG;AAEH,wBAAsB,qBAAqB,CAAC,IAAI,KAAA,EAAE,SAAS,KAAA,EAAE,OAAO,KAAK,sBA+BxE;AAeD;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,KAAA,OAO9C"}
@@ -1,7 +1,7 @@
1
1
  import { load } from '@loaders.gl/core';
2
- import { parseI3STileAttribute } from './lib/parsers/parse-i3s-attribute';
3
- import { getUrlWithToken } from './lib/utils/url-utils';
4
- const VERSION = typeof "4.0.0-beta.2" !== 'undefined' ? "4.0.0-beta.2" : 'latest';
2
+ import { parseI3STileAttribute } from "./lib/parsers/parse-i3s-attribute.js";
3
+ import { getUrlWithToken } from "./lib/utils/url-utils.js";
4
+ const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';
5
5
  const EMPTY_VALUE = '';
6
6
  const REJECTED_STATUS = 'rejected';
7
7
  export const I3SAttributeLoader = {
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i3s-attribute-loader.js","names":["load","parseI3STileAttribute","getUrlWithToken","VERSION","__VERSION__","EMPTY_VALUE","REJECTED_STATUS","I3SAttributeLoader","name","id","module","version","mimeTypes","parse","arrayBuffer","options","extensions","binary","loadFeatureAttributes","tile","featureId","arguments","length","undefined","attributeStorageInfo","attributeUrls","tilesetFields","getAttributesData","attributes","attributeLoadPromises","index","_options$i3s","url","i3s","token","attributeName","attributeType","getAttributeValueType","loadOptions","promise","push","Promise","allSettled","error","generateAttributesByFeatureId","_tile$tileset","_tile$tileset$tileset","_tile$header","_tile$tileset2","_tile$tileset2$tilese","tileset","header","fields","attribute","hasOwnProperty","attributeValues","valueType","getFeatureIdsAttributeName","objectIdsAttribute","find","includes","objectIdsAttributeName","objectIds","value","attributeIndex","indexOf","getFeatureAttributesByIndex","featureIdIndex","attributesObject","codedValues","getAttributeCodedValues","getAttributeByIndexAndAttributeName","formatAttributeValue","_attributeField$domai","attributeField","field","alias","domain","attributesName","attributeObject","status","String","replace","trim","codeValue","codedValue","code","Number"],"sources":["../src/i3s-attribute-loader.ts"],"sourcesContent":["import type {LoaderOptions, LoaderWithParser} from '@loaders.gl/loader-utils';\nimport {load} from '@loaders.gl/core';\nimport type {I3SLoaderOptions} from './i3s-loader';\nimport type {I3STileAttributes} from './lib/parsers/parse-i3s-attribute';\nimport {parseI3STileAttribute} from './lib/parsers/parse-i3s-attribute';\nimport {getUrlWithToken} from './lib/utils/url-utils';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'latest';\nconst EMPTY_VALUE = '';\nconst REJECTED_STATUS = 'rejected';\n\n/**\n * Loader for I3S attributes\n */\nexport const I3SAttributeLoader: LoaderWithParser<I3STileAttributes, never, I3SLoaderOptions> = {\n name: 'I3S Attribute',\n id: 'i3s-attribute',\n module: 'i3s',\n version: VERSION,\n mimeTypes: ['application/binary'],\n parse: async (arrayBuffer: ArrayBuffer, options?: LoaderOptions) => parseI3STileAttribute(arrayBuffer, options),\n extensions: ['bin'],\n options: {},\n binary: true\n};\n\n\n// TODO - these seem to use the loader rather than being part of the loader. Move to different file...\n\n/**\n * Load attributes based on feature id\n * @param {Object} tile\n * @param {number} featureId\n * @param {Object} options\n * @returns {Promise}\n */\n// eslint-disable-next-line complexity\nexport async function loadFeatureAttributes(tile, featureId, options = {}) {\n const {attributeStorageInfo, attributeUrls, tilesetFields} = getAttributesData(tile);\n\n if (!attributeStorageInfo || !attributeUrls || featureId < 0) {\n return null;\n }\n\n let attributes: object[] = [];\n const attributeLoadPromises: Promise<object>[] = [];\n\n for (let index = 0; index < attributeStorageInfo.length; index++) {\n // @ts-ignore\n const url = getUrlWithToken(attributeUrls[index], options.i3s?.token);\n const attributeName = attributeStorageInfo[index].name;\n const attributeType = getAttributeValueType(attributeStorageInfo[index]);\n const loadOptions = {...options, attributeName, attributeType};\n const promise = load(url, I3SAttributeLoader, loadOptions);\n\n attributeLoadPromises.push(promise);\n }\n try {\n attributes = await Promise.allSettled(attributeLoadPromises);\n } catch (error) {\n // do nothing\n }\n\n if (!attributes.length) {\n return null;\n }\n\n return generateAttributesByFeatureId(attributes, attributeStorageInfo, featureId, tilesetFields);\n}\n\n/**\n * Gets attributes data from tile.\n * @param tile \n * @returns \n */\nfunction getAttributesData(tile) {\n const attributeStorageInfo = tile.tileset?.tileset?.attributeStorageInfo;\n const attributeUrls = tile.header?.attributeUrls;\n const tilesetFields = tile.tileset?.tileset?.fields || [];\n\n return {attributeStorageInfo, attributeUrls, tilesetFields};\n}\n\n/**\n * Get attribute value type based on property names\n * @param {Object} attribute\n * @returns {String}\n */\nexport function getAttributeValueType(attribute) {\n if (attribute.hasOwnProperty('objectIds')) {\n return 'Oid32';\n } else if (attribute.hasOwnProperty('attributeValues')) {\n return attribute.attributeValues.valueType;\n }\n return '';\n}\n\n/**\n * Find in attributeStorageInfo attribute name responsible for feature ids list.\n * @param attributeStorageInfo \n * @returns Feature ids attribute name\n */\nfunction getFeatureIdsAttributeName(attributeStorageInfo) {\n const objectIdsAttribute = attributeStorageInfo.find(attribute => attribute.name.includes('OBJECTID'));\n\n return objectIdsAttribute?.name;\n}\n\n/**\n * Generates mapping featureId to feature attributes\n * @param {Array} attributes\n * @param {Object} attributeStorageInfo\n * @param {number} featureId\n * @returns {Object}\n */\nfunction generateAttributesByFeatureId(attributes, attributeStorageInfo, featureId, tilesetFields) {\n const objectIdsAttributeName = getFeatureIdsAttributeName(attributeStorageInfo);\n const objectIds = attributes.find((attribute) => attribute.value[objectIdsAttributeName]);\n\n if (!objectIds) {\n return null;\n }\n\n const attributeIndex = objectIds.value[objectIdsAttributeName].indexOf(featureId);\n\n if (attributeIndex < 0) {\n return null;\n }\n\n return getFeatureAttributesByIndex(attributes, attributeIndex, attributeStorageInfo, tilesetFields);\n}\n\n/**\n * Generates attribute object for feature mapping by feature id\n * @param {Array} attributes\n * @param {Number} featureIdIndex\n * @param {Object} attributeStorageInfo\n * @returns {Object}\n */\nfunction getFeatureAttributesByIndex(attributes, featureIdIndex, attributeStorageInfo, tilesetFields) {\n const attributesObject = {};\n\n for (let index = 0; index < attributeStorageInfo.length; index++) {\n const attributeName = attributeStorageInfo[index].name;\n const codedValues = getAttributeCodedValues(attributeName, tilesetFields);\n const attribute = getAttributeByIndexAndAttributeName(attributes, index, attributeName);\n attributesObject[attributeName] = formatAttributeValue(attribute, featureIdIndex, codedValues);\n }\n\n return attributesObject;\n}\n\n/**\n * Get coded values list from tileset.\n * @param attributeName \n * @param tilesetFields \n */\nfunction getAttributeCodedValues(attributeName, tilesetFields) {\n const attributeField = tilesetFields\n .find(field => field.name === attributeName || field.alias === attributeName);\n\n return attributeField?.domain?.codedValues || [];\n}\n\n/**\n * Return attribute value if it presents in atrributes list\n * @param {array} attributes\n * @param {number} index\n * @param {string} attributesName\n */\nfunction getAttributeByIndexAndAttributeName(attributes, index, attributesName) {\n const attributeObject = attributes[index];\n\n if (attributeObject.status === REJECTED_STATUS) {\n return null;\n }\n\n return attributeObject.value[attributesName];\n}\n\n/**\n * Do formatting of attribute values or return empty string.\n * @param {Array} attribute\n * @param {Number} featureIdIndex\n * @returns {String}\n */\nfunction formatAttributeValue(attribute, featureIdIndex, codedValues) {\n let value = EMPTY_VALUE;\n\n if (attribute && (featureIdIndex in attribute)) {\n // eslint-disable-next-line no-control-regex\n value = String(attribute[featureIdIndex]).replace(/\\u0000|NaN/g, '').trim();\n }\n\n // Check if coded values are existed. If so we use them.\n if (codedValues.length) {\n const codeValue = codedValues.find(codedValue => codedValue.code === Number(value));\n value = codeValue?.name || EMPTY_VALUE;\n }\n\n return value;\n}\n"],"mappings":"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"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i3s-building-scene-layer-loader.d.ts","sourceRoot":"","sources":["../src/i3s-building-scene-layer-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,gBAAgB,EAA+B,MAAM,0BAA0B,CAAC;AAC7F,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,cAAc,CAAC;AACnD,OAAO,KAAK,EAAC,yBAAyB,EAAC,MAAM,SAAS,CAAC;AAQvD;;GAEG;AACH,eAAO,MAAM,2BAA2B,EAAE,gBAAgB,CACxD,yBAAyB,EACzB,KAAK,EACL,gBAAgB,CAUjB,CAAC"}
@@ -1,5 +1,5 @@
1
- import { parseBuildingSceneLayer } from './lib/parsers/parse-i3s-building-scene-layer';
2
- const VERSION = typeof "4.0.0-beta.2" !== 'undefined' ? "4.0.0-beta.2" : 'beta';
1
+ import { parseBuildingSceneLayer } from "./lib/parsers/parse-i3s-building-scene-layer.js";
2
+ const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'beta';
3
3
  export const I3SBuildingSceneLayerLoader = {
4
4
  name: 'I3S Building Scene Layer',
5
5
  id: 'i3s-building-scene-layer',
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i3s-building-scene-layer-loader.js","names":["parseBuildingSceneLayer","VERSION","__VERSION__","I3SBuildingSceneLayerLoader","name","id","module","version","mimeTypes","parse","extensions","options","data","context","url","Error"],"sources":["../src/i3s-building-scene-layer-loader.ts"],"sourcesContent":["import type {LoaderWithParser, LoaderOptions, LoaderContext} from '@loaders.gl/loader-utils';\nimport type {I3SLoaderOptions} from './i3s-loader';\nimport type {BuildingSceneLayerTileset} from './types';\n\nimport {parseBuildingSceneLayer} from './lib/parsers/parse-i3s-building-scene-layer';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\n\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'beta';\n/**\n * Loader for I3S - Building Scene Layer\n */\nexport const I3SBuildingSceneLayerLoader: LoaderWithParser<\n BuildingSceneLayerTileset,\n never,\n I3SLoaderOptions\n> = {\n name: 'I3S Building Scene Layer',\n id: 'i3s-building-scene-layer',\n module: 'i3s',\n version: VERSION,\n mimeTypes: ['application/json'],\n parse,\n extensions: ['json'],\n options: {}\n};\n\nasync function parse(\n data: ArrayBuffer,\n options?: LoaderOptions,\n context?: LoaderContext\n): Promise<BuildingSceneLayerTileset> {\n if (!context?.url) {\n throw new Error('Url is not provided');\n }\n\n return parseBuildingSceneLayer(data, context.url);\n}\n"],"mappings":"SAIQA,uBAAuB;AAK/B,MAAMC,OAAO,GAAG,OAAOC,WAAW,KAAK,WAAW,GAAGA,WAAW,GAAG,MAAM;AAIzE,OAAO,MAAMC,2BAIZ,GAAG;EACFC,IAAI,EAAE,0BAA0B;EAChCC,EAAE,EAAE,0BAA0B;EAC9BC,MAAM,EAAE,KAAK;EACbC,OAAO,EAAEN,OAAO;EAChBO,SAAS,EAAE,CAAC,kBAAkB,CAAC;EAC/BC,KAAK;EACLC,UAAU,EAAE,CAAC,MAAM,CAAC;EACpBC,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,eAAeF,KAAKA,CAClBG,IAAiB,EACjBD,OAAuB,EACvBE,OAAuB,EACa;EACpC,IAAI,EAACA,OAAO,aAAPA,OAAO,eAAPA,OAAO,CAAEC,GAAG,GAAE;IACjB,MAAM,IAAIC,KAAK,CAAC,qBAAqB,CAAC;EACxC;EAEA,OAAOf,uBAAuB,CAACY,IAAI,EAAEC,OAAO,CAACC,GAAG,CAAC;AACnD"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i3s-content-loader.d.ts","sourceRoot":"","sources":["../src/i3s-content-loader.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAC,gBAAgB,EAAgB,MAAM,0BAA0B,CAAC;AAC9E,OAAO,KAAK,EAAC,gBAAgB,EAAC,MAAM,cAAc,CAAC;AAEnD,OAAO,EAAC,cAAc,EAAoC,MAAM,SAAS,CAAC;AAO1E;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,gBAAgB,CAAC,cAAc,GAAG,IAAI,EAAE,KAAK,EAAE,gBAAgB,CAY7F,CAAC"}
@@ -1,5 +1,5 @@
1
- import { parseI3STileContent } from './lib/parsers/parse-i3s-tile-content';
2
- const VERSION = typeof "4.0.0-beta.2" !== 'undefined' ? "4.0.0-beta.2" : 'beta';
1
+ import { parseI3STileContent } from "./lib/parsers/parse-i3s-tile-content.js";
2
+ const VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'beta';
3
3
  export const I3SContentLoader = {
4
4
  name: 'I3S Content (Indexed Scene Layers)',
5
5
  id: 'i3s-content',
@@ -0,0 +1 @@
1
+ {"version":3,"file":"i3s-content-loader.js","names":["parseI3STileContent","VERSION","__VERSION__","I3SContentLoader","name","id","module","worker","version","mimeTypes","parse","extensions","options","data","context","tile","_tileOptions","tileset","_tilesetOptions","i3s","tileOptions","tilesetOptions"],"sources":["../src/i3s-content-loader.ts"],"sourcesContent":["import type {LoaderWithParser, LoaderContext} from '@loaders.gl/loader-utils';\nimport type {I3SLoaderOptions} from './i3s-loader';\nimport {parseI3STileContent} from './lib/parsers/parse-i3s-tile-content';\nimport {I3STileContent, I3STileOptions, I3STilesetOptions} from './types';\n\n// __VERSION__ is injected by babel-plugin-version-inline\n// @ts-ignore TS2304: Cannot find name '__VERSION__'.\n\nconst VERSION = typeof __VERSION__ !== 'undefined' ? __VERSION__ : 'beta';\n\n/**\n * Loader for I3S - Indexed 3D Scene Layer\n */\nexport const I3SContentLoader: LoaderWithParser<I3STileContent | null, never, I3SLoaderOptions> = {\n name: 'I3S Content (Indexed Scene Layers)',\n id: 'i3s-content',\n module: 'i3s',\n worker: true,\n version: VERSION,\n mimeTypes: ['application/octet-stream'],\n parse,\n extensions: ['bin'],\n options: {\n 'i3s-content': {}\n }\n};\n\nasync function parse(data, options?: I3SLoaderOptions, context?: LoaderContext) {\n const {tile, _tileOptions, tileset, _tilesetOptions} = options?.i3s || {};\n const tileOptions = _tileOptions || tile;\n const tilesetOptions = _tilesetOptions || tileset;\n if (!tileOptions || !tilesetOptions) {\n return null;\n }\n return await parseI3STileContent(\n data,\n tileOptions as I3STileOptions,\n tilesetOptions as I3STilesetOptions,\n options,\n context\n );\n}\n"],"mappings":"SAEQA,mBAAmB;AAM3B,MAAMC,OAAO,GAAG,OAAOC,WAAW,KAAK,WAAW,GAAGA,WAAW,GAAG,MAAM;AAKzE,OAAO,MAAMC,gBAAkF,GAAG;EAChGC,IAAI,EAAE,oCAAoC;EAC1CC,EAAE,EAAE,aAAa;EACjBC,MAAM,EAAE,KAAK;EACbC,MAAM,EAAE,IAAI;EACZC,OAAO,EAAEP,OAAO;EAChBQ,SAAS,EAAE,CAAC,0BAA0B,CAAC;EACvCC,KAAK;EACLC,UAAU,EAAE,CAAC,KAAK,CAAC;EACnBC,OAAO,EAAE;IACP,aAAa,EAAE,CAAC;EAClB;AACF,CAAC;AAED,eAAeF,KAAKA,CAACG,IAAI,EAAED,OAA0B,EAAEE,OAAuB,EAAE;EAC9E,MAAM;IAACC,IAAI;IAAEC,YAAY;IAAEC,OAAO;IAAEC;EAAe,CAAC,GAAG,CAAAN,OAAO,aAAPA,OAAO,uBAAPA,OAAO,CAAEO,GAAG,KAAI,CAAC,CAAC;EACzE,MAAMC,WAAW,GAAGJ,YAAY,IAAID,IAAI;EACxC,MAAMM,cAAc,GAAGH,eAAe,IAAID,OAAO;EACjD,IAAI,CAACG,WAAW,IAAI,CAACC,cAAc,EAAE;IACnC,OAAO,IAAI;EACb;EACA,OAAO,MAAMrB,mBAAmB,CAC9Ba,IAAI,EACJO,WAAW,EACXC,cAAc,EACdT,OAAO,EACPE,OACF,CAAC;AACH"}