@things-factory/figure-ui 10.1.181 → 10.1.185
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/client/modeller/editor-styles.ts +28 -9
- package/client/modeller/editor.ts +105 -12
- package/client/modeller/fasten-form.ts +207 -0
- package/client/modeller/fasten-geometry.ts +5 -1
- package/client/modeller/figure-facts.ts +4 -35
- package/client/modeller/figure-fasten-dialog.ts +457 -0
- package/client/modeller/figure-fasten-drawing.ts +32 -11
- package/client/modeller/figure-links.ts +56 -300
- package/client/modeller/figure-properties.ts +23 -70
- package/client/modeller/modeller-keys.ts +4 -4
- package/dist-client/modeller/clips.d.ts +2 -2
- package/dist-client/modeller/editor-styles.js +28 -9
- package/dist-client/modeller/editor-styles.js.map +1 -1
- package/dist-client/modeller/editor.d.ts +23 -2
- package/dist-client/modeller/editor.js +121 -12
- package/dist-client/modeller/editor.js.map +1 -1
- package/dist-client/modeller/fasten-form.d.ts +69 -0
- package/dist-client/modeller/fasten-form.js +131 -0
- package/dist-client/modeller/fasten-form.js.map +1 -0
- package/dist-client/modeller/fasten-geometry.d.ts +3 -1
- package/dist-client/modeller/fasten-geometry.js +6 -1
- package/dist-client/modeller/fasten-geometry.js.map +1 -1
- package/dist-client/modeller/figure-facts.d.ts +2 -13
- package/dist-client/modeller/figure-facts.js +2 -29
- package/dist-client/modeller/figure-facts.js.map +1 -1
- package/dist-client/modeller/figure-fasten-dialog.d.ts +69 -0
- package/dist-client/modeller/figure-fasten-dialog.js +433 -0
- package/dist-client/modeller/figure-fasten-dialog.js.map +1 -0
- package/dist-client/modeller/figure-fasten-drawing.d.ts +6 -3
- package/dist-client/modeller/figure-fasten-drawing.js +36 -10
- package/dist-client/modeller/figure-fasten-drawing.js.map +1 -1
- package/dist-client/modeller/figure-links.d.ts +14 -38
- package/dist-client/modeller/figure-links.js +58 -301
- package/dist-client/modeller/figure-links.js.map +1 -1
- package/dist-client/modeller/figure-properties.d.ts +12 -12
- package/dist-client/modeller/figure-properties.js +23 -72
- package/dist-client/modeller/figure-properties.js.map +1 -1
- package/dist-client/modeller/modeller-keys.js +4 -4
- package/dist-client/modeller/modeller-keys.js.map +1 -1
- package/dist-client/route.d.ts +1 -1
- package/dist-client/tsconfig.tsbuildinfo +1 -1
- package/package.json +8 -8
- package/test/browser/links-page.js +4 -4
- package/test/browser/links.check.mjs +196 -46
- package/test/browser/modeller-page.js +23 -0
- package/test/browser/modeller.check.mjs +19 -20
- package/test/browser/namespace-page.js +2 -29
- package/test/browser/popup-stand-in.js +48 -0
- package/test/browser/product-page.check.mjs +60 -9
- package/test/browser/product-page.js +30 -33
- package/test/browser/property-section.check.mjs +3 -3
- package/test/browser/props.check.mjs +28 -7
- package/test/browser/screen-page.js +7 -2
- package/test/browser/screen.check.mjs +28 -23
- package/test/browser/section-page.js +13 -41
- package/test/browser/section.check.mjs +39 -30
- package/test/fasten-form.test.ts +77 -0
- package/test/fasten-geometry.test.ts +2 -0
- package/test/first-minute.test.ts +7 -4
- package/test/properties.test.ts +11 -19
- package/translations/en.json +5 -12
- package/translations/es.json +5 -12
- package/translations/ja.json +5 -12
- package/translations/ko.json +5 -12
- package/translations/ms.json +5 -12
- package/translations/zh.json +5 -12
- package/client/modeller/mounting-part.ts +0 -15
package/translations/ms.json
CHANGED
|
@@ -39,7 +39,6 @@
|
|
|
39
39
|
"figure.button.save": "save",
|
|
40
40
|
"figure.button.see-the-trend-chart": "see the trend chart",
|
|
41
41
|
"figure.button.snap": "jajar ke grid",
|
|
42
|
-
"figure.label.declared-space": "ruang yang diisytiharkan",
|
|
43
42
|
"figure.label.follows-expression": "ditetapkan oleh ungkapan",
|
|
44
43
|
"figure.label.gizmo-rotate": "putar",
|
|
45
44
|
"figure.label.gizmo-scale": "saiz",
|
|
@@ -48,8 +47,6 @@
|
|
|
48
47
|
"figure.label.position-in-proportion": "berkadar dengan saiz figura",
|
|
49
48
|
"figure.label.primitive-rounded-box": "kotak bucu bulat",
|
|
50
49
|
"figure.text.catalog-needs-a-save": "boleh ditetapkan selepas disimpan.",
|
|
51
|
-
"figure.text.declared-space-declared": "diisytiharkan daripada bahagian.",
|
|
52
|
-
"figure.text.declared-space-none": "belum diisytiharkan.",
|
|
53
50
|
"figure.text.fasten-would-loop": "bahagian itu sudah dipasang pada bahagian ini, jadi ia tidak boleh dipasang sebaliknya.",
|
|
54
51
|
"figure.text.follow-would-loop": "dimensi itu sudah mengikut bahagian ini, jadi kedua-duanya tidak boleh saling mengikut.",
|
|
55
52
|
"figure.text.links-need-a-box": "ikut saiz untuk bahagian berbentuk kotak, pasangan untuk kotak dan silinder.",
|
|
@@ -90,11 +87,9 @@
|
|
|
90
87
|
"figure.text.size-range-part-gone": "pada saiznya sekarang, {at} mm pada {axis}, satu bahagian sudah tiada panjang. ubah pautan atau saiz.",
|
|
91
88
|
"figure.text.input-range-size": "saiz rajah {axis} hanya boleh ditetapkan antara {min} dan {max} mm. nilai diberi: {value} mm",
|
|
92
89
|
"figure.text.input-range": "nilai ini hanya boleh ditetapkan antara {min} dan {max}. nilai diberi: {value}",
|
|
93
|
-
"figure.text.mounting-face-needs-space": "isytiharkan ruang dahulu untuk memilih.",
|
|
94
90
|
"figure.text.part-is-referenced": "'{part}' tidak boleh dipadam: bahagian lain menggunakan nilainya seperti sedia ada.",
|
|
95
91
|
"figure.text.part-name-invalid": "'{name}' tidak boleh menjadi nama bahagian. Mulakan dengan huruf dan gunakan huruf, digit, - dan _.",
|
|
96
92
|
"figure.text.part-name-taken": "'{name}' sudah digunakan dalam bentuk ini.",
|
|
97
|
-
"figure.text.placement-redeclares": "menukarnya mengisytiharkan semula ruang daripada bahagian semasa.",
|
|
98
93
|
"figure.text.show-affected-parts": "tunjukkan bahagian terjejas",
|
|
99
94
|
"figure.button.to-floor": "to floor",
|
|
100
95
|
"figure.label.accepts": "diterima",
|
|
@@ -530,7 +525,6 @@
|
|
|
530
525
|
"figure.label.fastened-to": "fastened to",
|
|
531
526
|
"figure.label.not-fastened": "not fastened",
|
|
532
527
|
"figure.label.my-face": "my face",
|
|
533
|
-
"figure.label.target-part": "target part",
|
|
534
528
|
"figure.label.target-face": "target face",
|
|
535
529
|
"figure.label.stands-on-plane": "stand on the mounting plane",
|
|
536
530
|
"figure.label.facing-meet": "faces meet",
|
|
@@ -560,6 +554,10 @@
|
|
|
560
554
|
"figure.text.preview-face-unknown": "Muka ini tidak dapat ditunjukkan pada kanvas.",
|
|
561
555
|
"figure.text.target-would-loop": "{part} — dilekatkan pada {mine}, tidak boleh dipilih",
|
|
562
556
|
"figure.label.fasten-detail": "Butiran",
|
|
557
|
+
"figure.label.fasten-what": "Pada bahagian mana",
|
|
558
|
+
"figure.label.fasten-face-on-part": "Pada muka {part} yang mana",
|
|
559
|
+
"figure.label.fasten-face-on-plane": "Di mana pada {plane}",
|
|
560
|
+
"figure.label.fasten-how": "Bagaimana diletakkan",
|
|
563
561
|
"figure.label.facing": "Cara muka bertemu",
|
|
564
562
|
"figure.text.fasten-summary-gap": "jarak {mm} mm",
|
|
565
563
|
"figure.text.fasten-summary-gap-worked-out": "jarak ditentukan oleh formula",
|
|
@@ -598,10 +596,8 @@
|
|
|
598
596
|
"figure.label.room-undeclared": "not declared yet",
|
|
599
597
|
"figure.label.room-declared": "Diisytiharkan sekarang",
|
|
600
598
|
"figure.label.mounting-face": "Mounting face",
|
|
601
|
-
"figure.text.mounting-face-explained": "The face the figure is mounted on. A separate choice from the room it takes up.",
|
|
602
|
-
"figure.button.set-mounting-face": "This face",
|
|
603
599
|
"figure.button.clear-mounting-face": "Clear",
|
|
604
|
-
"figure.
|
|
600
|
+
"figure.text.mounting-face-unchecked-at-center": "tidak disemak untuk figure di tengah",
|
|
605
601
|
"figure.label.dimensions": "Dimensions",
|
|
606
602
|
"figure.label.part-id": "part id",
|
|
607
603
|
"figure.text.part-id-is-stable": "The part id is what fastenings, motions and connections point at, so it does not change.",
|
|
@@ -675,7 +671,6 @@
|
|
|
675
671
|
"figure.label.group-figure-size": "Saiz rajah",
|
|
676
672
|
"figure.label.group-part": "Bahagian",
|
|
677
673
|
"figure.label.group-figure": "Rajah",
|
|
678
|
-
"figure.label.group-standing": "Kedudukan letak",
|
|
679
674
|
"figure.label.group-catalog": "Maklumat katalog",
|
|
680
675
|
"figure.button.control-settings": "Nama, julat dan masa",
|
|
681
676
|
"figure.label.align-x": "kiri-kanan",
|
|
@@ -877,10 +872,8 @@
|
|
|
877
872
|
"figure.button.show-model-settings": "Tunjukkan tetapan model",
|
|
878
873
|
"figure.text.new-figure-name": "Rajah baharu",
|
|
879
874
|
"figure.text.fasten-editing": "Menyunting lekatan semasa: {face} pada {target}",
|
|
880
|
-
"figure.text.fasten-new": "Lekatkan baharu",
|
|
881
875
|
"figure.text.fasten-start": "Lekatkan bahagian ini pada muka bahagian lain supaya hubungannya kekal apabila salah satu berubah.",
|
|
882
876
|
"figure.button.fasten-start": "Lekatkan pada bahagian lain",
|
|
883
|
-
"figure.label.target-part-placeholder": "Pilih bahagian",
|
|
884
877
|
"figure.text.fasten-target-first": "Pilih bahagian yang hendak dilekatkan dahulu.",
|
|
885
878
|
"figure.text.fasten-edit-on-plane": "Bahagian ini disambungkan kepada rujukan peletakan model. Tanggalkan dahulu sebelum melekatkannya pada bahagian lain.",
|
|
886
879
|
"figure.button.align-to-floor": "Jajarkan ke lantai",
|
package/translations/zh.json
CHANGED
|
@@ -39,7 +39,6 @@
|
|
|
39
39
|
"figure.button.save": "save",
|
|
40
40
|
"figure.button.see-the-trend-chart": "see the trend chart",
|
|
41
41
|
"figure.button.snap": "对齐网格",
|
|
42
|
-
"figure.label.declared-space": "空间声明",
|
|
43
42
|
"figure.label.follows-expression": "由表达式决定",
|
|
44
43
|
"figure.label.gizmo-rotate": "旋转",
|
|
45
44
|
"figure.label.gizmo-scale": "尺寸",
|
|
@@ -48,8 +47,6 @@
|
|
|
48
47
|
"figure.label.position-in-proportion": "按图形尺寸比例",
|
|
49
48
|
"figure.label.primitive-rounded-box": "圆角盒",
|
|
50
49
|
"figure.text.catalog-needs-a-save": "保存后即可设置。",
|
|
51
|
-
"figure.text.declared-space-declared": "已根据部件声明。",
|
|
52
|
-
"figure.text.declared-space-none": "尚未声明。",
|
|
53
50
|
"figure.text.fasten-would-loop": "该部件已固定在此部件上,不能反向固定。",
|
|
54
51
|
"figure.text.follow-would-loop": "该尺寸已跟随此部件,二者不能互相跟随。",
|
|
55
52
|
"figure.text.links-need-a-box": "尺寸跟随适用于盒形部件,固定适用于盒形和圆柱部件。",
|
|
@@ -90,11 +87,9 @@
|
|
|
90
87
|
"figure.text.size-range-part-gone": "在当前尺寸 {at} mm({axis} 轴)下,已有部件长度为 0。请修改链接或尺寸。",
|
|
91
88
|
"figure.text.input-range-size": "图形尺寸 {axis} 只能设置在 {min} 到 {max} mm 之间。输入值:{value} mm",
|
|
92
89
|
"figure.text.input-range": "此值只能设置在 {min} 到 {max} 之间。输入值:{value}",
|
|
93
|
-
"figure.text.mounting-face-needs-space": "请先声明空间,然后才能选择。",
|
|
94
90
|
"figure.text.part-is-referenced": "其他部件直接使用 '{part}' 的值,无法删除。",
|
|
95
91
|
"figure.text.part-name-invalid": "'{name}' 不能作为部件名称。请以字母开头,只使用字母、数字、- 和 _。",
|
|
96
92
|
"figure.text.part-name-taken": "'{name}' 在此图形中已被使用。",
|
|
97
|
-
"figure.text.placement-redeclares": "更改后将按当前部件重新声明空间。",
|
|
98
93
|
"figure.text.show-affected-parts": "查看受影响部件",
|
|
99
94
|
"figure.button.to-floor": "to floor",
|
|
100
95
|
"figure.label.accepts": "接受的类型",
|
|
@@ -530,7 +525,6 @@
|
|
|
530
525
|
"figure.label.fastened-to": "fastened to",
|
|
531
526
|
"figure.label.not-fastened": "not fastened",
|
|
532
527
|
"figure.label.my-face": "my face",
|
|
533
|
-
"figure.label.target-part": "target part",
|
|
534
528
|
"figure.label.target-face": "target face",
|
|
535
529
|
"figure.label.stands-on-plane": "stand on the mounting plane",
|
|
536
530
|
"figure.label.facing-meet": "faces meet",
|
|
@@ -560,6 +554,10 @@
|
|
|
560
554
|
"figure.text.preview-face-unknown": "此面无法在画布上显示。",
|
|
561
555
|
"figure.text.target-would-loop": "{part} — 已附着于 {mine},无法选择",
|
|
562
556
|
"figure.label.fasten-detail": "详细",
|
|
557
|
+
"figure.label.fasten-what": "附着到哪个部件",
|
|
558
|
+
"figure.label.fasten-face-on-part": "{part}的哪个面",
|
|
559
|
+
"figure.label.fasten-face-on-plane": "{plane}上的哪里",
|
|
560
|
+
"figure.label.fasten-how": "如何放置",
|
|
563
561
|
"figure.label.facing": "接触方式",
|
|
564
562
|
"figure.text.fasten-summary-gap": "间距 {mm} mm",
|
|
565
563
|
"figure.text.fasten-summary-gap-worked-out": "间距由公式决定",
|
|
@@ -598,10 +596,8 @@
|
|
|
598
596
|
"figure.label.room-undeclared": "not declared yet",
|
|
599
597
|
"figure.label.room-declared": "当前声明",
|
|
600
598
|
"figure.label.mounting-face": "Mounting face",
|
|
601
|
-
"figure.text.mounting-face-explained": "The face the figure is mounted on. A separate choice from the room it takes up.",
|
|
602
|
-
"figure.button.set-mounting-face": "This face",
|
|
603
599
|
"figure.button.clear-mounting-face": "Clear",
|
|
604
|
-
"figure.
|
|
600
|
+
"figure.text.mounting-face-unchecked-at-center": "中心放置,不检查",
|
|
605
601
|
"figure.label.dimensions": "Dimensions",
|
|
606
602
|
"figure.label.part-id": "part id",
|
|
607
603
|
"figure.text.part-id-is-stable": "The part id is what fastenings, motions and connections point at, so it does not change.",
|
|
@@ -675,7 +671,6 @@
|
|
|
675
671
|
"figure.label.group-figure-size": "图形尺寸",
|
|
676
672
|
"figure.label.group-part": "部件",
|
|
677
673
|
"figure.label.group-figure": "图形",
|
|
678
|
-
"figure.label.group-standing": "放置方式",
|
|
679
674
|
"figure.label.group-catalog": "目录信息",
|
|
680
675
|
"figure.button.control-settings": "名称 · 范围 · 时间",
|
|
681
676
|
"figure.label.align-x": "左右位置",
|
|
@@ -877,10 +872,8 @@
|
|
|
877
872
|
"figure.button.show-model-settings": "查看模型设置",
|
|
878
873
|
"figure.text.new-figure-name": "新 Figure",
|
|
879
874
|
"figure.text.fasten-editing": "编辑当前附着:{face}附着在{target}上",
|
|
880
|
-
"figure.text.fasten-new": "新建附着",
|
|
881
875
|
"figure.text.fasten-start": "将此部件附着到另一部件的面上,任一部件变化时都会保持该关系。",
|
|
882
876
|
"figure.button.fasten-start": "附着到另一部件",
|
|
883
|
-
"figure.label.target-part-placeholder": "选择部件",
|
|
884
877
|
"figure.text.fasten-target-first": "请先选择要附着的部件。",
|
|
885
878
|
"figure.text.fasten-edit-on-plane": "此部件当前连接到模型的安装基准。附着到另一部件前请先解除连接。",
|
|
886
879
|
"figure.button.align-to-floor": "对齐地面",
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { FigureFace } from '@hatiolab/figure-model'
|
|
2
|
-
import type { FigureFigureFacts } from './figure-facts.js'
|
|
3
|
-
|
|
4
|
-
/**
|
|
5
|
-
* The mounting face the properties tab offers: the part and face picked in its lists, else the one set, else where the
|
|
6
|
-
* figure meets its plane (`suggested`) -- a conveyor's legs, not its bed (walk 1, 2026-09-26) -- else the first part.
|
|
7
|
-
* A part no longer in the figure is passed over.
|
|
8
|
-
*/
|
|
9
|
-
export function offeredMountingOf(
|
|
10
|
-
facts: Pick<FigureFigureFacts, 'parts' | 'mounting' | 'suggested'>,
|
|
11
|
-
picked: { part?: string; face?: FigureFace } = {}
|
|
12
|
-
): { part?: string; face: FigureFace } {
|
|
13
|
-
const part = [picked.part, facts.mounting?.part, facts.suggested?.part, facts.parts[0]].find(one => one && facts.parts.includes(one))
|
|
14
|
-
return { part, face: picked.face ?? facts.mounting?.face ?? facts.suggested?.face ?? 'bottom' }
|
|
15
|
-
}
|