@mlightcad/cad-editor 1.8.0-preview.3 → 1.8.0-preview.4

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 (202) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +425 -425
  3. package/dist/app/app.d.ts.map +1 -1
  4. package/dist/app/paletteHost.d.ts +11 -0
  5. package/dist/app/paletteHost.d.ts.map +1 -0
  6. package/dist/app/register.d.ts +6 -4
  7. package/dist/app/register.d.ts.map +1 -1
  8. package/dist/app/store.d.ts +15 -0
  9. package/dist/app/store.d.ts.map +1 -1
  10. package/dist/cad-editor.css +1 -1
  11. package/dist/cad-editor.js +33761 -20053
  12. package/dist/command/AcApBDetectCmd.d.ts +49 -0
  13. package/dist/command/AcApBDetectCmd.d.ts.map +1 -0
  14. package/dist/command/AcApBSearchCmd.d.ts +46 -0
  15. package/dist/command/AcApBSearchCmd.d.ts.map +1 -0
  16. package/dist/command/AcApClassicGroupCmd.d.ts +8 -0
  17. package/dist/command/AcApClassicGroupCmd.d.ts.map +1 -0
  18. package/dist/command/AcApCountListCmd.d.ts.map +1 -1
  19. package/dist/command/AcApFindCmd.d.ts.map +1 -1
  20. package/dist/command/AcApInsertPaletteCmd.d.ts.map +1 -1
  21. package/dist/command/AcApLayerStateCmd.d.ts.map +1 -1
  22. package/dist/command/AcApMLeaderStyleCmd.d.ts +8 -0
  23. package/dist/command/AcApMLeaderStyleCmd.d.ts.map +1 -0
  24. package/dist/command/AcApMarkupPanelCmd.d.ts.map +1 -1
  25. package/dist/command/AcApMeasurementPanelCmd.d.ts.map +1 -1
  26. package/dist/command/AcApMemCmd.d.ts.map +1 -1
  27. package/dist/command/AcApNewViewCmd.d.ts +8 -0
  28. package/dist/command/AcApNewViewCmd.d.ts.map +1 -0
  29. package/dist/command/AcApOpenPerfCmd.d.ts.map +1 -1
  30. package/dist/command/AcApPropertiesCmd.d.ts.map +1 -1
  31. package/dist/command/AcApUcsManCmd.d.ts +8 -0
  32. package/dist/command/AcApUcsManCmd.d.ts.map +1 -0
  33. package/dist/command/AcApViewCmd.d.ts +8 -0
  34. package/dist/command/AcApViewCmd.d.ts.map +1 -0
  35. package/dist/command/acuiCommandPaletteTab.d.ts +13 -0
  36. package/dist/command/acuiCommandPaletteTab.d.ts.map +1 -0
  37. package/dist/command/index.d.ts +7 -0
  38. package/dist/command/index.d.ts.map +1 -1
  39. package/dist/component/common/MlBaseDialog.vue.d.ts +20 -1
  40. package/dist/component/common/MlBaseDialog.vue.d.ts.map +1 -1
  41. package/dist/component/common/MlLayerSelect.vue.d.ts.map +1 -1
  42. package/dist/component/common/MlLayerTable.vue.d.ts.map +1 -1
  43. package/dist/component/dialog/MlBConvertDlg.vue.d.ts +24 -0
  44. package/dist/component/dialog/MlBConvertDlg.vue.d.ts.map +1 -0
  45. package/dist/component/dialog/MlClassicGroupDlg.vue.d.ts +4 -0
  46. package/dist/component/dialog/MlClassicGroupDlg.vue.d.ts.map +1 -0
  47. package/dist/component/dialog/MlDimStyleDlg.vue.d.ts.map +1 -1
  48. package/dist/component/dialog/MlExportHtmlDlg.vue.d.ts +4 -0
  49. package/dist/component/dialog/MlExportHtmlDlg.vue.d.ts.map +1 -1
  50. package/dist/component/dialog/MlExportPdfDlg.vue.d.ts +4 -0
  51. package/dist/component/dialog/MlExportPdfDlg.vue.d.ts.map +1 -1
  52. package/dist/component/dialog/MlMLeaderStyleDlg.vue.d.ts +19 -0
  53. package/dist/component/dialog/MlMLeaderStyleDlg.vue.d.ts.map +1 -0
  54. package/dist/component/dialog/MlMLeaderStylePreview.vue.d.ts +36 -0
  55. package/dist/component/dialog/MlMLeaderStylePreview.vue.d.ts.map +1 -0
  56. package/dist/component/dialog/MlNewViewDlg.vue.d.ts +19 -0
  57. package/dist/component/dialog/MlNewViewDlg.vue.d.ts.map +1 -0
  58. package/dist/component/dialog/MlOrderGroupDlg.vue.d.ts +22 -0
  59. package/dist/component/dialog/MlOrderGroupDlg.vue.d.ts.map +1 -0
  60. package/dist/component/dialog/MlUcsDetailsDlg.vue.d.ts +20 -0
  61. package/dist/component/dialog/MlUcsDetailsDlg.vue.d.ts.map +1 -0
  62. package/dist/component/dialog/MlUcsManagerDlg.vue.d.ts +19 -0
  63. package/dist/component/dialog/MlUcsManagerDlg.vue.d.ts.map +1 -0
  64. package/dist/component/dialog/MlViewManagerDlg.vue.d.ts +19 -0
  65. package/dist/component/dialog/MlViewManagerDlg.vue.d.ts.map +1 -0
  66. package/dist/component/dialog/dimStylePreview.d.ts +4 -59
  67. package/dist/component/dialog/dimStylePreview.d.ts.map +1 -1
  68. package/dist/component/dialog/index.d.ts +8 -0
  69. package/dist/component/dialog/index.d.ts.map +1 -1
  70. package/dist/component/dialog/mleaderStyleForm.d.ts +87 -0
  71. package/dist/component/dialog/mleaderStyleForm.d.ts.map +1 -0
  72. package/dist/component/dialog/mleaderStylePreview.d.ts +59 -0
  73. package/dist/component/dialog/mleaderStylePreview.d.ts.map +1 -0
  74. package/dist/component/palette/MlBDetectPalette.vue.d.ts +4 -0
  75. package/dist/component/palette/MlBDetectPalette.vue.d.ts.map +1 -0
  76. package/dist/component/palette/MlBSearchPalette.vue.d.ts +4 -0
  77. package/dist/component/palette/MlBSearchPalette.vue.d.ts.map +1 -0
  78. package/dist/component/palette/MlDesignReviewPalette.vue.d.ts.map +1 -1
  79. package/dist/component/palette/MlEntityProperties.vue.d.ts.map +1 -1
  80. package/dist/component/palette/MlFindPalette.vue.d.ts.map +1 -1
  81. package/dist/component/palette/MlHostedPanel.vue.d.ts +20 -0
  82. package/dist/component/palette/MlHostedPanel.vue.d.ts.map +1 -0
  83. package/dist/component/palette/MlLayerList.vue.d.ts.map +1 -1
  84. package/dist/component/palette/MlMeasurementPalette.vue.d.ts.map +1 -1
  85. package/dist/component/palette/MlMemoryProfile.vue.d.ts.map +1 -1
  86. package/dist/component/palette/MlMissingResources.vue.d.ts.map +1 -1
  87. package/dist/component/palette/MlPaletteManager.vue.d.ts.map +1 -1
  88. package/dist/component/ribbon/MlRibbonCommands.vue.d.ts.map +1 -1
  89. package/dist/component/ribbon/MlRibbonTextHeightButton.vue.d.ts +1 -1
  90. package/dist/component/statusBar/MlLayoutTabs.vue.d.ts.map +1 -1
  91. package/dist/component/statusBar/MlOsnapButton.vue.d.ts.map +1 -1
  92. package/dist/component/statusBar/MlPolarTrackingButton.vue.d.ts.map +1 -1
  93. package/dist/composable/index.d.ts +3 -3
  94. package/dist/composable/index.d.ts.map +1 -1
  95. package/dist/composable/namedViewsRevision.d.ts +7 -0
  96. package/dist/composable/namedViewsRevision.d.ts.map +1 -0
  97. package/dist/composable/openMissingResourcesPalette.d.ts.map +1 -1
  98. package/dist/composable/useBDetect.d.ts +104 -0
  99. package/dist/composable/useBDetect.d.ts.map +1 -0
  100. package/dist/composable/useBSearch.d.ts +216 -0
  101. package/dist/composable/useBSearch.d.ts.map +1 -0
  102. package/dist/composable/useLocale.d.ts +6 -0
  103. package/dist/composable/useLocale.d.ts.map +1 -1
  104. package/dist/composable/useMLeaderStyle.d.ts +30 -0
  105. package/dist/composable/useMLeaderStyle.d.ts.map +1 -0
  106. package/dist/locale/ar/command.d.ts +13 -0
  107. package/dist/locale/ar/command.d.ts.map +1 -1
  108. package/dist/locale/ar/dialog.d.ts +271 -0
  109. package/dist/locale/ar/dialog.d.ts.map +1 -1
  110. package/dist/locale/ar/main.d.ts +257 -108
  111. package/dist/locale/ar/main.d.ts.map +1 -1
  112. package/dist/locale/cs/command.d.ts +13 -0
  113. package/dist/locale/cs/command.d.ts.map +1 -1
  114. package/dist/locale/cs/dialog.d.ts +271 -0
  115. package/dist/locale/cs/dialog.d.ts.map +1 -1
  116. package/dist/locale/cs/main.d.ts +155 -2
  117. package/dist/locale/cs/main.d.ts.map +1 -1
  118. package/dist/locale/en/command.d.ts +13 -0
  119. package/dist/locale/en/command.d.ts.map +1 -1
  120. package/dist/locale/en/dialog.d.ts +271 -0
  121. package/dist/locale/en/dialog.d.ts.map +1 -1
  122. package/dist/locale/en/main.d.ts +151 -2
  123. package/dist/locale/en/main.d.ts.map +1 -1
  124. package/dist/locale/i18n.d.ts.map +1 -1
  125. package/dist/locale/ja/command.d.ts +62 -0
  126. package/dist/locale/ja/command.d.ts.map +1 -0
  127. package/dist/locale/ja/dialog.d.ts +835 -0
  128. package/dist/locale/ja/dialog.d.ts.map +1 -0
  129. package/dist/locale/ja/entity.d.ts +590 -0
  130. package/dist/locale/ja/entity.d.ts.map +1 -0
  131. package/dist/locale/ja/main.d.ts +1229 -0
  132. package/dist/locale/ja/main.d.ts.map +1 -0
  133. package/dist/locale/ko/command.d.ts +62 -0
  134. package/dist/locale/ko/command.d.ts.map +1 -0
  135. package/dist/locale/ko/dialog.d.ts +835 -0
  136. package/dist/locale/ko/dialog.d.ts.map +1 -0
  137. package/dist/locale/ko/entity.d.ts +590 -0
  138. package/dist/locale/ko/entity.d.ts.map +1 -0
  139. package/dist/locale/ko/main.d.ts +1229 -0
  140. package/dist/locale/ko/main.d.ts.map +1 -0
  141. package/dist/locale/syncViewerAcApI18n.d.ts +2 -7
  142. package/dist/locale/syncViewerAcApI18n.d.ts.map +1 -1
  143. package/dist/locale/tr/command.d.ts +13 -0
  144. package/dist/locale/tr/command.d.ts.map +1 -1
  145. package/dist/locale/tr/dialog.d.ts +521 -250
  146. package/dist/locale/tr/dialog.d.ts.map +1 -1
  147. package/dist/locale/tr/main.d.ts +155 -2
  148. package/dist/locale/tr/main.d.ts.map +1 -1
  149. package/dist/locale/zh/command.d.ts +13 -0
  150. package/dist/locale/zh/command.d.ts.map +1 -1
  151. package/dist/locale/zh/dialog.d.ts +271 -0
  152. package/dist/locale/zh/dialog.d.ts.map +1 -1
  153. package/dist/locale/zh/main.d.ts +151 -2
  154. package/dist/locale/zh/main.d.ts.map +1 -1
  155. package/dist/svg/ai/index.d.ts +7 -0
  156. package/dist/svg/ai/index.d.ts.map +1 -0
  157. package/dist/svg/index.d.ts +26 -0
  158. package/dist/svg/index.d.ts.map +1 -1
  159. package/dist/svg/leader/index.d.ts +4 -0
  160. package/dist/svg/leader/index.d.ts.map +1 -0
  161. package/dist/svg/toolbarIcons.d.ts +2 -0
  162. package/dist/svg/toolbarIcons.d.ts.map +1 -1
  163. package/package.json +36 -30
  164. package/src/locale/ar/command.ts +113 -95
  165. package/src/locale/ar/dialog.ts +848 -420
  166. package/src/locale/ar/entity.ts +665 -665
  167. package/src/locale/ar/main.ts +1271 -1610
  168. package/src/locale/cs/command.ts +71 -55
  169. package/src/locale/cs/dialog.ts +852 -329
  170. package/src/locale/cs/entity.ts +588 -588
  171. package/src/locale/cs/main.ts +1298 -1127
  172. package/src/locale/en/command.ts +72 -56
  173. package/src/locale/en/dialog.ts +851 -574
  174. package/src/locale/en/entity.ts +588 -588
  175. package/src/locale/en/main.ts +1305 -1140
  176. package/src/locale/i18n.ts +205 -177
  177. package/src/locale/index.ts +3 -3
  178. package/src/locale/ja/command.ts +70 -0
  179. package/src/locale/ja/dialog.ts +851 -0
  180. package/src/locale/ja/entity.ts +588 -0
  181. package/src/locale/ja/main.ts +1296 -0
  182. package/src/locale/ko/command.ts +66 -0
  183. package/src/locale/ko/dialog.ts +846 -0
  184. package/src/locale/ko/entity.ts +588 -0
  185. package/src/locale/ko/main.ts +1276 -0
  186. package/src/locale/pluralRules.ts +28 -28
  187. package/src/locale/syncViewerAcApI18n.ts +59 -33
  188. package/src/locale/tr/command.ts +74 -57
  189. package/src/locale/tr/dialog.ts +856 -332
  190. package/src/locale/tr/entity.ts +588 -588
  191. package/src/locale/tr/main.ts +1315 -1142
  192. package/src/locale/types.ts +3 -3
  193. package/src/locale/zh/command.ts +62 -49
  194. package/src/locale/zh/dialog.ts +837 -566
  195. package/src/locale/zh/entity.ts +588 -588
  196. package/src/locale/zh/main.ts +1243 -1089
  197. package/dist/composable/useFind.d.ts +0 -47
  198. package/dist/composable/useFind.d.ts.map +0 -1
  199. package/dist/composable/useMarkup.d.ts +0 -301
  200. package/dist/composable/useMarkup.d.ts.map +0 -1
  201. package/dist/composable/useMeasurement.d.ts +0 -149
  202. package/dist/composable/useMeasurement.d.ts.map +0 -1
@@ -1,177 +1,205 @@
1
- import {
2
- AcApI18n,
3
- type AcApLocale
4
- } from '@mlightcad/cad-simple-viewer/file-open-panel'
5
- import { AcDbEntity } from '@mlightcad/data-model'
6
- import { createI18n } from 'vue-i18n'
7
-
8
- import arCommand from './ar/command'
9
- import arDialog from './ar/dialog'
10
- import arEntity from './ar/entity'
11
- import arMain from './ar/main'
12
- import csCommand from './cs/command'
13
- import csDialog from './cs/dialog'
14
- import csEntity from './cs/entity'
15
- import csMain from './cs/main'
16
- import enCommand from './en/command'
17
- import enDialog from './en/dialog'
18
- import enEntity from './en/entity'
19
- import enMain from './en/main'
20
- import { pluralRules } from './pluralRules'
21
- import trCommand from './tr/command'
22
- import trDialog from './tr/dialog'
23
- import trEntity from './tr/entity'
24
- import trMain from './tr/main'
25
- import zhCommand from './zh/command'
26
- import zhDialog from './zh/dialog'
27
- import zhEnity from './zh/entity'
28
- import zhMain from './zh/main'
29
-
30
- /**
31
- * Resolves the startup locale from localStorage or the browser language.
32
- * Matches {@link useLocale} persistence (`preferred_lang`).
33
- */
34
- const getInitialLocale = (): AcApLocale => {
35
- const stored = localStorage.getItem('preferred_lang')
36
- if (
37
- stored === 'en' ||
38
- stored === 'zh' ||
39
- stored === 'tr' ||
40
- stored === 'cs' ||
41
- stored === 'ar'
42
- ) {
43
- return stored
44
- }
45
-
46
- const browserLang = navigator.language.toLowerCase()
47
- const browserLocale = browserLang.substring(0, 2)
48
- if (browserLocale === 'zh') return 'zh'
49
- if (browserLocale === 'tr') return 'tr'
50
- if (browserLocale === 'cs') return 'cs'
51
- if (browserLocale === 'ar') return 'ar'
52
- return 'en'
53
- }
54
-
55
- const messages = {
56
- en: {
57
- main: enMain,
58
- command: enCommand,
59
- dialog: enDialog,
60
- entity: enEntity
61
- },
62
- zh: {
63
- main: zhMain,
64
- command: zhCommand,
65
- dialog: zhDialog,
66
- entity: zhEnity
67
- },
68
- tr: {
69
- main: trMain,
70
- command: trCommand,
71
- dialog: trDialog,
72
- entity: trEntity
73
- },
74
- cs: {
75
- main: csMain,
76
- command: csCommand,
77
- dialog: csDialog,
78
- entity: csEntity
79
- },
80
- ar: {
81
- main: arMain,
82
- command: arCommand,
83
- dialog: arDialog,
84
- entity: arEntity
85
- }
86
- }
87
-
88
- AcApI18n.mergeLocaleMessage('en', messages.en)
89
- AcApI18n.mergeLocaleMessage('zh', messages.zh)
90
- AcApI18n.mergeLocaleMessage('tr', messages.tr)
91
- AcApI18n.mergeLocaleMessage('cs', messages.cs)
92
- AcApI18n.mergeLocaleMessage('ar', messages.ar)
93
-
94
- const initialLocale = getInitialLocale()
95
-
96
- export const i18n = createI18n({
97
- legacy: false,
98
- messages: AcApI18n.messages,
99
- locale: initialLocale,
100
- fallbackLocale: 'en',
101
- pluralRules,
102
- allowComposition: true,
103
- globalInjection: true
104
- })
105
-
106
- /**
107
- * vue-i18n follows {@link AcApI18n} — never the other way around.
108
- * All locale changes must go through {@link AcApI18n.setCurrentLocale}.
109
- *
110
- * The full-viewer package entry may carry a separate {@link AcApI18n}
111
- * singleton; {@link syncViewerAcApI18n} (called from {@link MlCadViewer})
112
- * mirrors this landing singleton onto it for plugins such as CAD Agent.
113
- */
114
- AcApI18n.events.localeChanged.addEventListener(args => {
115
- i18n.global.locale.value = args.new
116
- })
117
-
118
- // Align the engine with the UI startup locale (no-ops when already equal).
119
- AcApI18n.setCurrentLocale(initialLocale)
120
-
121
- export const entityName = (entity: AcDbEntity) => {
122
- const t = i18n.global.t
123
- const key = 'entity.entityName.' + entity.type
124
- return t(key, entity.type, { missingWarn: false })
125
- }
126
-
127
- export const entityPropName = (name: string) => {
128
- const t = i18n.global.t
129
- const key = 'entity.property.' + name
130
- return t(key, name, { missingWarn: false })
131
- }
132
-
133
- export const entityPropEnum = (name: string) => {
134
- const t = i18n.global.t
135
- const key = 'entity.enum.' + name
136
- return t(key, name, { missingWarn: true })
137
- }
138
-
139
- export const colorName = (colorKeyName: string) => {
140
- const normalizedSymbolicColor = colorKeyName.trim().toLowerCase()
141
-
142
- if (i18n.global.locale.value === 'ar') {
143
- if (normalizedSymbolicColor === 'bylayer') return 'حسب الطبقة'
144
- if (normalizedSymbolicColor === 'byblock') return 'حسب الكتلة'
145
- }
146
- const value = colorKeyName.trim()
147
-
148
- // Numeric values are AutoCAD Color Index (ACI) values.
149
- // They are identifiers, not locale message keys.
150
- if (/^\d+$/.test(value)) {
151
- return value
152
- }
153
-
154
- if (value === 'ByLayer' || value === 'ByBlock') {
155
- return value
156
- }
157
-
158
- const t = i18n.global.t
159
- const key = 'entity.color.' + value.toLowerCase()
160
- return t(key, value, {
161
- missingWarn: false,
162
- fallbackWarn: false
163
- })
164
- }
165
- export const toolPaletteTitle = (name: string) => {
166
- const t = i18n.global.t
167
- const key = `main.toolPalette.${name}.title`
168
- return t(key, name, { missingWarn: false })
169
- }
170
-
171
- export const toolPaletteTabName = (name: string) => {
172
- const t = i18n.global.t
173
- const key = `main.toolPalette.${name}.tab`
174
- return t(key, name, { missingWarn: false })
175
- }
176
-
177
- export default i18n
1
+ import {
2
+ AcApI18n,
3
+ type AcApLocale
4
+ } from '@mlightcad/cad-simple-viewer/file-open-panel'
5
+ import { AcDbEntity } from '@mlightcad/data-model'
6
+ import { createI18n } from 'vue-i18n'
7
+
8
+ import arCommand from './ar/command'
9
+ import arDialog from './ar/dialog'
10
+ import arEntity from './ar/entity'
11
+ import arMain from './ar/main'
12
+ import csCommand from './cs/command'
13
+ import csDialog from './cs/dialog'
14
+ import csEntity from './cs/entity'
15
+ import csMain from './cs/main'
16
+ import enCommand from './en/command'
17
+ import enDialog from './en/dialog'
18
+ import enEntity from './en/entity'
19
+ import enMain from './en/main'
20
+ import jaCommand from './ja/command'
21
+ import jaDialog from './ja/dialog'
22
+ import jaEntity from './ja/entity'
23
+ import jaMain from './ja/main'
24
+ import koCommand from './ko/command'
25
+ import koDialog from './ko/dialog'
26
+ import koEntity from './ko/entity'
27
+ import koMain from './ko/main'
28
+ import { pluralRules } from './pluralRules'
29
+ import trCommand from './tr/command'
30
+ import trDialog from './tr/dialog'
31
+ import trEntity from './tr/entity'
32
+ import trMain from './tr/main'
33
+ import zhCommand from './zh/command'
34
+ import zhDialog from './zh/dialog'
35
+ import zhEnity from './zh/entity'
36
+ import zhMain from './zh/main'
37
+
38
+ /**
39
+ * Resolves the startup locale from localStorage or the browser language.
40
+ * Matches {@link useLocale} persistence (`preferred_lang`).
41
+ */
42
+ const getInitialLocale = (): AcApLocale => {
43
+ const stored = localStorage.getItem('preferred_lang')
44
+ if (
45
+ stored === 'en' ||
46
+ stored === 'zh' ||
47
+ stored === 'ja' ||
48
+ stored === 'ko' ||
49
+ stored === 'tr' ||
50
+ stored === 'cs' ||
51
+ stored === 'ar'
52
+ ) {
53
+ return stored
54
+ }
55
+
56
+ const browserLang = navigator.language.toLowerCase()
57
+ const browserLocale = browserLang.substring(0, 2)
58
+ if (browserLocale === 'zh') return 'zh'
59
+ if (browserLocale === 'ja') return 'ja'
60
+ if (browserLocale === 'ko') return 'ko'
61
+ if (browserLocale === 'tr') return 'tr'
62
+ if (browserLocale === 'cs') return 'cs'
63
+ if (browserLocale === 'ar') return 'ar'
64
+ return 'en'
65
+ }
66
+
67
+ const messages = {
68
+ en: {
69
+ main: enMain,
70
+ command: enCommand,
71
+ dialog: enDialog,
72
+ entity: enEntity
73
+ },
74
+ zh: {
75
+ main: zhMain,
76
+ command: zhCommand,
77
+ dialog: zhDialog,
78
+ entity: zhEnity
79
+ },
80
+ ja: {
81
+ main: jaMain,
82
+ command: jaCommand,
83
+ dialog: jaDialog,
84
+ entity: jaEntity
85
+ },
86
+ ko: {
87
+ main: koMain,
88
+ command: koCommand,
89
+ dialog: koDialog,
90
+ entity: koEntity
91
+ },
92
+ tr: {
93
+ main: trMain,
94
+ command: trCommand,
95
+ dialog: trDialog,
96
+ entity: trEntity
97
+ },
98
+ cs: {
99
+ main: csMain,
100
+ command: csCommand,
101
+ dialog: csDialog,
102
+ entity: csEntity
103
+ },
104
+ ar: {
105
+ main: arMain,
106
+ command: arCommand,
107
+ dialog: arDialog,
108
+ entity: arEntity
109
+ }
110
+ }
111
+
112
+ AcApI18n.mergeLocaleMessage('en', messages.en)
113
+ AcApI18n.mergeLocaleMessage('zh', messages.zh)
114
+ AcApI18n.mergeLocaleMessage('ja', messages.ja)
115
+ AcApI18n.mergeLocaleMessage('ko', messages.ko)
116
+ AcApI18n.mergeLocaleMessage('tr', messages.tr)
117
+ AcApI18n.mergeLocaleMessage('cs', messages.cs)
118
+ AcApI18n.mergeLocaleMessage('ar', messages.ar)
119
+
120
+ const initialLocale = getInitialLocale()
121
+
122
+ export const i18n = createI18n({
123
+ legacy: false,
124
+ messages: AcApI18n.messages,
125
+ locale: initialLocale,
126
+ fallbackLocale: 'en',
127
+ pluralRules,
128
+ allowComposition: true,
129
+ globalInjection: true
130
+ })
131
+
132
+ /**
133
+ * vue-i18n follows {@link AcApI18n} — never the other way around.
134
+ * All locale changes must go through {@link AcApI18n.setCurrentLocale}.
135
+ *
136
+ * The full-viewer package entry may carry a separate {@link AcApI18n}
137
+ * singleton; {@link syncViewerAcApI18n} (called from {@link MlCadViewer})
138
+ * mirrors this landing singleton's locale and catalogs onto it so the
139
+ * command line and plugins (e.g. CAD Agent) resolve editor-registered
140
+ * command descriptions such as `mleaderstyle`.
141
+ */
142
+ AcApI18n.events.localeChanged.addEventListener(args => {
143
+ i18n.global.locale.value = args.new
144
+ })
145
+
146
+ // Align the engine with the UI startup locale (no-ops when already equal).
147
+ AcApI18n.setCurrentLocale(initialLocale)
148
+
149
+ export const entityName = (entity: AcDbEntity) => {
150
+ const t = i18n.global.t
151
+ const key = 'entity.entityName.' + entity.type
152
+ return t(key, entity.type, { missingWarn: false })
153
+ }
154
+
155
+ export const entityPropName = (name: string) => {
156
+ const t = i18n.global.t
157
+ const key = 'entity.property.' + name
158
+ return t(key, name, { missingWarn: false })
159
+ }
160
+
161
+ export const entityPropEnum = (name: string) => {
162
+ const t = i18n.global.t
163
+ const key = 'entity.enum.' + name
164
+ return t(key, name, { missingWarn: true })
165
+ }
166
+
167
+ export const colorName = (colorKeyName: string) => {
168
+ const normalizedSymbolicColor = colorKeyName.trim().toLowerCase()
169
+
170
+ if (i18n.global.locale.value === 'ar') {
171
+ if (normalizedSymbolicColor === 'bylayer') return 'حسب الطبقة'
172
+ if (normalizedSymbolicColor === 'byblock') return 'حسب الكتلة'
173
+ }
174
+ const value = colorKeyName.trim()
175
+
176
+ // Numeric values are AutoCAD Color Index (ACI) values.
177
+ // They are identifiers, not locale message keys.
178
+ if (/^\d+$/.test(value)) {
179
+ return value
180
+ }
181
+
182
+ if (value === 'ByLayer' || value === 'ByBlock') {
183
+ return value
184
+ }
185
+
186
+ const t = i18n.global.t
187
+ const key = 'entity.color.' + value.toLowerCase()
188
+ return t(key, value, {
189
+ missingWarn: false,
190
+ fallbackWarn: false
191
+ })
192
+ }
193
+ export const toolPaletteTitle = (name: string) => {
194
+ const t = i18n.global.t
195
+ const key = `main.toolPalette.${name}.title`
196
+ return t(key, name, { missingWarn: false })
197
+ }
198
+
199
+ export const toolPaletteTabName = (name: string) => {
200
+ const t = i18n.global.t
201
+ const key = `main.toolPalette.${name}.tab`
202
+ return t(key, name, { missingWarn: false })
203
+ }
204
+
205
+ export default i18n
@@ -1,3 +1,3 @@
1
- export * from './i18n'
2
- export * from './syncViewerAcApI18n'
3
- export * from './types'
1
+ export * from './i18n'
2
+ export * from './syncViewerAcApI18n'
3
+ export * from './types'
@@ -0,0 +1,70 @@
1
+ export default {
2
+ ACAD: {
3
+ hatch: {
4
+ description: 'リボンのコンテキスト タブを使用してハッチングを作成します'
5
+ },
6
+ layer: {
7
+ description: '画層プロパティ管理'
8
+ },
9
+ md: {
10
+ description:
11
+ 'フォント、イメージ、外部参照の「見つからない / 外部リソース」パレットを開きます'
12
+ },
13
+ xref: {
14
+ description:
15
+ '「見つからない / 外部リソース」パレットを外部参照タブで開きます'
16
+ },
17
+ properties: {
18
+ description: 'オブジェクト プロパティ パレット'
19
+ },
20
+ find: {
21
+ description:
22
+ '検索パレットを開き、すべてのレイアウトで文字、マルチ テキスト、属性、およびブロック、寸法、引出線、表内の文字を検索します'
23
+ },
24
+ countlist: {
25
+ description: '集計パレットを開き、集計したブロックを表示および管理します'
26
+ },
27
+ mem: {
28
+ description:
29
+ 'メモリ プロファイル パレットを開き、図面のメモリ使用量を分析します'
30
+ },
31
+ pttype: {
32
+ description: '点オブジェクトの表示スタイルとサイズを指定します'
33
+ },
34
+ qselect: {
35
+ description:
36
+ 'オブジェクト タイプとプロパティの条件でフィルタして選択セットを作成します'
37
+ },
38
+ units: {
39
+ description:
40
+ '長さと角度の単位形式、精度、角度の方向、挿入尺度の単位を設定します'
41
+ },
42
+ style: {
43
+ description:
44
+ '文字およびマルチ テキストの文字スタイルを作成、修正、または指定します'
45
+ },
46
+ mleaderstyle: {
47
+ description:
48
+ 'マルチ引出線オブジェクトのマルチ引出線スタイルを作成および修正します'
49
+ },
50
+ attedit: {
51
+ description: 'ブロック参照の属性値と表示プロパティを編集します'
52
+ },
53
+ bsearch: {
54
+ description:
55
+ 'スマート ブロック:同一のジオメトリを検索してブロックに変換します',
56
+ prompt: '検索するオブジェクトを選択'
57
+ },
58
+ bdetect: {
59
+ description: 'スマート ブロック:図面内の繰り返しオブジェクトを検出してブロックに変換します'
60
+ },
61
+ attdef: {
62
+ description: 'ブロックの属性定義を作成します'
63
+ },
64
+ classicgroup: {
65
+ description:
66
+ 'オブジェクトグループダイアログを開き、グループを作成および管理します'
67
+ }
68
+ },
69
+ USER: {}
70
+ }