@loaders.gl/tile-converter 4.2.0-alpha.4 → 4.2.0-alpha.5

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 (144) hide show
  1. package/dist/3d-tiles-converter/3d-tiles-converter.d.ts +3 -3
  2. package/dist/3d-tiles-converter/3d-tiles-converter.d.ts.map +1 -1
  3. package/dist/3d-tiles-converter/3d-tiles-converter.js +329 -293
  4. package/dist/3d-tiles-converter/helpers/b3dm-converter.js +257 -200
  5. package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js +14 -5
  6. package/dist/3d-tiles-converter/helpers/load-i3s.js +106 -75
  7. package/dist/3d-tiles-converter/helpers/texture-atlas.js +44 -21
  8. package/dist/3d-tiles-converter/json-templates/tileset.js +32 -33
  9. package/dist/constants.js +0 -1
  10. package/dist/converter-cli.js +255 -234
  11. package/dist/converter.min.cjs +80 -90
  12. package/dist/deps-installer/deps-installer.js +72 -58
  13. package/dist/i3s-converter/helpers/attribute-metadata-info.js +207 -153
  14. package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts +1 -1
  15. package/dist/i3s-converter/helpers/batch-ids-extensions.d.ts.map +1 -1
  16. package/dist/i3s-converter/helpers/batch-ids-extensions.js +145 -103
  17. package/dist/i3s-converter/helpers/coordinate-converter.js +100 -65
  18. package/dist/i3s-converter/helpers/create-scene-server-path.js +14 -9
  19. package/dist/i3s-converter/helpers/feature-attributes.js +168 -105
  20. package/dist/i3s-converter/helpers/geometry-attributes.d.ts +1 -1
  21. package/dist/i3s-converter/helpers/geometry-attributes.d.ts.map +1 -1
  22. package/dist/i3s-converter/helpers/geometry-attributes.js +204 -212
  23. package/dist/i3s-converter/helpers/geometry-converter.d.ts +2 -2
  24. package/dist/i3s-converter/helpers/geometry-converter.d.ts.map +1 -1
  25. package/dist/i3s-converter/helpers/geometry-converter.js +1148 -829
  26. package/dist/i3s-converter/helpers/gltf-attributes.d.ts +1 -1
  27. package/dist/i3s-converter/helpers/gltf-attributes.d.ts.map +1 -1
  28. package/dist/i3s-converter/helpers/gltf-attributes.js +111 -97
  29. package/dist/i3s-converter/helpers/load-3d-tiles.js +103 -66
  30. package/dist/i3s-converter/helpers/node-debug.js +98 -54
  31. package/dist/i3s-converter/helpers/node-index-document.d.ts +3 -3
  32. package/dist/i3s-converter/helpers/node-index-document.d.ts.map +1 -1
  33. package/dist/i3s-converter/helpers/node-index-document.js +248 -177
  34. package/dist/i3s-converter/helpers/node-pages.d.ts +1 -1
  35. package/dist/i3s-converter/helpers/node-pages.d.ts.map +1 -1
  36. package/dist/i3s-converter/helpers/node-pages.js +299 -194
  37. package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts +1 -1
  38. package/dist/i3s-converter/helpers/preprocess-3d-tiles.d.ts.map +1 -1
  39. package/dist/i3s-converter/helpers/preprocess-3d-tiles.js +92 -60
  40. package/dist/i3s-converter/helpers/progress.js +134 -83
  41. package/dist/i3s-converter/helpers/tileset-traversal.d.ts +1 -1
  42. package/dist/i3s-converter/helpers/tileset-traversal.d.ts.map +1 -1
  43. package/dist/i3s-converter/helpers/tileset-traversal.js +24 -13
  44. package/dist/i3s-converter/i3s-converter.d.ts +7 -7
  45. package/dist/i3s-converter/i3s-converter.d.ts.map +1 -1
  46. package/dist/i3s-converter/i3s-converter.js +1044 -898
  47. package/dist/i3s-converter/json-templates/geometry-definitions.js +70 -79
  48. package/dist/i3s-converter/json-templates/layers.js +120 -121
  49. package/dist/i3s-converter/json-templates/metadata.js +19 -20
  50. package/dist/i3s-converter/json-templates/node.js +73 -71
  51. package/dist/i3s-converter/json-templates/scene-server.js +25 -26
  52. package/dist/i3s-converter/json-templates/shared-resources.js +107 -108
  53. package/dist/i3s-converter/json-templates/store.js +96 -94
  54. package/dist/i3s-converter/types.js +35 -23
  55. package/dist/i3s-server/app.js +15 -12
  56. package/dist/i3s-server/bin/www.js +14 -7
  57. package/dist/i3s-server/controllers/index-controller.js +18 -15
  58. package/dist/i3s-server/controllers/slpk-controller.js +22 -11
  59. package/dist/i3s-server/routes/index.js +9 -8
  60. package/dist/i3s-server/routes/slpk-router.js +18 -17
  61. package/dist/i3s-server/utils/create-scene-server.js +15 -10
  62. package/dist/i3s-server/utils/server-utils.js +49 -32
  63. package/dist/index.cjs +292 -851
  64. package/dist/index.cjs.map +7 -0
  65. package/dist/index.d.ts +2 -2
  66. package/dist/index.d.ts.map +1 -1
  67. package/dist/index.js +0 -1
  68. package/dist/lib/json-schemas/conversion-dump-json-schema.js +243 -421
  69. package/dist/lib/utils/cli-utils.js +63 -36
  70. package/dist/lib/utils/compress-util.js +20 -15
  71. package/dist/lib/utils/conversion-dump.d.ts +1 -1
  72. package/dist/lib/utils/conversion-dump.d.ts.map +1 -1
  73. package/dist/lib/utils/conversion-dump.js +209 -187
  74. package/dist/lib/utils/file-utils.js +122 -74
  75. package/dist/lib/utils/geometry-utils.js +13 -7
  76. package/dist/lib/utils/lod-conversion-utils.js +65 -33
  77. package/dist/lib/utils/queue.js +12 -13
  78. package/dist/lib/utils/statistic-utills.d.ts +6 -23
  79. package/dist/lib/utils/statistic-utills.js +64 -59
  80. package/dist/lib/utils/write-queue.d.ts +2 -2
  81. package/dist/lib/utils/write-queue.d.ts.map +1 -1
  82. package/dist/lib/utils/write-queue.js +68 -86
  83. package/dist/pgm-loader.js +16 -12
  84. package/dist/slpk-extractor/slpk-extractor.js +59 -50
  85. package/dist/slpk-extractor-cli.js +82 -59
  86. package/package.json +18 -18
  87. package/dist/3d-tiles-converter/3d-tiles-converter.js.map +0 -1
  88. package/dist/3d-tiles-converter/helpers/b3dm-converter.js.map +0 -1
  89. package/dist/3d-tiles-converter/helpers/i3s-obb-to-3d-tiles-obb.js.map +0 -1
  90. package/dist/3d-tiles-converter/helpers/load-i3s.js.map +0 -1
  91. package/dist/3d-tiles-converter/helpers/texture-atlas.js.map +0 -1
  92. package/dist/3d-tiles-converter/json-templates/tileset.js.map +0 -1
  93. package/dist/constants.js.map +0 -1
  94. package/dist/converter-cli.js.map +0 -1
  95. package/dist/deps-installer/deps-installer.js.map +0 -1
  96. package/dist/i3s-converter/helpers/attribute-metadata-info.js.map +0 -1
  97. package/dist/i3s-converter/helpers/batch-ids-extensions.js.map +0 -1
  98. package/dist/i3s-converter/helpers/coordinate-converter.js.map +0 -1
  99. package/dist/i3s-converter/helpers/create-scene-server-path.js.map +0 -1
  100. package/dist/i3s-converter/helpers/feature-attributes.js.map +0 -1
  101. package/dist/i3s-converter/helpers/geometry-attributes.js.map +0 -1
  102. package/dist/i3s-converter/helpers/geometry-converter.js.map +0 -1
  103. package/dist/i3s-converter/helpers/gltf-attributes.js.map +0 -1
  104. package/dist/i3s-converter/helpers/load-3d-tiles.js.map +0 -1
  105. package/dist/i3s-converter/helpers/node-debug.js.map +0 -1
  106. package/dist/i3s-converter/helpers/node-index-document.js.map +0 -1
  107. package/dist/i3s-converter/helpers/node-pages.js.map +0 -1
  108. package/dist/i3s-converter/helpers/preprocess-3d-tiles.js.map +0 -1
  109. package/dist/i3s-converter/helpers/progress.js.map +0 -1
  110. package/dist/i3s-converter/helpers/tileset-traversal.js.map +0 -1
  111. package/dist/i3s-converter/i3s-converter.js.map +0 -1
  112. package/dist/i3s-converter/json-templates/geometry-definitions.js.map +0 -1
  113. package/dist/i3s-converter/json-templates/layers.js.map +0 -1
  114. package/dist/i3s-converter/json-templates/metadata.js.map +0 -1
  115. package/dist/i3s-converter/json-templates/node.js.map +0 -1
  116. package/dist/i3s-converter/json-templates/scene-server.js.map +0 -1
  117. package/dist/i3s-converter/json-templates/shared-resources.js.map +0 -1
  118. package/dist/i3s-converter/json-templates/store.js.map +0 -1
  119. package/dist/i3s-converter/types.js.map +0 -1
  120. package/dist/i3s-server/README.md +0 -63
  121. package/dist/i3s-server/app.js.map +0 -1
  122. package/dist/i3s-server/bin/www.js.map +0 -1
  123. package/dist/i3s-server/certs/cert.pem +0 -19
  124. package/dist/i3s-server/certs/key.pem +0 -27
  125. package/dist/i3s-server/controllers/index-controller.js.map +0 -1
  126. package/dist/i3s-server/controllers/slpk-controller.js.map +0 -1
  127. package/dist/i3s-server/routes/index.js.map +0 -1
  128. package/dist/i3s-server/routes/slpk-router.js.map +0 -1
  129. package/dist/i3s-server/utils/create-scene-server.js.map +0 -1
  130. package/dist/i3s-server/utils/server-utils.js.map +0 -1
  131. package/dist/index.js.map +0 -1
  132. package/dist/lib/json-schemas/conversion-dump-json-schema.js.map +0 -1
  133. package/dist/lib/utils/cli-utils.js.map +0 -1
  134. package/dist/lib/utils/compress-util.js.map +0 -1
  135. package/dist/lib/utils/conversion-dump.js.map +0 -1
  136. package/dist/lib/utils/file-utils.js.map +0 -1
  137. package/dist/lib/utils/geometry-utils.js.map +0 -1
  138. package/dist/lib/utils/lod-conversion-utils.js.map +0 -1
  139. package/dist/lib/utils/queue.js.map +0 -1
  140. package/dist/lib/utils/statistic-utills.js.map +0 -1
  141. package/dist/lib/utils/write-queue.js.map +0 -1
  142. package/dist/pgm-loader.js.map +0 -1
  143. package/dist/slpk-extractor/slpk-extractor.js.map +0 -1
  144. package/dist/slpk-extractor-cli.js.map +0 -1
@@ -1,463 +1,285 @@
1
1
  export const dumpJsonSchema = {
2
- type: 'object',
3
- properties: {
4
- options: {
5
- type: 'object',
6
- properties: {
7
- inputUrl: {
8
- type: 'string'
9
- },
10
- outputPath: {
11
- type: 'string'
12
- },
13
- tilesetName: {
14
- type: 'string'
15
- },
16
- maxDepth: {
17
- type: 'number'
18
- },
19
- slpk: {
20
- type: 'boolean'
21
- },
22
- egmFilePath: {
23
- type: 'string'
24
- },
25
- token: {
26
- type: 'string'
27
- },
28
- draco: {
29
- type: 'boolean'
30
- },
31
- mergeMaterials: {
32
- type: 'boolean'
33
- },
34
- generateTextures: {
35
- type: 'boolean'
36
- },
37
- generateBoundingVolumes: {
38
- type: 'boolean'
39
- },
40
- metadataClass: {
41
- type: 'string'
2
+ type: 'object',
3
+ properties: {
4
+ options: {
5
+ type: 'object',
6
+ properties: {
7
+ inputUrl: { type: 'string' },
8
+ outputPath: { type: 'string' },
9
+ tilesetName: { type: 'string' },
10
+ maxDepth: { type: 'number' },
11
+ slpk: { type: 'boolean' },
12
+ egmFilePath: { type: 'string' },
13
+ token: { type: 'string' },
14
+ draco: { type: 'boolean' },
15
+ mergeMaterials: { type: 'boolean' },
16
+ generateTextures: { type: 'boolean' },
17
+ generateBoundingVolumes: { type: 'boolean' },
18
+ metadataClass: { type: 'string' },
19
+ analyze: { type: 'boolean' }
20
+ },
21
+ required: ['inputUrl', 'outputPath', 'tilesetName']
42
22
  },
43
- analyze: {
44
- type: 'boolean'
45
- }
46
- },
47
- required: ['inputUrl', 'outputPath', 'tilesetName']
48
- },
49
- tilesConverted: {
50
- type: 'object',
51
- patternProperties: {
52
- '.*': {
53
- type: 'object',
54
- properties: {
55
- nodes: {
56
- type: 'array',
57
- items: {
58
- type: 'object',
59
- properties: {
60
- nodeId: {
61
- type: ['number', 'string']
62
- },
63
- done: {
64
- type: 'boolean'
65
- },
66
- progress: {
67
- type: 'object',
68
- patternProperties: {
69
- '.*': {
70
- type: 'boolean'
71
- }
72
- }
73
- },
74
- dumpMetadata: {
23
+ tilesConverted: {
24
+ type: 'object',
25
+ patternProperties: {
26
+ '.*': {
75
27
  type: 'object',
76
28
  properties: {
77
- boundingVolumes: {
78
- type: ['object', 'null'],
79
- properties: {
80
- mbs: {
29
+ nodes: {
81
30
  type: 'array',
82
- minItems: 4,
83
- maxItems: 4,
84
31
  items: {
85
- type: 'number'
32
+ type: 'object',
33
+ properties: {
34
+ nodeId: { type: ['number', 'string'] },
35
+ done: { type: 'boolean' },
36
+ progress: { type: 'object', patternProperties: { '.*': { type: 'boolean' } } },
37
+ dumpMetadata: {
38
+ type: 'object',
39
+ properties: {
40
+ boundingVolumes: {
41
+ type: ['object', 'null'],
42
+ properties: {
43
+ mbs: {
44
+ type: 'array',
45
+ minItems: 4,
46
+ maxItems: 4,
47
+ items: { type: 'number' }
48
+ },
49
+ obb: {
50
+ type: 'object',
51
+ properties: {
52
+ center: {
53
+ type: 'array',
54
+ minItems: 3,
55
+ maxItems: 3,
56
+ items: { type: 'number' }
57
+ },
58
+ halfSize: {
59
+ type: 'array',
60
+ minItems: 3,
61
+ maxItems: 3,
62
+ items: { type: 'number' }
63
+ },
64
+ quaternion: {
65
+ type: 'array',
66
+ minItems: 4,
67
+ maxItems: 4,
68
+ items: { type: 'number' }
69
+ }
70
+ },
71
+ required: ['center', 'halfSize', 'quaternion']
72
+ }
73
+ },
74
+ required: ['mbs', 'obb']
75
+ },
76
+ attributesCount: { type: 'number' },
77
+ featureCount: { type: 'number' },
78
+ geometry: { type: 'boolean' },
79
+ hasUvRegions: { type: 'boolean' },
80
+ materialId: { type: 'number' },
81
+ texelCountHint: { type: 'number' },
82
+ vertexCount: { type: 'number' }
83
+ },
84
+ required: [
85
+ 'boundingVolumes',
86
+ 'featureCount',
87
+ 'geometry',
88
+ 'hasUvRegions',
89
+ 'materialId',
90
+ 'vertexCount'
91
+ ]
92
+ }
93
+ },
94
+ required: ['nodeId', 'done']
86
95
  }
87
- },
88
- obb: {
96
+ }
97
+ },
98
+ required: ['nodes']
99
+ }
100
+ }
101
+ },
102
+ textureSetDefinitions: {
103
+ type: 'array',
104
+ items: {
105
+ type: 'object',
106
+ properties: {
107
+ formats: {
108
+ type: 'array',
109
+ items: {
89
110
  type: 'object',
90
111
  properties: {
91
- center: {
112
+ name: { type: 'string' },
113
+ format: { enum: ['jpg', 'png', 'ktx-etc2', 'dds', 'ktx2'] }
114
+ },
115
+ required: ['name', 'format']
116
+ }
117
+ },
118
+ atlas: { type: 'boolean' }
119
+ },
120
+ required: ['formats']
121
+ }
122
+ },
123
+ attributeMetadataInfo: {
124
+ type: 'object',
125
+ properties: {
126
+ attributeStorageInfo: {
127
+ type: 'array',
128
+ items: {
129
+ type: 'object',
130
+ properties: {
131
+ key: { type: 'string' },
132
+ name: { type: 'string' },
133
+ header: {
92
134
  type: 'array',
93
- minItems: 3,
94
- maxItems: 3,
95
135
  items: {
96
- type: 'number'
136
+ type: 'object',
137
+ properties: { property: { type: 'string' }, valueType: { type: 'string' } },
138
+ required: ['property', 'valueType']
97
139
  }
98
- },
99
- halfSize: {
100
- type: 'array',
101
- minItems: 3,
102
- maxItems: 3,
103
- items: {
104
- type: 'number'
140
+ },
141
+ ordering: { type: 'array', items: { type: 'string' } },
142
+ attributeValues: { $ref: '#/$defs/AttributeValue' },
143
+ attributeByteCounts: { $ref: '#/$defs/AttributeValue' },
144
+ objectIds: { $ref: '#/$defs/AttributeValue' }
145
+ },
146
+ required: ['key', 'name', 'header']
147
+ }
148
+ },
149
+ fields: {
150
+ type: 'array',
151
+ items: {
152
+ type: 'object',
153
+ properties: {
154
+ name: { type: 'string' },
155
+ type: { $ref: '#/$defs/ESRIField' },
156
+ alias: { type: 'string' },
157
+ domain: { $ref: '#/$defs/Domain' }
158
+ },
159
+ required: ['name', 'type']
160
+ }
161
+ },
162
+ popupInfo: {
163
+ type: 'object',
164
+ properties: {
165
+ title: { type: 'string' },
166
+ description: { type: 'string' },
167
+ expressionInfos: { type: 'array', items: {} },
168
+ fieldInfos: { type: 'array', items: { $ref: '#/$defs/FieldInfo' } },
169
+ mediaInfos: { type: 'array', items: {} },
170
+ popupElements: {
171
+ type: 'array',
172
+ items: {
173
+ type: 'object',
174
+ properties: {
175
+ text: { type: 'string' },
176
+ type: { type: 'string' },
177
+ fieldInfos: { type: 'array', items: { $ref: '#/$defs/FieldInfo' } }
105
178
  }
106
- },
107
- quaternion: {
179
+ }
180
+ }
181
+ }
182
+ }
183
+ },
184
+ required: ['attributeStorageInfo', 'fields']
185
+ },
186
+ materialDefinitions: {
187
+ type: 'array',
188
+ items: {
189
+ type: 'object',
190
+ properties: {
191
+ pbrMetallicRoughness: {
192
+ type: 'object',
193
+ properties: {
194
+ baseColorFactor: {
108
195
  type: 'array',
109
196
  minItems: 4,
110
197
  maxItems: 4,
111
- items: {
112
- type: 'number'
113
- }
114
- }
198
+ items: { type: 'number' }
115
199
  },
116
- required: ['center', 'halfSize', 'quaternion']
117
- }
200
+ baseColorTexture: { $ref: '#/$defs/I3SMaterialTexture' },
201
+ metallicFactor: { type: 'number' },
202
+ roughnessFactor: { type: 'number' },
203
+ metallicRoughnessTexture: { $ref: '#/$defs/I3SMaterialTexture' }
118
204
  },
119
- required: ['mbs', 'obb']
120
- },
121
- attributesCount: {
122
- type: 'number'
123
- },
124
- featureCount: {
125
- type: 'number'
126
- },
127
- geometry: {
128
- type: 'boolean'
129
- },
130
- hasUvRegions: {
131
- type: 'boolean'
132
- },
133
- materialId: {
134
- type: 'number'
135
- },
136
- texelCountHint: {
137
- type: 'number'
138
- },
139
- vertexCount: {
140
- type: 'number'
141
- }
205
+ required: ['metallicFactor', 'roughnessFactor']
142
206
  },
143
- required: ['boundingVolumes', 'featureCount', 'geometry', 'hasUvRegions', 'materialId', 'vertexCount']
144
- }
207
+ normalTexture: { $ref: '#/$defs/I3SMaterialTexture' },
208
+ occlusionTexture: { $ref: '#/$defs/I3SMaterialTexture' },
209
+ emissiveTexture: { $ref: '#/$defs/I3SMaterialTexture' },
210
+ emissiveFactor: { type: 'array', minItems: 3, maxItems: 3, items: { type: 'number' } },
211
+ alphaMode: { enum: ['opaque', 'mask', 'blend'] },
212
+ alphaCutoff: { type: 'number' },
213
+ doubleSided: { type: 'boolean' },
214
+ cullFace: { enum: ['none', 'front', 'back'] }
145
215
  },
146
- required: ['nodeId', 'done']
147
- }
216
+ required: ['pbrMetallicRoughness', 'alphaMode']
148
217
  }
149
- },
150
- required: ['nodes']
151
218
  }
152
- }
153
- },
154
- textureSetDefinitions: {
155
- type: 'array',
156
- items: {
157
- type: 'object',
158
- properties: {
159
- formats: {
160
- type: 'array',
161
- items: {
162
- type: 'object',
163
- properties: {
164
- name: {
165
- type: 'string'
166
- },
167
- format: {
168
- enum: ['jpg', 'png', 'ktx-etc2', 'dds', 'ktx2']
169
- }
170
- },
171
- required: ['name', 'format']
172
- }
173
- },
174
- atlas: {
175
- type: 'boolean'
176
- }
177
- },
178
- required: ['formats']
179
- }
180
219
  },
181
- attributeMetadataInfo: {
182
- type: 'object',
183
- properties: {
184
- attributeStorageInfo: {
185
- type: 'array',
186
- items: {
220
+ required: ['options', 'tilesConverted'],
221
+ $defs: {
222
+ AttributeValue: {
187
223
  type: 'object',
188
224
  properties: {
189
- key: {
190
- type: 'string'
191
- },
192
- name: {
193
- type: 'string'
194
- },
195
- header: {
196
- type: 'array',
197
- items: {
198
- type: 'object',
199
- properties: {
200
- property: {
201
- type: 'string'
202
- },
203
- valueType: {
204
- type: 'string'
205
- }
206
- },
207
- required: ['property', 'valueType']
208
- }
209
- },
210
- ordering: {
211
- type: 'array',
212
- items: {
213
- type: 'string'
214
- }
215
- },
216
- attributeValues: {
217
- $ref: '#/$defs/AttributeValue'
218
- },
219
- attributeByteCounts: {
220
- $ref: '#/$defs/AttributeValue'
221
- },
222
- objectIds: {
223
- $ref: '#/$defs/AttributeValue'
224
- }
225
+ valueType: { type: 'string' },
226
+ encoding: { type: 'string' },
227
+ valuesPerElement: { type: 'number' }
225
228
  },
226
- required: ['key', 'name', 'header']
227
- }
229
+ required: ['valueType']
228
230
  },
229
- fields: {
230
- type: 'array',
231
- items: {
231
+ ESRIField: {
232
+ enum: [
233
+ 'esriFieldTypeDate',
234
+ 'esriFieldTypeSingle',
235
+ 'esriFieldTypeDouble',
236
+ 'esriFieldTypeGUID',
237
+ 'esriFieldTypeGlobalID',
238
+ 'esriFieldTypeInteger',
239
+ 'esriFieldTypeOID',
240
+ 'esriFieldTypeSmallInteger',
241
+ 'esriFieldTypeString'
242
+ ]
243
+ },
244
+ Domain: {
232
245
  type: 'object',
233
246
  properties: {
234
- name: {
235
- type: 'string'
236
- },
237
- type: {
238
- $ref: '#/$defs/ESRIField'
239
- },
240
- alias: {
241
- type: 'string'
242
- },
243
- domain: {
244
- $ref: '#/$defs/Domain'
245
- }
246
- },
247
- required: ['name', 'type']
248
- }
249
- },
250
- popupInfo: {
251
- type: 'object',
252
- properties: {
253
- title: {
254
- type: 'string'
255
- },
256
- description: {
257
- type: 'string'
258
- },
259
- expressionInfos: {
260
- type: 'array',
261
- items: {}
262
- },
263
- fieldInfos: {
264
- type: 'array',
265
- items: {
266
- $ref: '#/$defs/FieldInfo'
267
- }
268
- },
269
- mediaInfos: {
270
- type: 'array',
271
- items: {}
272
- },
273
- popupElements: {
274
- type: 'array',
275
- items: {
276
- type: 'object',
277
- properties: {
278
- text: {
279
- type: 'string'
280
- },
281
- type: {
282
- type: 'string'
283
- },
284
- fieldInfos: {
247
+ type: { type: 'string' },
248
+ name: { type: 'string' },
249
+ description: { type: 'string' },
250
+ fieldType: { type: 'string' },
251
+ range: { type: 'array', items: { type: 'number' } },
252
+ codedValues: {
285
253
  type: 'array',
286
254
  items: {
287
- $ref: '#/$defs/FieldInfo'
255
+ type: 'object',
256
+ properties: { name: { type: 'string' }, code: { type: ['string', 'number'] } },
257
+ required: ['name', 'code']
288
258
  }
289
- }
290
- }
291
- }
292
- }
293
- }
294
- }
295
- },
296
- required: ['attributeStorageInfo', 'fields']
297
- },
298
- materialDefinitions: {
299
- type: 'array',
300
- items: {
301
- type: 'object',
302
- properties: {
303
- pbrMetallicRoughness: {
259
+ },
260
+ mergePolicy: { type: 'string' },
261
+ splitPolicy: { type: 'string' }
262
+ },
263
+ required: ['type', 'name']
264
+ },
265
+ FieldInfo: {
304
266
  type: 'object',
305
267
  properties: {
306
- baseColorFactor: {
307
- type: 'array',
308
- minItems: 4,
309
- maxItems: 4,
310
- items: {
311
- type: 'number'
312
- }
313
- },
314
- baseColorTexture: {
315
- $ref: '#/$defs/I3SMaterialTexture'
316
- },
317
- metallicFactor: {
318
- type: 'number'
319
- },
320
- roughnessFactor: {
321
- type: 'number'
322
- },
323
- metallicRoughnessTexture: {
324
- $ref: '#/$defs/I3SMaterialTexture'
325
- }
268
+ fieldName: { type: 'string' },
269
+ visible: { type: 'boolean' },
270
+ isEditable: { type: 'boolean' },
271
+ label: { type: 'string' }
326
272
  },
327
- required: ['metallicFactor', 'roughnessFactor']
328
- },
329
- normalTexture: {
330
- $ref: '#/$defs/I3SMaterialTexture'
331
- },
332
- occlusionTexture: {
333
- $ref: '#/$defs/I3SMaterialTexture'
334
- },
335
- emissiveTexture: {
336
- $ref: '#/$defs/I3SMaterialTexture'
337
- },
338
- emissiveFactor: {
339
- type: 'array',
340
- minItems: 3,
341
- maxItems: 3,
342
- items: {
343
- type: 'number'
344
- }
345
- },
346
- alphaMode: {
347
- enum: ['opaque', 'mask', 'blend']
348
- },
349
- alphaCutoff: {
350
- type: 'number'
351
- },
352
- doubleSided: {
353
- type: 'boolean'
354
- },
355
- cullFace: {
356
- enum: ['none', 'front', 'back']
357
- }
358
- },
359
- required: ['pbrMetallicRoughness', 'alphaMode']
360
- }
361
- }
362
- },
363
- required: ['options', 'tilesConverted'],
364
- $defs: {
365
- AttributeValue: {
366
- type: 'object',
367
- properties: {
368
- valueType: {
369
- type: 'string'
370
- },
371
- encoding: {
372
- type: 'string'
373
- },
374
- valuesPerElement: {
375
- type: 'number'
376
- }
377
- },
378
- required: ['valueType']
379
- },
380
- ESRIField: {
381
- enum: ['esriFieldTypeDate', 'esriFieldTypeSingle', 'esriFieldTypeDouble', 'esriFieldTypeGUID', 'esriFieldTypeGlobalID', 'esriFieldTypeInteger', 'esriFieldTypeOID', 'esriFieldTypeSmallInteger', 'esriFieldTypeString']
382
- },
383
- Domain: {
384
- type: 'object',
385
- properties: {
386
- type: {
387
- type: 'string'
273
+ required: ['fieldName', 'visible', 'isEditable', 'label']
388
274
  },
389
- name: {
390
- type: 'string'
391
- },
392
- description: {
393
- type: 'string'
394
- },
395
- fieldType: {
396
- type: 'string'
397
- },
398
- range: {
399
- type: 'array',
400
- items: {
401
- type: 'number'
402
- }
403
- },
404
- codedValues: {
405
- type: 'array',
406
- items: {
275
+ I3SMaterialTexture: {
407
276
  type: 'object',
408
277
  properties: {
409
- name: {
410
- type: 'string'
411
- },
412
- code: {
413
- type: ['string', 'number']
414
- }
278
+ textureSetDefinitionId: { type: 'number' },
279
+ texCoord: { type: 'number' },
280
+ factor: { type: 'number' }
415
281
  },
416
- required: ['name', 'code']
417
- }
418
- },
419
- mergePolicy: {
420
- type: 'string'
421
- },
422
- splitPolicy: {
423
- type: 'string'
424
- }
425
- },
426
- required: ['type', 'name']
427
- },
428
- FieldInfo: {
429
- type: 'object',
430
- properties: {
431
- fieldName: {
432
- type: 'string'
433
- },
434
- visible: {
435
- type: 'boolean'
436
- },
437
- isEditable: {
438
- type: 'boolean'
439
- },
440
- label: {
441
- type: 'string'
442
- }
443
- },
444
- required: ['fieldName', 'visible', 'isEditable', 'label']
445
- },
446
- I3SMaterialTexture: {
447
- type: 'object',
448
- properties: {
449
- textureSetDefinitionId: {
450
- type: 'number'
451
- },
452
- texCoord: {
453
- type: 'number'
454
- },
455
- factor: {
456
- type: 'number'
282
+ required: ['textureSetDefinitionId']
457
283
  }
458
- },
459
- required: ['textureSetDefinitionId']
460
284
  }
461
- }
462
285
  };
463
- //# sourceMappingURL=conversion-dump-json-schema.js.map