@pisell/materials 6.11.18 → 6.11.20
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/build/lowcode/assets-daily.json +11 -11
- package/build/lowcode/assets-dev.json +2 -2
- package/build/lowcode/assets-prod.json +11 -11
- package/build/lowcode/index.js +1 -1
- package/build/lowcode/meta.js +2 -2
- package/build/lowcode/preview.js +7 -7
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +13 -13
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +13 -13
- package/es/components/pisellFloorMapLayout/components/FigmaTableCard.js +12 -8
- package/es/components/pisellFloorMapLayout/components/FloorMapDataForm.js +4 -2
- package/es/components/pisellFloorMapLayout/components/FloorMapEditTopBar.js +1 -1
- package/es/components/pisellFloorMapLayout/components/FloorMapEditTopBar.less +4 -3
- package/es/components/pisellFloorMapLayout/components/FloorMapImageElement.js +4 -2
- package/es/components/pisellFloorMapLayout/components/FloorMapToolbar.js +16 -13
- package/es/components/pisellFloorMapLayout/components/ViewControls.js +8 -6
- package/es/components/pisellFloorMapLayout/hooks/useFloorMapEditState.js +2 -1
- package/es/components/pisellFloorMapLayout/locales-ja.d.ts +104 -0
- package/es/components/pisellFloorMapLayout/locales-ja.js +103 -0
- package/es/components/pisellFloorMapLayout/locales-pt.d.ts +104 -0
- package/es/components/pisellFloorMapLayout/locales-pt.js +103 -0
- package/es/components/pisellFloorMapLayout/locales.d.ts +314 -0
- package/es/components/pisellFloorMapLayout/locales.js +123 -4
- package/es/components/pisellFloorMapLayout/utils/floorMapDataRecordLabel.d.ts +2 -3
- package/es/components/pisellFloorMapLayout/utils/floorMapDataRecordLabel.js +3 -12
- package/es/components/pisellFloorMapLayout/utils/floorMapElementKindUtils.js +4 -3
- package/es/components/pisellRecordBoard/utils/recordBoardColumns.js +3 -2
- package/es/components/select-time/index.js +1 -0
- package/es/locales/en-US.d.ts +1 -0
- package/es/locales/en-US.js +1 -0
- package/es/locales/ja.d.ts +8 -0
- package/es/locales/ja.js +25 -7
- package/es/locales/pt.d.ts +8 -0
- package/es/locales/pt.js +21 -3
- package/es/locales/zh-CN.d.ts +1 -0
- package/es/locales/zh-CN.js +1 -0
- package/es/locales/zh-TW.d.ts +1 -0
- package/es/locales/zh-TW.js +1 -0
- package/lib/components/pisellFloorMapLayout/components/FigmaTableCard.js +13 -9
- package/lib/components/pisellFloorMapLayout/components/FloorMapDataForm.js +4 -2
- package/lib/components/pisellFloorMapLayout/components/FloorMapEditTopBar.js +5 -1
- package/lib/components/pisellFloorMapLayout/components/FloorMapEditTopBar.less +4 -3
- package/lib/components/pisellFloorMapLayout/components/FloorMapImageElement.js +4 -2
- package/lib/components/pisellFloorMapLayout/components/FloorMapToolbar.js +24 -13
- package/lib/components/pisellFloorMapLayout/components/ViewControls.js +12 -6
- package/lib/components/pisellFloorMapLayout/hooks/useFloorMapEditState.js +2 -1
- package/lib/components/pisellFloorMapLayout/locales-ja.d.ts +104 -0
- package/lib/components/pisellFloorMapLayout/locales-ja.js +124 -0
- package/lib/components/pisellFloorMapLayout/locales-pt.d.ts +104 -0
- package/lib/components/pisellFloorMapLayout/locales-pt.js +124 -0
- package/lib/components/pisellFloorMapLayout/locales.d.ts +314 -0
- package/lib/components/pisellFloorMapLayout/locales.js +132 -4
- package/lib/components/pisellFloorMapLayout/utils/floorMapDataRecordLabel.d.ts +2 -3
- package/lib/components/pisellFloorMapLayout/utils/floorMapDataRecordLabel.js +1 -7
- package/lib/components/pisellFloorMapLayout/utils/floorMapElementKindUtils.js +6 -3
- package/lib/components/pisellRecordBoard/utils/recordBoardColumns.js +11 -1
- package/lib/components/select-time/index.js +1 -0
- package/lib/locales/en-US.d.ts +1 -0
- package/lib/locales/en-US.js +1 -0
- package/lib/locales/ja.d.ts +8 -0
- package/lib/locales/ja.js +22 -1
- package/lib/locales/pt.d.ts +8 -0
- package/lib/locales/pt.js +22 -1
- package/lib/locales/zh-CN.d.ts +1 -0
- package/lib/locales/zh-CN.js +1 -0
- package/lib/locales/zh-TW.d.ts +1 -0
- package/lib/locales/zh-TW.js +1 -0
- package/lowcode/floor-map-image-element/meta.ts +1 -1
- package/lowcode/floor-map-layout-provider/meta.ts +1 -1
- package/lowcode/pisell-floor-map-layout/meta.ts +1 -1
- package/lowcode/render-figma-style-round-table-card/meta.ts +1 -1
- package/lowcode/render-figma-style-table-card/meta.ts +1 -1
- package/package.json +3 -3
|
@@ -5,6 +5,10 @@
|
|
|
5
5
|
import React from 'react';
|
|
6
6
|
import { Avatar } from 'antd';
|
|
7
7
|
import { UserOutlined, ClockCircleOutlined, TeamOutlined, AuditOutlined, FieldTimeOutlined, EnvironmentOutlined } from '@ant-design/icons';
|
|
8
|
+
import { locales } from '@pisell/utils';
|
|
9
|
+
var I18N_CARD = 'pisell-floor-map-layout.card-placeholder';
|
|
10
|
+
var I18N_FIGMA = 'pisell-floor-map-layout.figma-card';
|
|
11
|
+
|
|
8
12
|
/** Figma 设计 token(Pisell 2.0 Component Library) */
|
|
9
13
|
var FIGMA = {
|
|
10
14
|
white: '#FFFFFF',
|
|
@@ -53,7 +57,7 @@ export function getFigmaTableCardFromMerged(item, dataSources) {
|
|
|
53
57
|
var el = item._sceneElement;
|
|
54
58
|
var binding = el === null || el === void 0 ? void 0 : el.dataBinding;
|
|
55
59
|
var titleFromElement = (el === null || el === void 0 ? void 0 : el.name) != null && String(el.name).trim() ? String(el.name).trim() : '';
|
|
56
|
-
var kindLabel = item.elementKind === 'roundTable' ?
|
|
60
|
+
var kindLabel = locales.getText(item.elementKind === 'roundTable' ? "".concat(I18N_FIGMA, ".kind-round-table") : "".concat(I18N_FIGMA, ".kind-square-table"));
|
|
57
61
|
var hasDataSource = Boolean((binding === null || binding === void 0 ? void 0 : binding.dataSourceKey) && String(binding.dataSourceKey).trim() !== '');
|
|
58
62
|
var rid = (binding === null || binding === void 0 ? void 0 : binding.recordId) != null ? String(binding.recordId).trim() : '';
|
|
59
63
|
var boundToData = Boolean(hasDataSource && rid !== '');
|
|
@@ -65,7 +69,7 @@ export function getFigmaTableCardFromMerged(item, dataSources) {
|
|
|
65
69
|
if (!hasLiveRow) {
|
|
66
70
|
/** 记录缺失或与「未选数据源」占位同一视觉(虚线 #bfbfbf),便于识别为待处理态 */
|
|
67
71
|
var borderColor = '#bfbfbf';
|
|
68
|
-
var hint = !hasDataSource || !rid ? hasDataSource ?
|
|
72
|
+
var hint = !hasDataSource || !rid ? hasDataSource ? locales.getText("".concat(I18N_CARD, ".hint-select-row")) : locales.getText("".concat(I18N_CARD, ".hint-bind-datasource")) : rid.startsWith('new_') ? locales.getText("".concat(I18N_CARD, ".hint-new-slot")).replace(/\{kind\}/g, kindLabel) : locales.getText("".concat(I18N_CARD, ".hint-row-not-found"));
|
|
69
73
|
return {
|
|
70
74
|
id: item.id,
|
|
71
75
|
isNoDataPlaceholder: true,
|
|
@@ -165,7 +169,7 @@ function TableCardInfoRows(_ref3) {
|
|
|
165
169
|
if (!hasCapacity && !hasArea) return null;
|
|
166
170
|
return /*#__PURE__*/React.createElement(React.Fragment, null, hasCapacity && /*#__PURE__*/React.createElement(FigmaCardRow, {
|
|
167
171
|
icon: /*#__PURE__*/React.createElement(TeamOutlined, null)
|
|
168
|
-
}, /*#__PURE__*/React.createElement("span", null, "
|
|
172
|
+
}, /*#__PURE__*/React.createElement("span", null, locales.getText("".concat(I18N_FIGMA, ".capacity-seats")).replace(/\{n\}/g, String(cardItem.capacity)))), hasArea && /*#__PURE__*/React.createElement(FigmaCardRow, {
|
|
169
173
|
icon: /*#__PURE__*/React.createElement(EnvironmentOutlined, null)
|
|
170
174
|
}, /*#__PURE__*/React.createElement("span", null, cardItem.area)));
|
|
171
175
|
}
|
|
@@ -234,7 +238,7 @@ function TableCardContent(_ref4) {
|
|
|
234
238
|
icon: /*#__PURE__*/React.createElement(ClockCircleOutlined, null)
|
|
235
239
|
}, /*#__PURE__*/React.createElement("span", null, cardItem.reserveTime))), (status === 'dining' || status === 'waiting' || status === 'billed' || status === 'availableSoon') && cardItem.guests != null && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(FigmaCardRow, {
|
|
236
240
|
icon: /*#__PURE__*/React.createElement(TeamOutlined, null)
|
|
237
|
-
}, /*#__PURE__*/React.createElement("span", null,
|
|
241
|
+
}, /*#__PURE__*/React.createElement("span", null, locales.getText("".concat(I18N_FIGMA, ".guests-count")).replace(/\{n\}/g, String(cardItem.guests)))), cardItem.dishes && /*#__PURE__*/React.createElement(FigmaCardRow, {
|
|
238
242
|
icon: /*#__PURE__*/React.createElement(AuditOutlined, null)
|
|
239
243
|
}, /*#__PURE__*/React.createElement("span", null, cardItem.dishes)), cardItem.duration && /*#__PURE__*/React.createElement(FigmaCardRow, {
|
|
240
244
|
icon: /*#__PURE__*/React.createElement(FieldTimeOutlined, null)
|
|
@@ -247,7 +251,7 @@ function TableCardContent(_ref4) {
|
|
|
247
251
|
function renderTableKindNoDataPlaceholder(cardItem, shape) {
|
|
248
252
|
var _cardItem$placeholder, _cardItem$placeholder2, _cardItem$placeholder3;
|
|
249
253
|
var borderColor = (_cardItem$placeholder = cardItem.placeholderBorderColor) !== null && _cardItem$placeholder !== void 0 ? _cardItem$placeholder : '#bfbfbf';
|
|
250
|
-
var title = (_cardItem$placeholder2 = cardItem.placeholderTitle) !== null && _cardItem$placeholder2 !== void 0 ? _cardItem$placeholder2 :
|
|
254
|
+
var title = (_cardItem$placeholder2 = cardItem.placeholderTitle) !== null && _cardItem$placeholder2 !== void 0 ? _cardItem$placeholder2 : locales.getText("".concat(I18N_FIGMA, ".default-table"));
|
|
251
255
|
var hint = (_cardItem$placeholder3 = cardItem.placeholderHint) !== null && _cardItem$placeholder3 !== void 0 ? _cardItem$placeholder3 : '';
|
|
252
256
|
return /*#__PURE__*/React.createElement("div", {
|
|
253
257
|
style: {
|
|
@@ -382,7 +386,7 @@ export function renderFigmaStyleRoundTableCard(cardItem) {
|
|
|
382
386
|
style: {
|
|
383
387
|
marginRight: 4
|
|
384
388
|
}
|
|
385
|
-
}), "
|
|
389
|
+
}), locales.getText("".concat(I18N_FIGMA, ".capacity-seats")).replace(/\{n\}/g, String(cardItem.capacity))), cardItem.area != null && cardItem.area !== '' && /*#__PURE__*/React.createElement("span", null, /*#__PURE__*/React.createElement(EnvironmentOutlined, {
|
|
386
390
|
style: {
|
|
387
391
|
marginRight: 4
|
|
388
392
|
}
|
|
@@ -406,13 +410,13 @@ export function renderFigmaStyleRoundTableCard(cardItem) {
|
|
|
406
410
|
color: FIGMA.gray700,
|
|
407
411
|
marginTop: 2
|
|
408
412
|
}
|
|
409
|
-
},
|
|
413
|
+
}, locales.getText("".concat(I18N_FIGMA, ".guests-count")).replace(/\{n\}/g, String(cardItem.guests))), (cardItem.capacity != null || cardItem.area != null && cardItem.area !== '') && /*#__PURE__*/React.createElement("div", {
|
|
410
414
|
style: {
|
|
411
415
|
fontSize: 12,
|
|
412
416
|
color: FIGMA.gray700,
|
|
413
417
|
marginTop: 2
|
|
414
418
|
}
|
|
415
|
-
}, cardItem.capacity != null && "
|
|
419
|
+
}, cardItem.capacity != null && locales.getText("".concat(I18N_FIGMA, ".capacity-seats")).replace(/\{n\}/g, String(cardItem.capacity)), cardItem.capacity != null && cardItem.area && ' · ', cardItem.area))));
|
|
416
420
|
}
|
|
417
421
|
|
|
418
422
|
/** 返回用于 renderItemByKind.table 的渲染函数(方桌) */
|
|
@@ -17,8 +17,10 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
17
17
|
import React, { useState, useCallback, useEffect } from 'react';
|
|
18
18
|
import classNames from 'classnames';
|
|
19
19
|
import { Form, Input, InputNumber, Select, Button } from 'antd';
|
|
20
|
+
import { locales } from '@pisell/utils';
|
|
20
21
|
import "./FloorMapDataForm.less";
|
|
21
22
|
var PREFIX = 'pisell-floor-map-layout';
|
|
23
|
+
var I18N_DF = 'pisell-floor-map-layout.data-form';
|
|
22
24
|
function renderFormControl(col, value) {
|
|
23
25
|
var _col$type, _col$options;
|
|
24
26
|
var type = (_col$type = col.type) !== null && _col$type !== void 0 ? _col$type : 'string';
|
|
@@ -97,7 +99,7 @@ export function FloorMapDataForm(props) {
|
|
|
97
99
|
className: classNames("".concat(PREFIX, "-data-form"), className)
|
|
98
100
|
}, /*#__PURE__*/React.createElement("p", {
|
|
99
101
|
className: "".concat(PREFIX, "-data-form-empty")
|
|
100
|
-
}, "
|
|
102
|
+
}, locales.getText("".concat(I18N_DF, ".empty"))));
|
|
101
103
|
}
|
|
102
104
|
return /*#__PURE__*/React.createElement("div", {
|
|
103
105
|
className: classNames("".concat(PREFIX, "-data-form"), className)
|
|
@@ -126,6 +128,6 @@ export function FloorMapDataForm(props) {
|
|
|
126
128
|
htmlType: "submit",
|
|
127
129
|
loading: saving,
|
|
128
130
|
disabled: !changed
|
|
129
|
-
}, "
|
|
131
|
+
}, locales.getText("".concat(I18N_DF, ".save-record"))))));
|
|
130
132
|
}
|
|
131
133
|
export default FloorMapDataForm;
|
|
@@ -92,7 +92,7 @@ export function FloorMapEditTopBar(props) {
|
|
|
92
92
|
}, /*#__PURE__*/React.createElement(FullscreenOutlined, null)) : null) : null);
|
|
93
93
|
}
|
|
94
94
|
return /*#__PURE__*/React.createElement("div", {
|
|
95
|
-
className: classNames("".concat(PREFIX, "-edit-top-bar"), className),
|
|
95
|
+
className: classNames("".concat(PREFIX, "-edit-top-bar"), "".concat(PREFIX, "-edit-top-bar--full-chrome"), className),
|
|
96
96
|
role: "toolbar",
|
|
97
97
|
"aria-label": topBarLabels.aria
|
|
98
98
|
}, /*#__PURE__*/React.createElement("div", {
|
|
@@ -129,12 +129,13 @@
|
|
|
129
129
|
}
|
|
130
130
|
|
|
131
131
|
/**
|
|
132
|
-
* 只读顶栏(`edit-top-bar` + `read-canvas-tabs-bar`
|
|
133
|
-
*
|
|
132
|
+
* 只读顶栏(`edit-top-bar` + `read-canvas-tabs-bar` 并列)、编辑态 compact、
|
|
133
|
+
* 以及全屏/locked 时的 full 顶栏:与左侧 Tab 同一浅灰底,去掉右侧大块白底与竖线分割。
|
|
134
134
|
*/
|
|
135
135
|
|
|
136
136
|
&.pisell-floor-map-layout-read-canvas-tabs-bar,
|
|
137
|
-
&--compact
|
|
137
|
+
&--compact,
|
|
138
|
+
&--full-chrome {
|
|
138
139
|
background: rgba(0, 0, 0, 0.04);
|
|
139
140
|
|
|
140
141
|
.pisell-floor-map-layout-edit-top-bar-actions {
|
|
@@ -8,7 +8,9 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
8
8
|
* 平面图「图片图元」内层展示:支持 URL、object-fit 铺满;无地址或加载失败时占位
|
|
9
9
|
*/
|
|
10
10
|
import React, { useEffect, useState } from 'react';
|
|
11
|
+
import { locales } from '@pisell/utils';
|
|
11
12
|
var PREFIX = 'pisell-floor-map-layout';
|
|
13
|
+
var I18N_IMG = 'pisell-floor-map-layout.image-element';
|
|
12
14
|
export function FloorMapImageElement(props) {
|
|
13
15
|
var imageUrl = props.imageUrl,
|
|
14
16
|
name = props.name;
|
|
@@ -20,7 +22,7 @@ export function FloorMapImageElement(props) {
|
|
|
20
22
|
useEffect(function () {
|
|
21
23
|
setBroken(false);
|
|
22
24
|
}, [trimmed]);
|
|
23
|
-
var label = name != null && String(name).trim() ? String(name).trim() :
|
|
25
|
+
var label = name != null && String(name).trim() ? String(name).trim() : locales.getText("".concat(I18N_IMG, ".default-name"));
|
|
24
26
|
if (!trimmed || broken) {
|
|
25
27
|
return /*#__PURE__*/React.createElement("div", {
|
|
26
28
|
className: "".concat(PREFIX, "-image-element-placeholder"),
|
|
@@ -48,7 +50,7 @@ export function FloorMapImageElement(props) {
|
|
|
48
50
|
color: '#595959',
|
|
49
51
|
marginBottom: 4
|
|
50
52
|
}
|
|
51
|
-
}, label), /*#__PURE__*/React.createElement("span", null, !trimmed ?
|
|
53
|
+
}, label), /*#__PURE__*/React.createElement("span", null, !trimmed ? locales.getText("".concat(I18N_IMG, ".hint-no-url")) : locales.getText("".concat(I18N_IMG, ".hint-load-fail"))));
|
|
52
54
|
}
|
|
53
55
|
return /*#__PURE__*/React.createElement("img", {
|
|
54
56
|
src: trimmed,
|
|
@@ -21,8 +21,11 @@ import { FLOOR_MAP_IMAGE_ELEMENT_KIND, FLOOR_MAP_STAGE_ELEMENT_KIND } from "../t
|
|
|
21
21
|
import { resolveDataBindingPolicy } from "../utils/floorMapElementKindUtils";
|
|
22
22
|
import { FLOOR_MAP_PALETTE_DRAG_MIME } from "../utils/floorMapDropUtils";
|
|
23
23
|
import { formatDataRecordOptionLabel } from "../utils/floorMapDataRecordLabel";
|
|
24
|
+
import { locales } from '@pisell/utils';
|
|
24
25
|
import "./FloorMapToolbar.less";
|
|
25
26
|
var PREFIX = 'pisell-floor-map-layout';
|
|
27
|
+
var I18N_TB = 'pisell-floor-map-layout.toolbar';
|
|
28
|
+
var I18N_EP_DS = 'pisell-floor-map-layout.edit-panel.ph-data-source';
|
|
26
29
|
var DEFAULT_PLACEMENT_SIZE = {
|
|
27
30
|
width: 180,
|
|
28
31
|
height: 120
|
|
@@ -115,7 +118,7 @@ export function FloorMapToolbar(props) {
|
|
|
115
118
|
});
|
|
116
119
|
return sorted.length ? sorted : [{
|
|
117
120
|
id: '_uncat',
|
|
118
|
-
label:
|
|
121
|
+
label: locales.getText("".concat(I18N_TB, ".category-fallback")),
|
|
119
122
|
order: 0
|
|
120
123
|
}];
|
|
121
124
|
}, [config.elementKindCategories]);
|
|
@@ -233,7 +236,7 @@ export function FloorMapToolbar(props) {
|
|
|
233
236
|
e.dataTransfer.setData(FLOOR_MAP_PALETTE_DRAG_MIME, JSON.stringify(paletteDragPayload));
|
|
234
237
|
e.dataTransfer.effectAllowed = 'copy';
|
|
235
238
|
},
|
|
236
|
-
title: "
|
|
239
|
+
title: locales.getText("".concat(I18N_TB, ".palette-card-title")).replace(/\{name\}/g, k.label)
|
|
237
240
|
}, /*#__PURE__*/React.createElement("div", {
|
|
238
241
|
className: "".concat(PREFIX, "-toolbar-preview-cell"),
|
|
239
242
|
style: {
|
|
@@ -261,8 +264,8 @@ export function FloorMapToolbar(props) {
|
|
|
261
264
|
className: "".concat(PREFIX, "-toolbar-record-pick")
|
|
262
265
|
}, /*#__PURE__*/React.createElement("div", {
|
|
263
266
|
className: "".concat(PREFIX, "-toolbar-record-pick-label")
|
|
264
|
-
}, "
|
|
265
|
-
placeholder:
|
|
267
|
+
}, locales.getText("".concat(I18N_TB, ".data-binding-optional"))), /*#__PURE__*/React.createElement(Select, {
|
|
268
|
+
placeholder: locales.getText(I18N_EP_DS),
|
|
266
269
|
allowClear: true,
|
|
267
270
|
value: placeMode.type === 'scene' ? placeMode.dataSourceKey : undefined,
|
|
268
271
|
options: allowedKeys.map(function (key) {
|
|
@@ -285,18 +288,18 @@ export function FloorMapToolbar(props) {
|
|
|
285
288
|
if (!key) {
|
|
286
289
|
return /*#__PURE__*/React.createElement("div", {
|
|
287
290
|
className: "".concat(PREFIX, "-toolbar-record-pick-hint")
|
|
288
|
-
}, "
|
|
291
|
+
}, locales.getText("".concat(I18N_TB, ".hint-after-select-ds")));
|
|
289
292
|
}
|
|
290
293
|
var unplaced = getUnplacedRecordsForKey(key, dataSources, sceneElements);
|
|
291
294
|
if (unplaced.length === 0) {
|
|
292
295
|
return /*#__PURE__*/React.createElement("div", {
|
|
293
296
|
className: "".concat(PREFIX, "-toolbar-record-pick-hint")
|
|
294
|
-
}, "
|
|
297
|
+
}, locales.getText("".concat(I18N_TB, ".hint-no-unplaced-rows")));
|
|
295
298
|
}
|
|
296
299
|
var recordValue = mode !== null && mode !== void 0 && mode.recordIds && mode.recordIds.length > 0 ? mode.recordIds : mode !== null && mode !== void 0 && mode.recordId ? [mode.recordId] : undefined;
|
|
297
300
|
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Select, {
|
|
298
301
|
mode: "multiple",
|
|
299
|
-
placeholder: "
|
|
302
|
+
placeholder: locales.getText("".concat(I18N_TB, ".ph-select-records")),
|
|
300
303
|
allowClear: true,
|
|
301
304
|
maxTagCount: "responsive",
|
|
302
305
|
value: recordValue,
|
|
@@ -316,18 +319,18 @@ export function FloorMapToolbar(props) {
|
|
|
316
319
|
}
|
|
317
320
|
}), /*#__PURE__*/React.createElement("div", {
|
|
318
321
|
className: "".concat(PREFIX, "-toolbar-record-pick-hint")
|
|
319
|
-
}, "
|
|
322
|
+
}, locales.getText("".concat(I18N_TB, ".hint-multi-drop"))));
|
|
320
323
|
}()), allowedKeys.length === 0 && /*#__PURE__*/React.createElement("div", {
|
|
321
324
|
className: "".concat(PREFIX, "-toolbar-record-hint")
|
|
322
|
-
}, "
|
|
325
|
+
}, locales.getText("".concat(I18N_TB, ".no-data-sources"))), /*#__PURE__*/React.createElement("button", {
|
|
323
326
|
type: "button",
|
|
324
327
|
className: "".concat(PREFIX, "-toolbar-btn cancel-inline"),
|
|
325
328
|
onClick: cancelPlaceMode
|
|
326
|
-
}, "
|
|
329
|
+
}, locales.getText("".concat(I18N_TB, ".cancel-place")))), isActive && policy === 'none' && /*#__PURE__*/React.createElement("button", {
|
|
327
330
|
type: "button",
|
|
328
331
|
className: "".concat(PREFIX, "-toolbar-btn cancel-inline"),
|
|
329
332
|
onClick: cancelPlaceMode
|
|
330
|
-
}, "
|
|
333
|
+
}, locales.getText("".concat(I18N_TB, ".cancel-place"))));
|
|
331
334
|
};
|
|
332
335
|
return /*#__PURE__*/React.createElement("div", {
|
|
333
336
|
className: classNames("".concat(PREFIX, "-toolbar"), "".concat(PREFIX, "-toolbar-sidebar"), className)
|
|
@@ -354,13 +357,13 @@ export function FloorMapToolbar(props) {
|
|
|
354
357
|
}, layoutDirty ? /*#__PURE__*/React.createElement("span", {
|
|
355
358
|
className: "".concat(PREFIX, "-toolbar-dirty-hint"),
|
|
356
359
|
role: "status"
|
|
357
|
-
}, "
|
|
360
|
+
}, locales.getText("".concat(I18N_TB, ".layout-dirty-hint"))) : null, saveError && /*#__PURE__*/React.createElement("span", {
|
|
358
361
|
className: "".concat(PREFIX, "-toolbar-error")
|
|
359
362
|
}, typeof saveError === 'string' ? saveError : saveError === null || saveError === void 0 ? void 0 : saveError.message), /*#__PURE__*/React.createElement("button", {
|
|
360
363
|
type: "button",
|
|
361
364
|
className: classNames("".concat(PREFIX, "-toolbar-btn"), 'primary', _defineProperty({}, "".concat(PREFIX, "-toolbar-save-dirty"), layoutDirty)),
|
|
362
365
|
disabled: saving,
|
|
363
366
|
onClick: onSave
|
|
364
|
-
}, saving ?
|
|
367
|
+
}, saving ? locales.getText("".concat(I18N_TB, ".saving")) : locales.getText("".concat(I18N_TB, ".save")))));
|
|
365
368
|
}
|
|
366
369
|
export default FloorMapToolbar;
|
|
@@ -8,8 +8,10 @@ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e
|
|
|
8
8
|
import React from 'react';
|
|
9
9
|
import classNames from 'classnames';
|
|
10
10
|
import { MinusOutlined, PlusOutlined, FullscreenOutlined, FullscreenExitOutlined, BorderInnerOutlined } from '@ant-design/icons';
|
|
11
|
+
import { locales } from '@pisell/utils';
|
|
11
12
|
import "./ViewControls.less";
|
|
12
13
|
var PREFIX = 'pisell-floor-map-layout';
|
|
14
|
+
var I18N_VC = 'pisell-floor-map-layout.view-controls';
|
|
13
15
|
|
|
14
16
|
/** 从 react-zoom-pan-pinch 拿到的控制 API(由主组件传入) */
|
|
15
17
|
|
|
@@ -42,7 +44,7 @@ export function ViewControls(props) {
|
|
|
42
44
|
onClick: function onClick() {
|
|
43
45
|
return api.zoomOut();
|
|
44
46
|
},
|
|
45
|
-
"aria-label": "
|
|
47
|
+
"aria-label": locales.getText("".concat(I18N_VC, ".zoom-out-aria"))
|
|
46
48
|
}, /*#__PURE__*/React.createElement(MinusOutlined, null)), /*#__PURE__*/React.createElement("span", {
|
|
47
49
|
className: "".concat(PREFIX, "-view-controls-zoom-stepper-value")
|
|
48
50
|
}, scalePercent, "%"), /*#__PURE__*/React.createElement("button", {
|
|
@@ -51,7 +53,7 @@ export function ViewControls(props) {
|
|
|
51
53
|
onClick: function onClick() {
|
|
52
54
|
return api.zoomIn();
|
|
53
55
|
},
|
|
54
|
-
"aria-label": "
|
|
56
|
+
"aria-label": locales.getText("".concat(I18N_VC, ".zoom-in-aria"))
|
|
55
57
|
}, /*#__PURE__*/React.createElement(PlusOutlined, null))), showToolsCapsule && /*#__PURE__*/React.createElement("div", {
|
|
56
58
|
className: "".concat(PREFIX, "-view-controls-tools-capsule")
|
|
57
59
|
}, showReset && /*#__PURE__*/React.createElement("button", {
|
|
@@ -60,14 +62,14 @@ export function ViewControls(props) {
|
|
|
60
62
|
onClick: function onClick() {
|
|
61
63
|
return api.resetTransform();
|
|
62
64
|
},
|
|
63
|
-
"aria-label": "
|
|
65
|
+
"aria-label": locales.getText("".concat(I18N_VC, ".reset-aria"))
|
|
64
66
|
}, "\u27F2"), showFitBounds && api.fitBounds && /*#__PURE__*/React.createElement("button", {
|
|
65
67
|
type: "button",
|
|
66
68
|
className: "".concat(PREFIX, "-view-controls-tool-btn"),
|
|
67
69
|
onClick: function onClick() {
|
|
68
70
|
return api.fitBounds();
|
|
69
71
|
},
|
|
70
|
-
"aria-label": "
|
|
72
|
+
"aria-label": locales.getText("".concat(I18N_VC, ".fit-bounds-aria"))
|
|
71
73
|
}, "\u229E"), showGridToggle && /*#__PURE__*/React.createElement("button", {
|
|
72
74
|
type: "button",
|
|
73
75
|
className: classNames("".concat(PREFIX, "-view-controls-tool-btn"), _defineProperty({}, "".concat(PREFIX, "-view-controls-tool-btn--active"), mapGridVisible)),
|
|
@@ -75,14 +77,14 @@ export function ViewControls(props) {
|
|
|
75
77
|
return onToggleMapGrid();
|
|
76
78
|
},
|
|
77
79
|
"aria-pressed": mapGridVisible,
|
|
78
|
-
"aria-label": mapGridVisible ?
|
|
80
|
+
"aria-label": locales.getText(mapGridVisible ? "".concat(I18N_VC, ".grid-hide-aria") : "".concat(I18N_VC, ".grid-show-aria"))
|
|
79
81
|
}, /*#__PURE__*/React.createElement(BorderInnerOutlined, null)), showFullscreen && api.toggleFullscreen && /*#__PURE__*/React.createElement("button", {
|
|
80
82
|
type: "button",
|
|
81
83
|
className: "".concat(PREFIX, "-view-controls-tool-btn"),
|
|
82
84
|
onClick: function onClick() {
|
|
83
85
|
return api.toggleFullscreen();
|
|
84
86
|
},
|
|
85
|
-
"aria-label": isFullscreen ?
|
|
87
|
+
"aria-label": locales.getText(isFullscreen ? "".concat(I18N_VC, ".fullscreen-exit-aria") : "".concat(I18N_VC, ".fullscreen-aria"))
|
|
86
88
|
}, isFullscreen ? /*#__PURE__*/React.createElement(FullscreenExitOutlined, null) : /*#__PURE__*/React.createElement(FullscreenOutlined, null))));
|
|
87
89
|
}
|
|
88
90
|
export default ViewControls;
|
|
@@ -36,6 +36,7 @@ var IMAGE_PLACE_DEFAULT = {
|
|
|
36
36
|
width: 400,
|
|
37
37
|
height: 240
|
|
38
38
|
};
|
|
39
|
+
var I18N_PLACEMENT_FALLBACK_IMAGE = 'pisell-floor-map-layout.placement.fallback-image-name';
|
|
39
40
|
var GRID_VIS_STORAGE_PREFIX = 'pisell-floor-map-layout.grid-visible';
|
|
40
41
|
function getGridVisStorageKey(canvasId) {
|
|
41
42
|
return "".concat(GRID_VIS_STORAGE_PREFIX, ":").concat(canvasId);
|
|
@@ -411,7 +412,7 @@ export function useFloorMapEditState(params) {
|
|
|
411
412
|
}
|
|
412
413
|
var placementName = function (_kindConfig$defaultPr, _kindConfig$defaultPr2) {
|
|
413
414
|
if (isStage) return STAGE_DECO_DEFAULT.name;
|
|
414
|
-
if (isImage) return
|
|
415
|
+
if (isImage) return locales.getText(I18N_PLACEMENT_FALLBACK_IMAGE);
|
|
415
416
|
var db = dataBinding;
|
|
416
417
|
var rid = recordIdsToPlace[0];
|
|
417
418
|
if (db && rid) {
|
|
@@ -0,0 +1,104 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PisellFloorMapLayout — 日本語
|
|
3
|
+
*/
|
|
4
|
+
declare const _default: {
|
|
5
|
+
'pisell-floor-map-layout.loading': string;
|
|
6
|
+
'pisell-floor-map-layout.read-canvas-tabs.aria': string;
|
|
7
|
+
'pisell-floor-map-layout.edit-top-bar.aria': string;
|
|
8
|
+
'pisell-floor-map-layout.edit-top-bar.fullscreen-enter-aria': string;
|
|
9
|
+
'pisell-floor-map-layout.edit-top-bar.fullscreen-enter-title': string;
|
|
10
|
+
'pisell-floor-map-layout.edit-top-bar.fullscreen-exit-aria': string;
|
|
11
|
+
'pisell-floor-map-layout.edit-top-bar.fullscreen-exit-title': string;
|
|
12
|
+
'pisell-floor-map-layout.edit-top-bar.unsaved': string;
|
|
13
|
+
'pisell-floor-map-layout.edit-top-bar.save': string;
|
|
14
|
+
'pisell-floor-map-layout.edit-top-bar.saving': string;
|
|
15
|
+
'pisell-floor-map-layout.canvas-tabs.empty': string;
|
|
16
|
+
'pisell-floor-map-layout.canvas-tabs.add': string;
|
|
17
|
+
'pisell-floor-map-layout.canvas-tabs.add-title': string;
|
|
18
|
+
'pisell-floor-map-layout.canvas-tabs.hint': string;
|
|
19
|
+
'pisell-floor-map-layout.canvas-tabs.rename-aria': string;
|
|
20
|
+
'pisell-floor-map-layout.canvas-tabs.remove-aria': string;
|
|
21
|
+
'pisell-floor-map-layout.canvas-tabs.rename-title': string;
|
|
22
|
+
'pisell-floor-map-layout.canvas-tabs.rename-button-aria': string;
|
|
23
|
+
'pisell-floor-map-layout.canvas-tabs.rename-button-title': string;
|
|
24
|
+
'pisell-floor-map-layout.canvas-tabs.default-new-canvas-name': string;
|
|
25
|
+
'pisell-floor-map-layout.canvas-tabs.rename-modal-title': string;
|
|
26
|
+
'pisell-floor-map-layout.canvas-tabs.rename-modal-ok': string;
|
|
27
|
+
'pisell-floor-map-layout.canvas-tabs.rename-modal-cancel': string;
|
|
28
|
+
'pisell-floor-map-layout.edit-panel.element-props': string;
|
|
29
|
+
'pisell-floor-map-layout.edit-panel.close-aria': string;
|
|
30
|
+
'pisell-floor-map-layout.edit-panel.hint-apply': string;
|
|
31
|
+
'pisell-floor-map-layout.edit-panel.hint-save': string;
|
|
32
|
+
'pisell-floor-map-layout.edit-panel.section-layout': string;
|
|
33
|
+
'pisell-floor-map-layout.edit-panel.lock-on': string;
|
|
34
|
+
'pisell-floor-map-layout.edit-panel.lock-off': string;
|
|
35
|
+
'pisell-floor-map-layout.edit-panel.label-x': string;
|
|
36
|
+
'pisell-floor-map-layout.edit-panel.label-y': string;
|
|
37
|
+
'pisell-floor-map-layout.edit-panel.label-z': string;
|
|
38
|
+
'pisell-floor-map-layout.edit-panel.label-width': string;
|
|
39
|
+
'pisell-floor-map-layout.edit-panel.label-height': string;
|
|
40
|
+
'pisell-floor-map-layout.edit-panel.label-name': string;
|
|
41
|
+
'pisell-floor-map-layout.edit-panel.label-name-stage': string;
|
|
42
|
+
'pisell-floor-map-layout.edit-panel.ph-name-stage': string;
|
|
43
|
+
'pisell-floor-map-layout.edit-panel.ph-name': string;
|
|
44
|
+
'pisell-floor-map-layout.edit-panel.label-image-url': string;
|
|
45
|
+
'pisell-floor-map-layout.edit-panel.extra-image-url': string;
|
|
46
|
+
'pisell-floor-map-layout.edit-panel.ph-https': string;
|
|
47
|
+
'pisell-floor-map-layout.edit-panel.label-canvas': string;
|
|
48
|
+
'pisell-floor-map-layout.edit-panel.label-element-kind': string;
|
|
49
|
+
'pisell-floor-map-layout.edit-panel.hint-kind-binding-cleared': string;
|
|
50
|
+
'pisell-floor-map-layout.edit-panel.apply': string;
|
|
51
|
+
'pisell-floor-map-layout.edit-panel.data-binding': string;
|
|
52
|
+
'pisell-floor-map-layout.edit-panel.data-binding-note': string;
|
|
53
|
+
'pisell-floor-map-layout.edit-panel.label-data-source': string;
|
|
54
|
+
'pisell-floor-map-layout.edit-panel.ph-data-source': string;
|
|
55
|
+
'pisell-floor-map-layout.edit-panel.label-pick-row': string;
|
|
56
|
+
'pisell-floor-map-layout.edit-panel.ph-pick-row': string;
|
|
57
|
+
'pisell-floor-map-layout.edit-panel.ph-no-rows': string;
|
|
58
|
+
'pisell-floor-map-layout.edit-panel.hint-unbound': string;
|
|
59
|
+
'pisell-floor-map-layout.edit-panel.record-title': string;
|
|
60
|
+
'pisell-floor-map-layout.edit-panel.pop-title': string;
|
|
61
|
+
'pisell-floor-map-layout.edit-panel.pop-desc': string;
|
|
62
|
+
'pisell-floor-map-layout.edit-panel.btn-delete': string;
|
|
63
|
+
'pisell-floor-map-layout.edit-panel.btn-cancel': string;
|
|
64
|
+
'pisell-floor-map-layout.edit-panel.btn-ok-delete': string;
|
|
65
|
+
'pisell-floor-map-layout.toolbar.category-fallback': string;
|
|
66
|
+
'pisell-floor-map-layout.toolbar.palette-card-title': string;
|
|
67
|
+
'pisell-floor-map-layout.toolbar.data-binding-optional': string;
|
|
68
|
+
'pisell-floor-map-layout.toolbar.hint-after-select-ds': string;
|
|
69
|
+
'pisell-floor-map-layout.toolbar.hint-no-unplaced-rows': string;
|
|
70
|
+
'pisell-floor-map-layout.toolbar.ph-select-records': string;
|
|
71
|
+
'pisell-floor-map-layout.toolbar.hint-multi-drop': string;
|
|
72
|
+
'pisell-floor-map-layout.toolbar.no-data-sources': string;
|
|
73
|
+
'pisell-floor-map-layout.toolbar.cancel-place': string;
|
|
74
|
+
'pisell-floor-map-layout.toolbar.layout-dirty-hint': string;
|
|
75
|
+
'pisell-floor-map-layout.toolbar.save': string;
|
|
76
|
+
'pisell-floor-map-layout.toolbar.saving': string;
|
|
77
|
+
'pisell-floor-map-layout.view-controls.zoom-out-aria': string;
|
|
78
|
+
'pisell-floor-map-layout.view-controls.zoom-in-aria': string;
|
|
79
|
+
'pisell-floor-map-layout.view-controls.reset-aria': string;
|
|
80
|
+
'pisell-floor-map-layout.view-controls.fit-bounds-aria': string;
|
|
81
|
+
'pisell-floor-map-layout.view-controls.grid-hide-aria': string;
|
|
82
|
+
'pisell-floor-map-layout.view-controls.grid-show-aria': string;
|
|
83
|
+
'pisell-floor-map-layout.view-controls.fullscreen-aria': string;
|
|
84
|
+
'pisell-floor-map-layout.view-controls.fullscreen-exit-aria': string;
|
|
85
|
+
'pisell-floor-map-layout.image-element.default-name': string;
|
|
86
|
+
'pisell-floor-map-layout.placement.fallback-image-name': string;
|
|
87
|
+
'pisell-floor-map-layout.image-element.hint-no-url': string;
|
|
88
|
+
'pisell-floor-map-layout.image-element.hint-load-fail': string;
|
|
89
|
+
'pisell-floor-map-layout.data-form.empty': string;
|
|
90
|
+
'pisell-floor-map-layout.data-form.save-record': string;
|
|
91
|
+
'pisell-floor-map-layout.binding-error.required-row': string;
|
|
92
|
+
'pisell-floor-map-layout.binding-error.ds-not-allowed': string;
|
|
93
|
+
'pisell-floor-map-layout.binding-error.missing-field': string;
|
|
94
|
+
'pisell-floor-map-layout.card-placeholder.hint-select-row': string;
|
|
95
|
+
'pisell-floor-map-layout.card-placeholder.hint-bind-datasource': string;
|
|
96
|
+
'pisell-floor-map-layout.card-placeholder.hint-new-slot': string;
|
|
97
|
+
'pisell-floor-map-layout.card-placeholder.hint-row-not-found': string;
|
|
98
|
+
'pisell-floor-map-layout.figma-card.kind-round-table': string;
|
|
99
|
+
'pisell-floor-map-layout.figma-card.kind-square-table': string;
|
|
100
|
+
'pisell-floor-map-layout.figma-card.default-table': string;
|
|
101
|
+
'pisell-floor-map-layout.figma-card.capacity-seats': string;
|
|
102
|
+
'pisell-floor-map-layout.figma-card.guests-count': string;
|
|
103
|
+
};
|
|
104
|
+
export default _default;
|
|
@@ -0,0 +1,103 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* PisellFloorMapLayout — 日本語
|
|
3
|
+
*/
|
|
4
|
+
export default {
|
|
5
|
+
'pisell-floor-map-layout.loading': '読み込み中…',
|
|
6
|
+
'pisell-floor-map-layout.read-canvas-tabs.aria': '平面図キャンバスを切り替え',
|
|
7
|
+
'pisell-floor-map-layout.edit-top-bar.aria': '平面図編集ツールバー',
|
|
8
|
+
'pisell-floor-map-layout.edit-top-bar.fullscreen-enter-aria': '全画面',
|
|
9
|
+
'pisell-floor-map-layout.edit-top-bar.fullscreen-enter-title': '全画面(保存・表示範囲に合わせるなどを含む上部バー)',
|
|
10
|
+
'pisell-floor-map-layout.edit-top-bar.fullscreen-exit-aria': '全画面を終了',
|
|
11
|
+
'pisell-floor-map-layout.edit-top-bar.fullscreen-exit-title': '全画面を終了',
|
|
12
|
+
'pisell-floor-map-layout.edit-top-bar.unsaved': '未保存',
|
|
13
|
+
'pisell-floor-map-layout.edit-top-bar.save': '保存',
|
|
14
|
+
'pisell-floor-map-layout.edit-top-bar.saving': '保存中…',
|
|
15
|
+
'pisell-floor-map-layout.canvas-tabs.empty': 'キャンバスがありません',
|
|
16
|
+
'pisell-floor-map-layout.canvas-tabs.add': '+ フロアを追加',
|
|
17
|
+
'pisell-floor-map-layout.canvas-tabs.add-title': 'フロアを追加',
|
|
18
|
+
'pisell-floor-map-layout.canvas-tabs.hint': '右側の「フロアを追加」からキャンバスを作成してください',
|
|
19
|
+
'pisell-floor-map-layout.canvas-tabs.rename-aria': '名前を変更',
|
|
20
|
+
'pisell-floor-map-layout.canvas-tabs.remove-aria': '削除',
|
|
21
|
+
'pisell-floor-map-layout.canvas-tabs.rename-title': 'ダブルクリックで名前変更。タッチ端末はタブ右の鉛筆アイコンから',
|
|
22
|
+
'pisell-floor-map-layout.canvas-tabs.rename-button-aria': 'キャンバスの名前を変更',
|
|
23
|
+
'pisell-floor-map-layout.canvas-tabs.rename-button-title': '名前を変更',
|
|
24
|
+
'pisell-floor-map-layout.canvas-tabs.default-new-canvas-name': '新しいフロア',
|
|
25
|
+
'pisell-floor-map-layout.canvas-tabs.rename-modal-title': 'キャンバスの名前を変更',
|
|
26
|
+
'pisell-floor-map-layout.canvas-tabs.rename-modal-ok': 'OK',
|
|
27
|
+
'pisell-floor-map-layout.canvas-tabs.rename-modal-cancel': 'キャンセル',
|
|
28
|
+
'pisell-floor-map-layout.edit-panel.element-props': '要素のプロパティ',
|
|
29
|
+
'pisell-floor-map-layout.edit-panel.close-aria': '閉じる',
|
|
30
|
+
'pisell-floor-map-layout.edit-panel.hint-apply': '位置・サイズが変更されました。「適用」でキャンバスに反映してください。',
|
|
31
|
+
'pisell-floor-map-layout.edit-panel.hint-save': '下書きはまだ保存されていません。「編集完了」で保存してください。',
|
|
32
|
+
'pisell-floor-map-layout.edit-panel.section-layout': '位置 · 重なり順 · サイズ',
|
|
33
|
+
'pisell-floor-map-layout.edit-panel.lock-on': 'ロック中:キャンバスのドラッグ・リサイズは無効。クリックで解除',
|
|
34
|
+
'pisell-floor-map-layout.edit-panel.lock-off': 'ロックするとキャンバスのドラッグとサイズ変更ができなくなります',
|
|
35
|
+
'pisell-floor-map-layout.edit-panel.label-x': 'X',
|
|
36
|
+
'pisell-floor-map-layout.edit-panel.label-y': 'Y',
|
|
37
|
+
'pisell-floor-map-layout.edit-panel.label-z': '重なり順',
|
|
38
|
+
'pisell-floor-map-layout.edit-panel.label-width': '幅',
|
|
39
|
+
'pisell-floor-map-layout.edit-panel.label-height': '高さ',
|
|
40
|
+
'pisell-floor-map-layout.edit-panel.label-name': '名前',
|
|
41
|
+
'pisell-floor-map-layout.edit-panel.label-name-stage': '表示名(キャンバス上)',
|
|
42
|
+
'pisell-floor-map-layout.edit-panel.ph-name-stage': '例:ステージ、DJ ブース、ダンスフロア',
|
|
43
|
+
'pisell-floor-map-layout.edit-panel.ph-name': '要素名',
|
|
44
|
+
'pisell-floor-map-layout.edit-panel.label-image-url': '画像 URL',
|
|
45
|
+
'pisell-floor-map-layout.edit-panel.extra-image-url': 'ネットワーク上の画像 URL を指定。重なり順を下げるとテーブルの下に配置できます。',
|
|
46
|
+
'pisell-floor-map-layout.edit-panel.ph-https': 'https://...',
|
|
47
|
+
'pisell-floor-map-layout.edit-panel.label-canvas': 'キャンバス',
|
|
48
|
+
'pisell-floor-map-layout.edit-panel.label-element-kind': '要素タイプ',
|
|
49
|
+
'pisell-floor-map-layout.edit-panel.hint-kind-binding-cleared': '新しいタイプでは以前のデータ連携が使えないため、連携を解除しました。',
|
|
50
|
+
'pisell-floor-map-layout.edit-panel.apply': '適用',
|
|
51
|
+
'pisell-floor-map-layout.edit-panel.data-binding': 'データ連携',
|
|
52
|
+
'pisell-floor-map-layout.edit-panel.data-binding-note': 'データソースまたは行の変更は下書きに即反映されます。確定は上部の「保存」から。',
|
|
53
|
+
'pisell-floor-map-layout.edit-panel.label-data-source': 'データソース',
|
|
54
|
+
'pisell-floor-map-layout.edit-panel.ph-data-source': 'データソースを選択',
|
|
55
|
+
'pisell-floor-map-layout.edit-panel.label-pick-row': '行を選択',
|
|
56
|
+
'pisell-floor-map-layout.edit-panel.ph-pick-row': 'データ表の 1 行を紐付け',
|
|
57
|
+
'pisell-floor-map-layout.edit-panel.ph-no-rows': 'このデータソースに利用可能な行がありません',
|
|
58
|
+
'pisell-floor-map-layout.edit-panel.hint-unbound': '未連携のときは空欄のまま、またはクリア。連携後は「データレコード」の項目を編集できます。',
|
|
59
|
+
'pisell-floor-map-layout.edit-panel.record-title': 'データレコード',
|
|
60
|
+
'pisell-floor-map-layout.edit-panel.pop-title': 'この要素を削除しますか?',
|
|
61
|
+
'pisell-floor-map-layout.edit-panel.pop-desc': '平面図の下書きから削除されます。確定は上部の「保存」から行ってください。',
|
|
62
|
+
'pisell-floor-map-layout.edit-panel.btn-delete': '削除',
|
|
63
|
+
'pisell-floor-map-layout.edit-panel.btn-cancel': 'キャンセル',
|
|
64
|
+
'pisell-floor-map-layout.edit-panel.btn-ok-delete': '削除',
|
|
65
|
+
'pisell-floor-map-layout.toolbar.category-fallback': '要素',
|
|
66
|
+
'pisell-floor-map-layout.toolbar.palette-card-title': 'クリックでキャンバスに配置、またはドラッグで「{name}」を追加',
|
|
67
|
+
'pisell-floor-map-layout.toolbar.data-binding-optional': 'データ連携(任意)',
|
|
68
|
+
'pisell-floor-map-layout.toolbar.hint-after-select-ds': 'データソースを選んだら、行を紐付けるか、そのままプレースホルダーを置けます。',
|
|
69
|
+
'pisell-floor-map-layout.toolbar.hint-no-unplaced-rows': '未配置の行がないか、一覧が空です。プレースホルダーのみキャンバスに置けます。',
|
|
70
|
+
'pisell-floor-map-layout.toolbar.ph-select-records': '表示するレコードを選択(任意・複数可)',
|
|
71
|
+
'pisell-floor-map-layout.toolbar.hint-multi-drop': '複数選択すると 1 回のクリックでずらして複数配置できます。空欄のままならプレースホルダーにし、後からサイドバーで紐付けできます。',
|
|
72
|
+
'pisell-floor-map-layout.toolbar.no-data-sources': '利用できるデータソースがありません',
|
|
73
|
+
'pisell-floor-map-layout.toolbar.cancel-place': 'キャンセル',
|
|
74
|
+
'pisell-floor-map-layout.toolbar.layout-dirty-hint': 'レイアウトが変更されました。「保存」で確定してください。',
|
|
75
|
+
'pisell-floor-map-layout.toolbar.save': '保存',
|
|
76
|
+
'pisell-floor-map-layout.toolbar.saving': '保存中…',
|
|
77
|
+
'pisell-floor-map-layout.view-controls.zoom-out-aria': '縮小',
|
|
78
|
+
'pisell-floor-map-layout.view-controls.zoom-in-aria': '拡大',
|
|
79
|
+
'pisell-floor-map-layout.view-controls.reset-aria': '表示をリセット',
|
|
80
|
+
'pisell-floor-map-layout.view-controls.fit-bounds-aria': '全体を表示',
|
|
81
|
+
'pisell-floor-map-layout.view-controls.grid-hide-aria': 'グリッドを非表示',
|
|
82
|
+
'pisell-floor-map-layout.view-controls.grid-show-aria': 'グリッドを表示',
|
|
83
|
+
'pisell-floor-map-layout.view-controls.fullscreen-aria': '全画面',
|
|
84
|
+
'pisell-floor-map-layout.view-controls.fullscreen-exit-aria': '全画面を終了',
|
|
85
|
+
'pisell-floor-map-layout.image-element.default-name': '画像要素',
|
|
86
|
+
'pisell-floor-map-layout.placement.fallback-image-name': '背景',
|
|
87
|
+
'pisell-floor-map-layout.image-element.hint-no-url': 'サイドバーで画像 URL を入力。重なり順を下げるとテーブル下の背景にできます。',
|
|
88
|
+
'pisell-floor-map-layout.image-element.hint-load-fail': '画像の読み込みに失敗しました。URL を確認してください。',
|
|
89
|
+
'pisell-floor-map-layout.data-form.empty': '編集できる追加フィールドはありません',
|
|
90
|
+
'pisell-floor-map-layout.data-form.save-record': 'レコードを保存',
|
|
91
|
+
'pisell-floor-map-layout.binding-error.required-row': 'この要素にはデータ行の連携が必要です。',
|
|
92
|
+
'pisell-floor-map-layout.binding-error.ds-not-allowed': 'データソース「{key}」はこの要素タイプでは使用できません。',
|
|
93
|
+
'pisell-floor-map-layout.binding-error.missing-field': '行に必須フィールドがありません:{field}',
|
|
94
|
+
'pisell-floor-map-layout.card-placeholder.hint-select-row': 'データソースは選択済みです。サイドバーで行を選択してください。',
|
|
95
|
+
'pisell-floor-map-layout.card-placeholder.hint-bind-datasource': '行が未連携です。サイドバーでデータソースとレコードを選択してください。',
|
|
96
|
+
'pisell-floor-map-layout.card-placeholder.hint-new-slot': '新しい{kind}のプレースホルダーです。サイドバーでレコードを紐付けられます。',
|
|
97
|
+
'pisell-floor-map-layout.card-placeholder.hint-row-not-found': 'レコードが見つかりません。連携とデータ一覧を確認してください。',
|
|
98
|
+
'pisell-floor-map-layout.figma-card.kind-round-table': '丸テーブル',
|
|
99
|
+
'pisell-floor-map-layout.figma-card.kind-square-table': 'テーブル',
|
|
100
|
+
'pisell-floor-map-layout.figma-card.default-table': 'テーブル',
|
|
101
|
+
'pisell-floor-map-layout.figma-card.capacity-seats': '着席 {n} 名',
|
|
102
|
+
'pisell-floor-map-layout.figma-card.guests-count': '{n} 名'
|
|
103
|
+
};
|