pcb-scene3d-viewer 1.3.4 → 1.3.6
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.
- package/README.md +7 -0
- package/docs/api.md +3 -0
- package/docs/release-notes-v1.3.5.md +8 -0
- package/docs/release-notes-v1.3.6.md +7 -0
- package/package.json +4 -2
- package/src/PcbScene3dStepLoader.mjs +11 -0
package/README.md
CHANGED
|
@@ -47,6 +47,11 @@ second quarter-turn when the imported assembly envelope proves that its depth
|
|
|
47
47
|
and height axes are already exchanged. See the
|
|
48
48
|
[1.3.3 release notes](docs/release-notes-v1.3.3.md).
|
|
49
49
|
|
|
50
|
+
Version 1.3.6 requires the matching OCCT 0.0.29 worker. Version 1.3.5 reports
|
|
51
|
+
OCCT worker resource failures to the current STEP load
|
|
52
|
+
and permits a later retry. See the
|
|
53
|
+
[1.3.5 release notes](docs/release-notes-v1.3.5.md).
|
|
54
|
+
|
|
50
55
|
## CircuitJSON 1.1 convergence
|
|
51
56
|
|
|
52
57
|
Version 1.2.2 accepts the common document and prepared-context shapes returned
|
|
@@ -155,6 +160,8 @@ const controller = new PcbScene3dController(viewportNode, document)
|
|
|
155
160
|
|
|
156
161
|
- [API](docs/api.md)
|
|
157
162
|
- [CircuitJSON usage](docs/circuitjson.md)
|
|
163
|
+
- [1.3.5 release notes](docs/release-notes-v1.3.5.md)
|
|
164
|
+
- [1.3.6 release notes](docs/release-notes-v1.3.6.md)
|
|
158
165
|
- [1.3.3 release notes](docs/release-notes-v1.3.3.md)
|
|
159
166
|
- [1.3.2 release notes](docs/release-notes-v1.3.2.md)
|
|
160
167
|
- [1.3.1 release notes](docs/release-notes-v1.3.1.md)
|
package/docs/api.md
CHANGED
|
@@ -212,6 +212,9 @@ are unavailable, the viewer dynamically imports the ESM factory directly; it
|
|
|
212
212
|
does not inject a classic script or depend on a global factory. Worker transfer
|
|
213
213
|
uses a loader-owned byte snapshot, and rejected ESM initialization is evicted
|
|
214
214
|
so callers retain their input and can retry transient failures.
|
|
215
|
+
Worker resource failures are returned to the loader as failed import results;
|
|
216
|
+
the loader rejects the affected request with the reported cause and can retry
|
|
217
|
+
the next load without an uncaught worker exception.
|
|
215
218
|
|
|
216
219
|
Static `authHeaders` are sent only to the main model origin. A host that
|
|
217
220
|
intentionally authorizes another origin can return headers from
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
# pcb-scene3d-viewer 1.3.5
|
|
2
|
+
|
|
3
|
+
The STEP loader now forwards a failed OCCT worker result with its resource
|
|
4
|
+
failure message instead of reporting only that the importer returned no meshes.
|
|
5
|
+
Failed loads are evicted from the model cache, so a later request can retry.
|
|
6
|
+
|
|
7
|
+
This release pairs with `@sunbox/occt-import-js` 0.0.29, which posts failures
|
|
8
|
+
as results rather than uncaught worker exceptions.
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
# pcb-scene3d-viewer 1.3.6
|
|
2
|
+
|
|
3
|
+
This release requires `@sunbox/occt-import-js` 0.0.29 so installs of the viewer
|
|
4
|
+
use the worker that returns resource failures to the STEP loader. It avoids a
|
|
5
|
+
nested copy of the earlier worker when the host app also uses 0.0.29.
|
|
6
|
+
|
|
7
|
+
The STEP loader behavior introduced in 1.3.5 is unchanged.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pcb-scene3d-viewer",
|
|
3
|
-
"version": "1.3.
|
|
3
|
+
"version": "1.3.6",
|
|
4
4
|
"description": "Reusable Three.js PCB 3D scene viewer for normalized ECAD and CircuitJSON scene descriptions",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"pcb",
|
|
@@ -40,6 +40,8 @@
|
|
|
40
40
|
"docs/release-notes-v1.3.1.md",
|
|
41
41
|
"docs/release-notes-v1.3.2.md",
|
|
42
42
|
"docs/release-notes-v1.3.3.md",
|
|
43
|
+
"docs/release-notes-v1.3.5.md",
|
|
44
|
+
"docs/release-notes-v1.3.6.md",
|
|
43
45
|
"docs/model-format.md",
|
|
44
46
|
"docs/testing.md",
|
|
45
47
|
"spec",
|
|
@@ -60,7 +62,7 @@
|
|
|
60
62
|
"check:format": "prettier --check ."
|
|
61
63
|
},
|
|
62
64
|
"dependencies": {
|
|
63
|
-
"@sunbox/occt-import-js": "^0.0.
|
|
65
|
+
"@sunbox/occt-import-js": "^0.0.29",
|
|
64
66
|
"circuitjson-toolkit": "^1.4.3",
|
|
65
67
|
"earcut": "3.0.2",
|
|
66
68
|
"fflate": "^0.8.2",
|
|
@@ -234,6 +234,17 @@ export class PcbScene3dStepLoader {
|
|
|
234
234
|
#handleWorkerMessage(event) {
|
|
235
235
|
const activeRequest = this.#activeWorkerRequest
|
|
236
236
|
this.#activeWorkerRequest = null
|
|
237
|
+
if (event?.data?.success === false && event.data.error) {
|
|
238
|
+
activeRequest?.reject(
|
|
239
|
+
new Error(
|
|
240
|
+
String(
|
|
241
|
+
event.data.error.message ||
|
|
242
|
+
'STEP importer worker failed.'
|
|
243
|
+
)
|
|
244
|
+
)
|
|
245
|
+
)
|
|
246
|
+
return
|
|
247
|
+
}
|
|
237
248
|
activeRequest?.resolve(event?.data || {})
|
|
238
249
|
}
|
|
239
250
|
|