sellmate-design-system-react 9.0.0-beta.103 → 9.0.0-beta.104
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/AGENTS.md +4 -2
- package/dist/components/SAccountListBox/accountListBox.config.d.ts +4 -1
- package/dist/components/SBarcodeInput/README.md +1 -1
- package/dist/components/SBarcodeInput/SBarcodeInput.d.ts +1 -0
- package/dist/components/SCalendarBoard/CalendarDayEventListBox.d.ts +1 -1
- package/dist/components/SCalendarBoard/README.md +1 -1
- package/dist/components/SCalendarBoard/SCalendarBoard.d.ts +1 -1
- package/dist/components/SChatInput/README.md +1 -1
- package/dist/components/SChatInput/SChatInput.d.ts +1 -1
- package/dist/components/SConfirmModal/README.md +1 -1
- package/dist/components/SConfirmModal/SConfirmModal.d.ts +2 -2
- package/dist/components/SEditor/README.md +1 -1
- package/dist/components/SEditor/SEditor.d.ts +1 -1
- package/dist/components/SEditor/editor.config.d.ts +8 -1
- package/dist/components/SFooter/README.md +1 -1
- package/dist/components/SFooter/SFooter.d.ts +1 -1
- package/dist/components/SGnbSystem/gnbSystem.config.d.ts +0 -4
- package/dist/components/SGuide/README.md +1 -1
- package/dist/components/SGuide/SGuide.d.ts +1 -1
- package/dist/components/SIcon/README.md +1 -1
- package/dist/components/SIcon/SIcon.d.ts +5 -1
- package/dist/components/SIcon/icons.gen.d.ts +3 -1
- package/dist/components/SMeatballButton/README.md +2 -2
- package/dist/components/SMeatballButton/SMeatballButton.d.ts +5 -2
- package/dist/components/SModalContainer/README.md +1 -1
- package/dist/components/SModalContainer/SModalContainer.d.ts +5 -2
- package/dist/components/SNumberInput/README.md +1 -1
- package/dist/components/SSearchInput/README.md +1 -1
- package/dist/components/SSearchInput/SSearchInput.d.ts +1 -1
- package/dist/components/SStepper/README.md +1 -1
- package/dist/components/SStepper/SStepper.d.ts +2 -2
- package/dist/components/STable/README.md +3 -3
- package/dist/components/STable/STable.d.ts +3 -1
- package/dist/components/STableBar/README.md +1 -1
- package/dist/components/STableBar/STableBar.d.ts +1 -1
- package/dist/components/STimePicker/timepicker.config.d.ts +2 -1
- package/dist/components/STimeRangePicker/time-range-picker.config.d.ts +2 -1
- package/dist/components/STimeline/README.md +1 -1
- package/dist/components/STimeline/STimeline.d.ts +1 -0
- package/dist/index.cjs +1492 -478
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +1492 -478
- package/dist/index.js.map +1 -1
- package/dist/lib/chart/radial.d.ts +2 -2
- package/dist/lib/date.d.ts +9 -5
- package/dist/lib/form.d.ts +5 -2
- package/dist/lib/locale.d.ts +274 -0
- package/dist/lib/tree-row.d.ts +1 -1
- package/dist/llms-full.txt +23 -21
- package/dist/llms.txt +4 -2
- package/dist/styles.css +3 -0
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -247,8 +247,211 @@ var fieldWidthValue = (v) => {
|
|
|
247
247
|
// src/lib/locale.ts
|
|
248
248
|
var SLOCALES = ["ko", "en", "ja", "zh"];
|
|
249
249
|
var DEFAULT_LOCALE = "ko";
|
|
250
|
+
var koreanParticle = (word, consonant, vowel) => {
|
|
251
|
+
const code = word.charCodeAt(word.length - 1);
|
|
252
|
+
if (code < 44032 || code > 55203) return consonant;
|
|
253
|
+
return (code - 44032) % 28 === 0 ? vowel : consonant;
|
|
254
|
+
};
|
|
250
255
|
var BUNDLES = {
|
|
251
256
|
ko: {
|
|
257
|
+
accountListBox: { accountSetting: "\uACC4\uC815 \uC124\uC815", language: "\uC5B8\uC5B4 \uBCC0\uACBD", logout: "\uACC4\uC815 \uB85C\uADF8\uC544\uC6C3" },
|
|
258
|
+
gnbSystem: { alert: "\uC54C\uB9BC", setting: "\uC124\uC815" },
|
|
259
|
+
editor: {
|
|
260
|
+
placeholder: "\uB0B4\uC6A9\uC744 \uC785\uB825\uD574 \uC8FC\uC138\uC694.",
|
|
261
|
+
toolbarLabel: "\uC11C\uC2DD \uB3C4\uAD6C",
|
|
262
|
+
tableSize: "\uD45C \uD06C\uAE30",
|
|
263
|
+
linkUrl: "\uB9C1\uD06C \uC8FC\uC18C",
|
|
264
|
+
apply: "\uC801\uC6A9",
|
|
265
|
+
remove: "\uC81C\uAC70",
|
|
266
|
+
headingLevel: "\uC81C\uBAA9 \uB2E8\uACC4",
|
|
267
|
+
headingBody: "\uBCF8\uBB38",
|
|
268
|
+
fontSize: "\uAE00\uC790 \uD06C\uAE30",
|
|
269
|
+
fontSizeDefaultLabel: "\uAE30\uBCF8",
|
|
270
|
+
bold: "\uAD75\uAC8C",
|
|
271
|
+
italic: "\uAE30\uC6B8\uC784",
|
|
272
|
+
underline: "\uBC11\uC904",
|
|
273
|
+
strike: "\uCDE8\uC18C\uC120",
|
|
274
|
+
inlineCode: "\uC778\uB77C\uC778 \uCF54\uB4DC",
|
|
275
|
+
textColor: "\uAE00\uC790\uC0C9",
|
|
276
|
+
clearColor: "\uC0C9 \uC9C0\uC6B0\uAE30",
|
|
277
|
+
alignLeft: "\uC67C\uCABD \uC815\uB82C",
|
|
278
|
+
alignCenter: "\uAC00\uC6B4\uB370 \uC815\uB82C",
|
|
279
|
+
alignRight: "\uC624\uB978\uCABD \uC815\uB82C",
|
|
280
|
+
alignJustify: "\uC591\uCABD \uC815\uB82C",
|
|
281
|
+
bulletList: "\uAE00\uBA38\uB9AC \uAE30\uD638 \uBAA9\uB85D",
|
|
282
|
+
orderedList: "\uBC88\uD638 \uB9E4\uAE30\uAE30 \uBAA9\uB85D",
|
|
283
|
+
taskList: "\uCCB4\uD06C \uBAA9\uB85D",
|
|
284
|
+
list: "\uBAA9\uB85D",
|
|
285
|
+
blockquote: "\uC778\uC6A9\uAD6C",
|
|
286
|
+
codeBlock: "\uCF54\uB4DC \uBE14\uB85D",
|
|
287
|
+
divider: "\uAD6C\uBD84\uC120",
|
|
288
|
+
link: "\uB9C1\uD06C",
|
|
289
|
+
insertImage: "\uC774\uBBF8\uC9C0 \uB123\uAE30",
|
|
290
|
+
image: "\uC774\uBBF8\uC9C0",
|
|
291
|
+
table: "\uD45C",
|
|
292
|
+
addRowAbove: "\uC704\uC5D0 \uD589 \uCD94\uAC00",
|
|
293
|
+
addRowBelow: "\uC544\uB798\uC5D0 \uD589 \uCD94\uAC00",
|
|
294
|
+
addColLeft: "\uC67C\uCABD\uC5D0 \uC5F4 \uCD94\uAC00",
|
|
295
|
+
addColRight: "\uC624\uB978\uCABD\uC5D0 \uC5F4 \uCD94\uAC00",
|
|
296
|
+
mergeCells: "\uC140 \uBCD1\uD569",
|
|
297
|
+
splitCell: "\uBCD1\uD569 \uD574\uC81C",
|
|
298
|
+
toggleHeaderRow: "\uD5E4\uB354 \uD589 \uD1A0\uAE00",
|
|
299
|
+
toggleHeaderCol: "\uD5E4\uB354 \uC5F4 \uD1A0\uAE00",
|
|
300
|
+
deleteRow: "\uD589 \uC0AD\uC81C",
|
|
301
|
+
deleteCol: "\uC5F4 \uC0AD\uC81C",
|
|
302
|
+
deleteTable: "\uD45C \uC0AD\uC81C",
|
|
303
|
+
undo: "\uC2E4\uD589 \uCDE8\uC18C",
|
|
304
|
+
redo: "\uB2E4\uC2DC \uC2E4\uD589",
|
|
305
|
+
colorDefault: "\uAE30\uBCF8",
|
|
306
|
+
colorSecondary: "\uBCF4\uC870",
|
|
307
|
+
colorMuted: "\uD750\uB9BC",
|
|
308
|
+
colorAccent: "\uAC15\uC870",
|
|
309
|
+
colorBrand: "\uBE0C\uB79C\uB4DC",
|
|
310
|
+
colorSuccess: "\uC131\uACF5",
|
|
311
|
+
colorWarning: "\uC8FC\uC758",
|
|
312
|
+
colorDanger: "\uC704\uD5D8",
|
|
313
|
+
tableCell: (r3, c) => `${r3}\uD589 ${c}\uC5F4`,
|
|
314
|
+
tableSizeText: (rows, cols) => `${rows}\uD589 \xD7 ${cols}\uC5F4`,
|
|
315
|
+
heading: (level) => `\uC81C\uBAA9 ${level}`,
|
|
316
|
+
fontSizeDefault: (px) => `\uAE30\uBCF8 (\uBCF8\uBB38 ${px}px)`,
|
|
317
|
+
closeEditing: (label) => `${label} \uB2EB\uAE30`
|
|
318
|
+
},
|
|
319
|
+
form: { invalid: "\uC720\uD6A8\uD558\uC9C0 \uC54A\uC740 \uAC12\uC785\uB2C8\uB2E4." },
|
|
320
|
+
date: {
|
|
321
|
+
weekdays: ["\uC77C", "\uC6D4", "\uD654", "\uC218", "\uBAA9", "\uAE08", "\uD1A0"],
|
|
322
|
+
weekdaysLong: ["\uC77C\uC694\uC77C", "\uC6D4\uC694\uC77C", "\uD654\uC694\uC77C", "\uC218\uC694\uC77C", "\uBAA9\uC694\uC77C", "\uAE08\uC694\uC77C", "\uD1A0\uC694\uC77C"],
|
|
323
|
+
today: "\uC624\uB298",
|
|
324
|
+
prevYear: "\uC774\uC804 \uD574",
|
|
325
|
+
nextYear: "\uB2E4\uC74C \uD574",
|
|
326
|
+
prevMonth: "\uC774\uC804 \uB2EC",
|
|
327
|
+
nextMonth: "\uB2E4\uC74C \uB2EC",
|
|
328
|
+
monthLabel: (month) => `${month}\uC6D4`,
|
|
329
|
+
dayLabel: (day) => `${day}\uC77C`,
|
|
330
|
+
unitYear: "\uB144",
|
|
331
|
+
unitMonth: "\uC6D4",
|
|
332
|
+
unitDay: "\uC77C",
|
|
333
|
+
hourItem: (hour) => `${hour}\uC2DC`,
|
|
334
|
+
minuteItem: (minute) => `${minute}\uBD84`,
|
|
335
|
+
hourAria: (prefix) => prefix ? `${prefix} \uC2DC` : "\uC2DC",
|
|
336
|
+
minuteAria: (prefix) => prefix ? `${prefix} \uBD84` : "\uBD84",
|
|
337
|
+
meridiemAria: (prefix) => prefix ? `${prefix} \uC624\uC804/\uC624\uD6C4` : "\uC624\uC804/\uC624\uD6C4",
|
|
338
|
+
am: "\uC624\uC804",
|
|
339
|
+
pm: "\uC624\uD6C4",
|
|
340
|
+
rangeFrom: "\uBD80\uD130",
|
|
341
|
+
rangeTo: "\uAE4C\uC9C0",
|
|
342
|
+
clearDate: "\uB0A0\uC9DC \uC9C0\uC6B0\uAE30",
|
|
343
|
+
clearMonth: "\uC6D4 \uC9C0\uC6B0\uAE30",
|
|
344
|
+
clearYear: "\uC5F0\uB3C4 \uC9C0\uC6B0\uAE30",
|
|
345
|
+
clearPeriod: "\uAE30\uAC04 \uC9C0\uC6B0\uAE30",
|
|
346
|
+
clearTime: "\uC2DC\uAC04 \uC9C0\uC6B0\uAE30",
|
|
347
|
+
clearTimeRange: "\uC2DC\uAC04 \uBC94\uC704 \uC9C0\uC6B0\uAE30",
|
|
348
|
+
start: "\uC2DC\uC791",
|
|
349
|
+
end: "\uC885\uB8CC",
|
|
350
|
+
startTime: "\uC2DC\uC791 \uC2DC\uAC04",
|
|
351
|
+
endTime: "\uC885\uB8CC \uC2DC\uAC04"
|
|
352
|
+
},
|
|
353
|
+
chart: {
|
|
354
|
+
unit: (unit) => `\uB2E8\uC704 : ${unit}`,
|
|
355
|
+
pie: "\uD30C\uC774 \uADF8\uB798\uD504",
|
|
356
|
+
donut: "\uB3C4\uB11B \uADF8\uB798\uD504",
|
|
357
|
+
radialSummary: (count, kind) => `${count}\uAC1C \uD56D\uBAA9 ${kind}`,
|
|
358
|
+
barSummary: (c, s, stacked) => `${c}\uAC1C \uD56D\uBAA9, ${s}\uAC1C \uACC4\uC5F4 ${stacked ? "\uB204\uC801 " : ""}\uB9C9\uB300 \uADF8\uB798\uD504`,
|
|
359
|
+
lineSummary: (c, s, stacked) => `${c}\uAC1C \uD56D\uBAA9, ${s}\uAC1C \uACC4\uC5F4 ${stacked ? "\uB204\uC801 " : ""}\uAEBE\uC740\uC120 \uADF8\uB798\uD504`
|
|
360
|
+
},
|
|
361
|
+
chipFilter: {
|
|
362
|
+
periodDay: "\uC77C\uBCC4",
|
|
363
|
+
periodMonth: "\uC6D4\uBCC4",
|
|
364
|
+
periodQuarter: "\uBD84\uAE30\uBCC4",
|
|
365
|
+
periodHalf: "\uBC18\uAE30\uBCC4",
|
|
366
|
+
periodYear: "\uC5F0\uB3C4\uBCC4",
|
|
367
|
+
custom: "\uC0AC\uC6A9\uC790 \uC9C0\uC815",
|
|
368
|
+
today: "\uC624\uB298",
|
|
369
|
+
last7: "\uC9C0\uB09C 7\uC77C",
|
|
370
|
+
last30: "\uC9C0\uB09C 30\uC77C",
|
|
371
|
+
maxWord: "\uCD5C\uB300",
|
|
372
|
+
maxRangeHint: (days) => `\uCD5C\uB300 ${days}\uC77C\uC529`,
|
|
373
|
+
requireAll: "\uD56D\uBAA9\uC744 \uBAA8\uB450 \uC120\uD0DD\uD574 \uC8FC\uC138\uC694.",
|
|
374
|
+
requireAnyDefault: "\uCD5C\uC18C 1\uAC1C\uC758 \uD544\uD130\uB97C \uC120\uD0DD\uD574\uC8FC\uC138\uC694.",
|
|
375
|
+
requireAnyNamed: (name) => `\uCD5C\uC18C 1\uAC1C\uC758 ${name}${koreanParticle(name, "\uC744", "\uB97C")} \uC120\uD0DD\uD574\uC8FC\uC138\uC694.`,
|
|
376
|
+
requireField: (label) => `${label}${koreanParticle(label, "\uC744", "\uB97C")} \uC120\uD0DD\uD574 \uC8FC\uC138\uC694.`,
|
|
377
|
+
fieldFallback: "\uD56D\uBAA9",
|
|
378
|
+
valueListMore: (first, rest) => `${first} \uC678 ${rest}\uAC1C`,
|
|
379
|
+
quarter: (n) => `${n}\uBD84\uAE30`,
|
|
380
|
+
firstHalf: "\uC0C1\uBC18\uAE30",
|
|
381
|
+
secondHalf: "\uD558\uBC18\uAE30",
|
|
382
|
+
removeFilter: (label) => `${label} \uD544\uD130 \uC81C\uAC70`,
|
|
383
|
+
clearFilter: (label) => `${label} \uD544\uD130 \uC9C0\uC6B0\uAE30`,
|
|
384
|
+
resetSearch: "\uAC80\uC0C9 \uCD08\uAE30\uD654",
|
|
385
|
+
addFilter: "\uD544\uD130 \uCD94\uAC00",
|
|
386
|
+
noAddableFilter: "\uCD94\uAC00\uD560 \uD544\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",
|
|
387
|
+
selectNone: "\uC120\uD0DD \uD574\uC81C",
|
|
388
|
+
selectAll: "\uC804\uCCB4 \uC120\uD0DD",
|
|
389
|
+
removeItem: (label) => `${label} \uC0AD\uC81C`,
|
|
390
|
+
keywordContains: "\uD3EC\uD568",
|
|
391
|
+
keywordExact: "\uC77C\uCE58",
|
|
392
|
+
keywordExcludes: "\uBBF8\uD3EC\uD568",
|
|
393
|
+
keywordHintCsv: "\uB2E4\uC911 \uD0A4\uC6CC\uB4DC\uB294 \uCF64\uB9C8(,)\uB85C \uAD6C\uBD84",
|
|
394
|
+
keywordHintEnter: "\uC785\uB825 \uD6C4 Enter\uB85C \uCD94\uAC00",
|
|
395
|
+
keywordCondition: "\uAC80\uC0C9 \uC870\uAC74 :",
|
|
396
|
+
noSearchResults: "\uAC80\uC0C9 \uACB0\uACFC\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4."
|
|
397
|
+
},
|
|
398
|
+
numberInput: {
|
|
399
|
+
rangeBetween: (min, max) => `${min}~${max} \uC0AC\uC774\uB85C \uC785\uB825\uD574 \uC8FC\uC138\uC694.`,
|
|
400
|
+
atLeast: (min) => `${min} \uC774\uC0C1\uC73C\uB85C \uC785\uB825\uD574 \uC8FC\uC138\uC694.`,
|
|
401
|
+
atMost: (max) => `${max} \uC774\uD558\uB85C \uC785\uB825\uD574 \uC8FC\uC138\uC694.`,
|
|
402
|
+
increase: "\uC99D\uAC00",
|
|
403
|
+
decrease: "\uAC10\uC18C"
|
|
404
|
+
},
|
|
405
|
+
chipInput: {
|
|
406
|
+
placeholderWithComma: "\uD0DC\uADF8 \uC785\uB825 (Enter\xB7\uCF64\uB9C8\uB85C \uB4F1\uB85D)",
|
|
407
|
+
placeholder: "\uD0DC\uADF8 \uC785\uB825 (Enter\uB85C \uB4F1\uB85D)",
|
|
408
|
+
duplicateNamed: (label) => `\uC774\uBBF8 \uC785\uB825\uB41C ${label}\uC785\uB2C8\uB2E4.`,
|
|
409
|
+
duplicate: "\uC911\uBCF5\uB41C \uAC12\uC774 \uC874\uC7AC\uD569\uB2C8\uB2E4.",
|
|
410
|
+
maxCount: (max) => `\uCD5C\uB300 ${max}\uAC1C`
|
|
411
|
+
},
|
|
412
|
+
slider: { minValue: "\uCD5C\uC19F\uAC12", maxValue: "\uCD5C\uB313\uAC12" },
|
|
413
|
+
chat: {
|
|
414
|
+
removeAttachment: (name) => `${name} \uC81C\uAC70`,
|
|
415
|
+
placeholder: "\uBA54\uC2DC\uC9C0\uB97C \uC785\uB825\uD574 \uC8FC\uC138\uC694...",
|
|
416
|
+
attachFile: "\uD30C\uC77C \uCCA8\uBD80",
|
|
417
|
+
stopResponse: "\uC751\uB2F5 \uC911\uC9C0",
|
|
418
|
+
send: "\uC804\uC1A1",
|
|
419
|
+
read: "\uC77D\uC74C",
|
|
420
|
+
unread: "\uC548 \uC77D\uC74C"
|
|
421
|
+
},
|
|
422
|
+
loadingModal: {
|
|
423
|
+
loadingMessage: "\uC791\uC5C5 \uC9C4\uD589\uC911...",
|
|
424
|
+
errorMessage: "\uC791\uC5C5\uC5D0 \uC2E4\uD328\uD558\uC600\uC2B5\uB2C8\uB2E4. \uB2E4\uC2DC \uC2DC\uB3C4\uD574 \uC8FC\uC138\uC694.",
|
|
425
|
+
errorButton: "\uB2E4\uC2DC \uC2DC\uB3C4",
|
|
426
|
+
ariaTitle: "\uB85C\uB529 \uC911"
|
|
427
|
+
},
|
|
428
|
+
stepper: { errorTooltip: "\uD655\uC778\uC774 \uD544\uC694\uD55C \uD56D\uBAA9\uC774 \uC788\uC2B5\uB2C8\uB2E4.", ariaLabel: "\uC9C4\uD589 \uB2E8\uACC4" },
|
|
429
|
+
timeline: { empty: "\uB0B4\uC5ED\uC774 \uC5C6\uC2B5\uB2C8\uB2E4." },
|
|
430
|
+
callout: { dangerTitle: "\uC8FC\uC758\uC0AC\uD56D" },
|
|
431
|
+
guide: { tip: "\uD65C\uC6A9 TIP", notion: "\uC0AC\uC6A9\uBC95 \uC548\uB0B4" },
|
|
432
|
+
loginCard: { login: "\uD1B5\uD569 \uACC4\uC815\uC73C\uB85C \uB85C\uADF8\uC778" },
|
|
433
|
+
modal: { defaultTitle: "\uBAA8\uB2EC" },
|
|
434
|
+
launcher: { opensInNewTab: "\uC0C8 \uD0ED\uC5D0\uC11C \uC5F4\uB9BC" },
|
|
435
|
+
common: {
|
|
436
|
+
close: "\uB2EB\uAE30",
|
|
437
|
+
clear: "\uC9C0\uC6B0\uAE30",
|
|
438
|
+
confirm: "\uD655\uC778",
|
|
439
|
+
all: "\uC804\uCCB4",
|
|
440
|
+
back: "\uB4A4\uB85C\uAC00\uAE30",
|
|
441
|
+
more: "\uB354\uBCF4\uAE30",
|
|
442
|
+
moreActions: "\uAE30\uB2A5 \uB354 \uBCF4\uAE30",
|
|
443
|
+
openMenu: "\uBA54\uB274 \uC5F4\uAE30",
|
|
444
|
+
dragHandle: "\uB4DC\uB798\uADF8 \uD578\uB4E4",
|
|
445
|
+
resizeDrawer: "Drawer \uB108\uBE44 \uC870\uC808",
|
|
446
|
+
search: "\uAC80\uC0C9",
|
|
447
|
+
count: (n) => `${n}\uAC1C`
|
|
448
|
+
},
|
|
449
|
+
input: {
|
|
450
|
+
placeholder: "\uC785\uB825\uD574 \uC8FC\uC138\uC694.",
|
|
451
|
+
searchWithinResults: "\uACB0\uACFC \uB0B4 \uAC80\uC0C9",
|
|
452
|
+
clearInput: "\uC785\uB825 \uCD08\uAE30\uD654",
|
|
453
|
+
showPassword: "\uBE44\uBC00\uBC88\uD638 \uD45C\uC2DC"
|
|
454
|
+
},
|
|
252
455
|
pagination: {
|
|
253
456
|
firstPage: "\uCCAB \uD398\uC774\uC9C0",
|
|
254
457
|
prevPage: "\uC774\uC804 \uD398\uC774\uC9C0",
|
|
@@ -265,9 +468,228 @@ var BUNDLES = {
|
|
|
265
468
|
searchPlaceholder: "\uAC80\uC0C9",
|
|
266
469
|
empty: "\uD45C\uC2DC\uD560 \uD56D\uBAA9\uC774 \uC5C6\uC2B5\uB2C8\uB2E4.",
|
|
267
470
|
loading: "\uBD88\uB7EC\uC624\uB294 \uC911..."
|
|
471
|
+
},
|
|
472
|
+
table: {
|
|
473
|
+
selectAll: "\uC804\uCCB4 \uC120\uD0DD",
|
|
474
|
+
selectRow: "\uD589 \uC120\uD0DD",
|
|
475
|
+
empty: "\uB370\uC774\uD130\uAC00 \uC5C6\uC2B5\uB2C8\uB2E4.",
|
|
476
|
+
rowsPerPage: (count) => `${count}\uAC1C\uC529 \uBCF4\uAE30`,
|
|
477
|
+
editable: "\uC218\uC815 \uAC00\uB2A5",
|
|
478
|
+
opensInNewScreen: "\uC0C8 \uD654\uBA74\uC5D0\uC11C \uC5F4\uAE30",
|
|
479
|
+
sortBy: (label) => `${label} \uC815\uB82C`,
|
|
480
|
+
denseOff: "\uB113\uAC8C \uBCF4\uAE30",
|
|
481
|
+
denseOn: "\uC881\uAC8C \uBCF4\uAE30"
|
|
482
|
+
},
|
|
483
|
+
tableBar: {
|
|
484
|
+
totalBefore: "\uCD1D ",
|
|
485
|
+
totalAfter: " \uAC74",
|
|
486
|
+
selectedBefore: "",
|
|
487
|
+
selectedAfter: " \uAC74 \uC120\uD0DD"
|
|
268
488
|
}
|
|
269
489
|
},
|
|
270
490
|
en: {
|
|
491
|
+
accountListBox: {
|
|
492
|
+
accountSetting: "Account settings",
|
|
493
|
+
language: "Change language",
|
|
494
|
+
logout: "Log out"
|
|
495
|
+
},
|
|
496
|
+
gnbSystem: { alert: "Notifications", setting: "Settings" },
|
|
497
|
+
editor: {
|
|
498
|
+
placeholder: "Enter your content.",
|
|
499
|
+
toolbarLabel: "Formatting tools",
|
|
500
|
+
tableSize: "Table size",
|
|
501
|
+
linkUrl: "Link URL",
|
|
502
|
+
apply: "Apply",
|
|
503
|
+
remove: "Remove",
|
|
504
|
+
headingLevel: "Heading level",
|
|
505
|
+
headingBody: "Body",
|
|
506
|
+
fontSize: "Font size",
|
|
507
|
+
fontSizeDefaultLabel: "Default",
|
|
508
|
+
bold: "Bold",
|
|
509
|
+
italic: "Italic",
|
|
510
|
+
underline: "Underline",
|
|
511
|
+
strike: "Strikethrough",
|
|
512
|
+
inlineCode: "Inline code",
|
|
513
|
+
textColor: "Text color",
|
|
514
|
+
clearColor: "Clear color",
|
|
515
|
+
alignLeft: "Align left",
|
|
516
|
+
alignCenter: "Align center",
|
|
517
|
+
alignRight: "Align right",
|
|
518
|
+
alignJustify: "Justify",
|
|
519
|
+
bulletList: "Bullet list",
|
|
520
|
+
orderedList: "Numbered list",
|
|
521
|
+
taskList: "Checklist",
|
|
522
|
+
list: "List",
|
|
523
|
+
blockquote: "Quote",
|
|
524
|
+
codeBlock: "Code block",
|
|
525
|
+
divider: "Divider",
|
|
526
|
+
link: "Link",
|
|
527
|
+
insertImage: "Insert image",
|
|
528
|
+
image: "Image",
|
|
529
|
+
table: "Table",
|
|
530
|
+
addRowAbove: "Add row above",
|
|
531
|
+
addRowBelow: "Add row below",
|
|
532
|
+
addColLeft: "Add column left",
|
|
533
|
+
addColRight: "Add column right",
|
|
534
|
+
mergeCells: "Merge cells",
|
|
535
|
+
splitCell: "Split cell",
|
|
536
|
+
toggleHeaderRow: "Toggle header row",
|
|
537
|
+
toggleHeaderCol: "Toggle header column",
|
|
538
|
+
deleteRow: "Delete row",
|
|
539
|
+
deleteCol: "Delete column",
|
|
540
|
+
deleteTable: "Delete table",
|
|
541
|
+
undo: "Undo",
|
|
542
|
+
redo: "Redo",
|
|
543
|
+
colorDefault: "Default",
|
|
544
|
+
colorSecondary: "Secondary",
|
|
545
|
+
colorMuted: "Muted",
|
|
546
|
+
colorAccent: "Accent",
|
|
547
|
+
colorBrand: "Brand",
|
|
548
|
+
colorSuccess: "Success",
|
|
549
|
+
colorWarning: "Warning",
|
|
550
|
+
colorDanger: "Danger",
|
|
551
|
+
tableCell: (r3, c) => `Row ${r3}, column ${c}`,
|
|
552
|
+
tableSizeText: (rows, cols) => `${rows} rows \xD7 ${cols} columns`,
|
|
553
|
+
heading: (level) => `Heading ${level}`,
|
|
554
|
+
fontSizeDefault: (px) => `Default (body ${px}px)`,
|
|
555
|
+
closeEditing: (label) => `Close ${label}`
|
|
556
|
+
},
|
|
557
|
+
form: { invalid: "Invalid value." },
|
|
558
|
+
date: {
|
|
559
|
+
weekdays: ["Sun", "Mon", "Tue", "Wed", "Thu", "Fri", "Sat"],
|
|
560
|
+
weekdaysLong: ["Sunday", "Monday", "Tuesday", "Wednesday", "Thursday", "Friday", "Saturday"],
|
|
561
|
+
today: "Today",
|
|
562
|
+
prevYear: "Previous year",
|
|
563
|
+
nextYear: "Next year",
|
|
564
|
+
prevMonth: "Previous month",
|
|
565
|
+
nextMonth: "Next month",
|
|
566
|
+
monthLabel: (month) => ["Jan", "Feb", "Mar", "Apr", "May", "Jun", "Jul", "Aug", "Sep", "Oct", "Nov", "Dec"][month - 1] ?? String(month),
|
|
567
|
+
dayLabel: (day) => String(day),
|
|
568
|
+
unitYear: "-",
|
|
569
|
+
unitMonth: "-",
|
|
570
|
+
unitDay: "",
|
|
571
|
+
hourItem: (hour) => hour,
|
|
572
|
+
minuteItem: (minute) => minute,
|
|
573
|
+
hourAria: (prefix) => prefix ? `${prefix} hour` : "Hour",
|
|
574
|
+
minuteAria: (prefix) => prefix ? `${prefix} minute` : "Minute",
|
|
575
|
+
meridiemAria: (prefix) => prefix ? `${prefix} AM/PM` : "AM/PM",
|
|
576
|
+
am: "AM",
|
|
577
|
+
pm: "PM",
|
|
578
|
+
rangeFrom: "From",
|
|
579
|
+
rangeTo: "To",
|
|
580
|
+
clearDate: "Clear date",
|
|
581
|
+
clearMonth: "Clear month",
|
|
582
|
+
clearYear: "Clear year",
|
|
583
|
+
clearPeriod: "Clear period",
|
|
584
|
+
clearTime: "Clear time",
|
|
585
|
+
clearTimeRange: "Clear time range",
|
|
586
|
+
start: "Start",
|
|
587
|
+
end: "End",
|
|
588
|
+
startTime: "Start time",
|
|
589
|
+
endTime: "End time"
|
|
590
|
+
},
|
|
591
|
+
chart: {
|
|
592
|
+
unit: (unit) => `Unit: ${unit}`,
|
|
593
|
+
pie: "Pie chart",
|
|
594
|
+
donut: "Donut chart",
|
|
595
|
+
radialSummary: (count, kind) => `${kind} with ${count} ${count === 1 ? "item" : "items"}`,
|
|
596
|
+
barSummary: (c, s, stacked) => `${stacked ? "Stacked bar chart" : "Bar chart"} with ${c} ${c === 1 ? "item" : "items"} and ${s} series`,
|
|
597
|
+
lineSummary: (c, s, stacked) => `${stacked ? "Stacked line chart" : "Line chart"} with ${c} ${c === 1 ? "item" : "items"} and ${s} series`
|
|
598
|
+
},
|
|
599
|
+
chipFilter: {
|
|
600
|
+
periodDay: "Daily",
|
|
601
|
+
periodMonth: "Monthly",
|
|
602
|
+
periodQuarter: "Quarterly",
|
|
603
|
+
periodHalf: "Half-yearly",
|
|
604
|
+
periodYear: "Yearly",
|
|
605
|
+
custom: "Custom",
|
|
606
|
+
today: "Today",
|
|
607
|
+
last7: "Last 7 days",
|
|
608
|
+
last30: "Last 30 days",
|
|
609
|
+
maxWord: "max",
|
|
610
|
+
maxRangeHint: (days) => `max ${days} days at a time`,
|
|
611
|
+
requireAll: "Select all items.",
|
|
612
|
+
requireAnyDefault: "Select at least one filter.",
|
|
613
|
+
requireAnyNamed: (name) => `Select at least one ${name}.`,
|
|
614
|
+
requireField: (label) => `Select ${label}.`,
|
|
615
|
+
fieldFallback: "item",
|
|
616
|
+
valueListMore: (first, rest) => `${first} +${rest} more`,
|
|
617
|
+
quarter: (n) => `Q${n}`,
|
|
618
|
+
firstHalf: "H1",
|
|
619
|
+
secondHalf: "H2",
|
|
620
|
+
removeFilter: (label) => `Remove ${label} filter`,
|
|
621
|
+
clearFilter: (label) => `Clear ${label} filter`,
|
|
622
|
+
resetSearch: "Reset search",
|
|
623
|
+
addFilter: "Add filter",
|
|
624
|
+
noAddableFilter: "No filters to add.",
|
|
625
|
+
selectNone: "Deselect all",
|
|
626
|
+
selectAll: "Select all",
|
|
627
|
+
removeItem: (label) => `Delete ${label}`,
|
|
628
|
+
keywordContains: "Contains",
|
|
629
|
+
keywordExact: "Exact",
|
|
630
|
+
keywordExcludes: "Excludes",
|
|
631
|
+
keywordHintCsv: "Separate multiple keywords with commas (,)",
|
|
632
|
+
keywordHintEnter: "Press Enter to add",
|
|
633
|
+
keywordCondition: "Search condition:",
|
|
634
|
+
noSearchResults: "No search results."
|
|
635
|
+
},
|
|
636
|
+
numberInput: {
|
|
637
|
+
rangeBetween: (min, max) => `Enter a value between ${min} and ${max}.`,
|
|
638
|
+
atLeast: (min) => `Enter ${min} or more.`,
|
|
639
|
+
atMost: (max) => `Enter ${max} or less.`,
|
|
640
|
+
increase: "Increase",
|
|
641
|
+
decrease: "Decrease"
|
|
642
|
+
},
|
|
643
|
+
chipInput: {
|
|
644
|
+
placeholderWithComma: "Add a tag (press Enter or comma)",
|
|
645
|
+
placeholder: "Add a tag (press Enter)",
|
|
646
|
+
duplicateNamed: (label) => `This ${label} has already been entered.`,
|
|
647
|
+
duplicate: "Duplicate values exist.",
|
|
648
|
+
maxCount: (max) => `Up to ${max}`
|
|
649
|
+
},
|
|
650
|
+
slider: { minValue: "Minimum", maxValue: "Maximum" },
|
|
651
|
+
chat: {
|
|
652
|
+
removeAttachment: (name) => `Remove ${name}`,
|
|
653
|
+
placeholder: "Enter a message...",
|
|
654
|
+
attachFile: "Attach file",
|
|
655
|
+
stopResponse: "Stop response",
|
|
656
|
+
send: "Send",
|
|
657
|
+
read: "Read",
|
|
658
|
+
unread: "Unread"
|
|
659
|
+
},
|
|
660
|
+
loadingModal: {
|
|
661
|
+
loadingMessage: "Working...",
|
|
662
|
+
errorMessage: "The task failed. Please try again.",
|
|
663
|
+
errorButton: "Retry",
|
|
664
|
+
ariaTitle: "Loading"
|
|
665
|
+
},
|
|
666
|
+
stepper: { errorTooltip: "Some items need your attention.", ariaLabel: "Progress steps" },
|
|
667
|
+
timeline: { empty: "No history." },
|
|
668
|
+
callout: { dangerTitle: "Caution" },
|
|
669
|
+
guide: { tip: "Tip", notion: "How-to guide" },
|
|
670
|
+
loginCard: { login: "Sign in with unified account" },
|
|
671
|
+
modal: { defaultTitle: "Modal" },
|
|
672
|
+
launcher: { opensInNewTab: "Opens in a new tab" },
|
|
673
|
+
common: {
|
|
674
|
+
close: "Close",
|
|
675
|
+
clear: "Clear",
|
|
676
|
+
confirm: "OK",
|
|
677
|
+
all: "All",
|
|
678
|
+
back: "Back",
|
|
679
|
+
more: "More",
|
|
680
|
+
moreActions: "More actions",
|
|
681
|
+
openMenu: "Open menu",
|
|
682
|
+
dragHandle: "Drag handle",
|
|
683
|
+
resizeDrawer: "Resize drawer width",
|
|
684
|
+
search: "Search",
|
|
685
|
+
count: (n) => String(n)
|
|
686
|
+
},
|
|
687
|
+
input: {
|
|
688
|
+
placeholder: "Please enter a value.",
|
|
689
|
+
searchWithinResults: "Search within results",
|
|
690
|
+
clearInput: "Reset input",
|
|
691
|
+
showPassword: "Show password"
|
|
692
|
+
},
|
|
271
693
|
pagination: {
|
|
272
694
|
firstPage: "First page",
|
|
273
695
|
prevPage: "Previous page",
|
|
@@ -284,9 +706,228 @@ var BUNDLES = {
|
|
|
284
706
|
searchPlaceholder: "Search",
|
|
285
707
|
empty: "No items to display.",
|
|
286
708
|
loading: "Loading..."
|
|
709
|
+
},
|
|
710
|
+
table: {
|
|
711
|
+
selectAll: "Select all",
|
|
712
|
+
selectRow: "Select row",
|
|
713
|
+
empty: "No data.",
|
|
714
|
+
rowsPerPage: (count) => `${count} per page`,
|
|
715
|
+
editable: "Editable",
|
|
716
|
+
opensInNewScreen: "Opens in a new screen",
|
|
717
|
+
sortBy: (label) => `Sort by ${label}`,
|
|
718
|
+
denseOff: "Comfortable view",
|
|
719
|
+
denseOn: "Compact view"
|
|
720
|
+
},
|
|
721
|
+
tableBar: {
|
|
722
|
+
totalBefore: "Total ",
|
|
723
|
+
totalAfter: "",
|
|
724
|
+
selectedBefore: "",
|
|
725
|
+
selectedAfter: " selected"
|
|
287
726
|
}
|
|
288
727
|
},
|
|
289
728
|
ja: {
|
|
729
|
+
accountListBox: {
|
|
730
|
+
accountSetting: "\u30A2\u30AB\u30A6\u30F3\u30C8\u8A2D\u5B9A",
|
|
731
|
+
language: "\u8A00\u8A9E\u306E\u5909\u66F4",
|
|
732
|
+
logout: "\u30ED\u30B0\u30A2\u30A6\u30C8"
|
|
733
|
+
},
|
|
734
|
+
gnbSystem: { alert: "\u901A\u77E5", setting: "\u8A2D\u5B9A" },
|
|
735
|
+
editor: {
|
|
736
|
+
placeholder: "\u5185\u5BB9\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
|
|
737
|
+
toolbarLabel: "\u66F8\u5F0F\u30C4\u30FC\u30EB",
|
|
738
|
+
tableSize: "\u8868\u306E\u30B5\u30A4\u30BA",
|
|
739
|
+
linkUrl: "\u30EA\u30F3\u30AFURL",
|
|
740
|
+
apply: "\u9069\u7528",
|
|
741
|
+
remove: "\u524A\u9664",
|
|
742
|
+
headingLevel: "\u898B\u51FA\u3057\u30EC\u30D9\u30EB",
|
|
743
|
+
headingBody: "\u672C\u6587",
|
|
744
|
+
fontSize: "\u6587\u5B57\u30B5\u30A4\u30BA",
|
|
745
|
+
fontSizeDefaultLabel: "\u6A19\u6E96",
|
|
746
|
+
bold: "\u592A\u5B57",
|
|
747
|
+
italic: "\u659C\u4F53",
|
|
748
|
+
underline: "\u4E0B\u7DDA",
|
|
749
|
+
strike: "\u53D6\u308A\u6D88\u3057\u7DDA",
|
|
750
|
+
inlineCode: "\u30A4\u30F3\u30E9\u30A4\u30F3\u30B3\u30FC\u30C9",
|
|
751
|
+
textColor: "\u6587\u5B57\u8272",
|
|
752
|
+
clearColor: "\u8272\u3092\u30AF\u30EA\u30A2",
|
|
753
|
+
alignLeft: "\u5DE6\u63C3\u3048",
|
|
754
|
+
alignCenter: "\u4E2D\u592E\u63C3\u3048",
|
|
755
|
+
alignRight: "\u53F3\u63C3\u3048",
|
|
756
|
+
alignJustify: "\u4E21\u7AEF\u63C3\u3048",
|
|
757
|
+
bulletList: "\u7B87\u6761\u66F8\u304D",
|
|
758
|
+
orderedList: "\u756A\u53F7\u4ED8\u304D\u30EA\u30B9\u30C8",
|
|
759
|
+
taskList: "\u30C1\u30A7\u30C3\u30AF\u30EA\u30B9\u30C8",
|
|
760
|
+
list: "\u30EA\u30B9\u30C8",
|
|
761
|
+
blockquote: "\u5F15\u7528",
|
|
762
|
+
codeBlock: "\u30B3\u30FC\u30C9\u30D6\u30ED\u30C3\u30AF",
|
|
763
|
+
divider: "\u533A\u5207\u308A\u7DDA",
|
|
764
|
+
link: "\u30EA\u30F3\u30AF",
|
|
765
|
+
insertImage: "\u753B\u50CF\u3092\u633F\u5165",
|
|
766
|
+
image: "\u753B\u50CF",
|
|
767
|
+
table: "\u8868",
|
|
768
|
+
addRowAbove: "\u4E0A\u306B\u884C\u3092\u8FFD\u52A0",
|
|
769
|
+
addRowBelow: "\u4E0B\u306B\u884C\u3092\u8FFD\u52A0",
|
|
770
|
+
addColLeft: "\u5DE6\u306B\u5217\u3092\u8FFD\u52A0",
|
|
771
|
+
addColRight: "\u53F3\u306B\u5217\u3092\u8FFD\u52A0",
|
|
772
|
+
mergeCells: "\u30BB\u30EB\u3092\u7D50\u5408",
|
|
773
|
+
splitCell: "\u7D50\u5408\u3092\u89E3\u9664",
|
|
774
|
+
toggleHeaderRow: "\u30D8\u30C3\u30C0\u30FC\u884C\u3092\u5207\u308A\u66FF\u3048",
|
|
775
|
+
toggleHeaderCol: "\u30D8\u30C3\u30C0\u30FC\u5217\u3092\u5207\u308A\u66FF\u3048",
|
|
776
|
+
deleteRow: "\u884C\u3092\u524A\u9664",
|
|
777
|
+
deleteCol: "\u5217\u3092\u524A\u9664",
|
|
778
|
+
deleteTable: "\u8868\u3092\u524A\u9664",
|
|
779
|
+
undo: "\u5143\u306B\u623B\u3059",
|
|
780
|
+
redo: "\u3084\u308A\u76F4\u3057",
|
|
781
|
+
colorDefault: "\u6A19\u6E96",
|
|
782
|
+
colorSecondary: "\u88DC\u52A9",
|
|
783
|
+
colorMuted: "\u8584\u3044",
|
|
784
|
+
colorAccent: "\u5F37\u8ABF",
|
|
785
|
+
colorBrand: "\u30D6\u30E9\u30F3\u30C9",
|
|
786
|
+
colorSuccess: "\u6210\u529F",
|
|
787
|
+
colorWarning: "\u6CE8\u610F",
|
|
788
|
+
colorDanger: "\u5371\u967A",
|
|
789
|
+
tableCell: (r3, c) => `${r3}\u884C${c}\u5217`,
|
|
790
|
+
tableSizeText: (rows, cols) => `${rows}\u884C \xD7 ${cols}\u5217`,
|
|
791
|
+
heading: (level) => `\u898B\u51FA\u3057${level}`,
|
|
792
|
+
fontSizeDefault: (px) => `\u6A19\u6E96\uFF08\u672C\u6587 ${px}px\uFF09`,
|
|
793
|
+
closeEditing: (label) => `${label}\u3092\u9589\u3058\u308B`
|
|
794
|
+
},
|
|
795
|
+
form: { invalid: "\u7121\u52B9\u306A\u5024\u3067\u3059\u3002" },
|
|
796
|
+
date: {
|
|
797
|
+
weekdays: ["\u65E5", "\u6708", "\u706B", "\u6C34", "\u6728", "\u91D1", "\u571F"],
|
|
798
|
+
weekdaysLong: ["\u65E5\u66DC\u65E5", "\u6708\u66DC\u65E5", "\u706B\u66DC\u65E5", "\u6C34\u66DC\u65E5", "\u6728\u66DC\u65E5", "\u91D1\u66DC\u65E5", "\u571F\u66DC\u65E5"],
|
|
799
|
+
today: "\u4ECA\u65E5",
|
|
800
|
+
prevYear: "\u524D\u306E\u5E74",
|
|
801
|
+
nextYear: "\u6B21\u306E\u5E74",
|
|
802
|
+
prevMonth: "\u524D\u306E\u6708",
|
|
803
|
+
nextMonth: "\u6B21\u306E\u6708",
|
|
804
|
+
monthLabel: (month) => `${month}\u6708`,
|
|
805
|
+
dayLabel: (day) => `${day}\u65E5`,
|
|
806
|
+
unitYear: "\u5E74",
|
|
807
|
+
unitMonth: "\u6708",
|
|
808
|
+
unitDay: "\u65E5",
|
|
809
|
+
hourItem: (hour) => `${hour}\u6642`,
|
|
810
|
+
minuteItem: (minute) => `${minute}\u5206`,
|
|
811
|
+
hourAria: (prefix) => `${prefix}\u6642`,
|
|
812
|
+
minuteAria: (prefix) => `${prefix}\u5206`,
|
|
813
|
+
meridiemAria: (prefix) => `${prefix}\u5348\u524D/\u5348\u5F8C`,
|
|
814
|
+
am: "\u5348\u524D",
|
|
815
|
+
pm: "\u5348\u5F8C",
|
|
816
|
+
rangeFrom: "\u958B\u59CB",
|
|
817
|
+
rangeTo: "\u7D42\u4E86",
|
|
818
|
+
clearDate: "\u65E5\u4ED8\u3092\u30AF\u30EA\u30A2",
|
|
819
|
+
clearMonth: "\u6708\u3092\u30AF\u30EA\u30A2",
|
|
820
|
+
clearYear: "\u5E74\u3092\u30AF\u30EA\u30A2",
|
|
821
|
+
clearPeriod: "\u671F\u9593\u3092\u30AF\u30EA\u30A2",
|
|
822
|
+
clearTime: "\u6642\u523B\u3092\u30AF\u30EA\u30A2",
|
|
823
|
+
clearTimeRange: "\u6642\u9593\u7BC4\u56F2\u3092\u30AF\u30EA\u30A2",
|
|
824
|
+
start: "\u958B\u59CB",
|
|
825
|
+
end: "\u7D42\u4E86",
|
|
826
|
+
startTime: "\u958B\u59CB\u6642\u523B",
|
|
827
|
+
endTime: "\u7D42\u4E86\u6642\u523B"
|
|
828
|
+
},
|
|
829
|
+
chart: {
|
|
830
|
+
unit: (unit) => `\u5358\u4F4D\uFF1A${unit}`,
|
|
831
|
+
pie: "\u5186\u30B0\u30E9\u30D5",
|
|
832
|
+
donut: "\u30C9\u30FC\u30CA\u30C4\u30B0\u30E9\u30D5",
|
|
833
|
+
radialSummary: (count, kind) => `${count}\u9805\u76EE\u306E${kind}`,
|
|
834
|
+
barSummary: (c, s, stacked) => `${c}\u9805\u76EE\u3001${s}\u7CFB\u5217\u306E${stacked ? "\u7A4D\u307F\u4E0A\u3052" : ""}\u68D2\u30B0\u30E9\u30D5`,
|
|
835
|
+
lineSummary: (c, s, stacked) => `${c}\u9805\u76EE\u3001${s}\u7CFB\u5217\u306E${stacked ? "\u7A4D\u307F\u4E0A\u3052" : ""}\u6298\u308C\u7DDA\u30B0\u30E9\u30D5`
|
|
836
|
+
},
|
|
837
|
+
chipFilter: {
|
|
838
|
+
periodDay: "\u65E5\u5225",
|
|
839
|
+
periodMonth: "\u6708\u5225",
|
|
840
|
+
periodQuarter: "\u56DB\u534A\u671F\u5225",
|
|
841
|
+
periodHalf: "\u534A\u671F\u5225",
|
|
842
|
+
periodYear: "\u5E74\u5225",
|
|
843
|
+
custom: "\u30E6\u30FC\u30B6\u30FC\u6307\u5B9A",
|
|
844
|
+
today: "\u4ECA\u65E5",
|
|
845
|
+
last7: "\u904E\u53BB7\u65E5",
|
|
846
|
+
last30: "\u904E\u53BB30\u65E5",
|
|
847
|
+
maxWord: "\u6700\u5927",
|
|
848
|
+
maxRangeHint: (days) => `\u6700\u5927${days}\u65E5`,
|
|
849
|
+
requireAll: "\u3059\u3079\u3066\u306E\u9805\u76EE\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
|
|
850
|
+
requireAnyDefault: "1\u3064\u4EE5\u4E0A\u306E\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
|
|
851
|
+
requireAnyNamed: (name) => `${name}\u30921\u3064\u4EE5\u4E0A\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,
|
|
852
|
+
requireField: (label) => `${label}\u3092\u9078\u629E\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,
|
|
853
|
+
fieldFallback: "\u9805\u76EE",
|
|
854
|
+
valueListMore: (first, rest) => `${first} \u4ED6${rest}\u4EF6`,
|
|
855
|
+
quarter: (n) => `\u7B2C${n}\u56DB\u534A\u671F`,
|
|
856
|
+
firstHalf: "\u4E0A\u534A\u671F",
|
|
857
|
+
secondHalf: "\u4E0B\u534A\u671F",
|
|
858
|
+
removeFilter: (label) => `${label}\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u524A\u9664`,
|
|
859
|
+
clearFilter: (label) => `${label}\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u30AF\u30EA\u30A2`,
|
|
860
|
+
resetSearch: "\u691C\u7D22\u3092\u30EA\u30BB\u30C3\u30C8",
|
|
861
|
+
addFilter: "\u30D5\u30A3\u30EB\u30BF\u30FC\u3092\u8FFD\u52A0",
|
|
862
|
+
noAddableFilter: "\u8FFD\u52A0\u3067\u304D\u308B\u30D5\u30A3\u30EB\u30BF\u30FC\u304C\u3042\u308A\u307E\u305B\u3093\u3002",
|
|
863
|
+
selectNone: "\u9078\u629E\u3092\u89E3\u9664",
|
|
864
|
+
selectAll: "\u3059\u3079\u3066\u9078\u629E",
|
|
865
|
+
removeItem: (label) => `${label}\u3092\u524A\u9664`,
|
|
866
|
+
keywordContains: "\u542B\u3080",
|
|
867
|
+
keywordExact: "\u4E00\u81F4",
|
|
868
|
+
keywordExcludes: "\u542B\u307E\u306A\u3044",
|
|
869
|
+
keywordHintCsv: "\u8907\u6570\u306E\u30AD\u30FC\u30EF\u30FC\u30C9\u306F\u30AB\u30F3\u30DE(,)\u3067\u533A\u5207\u308A\u307E\u3059",
|
|
870
|
+
keywordHintEnter: "\u5165\u529B\u5F8C Enter \u3067\u8FFD\u52A0",
|
|
871
|
+
keywordCondition: "\u691C\u7D22\u6761\u4EF6\uFF1A",
|
|
872
|
+
noSearchResults: "\u691C\u7D22\u7D50\u679C\u304C\u3042\u308A\u307E\u305B\u3093\u3002"
|
|
873
|
+
},
|
|
874
|
+
numberInput: {
|
|
875
|
+
rangeBetween: (min, max) => `${min}\u301C${max}\u306E\u7BC4\u56F2\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,
|
|
876
|
+
atLeast: (min) => `${min}\u4EE5\u4E0A\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,
|
|
877
|
+
atMost: (max) => `${max}\u4EE5\u4E0B\u3067\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002`,
|
|
878
|
+
increase: "\u5897\u3084\u3059",
|
|
879
|
+
decrease: "\u6E1B\u3089\u3059"
|
|
880
|
+
},
|
|
881
|
+
chipInput: {
|
|
882
|
+
placeholderWithComma: "\u30BF\u30B0\u3092\u5165\u529B\uFF08Enter\u307E\u305F\u306F\u30AB\u30F3\u30DE\u3067\u767B\u9332\uFF09",
|
|
883
|
+
placeholder: "\u30BF\u30B0\u3092\u5165\u529B\uFF08Enter\u3067\u767B\u9332\uFF09",
|
|
884
|
+
duplicateNamed: (label) => `\u3059\u3067\u306B\u5165\u529B\u3055\u308C\u305F${label}\u3067\u3059\u3002`,
|
|
885
|
+
duplicate: "\u91CD\u8907\u3057\u305F\u5024\u304C\u3042\u308A\u307E\u3059\u3002",
|
|
886
|
+
maxCount: (max) => `\u6700\u5927${max}\u4EF6`
|
|
887
|
+
},
|
|
888
|
+
slider: { minValue: "\u6700\u5C0F\u5024", maxValue: "\u6700\u5927\u5024" },
|
|
889
|
+
chat: {
|
|
890
|
+
removeAttachment: (name) => `${name}\u3092\u524A\u9664`,
|
|
891
|
+
placeholder: "\u30E1\u30C3\u30BB\u30FC\u30B8\u3092\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044...",
|
|
892
|
+
attachFile: "\u30D5\u30A1\u30A4\u30EB\u3092\u6DFB\u4ED8",
|
|
893
|
+
stopResponse: "\u5FDC\u7B54\u3092\u505C\u6B62",
|
|
894
|
+
send: "\u9001\u4FE1",
|
|
895
|
+
read: "\u65E2\u8AAD",
|
|
896
|
+
unread: "\u672A\u8AAD"
|
|
897
|
+
},
|
|
898
|
+
loadingModal: {
|
|
899
|
+
loadingMessage: "\u51E6\u7406\u4E2D...",
|
|
900
|
+
errorMessage: "\u51E6\u7406\u306B\u5931\u6557\u3057\u307E\u3057\u305F\u3002\u3082\u3046\u4E00\u5EA6\u304A\u8A66\u3057\u304F\u3060\u3055\u3044\u3002",
|
|
901
|
+
errorButton: "\u518D\u8A66\u884C",
|
|
902
|
+
ariaTitle: "\u8AAD\u307F\u8FBC\u307F\u4E2D"
|
|
903
|
+
},
|
|
904
|
+
stepper: { errorTooltip: "\u78BA\u8A8D\u304C\u5FC5\u8981\u306A\u9805\u76EE\u304C\u3042\u308A\u307E\u3059\u3002", ariaLabel: "\u9032\u884C\u30B9\u30C6\u30C3\u30D7" },
|
|
905
|
+
timeline: { empty: "\u5C65\u6B74\u304C\u3042\u308A\u307E\u305B\u3093\u3002" },
|
|
906
|
+
callout: { dangerTitle: "\u6CE8\u610F\u4E8B\u9805" },
|
|
907
|
+
guide: { tip: "\u30D2\u30F3\u30C8", notion: "\u4F7F\u3044\u65B9\u30AC\u30A4\u30C9" },
|
|
908
|
+
loginCard: { login: "\u7D71\u5408\u30A2\u30AB\u30A6\u30F3\u30C8\u3067\u30ED\u30B0\u30A4\u30F3" },
|
|
909
|
+
modal: { defaultTitle: "\u30E2\u30FC\u30C0\u30EB" },
|
|
910
|
+
launcher: { opensInNewTab: "\u65B0\u3057\u3044\u30BF\u30D6\u3067\u958B\u304D\u307E\u3059" },
|
|
911
|
+
common: {
|
|
912
|
+
close: "\u9589\u3058\u308B",
|
|
913
|
+
clear: "\u30AF\u30EA\u30A2",
|
|
914
|
+
confirm: "\u78BA\u8A8D",
|
|
915
|
+
all: "\u3059\u3079\u3066",
|
|
916
|
+
back: "\u623B\u308B",
|
|
917
|
+
more: "\u3082\u3063\u3068\u898B\u308B",
|
|
918
|
+
moreActions: "\u305D\u306E\u4ED6\u306E\u6A5F\u80FD",
|
|
919
|
+
openMenu: "\u30E1\u30CB\u30E5\u30FC\u3092\u958B\u304F",
|
|
920
|
+
dragHandle: "\u30C9\u30E9\u30C3\u30B0\u30CF\u30F3\u30C9\u30EB",
|
|
921
|
+
resizeDrawer: "\u30C9\u30ED\u30EF\u30FC\u306E\u5E45\u3092\u8ABF\u6574",
|
|
922
|
+
search: "\u691C\u7D22",
|
|
923
|
+
count: (n) => `${n}\u4EF6`
|
|
924
|
+
},
|
|
925
|
+
input: {
|
|
926
|
+
placeholder: "\u5165\u529B\u3057\u3066\u304F\u3060\u3055\u3044\u3002",
|
|
927
|
+
searchWithinResults: "\u7D50\u679C\u5185\u3092\u691C\u7D22",
|
|
928
|
+
clearInput: "\u5165\u529B\u3092\u30EA\u30BB\u30C3\u30C8",
|
|
929
|
+
showPassword: "\u30D1\u30B9\u30EF\u30FC\u30C9\u3092\u8868\u793A"
|
|
930
|
+
},
|
|
290
931
|
pagination: {
|
|
291
932
|
firstPage: "\u6700\u521D\u306E\u30DA\u30FC\u30B8",
|
|
292
933
|
prevPage: "\u524D\u306E\u30DA\u30FC\u30B8",
|
|
@@ -303,9 +944,224 @@ var BUNDLES = {
|
|
|
303
944
|
searchPlaceholder: "\u691C\u7D22",
|
|
304
945
|
empty: "\u8868\u793A\u3059\u308B\u9805\u76EE\u304C\u3042\u308A\u307E\u305B\u3093\u3002",
|
|
305
946
|
loading: "\u8AAD\u307F\u8FBC\u307F\u4E2D..."
|
|
947
|
+
},
|
|
948
|
+
table: {
|
|
949
|
+
selectAll: "\u3059\u3079\u3066\u9078\u629E",
|
|
950
|
+
selectRow: "\u884C\u3092\u9078\u629E",
|
|
951
|
+
empty: "\u30C7\u30FC\u30BF\u304C\u3042\u308A\u307E\u305B\u3093\u3002",
|
|
952
|
+
rowsPerPage: (count) => `${count}\u4EF6\u305A\u3064\u8868\u793A`,
|
|
953
|
+
editable: "\u7DE8\u96C6\u53EF\u80FD",
|
|
954
|
+
opensInNewScreen: "\u65B0\u3057\u3044\u753B\u9762\u3067\u958B\u304F",
|
|
955
|
+
sortBy: (label) => `${label} \u3067\u4E26\u3079\u66FF\u3048`,
|
|
956
|
+
denseOff: "\u5E83\u304F\u8868\u793A",
|
|
957
|
+
denseOn: "\u72ED\u304F\u8868\u793A"
|
|
958
|
+
},
|
|
959
|
+
tableBar: {
|
|
960
|
+
totalBefore: "\u5408\u8A08 ",
|
|
961
|
+
totalAfter: "\u4EF6",
|
|
962
|
+
selectedBefore: "",
|
|
963
|
+
selectedAfter: "\u4EF6\u9078\u629E"
|
|
306
964
|
}
|
|
307
965
|
},
|
|
308
966
|
zh: {
|
|
967
|
+
accountListBox: { accountSetting: "\u8D26\u53F7\u8BBE\u7F6E", language: "\u66F4\u6539\u8BED\u8A00", logout: "\u9000\u51FA\u767B\u5F55" },
|
|
968
|
+
gnbSystem: { alert: "\u901A\u77E5", setting: "\u8BBE\u7F6E" },
|
|
969
|
+
editor: {
|
|
970
|
+
placeholder: "\u8BF7\u8F93\u5165\u5185\u5BB9\u3002",
|
|
971
|
+
toolbarLabel: "\u683C\u5F0F\u5DE5\u5177",
|
|
972
|
+
tableSize: "\u8868\u683C\u5927\u5C0F",
|
|
973
|
+
linkUrl: "\u94FE\u63A5\u5730\u5740",
|
|
974
|
+
apply: "\u5E94\u7528",
|
|
975
|
+
remove: "\u79FB\u9664",
|
|
976
|
+
headingLevel: "\u6807\u9898\u7EA7\u522B",
|
|
977
|
+
headingBody: "\u6B63\u6587",
|
|
978
|
+
fontSize: "\u5B57\u53F7",
|
|
979
|
+
fontSizeDefaultLabel: "\u9ED8\u8BA4",
|
|
980
|
+
bold: "\u52A0\u7C97",
|
|
981
|
+
italic: "\u659C\u4F53",
|
|
982
|
+
underline: "\u4E0B\u5212\u7EBF",
|
|
983
|
+
strike: "\u5220\u9664\u7EBF",
|
|
984
|
+
inlineCode: "\u884C\u5185\u4EE3\u7801",
|
|
985
|
+
textColor: "\u6587\u5B57\u989C\u8272",
|
|
986
|
+
clearColor: "\u6E05\u9664\u989C\u8272",
|
|
987
|
+
alignLeft: "\u5DE6\u5BF9\u9F50",
|
|
988
|
+
alignCenter: "\u5C45\u4E2D\u5BF9\u9F50",
|
|
989
|
+
alignRight: "\u53F3\u5BF9\u9F50",
|
|
990
|
+
alignJustify: "\u4E24\u7AEF\u5BF9\u9F50",
|
|
991
|
+
bulletList: "\u9879\u76EE\u7B26\u53F7\u5217\u8868",
|
|
992
|
+
orderedList: "\u7F16\u53F7\u5217\u8868",
|
|
993
|
+
taskList: "\u5F85\u529E\u5217\u8868",
|
|
994
|
+
list: "\u5217\u8868",
|
|
995
|
+
blockquote: "\u5F15\u7528",
|
|
996
|
+
codeBlock: "\u4EE3\u7801\u5757",
|
|
997
|
+
divider: "\u5206\u9694\u7EBF",
|
|
998
|
+
link: "\u94FE\u63A5",
|
|
999
|
+
insertImage: "\u63D2\u5165\u56FE\u7247",
|
|
1000
|
+
image: "\u56FE\u7247",
|
|
1001
|
+
table: "\u8868\u683C",
|
|
1002
|
+
addRowAbove: "\u5728\u4E0A\u65B9\u63D2\u5165\u884C",
|
|
1003
|
+
addRowBelow: "\u5728\u4E0B\u65B9\u63D2\u5165\u884C",
|
|
1004
|
+
addColLeft: "\u5728\u5DE6\u4FA7\u63D2\u5165\u5217",
|
|
1005
|
+
addColRight: "\u5728\u53F3\u4FA7\u63D2\u5165\u5217",
|
|
1006
|
+
mergeCells: "\u5408\u5E76\u5355\u5143\u683C",
|
|
1007
|
+
splitCell: "\u53D6\u6D88\u5408\u5E76",
|
|
1008
|
+
toggleHeaderRow: "\u5207\u6362\u6807\u9898\u884C",
|
|
1009
|
+
toggleHeaderCol: "\u5207\u6362\u6807\u9898\u5217",
|
|
1010
|
+
deleteRow: "\u5220\u9664\u884C",
|
|
1011
|
+
deleteCol: "\u5220\u9664\u5217",
|
|
1012
|
+
deleteTable: "\u5220\u9664\u8868\u683C",
|
|
1013
|
+
undo: "\u64A4\u9500",
|
|
1014
|
+
redo: "\u91CD\u505A",
|
|
1015
|
+
colorDefault: "\u9ED8\u8BA4",
|
|
1016
|
+
colorSecondary: "\u6B21\u8981",
|
|
1017
|
+
colorMuted: "\u6DE1\u5316",
|
|
1018
|
+
colorAccent: "\u5F3A\u8C03",
|
|
1019
|
+
colorBrand: "\u54C1\u724C",
|
|
1020
|
+
colorSuccess: "\u6210\u529F",
|
|
1021
|
+
colorWarning: "\u8B66\u544A",
|
|
1022
|
+
colorDanger: "\u5371\u9669",
|
|
1023
|
+
tableCell: (r3, c) => `${r3}\u884C${c}\u5217`,
|
|
1024
|
+
tableSizeText: (rows, cols) => `${rows}\u884C \xD7 ${cols}\u5217`,
|
|
1025
|
+
heading: (level) => `\u6807\u9898 ${level}`,
|
|
1026
|
+
fontSizeDefault: (px) => `\u9ED8\u8BA4\uFF08\u6B63\u6587 ${px}px\uFF09`,
|
|
1027
|
+
closeEditing: (label) => `\u5173\u95ED${label}`
|
|
1028
|
+
},
|
|
1029
|
+
form: { invalid: "\u65E0\u6548\u7684\u503C\u3002" },
|
|
1030
|
+
date: {
|
|
1031
|
+
weekdays: ["\u65E5", "\u4E00", "\u4E8C", "\u4E09", "\u56DB", "\u4E94", "\u516D"],
|
|
1032
|
+
weekdaysLong: ["\u661F\u671F\u65E5", "\u661F\u671F\u4E00", "\u661F\u671F\u4E8C", "\u661F\u671F\u4E09", "\u661F\u671F\u56DB", "\u661F\u671F\u4E94", "\u661F\u671F\u516D"],
|
|
1033
|
+
today: "\u4ECA\u5929",
|
|
1034
|
+
prevYear: "\u4E0A\u4E00\u5E74",
|
|
1035
|
+
nextYear: "\u4E0B\u4E00\u5E74",
|
|
1036
|
+
prevMonth: "\u4E0A\u4E2A\u6708",
|
|
1037
|
+
nextMonth: "\u4E0B\u4E2A\u6708",
|
|
1038
|
+
monthLabel: (month) => `${month}\u6708`,
|
|
1039
|
+
dayLabel: (day) => `${day}\u65E5`,
|
|
1040
|
+
unitYear: "\u5E74",
|
|
1041
|
+
unitMonth: "\u6708",
|
|
1042
|
+
unitDay: "\u65E5",
|
|
1043
|
+
hourItem: (hour) => `${hour}\u65F6`,
|
|
1044
|
+
minuteItem: (minute) => `${minute}\u5206`,
|
|
1045
|
+
hourAria: (prefix) => `${prefix}\u5C0F\u65F6`,
|
|
1046
|
+
minuteAria: (prefix) => `${prefix}\u5206\u949F`,
|
|
1047
|
+
meridiemAria: (prefix) => `${prefix}\u4E0A\u5348/\u4E0B\u5348`,
|
|
1048
|
+
am: "\u4E0A\u5348",
|
|
1049
|
+
pm: "\u4E0B\u5348",
|
|
1050
|
+
rangeFrom: "\u5F00\u59CB",
|
|
1051
|
+
rangeTo: "\u7ED3\u675F",
|
|
1052
|
+
clearDate: "\u6E05\u9664\u65E5\u671F",
|
|
1053
|
+
clearMonth: "\u6E05\u9664\u6708\u4EFD",
|
|
1054
|
+
clearYear: "\u6E05\u9664\u5E74\u4EFD",
|
|
1055
|
+
clearPeriod: "\u6E05\u9664\u65F6\u95F4\u6BB5",
|
|
1056
|
+
clearTime: "\u6E05\u9664\u65F6\u95F4",
|
|
1057
|
+
clearTimeRange: "\u6E05\u9664\u65F6\u95F4\u8303\u56F4",
|
|
1058
|
+
start: "\u5F00\u59CB",
|
|
1059
|
+
end: "\u7ED3\u675F",
|
|
1060
|
+
startTime: "\u5F00\u59CB\u65F6\u95F4",
|
|
1061
|
+
endTime: "\u7ED3\u675F\u65F6\u95F4"
|
|
1062
|
+
},
|
|
1063
|
+
chart: {
|
|
1064
|
+
unit: (unit) => `\u5355\u4F4D\uFF1A${unit}`,
|
|
1065
|
+
pie: "\u997C\u56FE",
|
|
1066
|
+
donut: "\u73AF\u5F62\u56FE",
|
|
1067
|
+
radialSummary: (count, kind) => `${kind}\uFF0C\u5171 ${count} \u9879`,
|
|
1068
|
+
barSummary: (c, s, stacked) => `${stacked ? "\u5806\u53E0" : ""}\u67F1\u72B6\u56FE\uFF0C${c} \u9879\uFF0C${s} \u4E2A\u7CFB\u5217`,
|
|
1069
|
+
lineSummary: (c, s, stacked) => `${stacked ? "\u5806\u53E0" : ""}\u6298\u7EBF\u56FE\uFF0C${c} \u9879\uFF0C${s} \u4E2A\u7CFB\u5217`
|
|
1070
|
+
},
|
|
1071
|
+
chipFilter: {
|
|
1072
|
+
periodDay: "\u6309\u65E5",
|
|
1073
|
+
periodMonth: "\u6309\u6708",
|
|
1074
|
+
periodQuarter: "\u6309\u5B63\u5EA6",
|
|
1075
|
+
periodHalf: "\u6309\u534A\u5E74",
|
|
1076
|
+
periodYear: "\u6309\u5E74",
|
|
1077
|
+
custom: "\u81EA\u5B9A\u4E49",
|
|
1078
|
+
today: "\u4ECA\u5929",
|
|
1079
|
+
last7: "\u6700\u8FD17\u5929",
|
|
1080
|
+
last30: "\u6700\u8FD130\u5929",
|
|
1081
|
+
maxWord: "\u6700\u591A",
|
|
1082
|
+
maxRangeHint: (days) => `\u6700\u591A${days}\u5929`,
|
|
1083
|
+
requireAll: "\u8BF7\u9009\u62E9\u6240\u6709\u9879\u76EE\u3002",
|
|
1084
|
+
requireAnyDefault: "\u8BF7\u81F3\u5C11\u9009\u62E9\u4E00\u4E2A\u7B5B\u9009\u6761\u4EF6\u3002",
|
|
1085
|
+
requireAnyNamed: (name) => `\u8BF7\u81F3\u5C11\u9009\u62E9\u4E00\u4E2A${name}\u3002`,
|
|
1086
|
+
requireField: (label) => `\u8BF7\u9009\u62E9${label}\u3002`,
|
|
1087
|
+
fieldFallback: "\u9879\u76EE",
|
|
1088
|
+
valueListMore: (first, rest) => `${first} \u7B49${rest + 1}\u9879`,
|
|
1089
|
+
quarter: (n) => `\u7B2C${n}\u5B63\u5EA6`,
|
|
1090
|
+
firstHalf: "\u4E0A\u534A\u5E74",
|
|
1091
|
+
secondHalf: "\u4E0B\u534A\u5E74",
|
|
1092
|
+
removeFilter: (label) => `\u79FB\u9664${label}\u7B5B\u9009`,
|
|
1093
|
+
clearFilter: (label) => `\u6E05\u9664${label}\u7B5B\u9009`,
|
|
1094
|
+
resetSearch: "\u91CD\u7F6E\u641C\u7D22",
|
|
1095
|
+
addFilter: "\u6DFB\u52A0\u7B5B\u9009",
|
|
1096
|
+
noAddableFilter: "\u6CA1\u6709\u53EF\u6DFB\u52A0\u7684\u7B5B\u9009\u6761\u4EF6\u3002",
|
|
1097
|
+
selectNone: "\u53D6\u6D88\u5168\u9009",
|
|
1098
|
+
selectAll: "\u5168\u9009",
|
|
1099
|
+
removeItem: (label) => `\u5220\u9664${label}`,
|
|
1100
|
+
keywordContains: "\u5305\u542B",
|
|
1101
|
+
keywordExact: "\u5B8C\u5168\u5339\u914D",
|
|
1102
|
+
keywordExcludes: "\u4E0D\u5305\u542B",
|
|
1103
|
+
keywordHintCsv: "\u591A\u4E2A\u5173\u952E\u8BCD\u7528\u9017\u53F7(,)\u5206\u9694",
|
|
1104
|
+
keywordHintEnter: "\u8F93\u5165\u540E\u6309 Enter \u6DFB\u52A0",
|
|
1105
|
+
keywordCondition: "\u641C\u7D22\u6761\u4EF6\uFF1A",
|
|
1106
|
+
noSearchResults: "\u6CA1\u6709\u641C\u7D22\u7ED3\u679C\u3002"
|
|
1107
|
+
},
|
|
1108
|
+
numberInput: {
|
|
1109
|
+
rangeBetween: (min, max) => `\u8BF7\u8F93\u5165 ${min}~${max} \u4E4B\u95F4\u7684\u503C\u3002`,
|
|
1110
|
+
atLeast: (min) => `\u8BF7\u8F93\u5165\u4E0D\u5C0F\u4E8E ${min} \u7684\u503C\u3002`,
|
|
1111
|
+
atMost: (max) => `\u8BF7\u8F93\u5165\u4E0D\u5927\u4E8E ${max} \u7684\u503C\u3002`,
|
|
1112
|
+
increase: "\u589E\u52A0",
|
|
1113
|
+
decrease: "\u51CF\u5C11"
|
|
1114
|
+
},
|
|
1115
|
+
chipInput: {
|
|
1116
|
+
placeholderWithComma: "\u8F93\u5165\u6807\u7B7E\uFF08\u6309 Enter \u6216\u9017\u53F7\u6DFB\u52A0\uFF09",
|
|
1117
|
+
placeholder: "\u8F93\u5165\u6807\u7B7E\uFF08\u6309 Enter \u6DFB\u52A0\uFF09",
|
|
1118
|
+
duplicateNamed: (label) => `${label}\u5DF2\u5B58\u5728\u3002`,
|
|
1119
|
+
duplicate: "\u5B58\u5728\u91CD\u590D\u7684\u503C\u3002",
|
|
1120
|
+
maxCount: (max) => `\u6700\u591A ${max} \u4E2A`
|
|
1121
|
+
},
|
|
1122
|
+
slider: { minValue: "\u6700\u5C0F\u503C", maxValue: "\u6700\u5927\u503C" },
|
|
1123
|
+
chat: {
|
|
1124
|
+
removeAttachment: (name) => `\u79FB\u9664${name}`,
|
|
1125
|
+
placeholder: "\u8BF7\u8F93\u5165\u6D88\u606F...",
|
|
1126
|
+
attachFile: "\u9644\u52A0\u6587\u4EF6",
|
|
1127
|
+
stopResponse: "\u505C\u6B62\u56DE\u590D",
|
|
1128
|
+
send: "\u53D1\u9001",
|
|
1129
|
+
read: "\u5DF2\u8BFB",
|
|
1130
|
+
unread: "\u672A\u8BFB"
|
|
1131
|
+
},
|
|
1132
|
+
loadingModal: {
|
|
1133
|
+
loadingMessage: "\u5904\u7406\u4E2D...",
|
|
1134
|
+
errorMessage: "\u64CD\u4F5C\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5\u3002",
|
|
1135
|
+
errorButton: "\u91CD\u8BD5",
|
|
1136
|
+
ariaTitle: "\u52A0\u8F7D\u4E2D"
|
|
1137
|
+
},
|
|
1138
|
+
stepper: { errorTooltip: "\u6709\u9700\u8981\u786E\u8BA4\u7684\u9879\u76EE\u3002", ariaLabel: "\u8FDB\u5EA6\u6B65\u9AA4" },
|
|
1139
|
+
timeline: { empty: "\u6CA1\u6709\u8BB0\u5F55\u3002" },
|
|
1140
|
+
callout: { dangerTitle: "\u6CE8\u610F\u4E8B\u9879" },
|
|
1141
|
+
guide: { tip: "\u4F7F\u7528\u63D0\u793A", notion: "\u4F7F\u7528\u6307\u5357" },
|
|
1142
|
+
loginCard: { login: "\u4F7F\u7528\u7EDF\u4E00\u8D26\u53F7\u767B\u5F55" },
|
|
1143
|
+
modal: { defaultTitle: "\u6A21\u6001\u6846" },
|
|
1144
|
+
launcher: { opensInNewTab: "\u5728\u65B0\u6807\u7B7E\u9875\u4E2D\u6253\u5F00" },
|
|
1145
|
+
common: {
|
|
1146
|
+
close: "\u5173\u95ED",
|
|
1147
|
+
clear: "\u6E05\u9664",
|
|
1148
|
+
confirm: "\u786E\u5B9A",
|
|
1149
|
+
all: "\u5168\u90E8",
|
|
1150
|
+
back: "\u8FD4\u56DE",
|
|
1151
|
+
more: "\u66F4\u591A",
|
|
1152
|
+
moreActions: "\u66F4\u591A\u529F\u80FD",
|
|
1153
|
+
openMenu: "\u6253\u5F00\u83DC\u5355",
|
|
1154
|
+
dragHandle: "\u62D6\u52A8\u624B\u67C4",
|
|
1155
|
+
resizeDrawer: "\u8C03\u6574\u62BD\u5C49\u5BBD\u5EA6",
|
|
1156
|
+
search: "\u641C\u7D22",
|
|
1157
|
+
count: (n) => `${n}\u4E2A`
|
|
1158
|
+
},
|
|
1159
|
+
input: {
|
|
1160
|
+
placeholder: "\u8BF7\u8F93\u5165\u3002",
|
|
1161
|
+
searchWithinResults: "\u5728\u7ED3\u679C\u4E2D\u641C\u7D22",
|
|
1162
|
+
clearInput: "\u91CD\u7F6E\u8F93\u5165",
|
|
1163
|
+
showPassword: "\u663E\u793A\u5BC6\u7801"
|
|
1164
|
+
},
|
|
309
1165
|
pagination: {
|
|
310
1166
|
firstPage: "\u7B2C\u4E00\u9875",
|
|
311
1167
|
prevPage: "\u4E0A\u4E00\u9875",
|
|
@@ -322,6 +1178,23 @@ var BUNDLES = {
|
|
|
322
1178
|
searchPlaceholder: "\u641C\u7D22",
|
|
323
1179
|
empty: "\u6CA1\u6709\u53EF\u663E\u793A\u7684\u9879\u76EE\u3002",
|
|
324
1180
|
loading: "\u52A0\u8F7D\u4E2D..."
|
|
1181
|
+
},
|
|
1182
|
+
table: {
|
|
1183
|
+
selectAll: "\u5168\u9009",
|
|
1184
|
+
selectRow: "\u9009\u62E9\u884C",
|
|
1185
|
+
empty: "\u6CA1\u6709\u6570\u636E\u3002",
|
|
1186
|
+
rowsPerPage: (count) => `\u6BCF\u9875 ${count} \u6761`,
|
|
1187
|
+
editable: "\u53EF\u7F16\u8F91",
|
|
1188
|
+
opensInNewScreen: "\u5728\u65B0\u9875\u9762\u4E2D\u6253\u5F00",
|
|
1189
|
+
sortBy: (label) => `\u6309${label}\u6392\u5E8F`,
|
|
1190
|
+
denseOff: "\u5BBD\u677E\u663E\u793A",
|
|
1191
|
+
denseOn: "\u7D27\u51D1\u663E\u793A"
|
|
1192
|
+
},
|
|
1193
|
+
tableBar: {
|
|
1194
|
+
totalBefore: "\u5171 ",
|
|
1195
|
+
totalAfter: " \u6761",
|
|
1196
|
+
selectedBefore: "\u5DF2\u9009 ",
|
|
1197
|
+
selectedAfter: " \u6761"
|
|
325
1198
|
}
|
|
326
1199
|
}
|
|
327
1200
|
};
|
|
@@ -338,11 +1211,40 @@ function mergeDefined(base, override) {
|
|
|
338
1211
|
}
|
|
339
1212
|
return next;
|
|
340
1213
|
}
|
|
1214
|
+
function mergeDateDefined(base, override) {
|
|
1215
|
+
const merged = mergeDefined(base, override);
|
|
1216
|
+
if (merged.weekdays.length !== 7) merged.weekdays = base.weekdays;
|
|
1217
|
+
if (merged.weekdaysLong.length !== 7) merged.weekdaysLong = base.weekdaysLong;
|
|
1218
|
+
return merged;
|
|
1219
|
+
}
|
|
341
1220
|
function resolveMessages(locale, override) {
|
|
342
1221
|
const base = BUNDLES[normalizeLocale(locale)];
|
|
343
1222
|
return {
|
|
1223
|
+
common: mergeDefined(base.common, override?.common),
|
|
1224
|
+
input: mergeDefined(base.input, override?.input),
|
|
1225
|
+
chart: mergeDefined(base.chart, override?.chart),
|
|
1226
|
+
date: mergeDateDefined(base.date, override?.date),
|
|
1227
|
+
form: mergeDefined(base.form, override?.form),
|
|
1228
|
+
accountListBox: mergeDefined(base.accountListBox, override?.accountListBox),
|
|
1229
|
+
gnbSystem: mergeDefined(base.gnbSystem, override?.gnbSystem),
|
|
1230
|
+
editor: mergeDefined(base.editor, override?.editor),
|
|
1231
|
+
chipFilter: mergeDefined(base.chipFilter, override?.chipFilter),
|
|
1232
|
+
numberInput: mergeDefined(base.numberInput, override?.numberInput),
|
|
1233
|
+
chipInput: mergeDefined(base.chipInput, override?.chipInput),
|
|
1234
|
+
slider: mergeDefined(base.slider, override?.slider),
|
|
1235
|
+
chat: mergeDefined(base.chat, override?.chat),
|
|
1236
|
+
loadingModal: mergeDefined(base.loadingModal, override?.loadingModal),
|
|
1237
|
+
stepper: mergeDefined(base.stepper, override?.stepper),
|
|
1238
|
+
timeline: mergeDefined(base.timeline, override?.timeline),
|
|
1239
|
+
callout: mergeDefined(base.callout, override?.callout),
|
|
1240
|
+
guide: mergeDefined(base.guide, override?.guide),
|
|
1241
|
+
loginCard: mergeDefined(base.loginCard, override?.loginCard),
|
|
1242
|
+
modal: mergeDefined(base.modal, override?.modal),
|
|
1243
|
+
launcher: mergeDefined(base.launcher, override?.launcher),
|
|
344
1244
|
pagination: mergeDefined(base.pagination, override?.pagination),
|
|
345
|
-
select: mergeDefined(base.select, override?.select)
|
|
1245
|
+
select: mergeDefined(base.select, override?.select),
|
|
1246
|
+
table: mergeDefined(base.table, override?.table),
|
|
1247
|
+
tableBar: mergeDefined(base.tableBar, override?.tableBar)
|
|
346
1248
|
};
|
|
347
1249
|
}
|
|
348
1250
|
function createValue(locale, override) {
|
|
@@ -363,6 +1265,11 @@ function SLocaleProvider({ locale, messages, children }) {
|
|
|
363
1265
|
function useLocale() {
|
|
364
1266
|
return useContext(LocaleContext);
|
|
365
1267
|
}
|
|
1268
|
+
var strokeProps = (strokeWidth) => ({
|
|
1269
|
+
stroke: "currentColor",
|
|
1270
|
+
strokeWidth: strokeWidth ?? 1.5,
|
|
1271
|
+
vectorEffect: strokeWidth ? "non-scaling-stroke" : void 0
|
|
1272
|
+
});
|
|
366
1273
|
var Icon_account = (p) => {
|
|
367
1274
|
const { size = 24, ...rest } = p;
|
|
368
1275
|
return /* @__PURE__ */ jsxs(
|
|
@@ -2172,7 +3079,8 @@ var Icon_helpFill = (p) => {
|
|
|
2172
3079
|
);
|
|
2173
3080
|
};
|
|
2174
3081
|
var Icon_helpOutline = (p) => {
|
|
2175
|
-
const { size = 24, ...rest } = p;
|
|
3082
|
+
const { size = 24, strokeWidth, ...rest } = p;
|
|
3083
|
+
const stroke = strokeProps(strokeWidth);
|
|
2176
3084
|
return /* @__PURE__ */ jsxs(
|
|
2177
3085
|
"svg",
|
|
2178
3086
|
{
|
|
@@ -2186,23 +3094,24 @@ var Icon_helpOutline = (p) => {
|
|
|
2186
3094
|
/* @__PURE__ */ jsx(
|
|
2187
3095
|
"path",
|
|
2188
3096
|
{
|
|
2189
|
-
d: "
|
|
2190
|
-
|
|
3097
|
+
d: "M22.1998 11.9998C22.1998 6.3665 17.6331 1.7998 11.9998 1.7998C6.3665 1.7998 1.7998 6.3665 1.7998 11.9998C1.7998 17.6331 6.3665 22.1998 11.9998 22.1998C17.6331 22.1998 22.1998 17.6331 22.1998 11.9998Z",
|
|
3098
|
+
strokeLinecap: "round",
|
|
3099
|
+
...stroke
|
|
2191
3100
|
}
|
|
2192
3101
|
),
|
|
2193
3102
|
/* @__PURE__ */ jsx(
|
|
2194
3103
|
"path",
|
|
2195
3104
|
{
|
|
2196
|
-
d: "
|
|
2197
|
-
|
|
3105
|
+
d: "M8.99982 9.10203C8.99982 8.19294 9.59982 6.37476 11.9998 6.37476C14.3998 6.37476 14.9998 8.19294 14.9998 9.10203C14.9998 9.87031 14.5713 11.2879 12.9899 11.7086C12.4562 11.8506 11.9998 12.277 11.9998 12.8293V13.8748",
|
|
3106
|
+
strokeLinecap: "round",
|
|
3107
|
+
strokeLinejoin: "round",
|
|
3108
|
+
...stroke
|
|
2198
3109
|
}
|
|
2199
3110
|
),
|
|
2200
3111
|
/* @__PURE__ */ jsx(
|
|
2201
3112
|
"path",
|
|
2202
3113
|
{
|
|
2203
|
-
|
|
2204
|
-
clipRule: "evenodd",
|
|
2205
|
-
d: "M12 1.0498C18.0474 1.04991 22.9502 5.95255 22.9502 12C22.9501 18.0474 18.0474 22.9501 12 22.9502C5.95255 22.9502 1.04991 18.0474 1.0498 12C1.0498 5.95248 5.95248 1.0498 12 1.0498ZM12 2.5498C6.78091 2.5498 2.5498 6.78091 2.5498 12C2.54991 17.219 6.78097 21.4502 12 21.4502C17.2189 21.4501 21.4501 17.2189 21.4502 12C21.4502 6.78097 17.219 2.54991 12 2.5498Z",
|
|
3114
|
+
d: "M11.9998 15.7498C12.5521 15.7498 12.9998 16.1975 12.9998 16.7498C12.9998 17.302 12.5521 17.7498 11.9998 17.7498C11.4475 17.7498 10.9998 17.302 10.9998 16.7498C10.9998 16.1975 11.4475 15.7498 11.9998 15.7498Z",
|
|
2206
3115
|
fill: "currentColor"
|
|
2207
3116
|
}
|
|
2208
3117
|
)
|
|
@@ -2731,7 +3640,8 @@ var Icon_notificationFill = (p) => {
|
|
|
2731
3640
|
);
|
|
2732
3641
|
};
|
|
2733
3642
|
var Icon_notificationOutline = (p) => {
|
|
2734
|
-
const { size = 24, ...rest } = p;
|
|
3643
|
+
const { size = 24, strokeWidth, ...rest } = p;
|
|
3644
|
+
const stroke = strokeProps(strokeWidth);
|
|
2735
3645
|
return /* @__PURE__ */ jsxs(
|
|
2736
3646
|
"svg",
|
|
2737
3647
|
{
|
|
@@ -2745,23 +3655,16 @@ var Icon_notificationOutline = (p) => {
|
|
|
2745
3655
|
/* @__PURE__ */ jsx(
|
|
2746
3656
|
"path",
|
|
2747
3657
|
{
|
|
2748
|
-
d: "
|
|
2749
|
-
|
|
2750
|
-
|
|
2751
|
-
),
|
|
2752
|
-
/* @__PURE__ */ jsx(
|
|
2753
|
-
"path",
|
|
2754
|
-
{
|
|
2755
|
-
d: "M12 6.375C12.4142 6.375 12.75 6.71079 12.75 7.125V13.125C12.75 13.5392 12.4142 13.875 12 13.875C11.5858 13.875 11.25 13.5392 11.25 13.125V7.125C11.25 6.71079 11.5858 6.375 12 6.375Z",
|
|
2756
|
-
fill: "currentColor"
|
|
3658
|
+
d: "M22.2 12C22.2 6.36674 17.6333 1.80005 12 1.80005C6.36668 1.80005 1.79999 6.36674 1.79999 12C1.79999 17.6334 6.36668 22.2 12 22.2C17.6333 22.2 22.2 17.6334 22.2 12Z",
|
|
3659
|
+
strokeLinecap: "round",
|
|
3660
|
+
...stroke
|
|
2757
3661
|
}
|
|
2758
3662
|
),
|
|
3663
|
+
/* @__PURE__ */ jsx("path", { d: "M12 13.125L12 7.125", strokeLinecap: "round", strokeLinejoin: "round", ...stroke }),
|
|
2759
3664
|
/* @__PURE__ */ jsx(
|
|
2760
3665
|
"path",
|
|
2761
3666
|
{
|
|
2762
|
-
|
|
2763
|
-
clipRule: "evenodd",
|
|
2764
|
-
d: "M12 1.0498C18.0474 1.04991 22.9501 5.95264 22.9502 12C22.9501 18.0474 18.0474 22.9501 12 22.9502C5.95263 22.9501 1.04991 18.0474 1.0498 12C1.04991 5.95263 5.95263 1.0499 12 1.0498ZM12 2.5498C6.78106 2.5499 2.54991 6.78106 2.5498 12C2.54991 17.2189 6.78106 21.4501 12 21.4502C17.2189 21.4501 21.4501 17.2189 21.4502 12C21.4501 6.78107 17.2189 2.54991 12 2.5498Z",
|
|
3667
|
+
d: "M12 15.5C12.5523 15.5 13 15.9477 13 16.5C13 17.0523 12.5523 17.5 12 17.5C11.4477 17.5 11 17.0523 11 16.5C11 15.9477 11.4477 15.5 12 15.5Z",
|
|
2765
3668
|
fill: "currentColor"
|
|
2766
3669
|
}
|
|
2767
3670
|
)
|
|
@@ -3224,7 +4127,8 @@ var Icon_setting = (p) => {
|
|
|
3224
4127
|
);
|
|
3225
4128
|
};
|
|
3226
4129
|
var Icon_settingOutline = (p) => {
|
|
3227
|
-
const { size = 24, ...rest } = p;
|
|
4130
|
+
const { size = 24, strokeWidth, ...rest } = p;
|
|
4131
|
+
const stroke = strokeProps(strokeWidth);
|
|
3228
4132
|
return /* @__PURE__ */ jsxs(
|
|
3229
4133
|
"svg",
|
|
3230
4134
|
{
|
|
@@ -3235,22 +4139,12 @@ var Icon_settingOutline = (p) => {
|
|
|
3235
4139
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3236
4140
|
...rest,
|
|
3237
4141
|
children: [
|
|
4142
|
+
/* @__PURE__ */ jsx("circle", { cx: "12", cy: "12", r: "3", ...stroke }),
|
|
3238
4143
|
/* @__PURE__ */ jsx(
|
|
3239
4144
|
"path",
|
|
3240
4145
|
{
|
|
3241
|
-
|
|
3242
|
-
|
|
3243
|
-
d: "M11.9996 8C14.2087 8 15.9996 9.79086 15.9996 12C15.9996 14.2091 14.2087 16 11.9996 16C9.79065 15.9998 7.9996 14.209 7.9996 12C7.9996 9.791 9.79065 8.00022 11.9996 8ZM11.9996 9.5C10.6191 9.50022 9.4996 10.6194 9.4996 12C9.4996 13.3806 10.6191 14.4998 11.9996 14.5C13.3803 14.5 14.4996 13.3807 14.4996 12C14.4996 10.6193 13.3803 9.5 11.9996 9.5Z",
|
|
3244
|
-
fill: "currentColor"
|
|
3245
|
-
}
|
|
3246
|
-
),
|
|
3247
|
-
/* @__PURE__ */ jsx(
|
|
3248
|
-
"path",
|
|
3249
|
-
{
|
|
3250
|
-
fillRule: "evenodd",
|
|
3251
|
-
clipRule: "evenodd",
|
|
3252
|
-
d: "M13.1851 1C13.5085 1 13.7979 1.20161 13.9068 1.50293L14.6832 3.65527C14.9613 3.72452 15.2006 3.79367 15.4029 3.86621C15.5134 3.90579 15.64 3.95628 15.7828 4.0166L16.2613 4.22949L18.0689 3.27246C18.2163 3.19438 18.3856 3.16661 18.5504 3.19238C18.7153 3.21835 18.8676 3.29735 18.984 3.41699L20.5748 5.06152C20.7859 5.28042 20.8459 5.60054 20.7271 5.87988L19.8785 7.86719C20.0192 8.12546 20.1316 8.34655 20.2174 8.53125C20.3097 8.73243 20.4239 9.01001 20.5601 9.36719L22.5377 10.2148L22.6432 10.2695C22.8771 10.4155 23.016 10.6779 22.9986 10.9561L22.8531 13.2383L22.8375 13.3486C22.8141 13.4565 22.7672 13.5589 22.6998 13.6475L22.6266 13.7305C22.5476 13.8076 22.4523 13.8674 22.3473 13.9043L20.4752 14.5693C20.4213 14.8278 20.3647 15.0493 20.3053 15.2363L20.1519 15.666C20.0973 15.8078 20.0394 15.9488 19.9781 16.0879L20.9185 18.166L20.9586 18.2793C20.9899 18.3941 20.9942 18.5153 20.9693 18.6328L20.9351 18.7471C20.8923 18.8584 20.823 18.959 20.733 19.0391L18.9449 20.6357L18.8512 20.707C18.753 20.7705 18.6411 20.812 18.524 20.8262L18.4059 20.8311C18.2889 20.8272 18.1732 20.7964 18.0689 20.7412L16.2262 19.7647C15.9378 19.9173 15.6394 20.0519 15.3346 20.168L14.5299 20.4697L13.815 22.4502L13.7672 22.5547C13.7121 22.6552 13.6346 22.7424 13.5406 22.8096L13.442 22.8701C13.3398 22.9219 13.2264 22.9498 13.1109 22.9522L11.0211 23C10.9023 23.0031 10.7841 22.9783 10.6773 22.9287L10.5748 22.8711C10.4431 22.7831 10.3415 22.6557 10.2848 22.5078L9.44198 20.2783C9.1547 20.1801 8.86973 20.0733 8.58847 19.959C8.35848 19.8594 8.13142 19.7518 7.90878 19.6367L5.81894 20.5303L5.71347 20.5664C5.64162 20.5854 5.56705 20.594 5.49276 20.5918L5.38241 20.5801C5.27208 20.5606 5.1671 20.5175 5.07577 20.4541L4.98886 20.3838L3.44198 18.9326C3.35574 18.8519 3.28988 18.7525 3.2496 18.6426L3.21737 18.5303C3.18685 18.376 3.20586 18.2154 3.27109 18.0723L4.1705 16.1143C4.05101 15.8824 3.93933 15.6454 3.83749 15.4053C3.71871 15.1116 3.60934 14.814 3.50839 14.5137L1.53866 13.9141C1.41879 13.8777 1.31002 13.8122 1.22226 13.7246L1.14218 13.6299C1.04481 13.4941 0.994151 13.3291 0.999601 13.1621L1.07675 11.0498C1.08222 10.9121 1.1259 10.7782 1.20175 10.6631C1.25874 10.5767 1.33262 10.5026 1.41855 10.4463L1.50839 10.3965L3.57382 9.4043C3.6695 9.05348 3.75306 8.78014 3.82675 8.58106C3.9305 8.31518 4.0461 8.05376 4.17245 7.79785L3.27694 5.90625C3.20906 5.76263 3.18873 5.6004 3.21835 5.44434C3.24057 5.3276 3.2899 5.21813 3.36191 5.125L3.44198 5.03711L4.98593 3.57813C5.09409 3.47611 5.23034 3.40784 5.37655 3.38086C5.52273 3.354 5.67376 3.37002 5.81112 3.42676L7.89901 4.28906C8.12988 4.13515 8.33881 4.01023 8.52792 3.91016C8.75326 3.79034 9.05504 3.66547 9.43417 3.53027L10.1607 1.50488C10.2143 1.35699 10.3122 1.22899 10.441 1.13867C10.57 1.04839 10.7249 0.999723 10.8824 1H13.1851ZM10.8463 4.03613C10.6946 4.45908 10.3613 4.79149 9.93808 4.94238C9.5875 5.06739 9.36381 5.16528 9.23202 5.23535L9.23007 5.23633C9.09075 5.31005 8.9247 5.40801 8.73105 5.53711C8.31531 5.81413 7.78855 5.86633 7.32675 5.67578L5.67343 4.99219L4.86484 5.75586L5.52792 7.15625C5.72387 7.57031 5.71997 8.05117 5.51718 8.46192C5.41394 8.67102 5.31944 8.88459 5.23398 9.10156L5.14218 9.37598C5.10686 9.491 5.06681 9.63118 5.02109 9.79883C4.90655 10.2184 4.6153 10.5675 4.22323 10.7559L2.55917 11.5547L2.51913 12.6436L3.94491 13.0781L4.11386 13.1416C4.49659 13.3106 4.79411 13.6335 4.92929 14.0352C5.01804 14.2992 5.11534 14.5609 5.21933 14.8193L5.35507 15.126C5.40249 15.2271 5.45233 15.3275 5.50351 15.4268C5.71457 15.8364 5.72588 16.3204 5.53378 16.7393L4.85898 18.2061L5.66659 18.9639L7.31894 18.2578L7.47616 18.2012C7.84698 18.0894 8.24932 18.125 8.59726 18.3047C8.78187 18.4001 8.97024 18.4892 9.16073 18.5723C9.28594 18.6231 9.41211 18.6724 9.53866 18.7197L9.92733 18.8594L10.0816 18.9219C10.4317 19.0869 10.7069 19.382 10.8453 19.748L11.5025 21.4883L12.5748 21.4639L13.1187 19.96L13.1832 19.8096C13.3508 19.4678 13.6433 19.2005 14.0035 19.0654L14.8004 18.7666L15.1676 18.6143C15.288 18.5597 15.4071 18.5013 15.524 18.4395L15.692 18.3623C16.0928 18.2097 16.5441 18.236 16.9283 18.4395L18.3238 19.1787L19.3248 18.2842L18.6109 16.7061C18.4355 16.318 18.4336 15.8732 18.6051 15.4834C18.7075 15.2508 18.7973 15.0126 18.8775 14.7715C18.9163 14.6479 18.9608 14.4825 19.0064 14.2637L19.0582 14.0762C19.2064 13.6503 19.5409 13.3098 19.9723 13.1563L21.3873 12.6523L21.4674 11.3877L19.9703 10.7461C19.5971 10.5861 19.3035 10.2817 19.1588 9.90234C19.0283 9.56034 18.9273 9.31663 18.8541 9.15723C18.7854 9.00988 18.689 8.81973 18.5611 8.58496C18.3418 8.18212 18.3187 7.70024 18.4986 7.27832L19.1519 5.74707L18.2867 4.85352L16.9625 5.55567C16.5475 5.77509 16.0531 5.78799 15.6275 5.58984C15.2974 5.43614 15.0582 5.33606 14.8971 5.27832C14.7581 5.22851 14.5701 5.17338 14.3209 5.11133C13.8356 4.99032 13.4418 4.63455 13.2721 4.16406L12.6715 2.5H11.3971L10.8463 4.03613Z",
|
|
3253
|
-
fill: "currentColor"
|
|
4146
|
+
d: "M13.078 2C13.372 2 13.635 2.183 13.734 2.457L14.4399 4.41397C14.6929 4.47697 14.9099 4.53997 15.0939 4.60597C15.2949 4.67797 15.5539 4.78697 15.8739 4.93597L17.5178 4.06598C17.652 3.99488 17.8056 3.96922 17.9556 3.99284C18.1057 4.01646 18.244 4.08809 18.3498 4.19698L19.7958 5.69196C19.9877 5.89095 20.0417 6.18195 19.9337 6.43595L19.1628 8.24293C19.2908 8.47792 19.3928 8.67892 19.4708 8.84692C19.5548 9.02992 19.6588 9.28191 19.7828 9.60691L21.5797 10.3769C21.8497 10.4919 22.0167 10.7619 21.9987 11.0509L21.8667 13.1259C21.8577 13.2607 21.8093 13.3899 21.7275 13.4974C21.6457 13.605 21.5342 13.6861 21.4067 13.7309L19.7048 14.3359C19.6558 14.5708 19.6048 14.7718 19.5508 14.9418C19.4637 15.2044 19.3642 15.4627 19.2528 15.7158L20.1077 17.6058C20.1681 17.7386 20.1843 17.8872 20.1541 18.0299C20.1239 18.1726 20.0488 18.3019 19.9397 18.3988L18.3138 19.8508C18.2067 19.946 18.0731 20.0062 17.9308 20.0234C17.7886 20.0405 17.6445 20.0138 17.5178 19.9468L15.8419 19.0588C15.5797 19.1976 15.3092 19.3202 15.0319 19.4258L14.2999 19.6998L13.65 21.4998C13.6018 21.6316 13.5149 21.7458 13.4007 21.8273C13.2865 21.9089 13.1503 21.954 13.01 21.9568L11.1101 21.9998C10.966 22.0035 10.8244 21.9626 10.7046 21.8825C10.5848 21.8025 10.4927 21.6873 10.4411 21.5528L9.6751 19.5258C9.41376 19.4365 9.155 19.3398 8.89913 19.2358C8.68985 19.1452 8.48374 19.0475 8.28115 18.9428L6.38122 19.7548C6.25603 19.8082 6.11801 19.8241 5.98397 19.8004C5.84993 19.7768 5.72564 19.7148 5.62624 19.6218L4.22029 18.3028C4.11562 18.205 4.04433 18.0768 4.01651 17.9363C3.9887 17.7958 4.00576 17.6501 4.0653 17.5198L4.88227 15.7398C4.77362 15.529 4.67288 15.3142 4.58028 15.0958C4.47218 14.8286 4.37214 14.5581 4.28029 14.2849L2.49035 13.7399C2.34486 13.6959 2.21795 13.6051 2.12935 13.4816C2.04075 13.3581 1.99541 13.2088 2.00037 13.0569L2.07037 11.1359C2.07535 11.0106 2.1145 10.889 2.18359 10.7843C2.25268 10.6796 2.34907 10.5958 2.46235 10.5419L4.34029 9.63991C4.42728 9.32091 4.50328 9.07292 4.57028 8.89192C4.66462 8.65017 4.76938 8.41261 4.88427 8.17993L4.0703 6.45995C4.00852 6.32933 3.98977 6.18249 4.01672 6.04054C4.04367 5.89859 4.11494 5.76884 4.22029 5.66996L5.62424 4.34397C5.72266 4.25115 5.8458 4.18874 5.97886 4.16426C6.11191 4.13977 6.2492 4.15426 6.37422 4.20598L8.27215 4.98997C8.48214 4.84997 8.67214 4.73697 8.84413 4.64597C9.04912 4.53697 9.32311 4.42297 9.6681 4.29997L10.3281 2.459C10.3769 2.32427 10.4661 2.20788 10.5835 2.12573C10.7009 2.04358 10.8408 1.99967 10.9841 2H13.078Z",
|
|
4147
|
+
...stroke
|
|
3254
4148
|
}
|
|
3255
4149
|
)
|
|
3256
4150
|
]
|
|
@@ -3897,6 +4791,19 @@ var ICONS = {
|
|
|
3897
4791
|
warningOutline: Icon_warningOutline,
|
|
3898
4792
|
youtube: Icon_youtube
|
|
3899
4793
|
};
|
|
4794
|
+
var STROKE_BY_SIZE = {
|
|
4795
|
+
8: 1,
|
|
4796
|
+
10: 1,
|
|
4797
|
+
12: 1,
|
|
4798
|
+
16: 1.25,
|
|
4799
|
+
20: 1.5,
|
|
4800
|
+
24: 1.5,
|
|
4801
|
+
32: 2
|
|
4802
|
+
};
|
|
4803
|
+
function toPx(size) {
|
|
4804
|
+
if (typeof size === "number") return size;
|
|
4805
|
+
return /^\d+(\.\d+)?(px)?$/.test(size) ? parseFloat(size) : void 0;
|
|
4806
|
+
}
|
|
3900
4807
|
var SIcon = /* @__PURE__ */ forwardRef(function SIcon2({ name, size = 24, color, rotate, label, className, style }, ref) {
|
|
3901
4808
|
const Svg = ICONS[name];
|
|
3902
4809
|
if (!Svg) return null;
|
|
@@ -3915,7 +4822,7 @@ var SIcon = /* @__PURE__ */ forwardRef(function SIcon2({ name, size = 24, color,
|
|
|
3915
4822
|
role: label ? "img" : void 0,
|
|
3916
4823
|
"aria-label": label,
|
|
3917
4824
|
"aria-hidden": label ? void 0 : true,
|
|
3918
|
-
children: /* @__PURE__ */ jsx(Svg, { size: cssSize ? "100%" : size })
|
|
4825
|
+
children: /* @__PURE__ */ jsx(Svg, { size: cssSize ? "100%" : size, strokeWidth: STROKE_BY_SIZE[toPx(size) ?? 0] })
|
|
3919
4826
|
}
|
|
3920
4827
|
);
|
|
3921
4828
|
});
|
|
@@ -4554,6 +5461,7 @@ function SFooter({
|
|
|
4554
5461
|
leftClassName,
|
|
4555
5462
|
style
|
|
4556
5463
|
}) {
|
|
5464
|
+
const tc = useLocale().messages.common;
|
|
4557
5465
|
const isGrey = bg === "grey";
|
|
4558
5466
|
const hasSlot = left != null || children != null;
|
|
4559
5467
|
const hasButton = button != null;
|
|
@@ -4585,7 +5493,7 @@ function SFooter({
|
|
|
4585
5493
|
...button,
|
|
4586
5494
|
size,
|
|
4587
5495
|
color: button.color ?? "primary",
|
|
4588
|
-
label: button.label ??
|
|
5496
|
+
label: button.label ?? tc.confirm
|
|
4589
5497
|
}
|
|
4590
5498
|
)
|
|
4591
5499
|
]
|
|
@@ -4966,6 +5874,7 @@ var STooltipImpl = /* @__PURE__ */ forwardRef(function STooltip({
|
|
|
4966
5874
|
style,
|
|
4967
5875
|
contentProps
|
|
4968
5876
|
}, ref) {
|
|
5877
|
+
const tc = useLocale().messages.common;
|
|
4969
5878
|
const portalContainer = usePortalContainer();
|
|
4970
5879
|
const [internalOpen, setInternalOpen] = useState(false);
|
|
4971
5880
|
const isControlled = openProp !== void 0;
|
|
@@ -5083,7 +5992,7 @@ var STooltipImpl = /* @__PURE__ */ forwardRef(function STooltip({
|
|
|
5083
5992
|
icon: "close",
|
|
5084
5993
|
size: "xs",
|
|
5085
5994
|
intent: tooltipType === "default" ? "inverse" : "default",
|
|
5086
|
-
ariaLabel:
|
|
5995
|
+
ariaLabel: tc.close,
|
|
5087
5996
|
className: "shrink-0",
|
|
5088
5997
|
onClick: () => {
|
|
5089
5998
|
cancelHide();
|
|
@@ -5099,14 +6008,21 @@ var STooltipImpl = /* @__PURE__ */ forwardRef(function STooltip({
|
|
|
5099
6008
|
] });
|
|
5100
6009
|
});
|
|
5101
6010
|
var STooltip2 = /* @__PURE__ */ withDisplayName(STooltipImpl, "STooltip");
|
|
5102
|
-
function runRules(value, rules) {
|
|
6011
|
+
function runRules(value, rules, invalidMessage = "\uC720\uD6A8\uD558\uC9C0 \uC54A\uC740 \uAC12\uC785\uB2C8\uB2E4.") {
|
|
5103
6012
|
if (!rules || rules.length === 0) return "";
|
|
5104
6013
|
for (const rule of rules) {
|
|
5105
6014
|
const result = rule(value ?? "");
|
|
5106
|
-
if (result !== true) return typeof result === "string" ? result :
|
|
6015
|
+
if (result !== true) return typeof result === "string" ? result : invalidMessage;
|
|
5107
6016
|
}
|
|
5108
6017
|
return "";
|
|
5109
6018
|
}
|
|
6019
|
+
function useRunRules() {
|
|
6020
|
+
const invalid = useLocale().messages.form.invalid;
|
|
6021
|
+
return useCallback(
|
|
6022
|
+
(value, rules) => runRules(value, rules, invalid),
|
|
6023
|
+
[invalid]
|
|
6024
|
+
);
|
|
6025
|
+
}
|
|
5110
6026
|
var FormContext = /* @__PURE__ */ createContext(null);
|
|
5111
6027
|
function useFormContext() {
|
|
5112
6028
|
return useContext(FormContext);
|
|
@@ -5438,12 +6354,15 @@ var STextarea = /* @__PURE__ */ forwardRef(function STextarea2({
|
|
|
5438
6354
|
width,
|
|
5439
6355
|
disabled = false,
|
|
5440
6356
|
readOnly = false,
|
|
5441
|
-
placeholder
|
|
6357
|
+
placeholder: placeholderProp,
|
|
5442
6358
|
onBlur,
|
|
5443
6359
|
className,
|
|
5444
6360
|
style,
|
|
5445
6361
|
...rest
|
|
5446
6362
|
}, ref) {
|
|
6363
|
+
const runRules2 = useRunRules();
|
|
6364
|
+
const ti = useLocale().messages.input;
|
|
6365
|
+
const placeholder = placeholderProp ?? ti.placeholder;
|
|
5447
6366
|
const p = TEXTAREA_SIZE[size];
|
|
5448
6367
|
const heightForRows = (n) => `calc(${p.lineHeight * n}px + ${p.paddingY} * 2)`;
|
|
5449
6368
|
const minHeight = heightForRows(MIN_ROWS);
|
|
@@ -5478,7 +6397,7 @@ var STextarea = /* @__PURE__ */ forwardRef(function STextarea2({
|
|
|
5478
6397
|
useFormField({
|
|
5479
6398
|
name: rest.name,
|
|
5480
6399
|
validate: () => {
|
|
5481
|
-
const msg =
|
|
6400
|
+
const msg = runRules2(value, rules);
|
|
5482
6401
|
setRuleError(msg);
|
|
5483
6402
|
return msg === "";
|
|
5484
6403
|
},
|
|
@@ -5527,11 +6446,11 @@ var STextarea = /* @__PURE__ */ forwardRef(function STextarea2({
|
|
|
5527
6446
|
onChange: (e) => {
|
|
5528
6447
|
onChange?.(e);
|
|
5529
6448
|
onValueChange?.(e.target.value);
|
|
5530
|
-
if (ruleError !== "") setRuleError(
|
|
6449
|
+
if (ruleError !== "") setRuleError(runRules2(e.target.value, rules));
|
|
5531
6450
|
},
|
|
5532
6451
|
onBlur: (e) => {
|
|
5533
6452
|
onBlur?.(e);
|
|
5534
|
-
if (rules && rules.length > 0) setRuleError(
|
|
6453
|
+
if (rules && rules.length > 0) setRuleError(runRules2(e.target.value, rules));
|
|
5535
6454
|
},
|
|
5536
6455
|
className: cn(
|
|
5537
6456
|
"w-full border-0 bg-transparent outline-none placeholder:text-[color:var(--sys-color-field-text-placeholder)] disabled:cursor-not-allowed",
|
|
@@ -5558,7 +6477,6 @@ var STextarea = /* @__PURE__ */ forwardRef(function STextarea2({
|
|
|
5558
6477
|
}
|
|
5559
6478
|
);
|
|
5560
6479
|
});
|
|
5561
|
-
var DEFAULT_PLACEHOLDER = "\uBA54\uC2DC\uC9C0\uB97C \uC785\uB825\uD574 \uC8FC\uC138\uC694...";
|
|
5562
6480
|
var FIELD_BORDER = 1;
|
|
5563
6481
|
var TEXTAREA_MIN_HEIGHT = `calc(var(--cmp-chatInput-buttonFrame-height) - ${FIELD_BORDER * 2}px)`;
|
|
5564
6482
|
var BUTTON_BOTTOM_INSET = `calc((var(--cmp-chatInput-buttonFrame-height) - var(--cmp-ghostButton-md-size)) / 2)`;
|
|
@@ -5569,7 +6487,7 @@ function BarButton(props) {
|
|
|
5569
6487
|
var SChatInputImpl = /* @__PURE__ */ forwardRef(function SChatInput({
|
|
5570
6488
|
value = "",
|
|
5571
6489
|
onValueChange,
|
|
5572
|
-
placeholder
|
|
6490
|
+
placeholder: placeholderProp,
|
|
5573
6491
|
disabled = false,
|
|
5574
6492
|
onSend,
|
|
5575
6493
|
hasAttachments = false,
|
|
@@ -5590,6 +6508,8 @@ var SChatInputImpl = /* @__PURE__ */ forwardRef(function SChatInput({
|
|
|
5590
6508
|
textareaClassName,
|
|
5591
6509
|
...rest
|
|
5592
6510
|
}, ref) {
|
|
6511
|
+
const t = useLocale().messages.chat;
|
|
6512
|
+
const placeholder = placeholderProp ?? t.placeholder;
|
|
5593
6513
|
const hasText = value.trim() !== "";
|
|
5594
6514
|
const canSend = !disabled && !busy && !sendDisabled && (hasText || hasAttachments);
|
|
5595
6515
|
const send = () => {
|
|
@@ -5629,7 +6549,7 @@ var SChatInputImpl = /* @__PURE__ */ forwardRef(function SChatInput({
|
|
|
5629
6549
|
BarButton,
|
|
5630
6550
|
{
|
|
5631
6551
|
icon: "attachFile",
|
|
5632
|
-
ariaLabel:
|
|
6552
|
+
ariaLabel: t.attachFile,
|
|
5633
6553
|
tooltipText: attachTooltip,
|
|
5634
6554
|
disabled: attachLocked,
|
|
5635
6555
|
onClick: handleAttachClick
|
|
@@ -5675,7 +6595,7 @@ var SChatInputImpl = /* @__PURE__ */ forwardRef(function SChatInput({
|
|
|
5675
6595
|
{
|
|
5676
6596
|
icon: "stop",
|
|
5677
6597
|
intent: "danger",
|
|
5678
|
-
ariaLabel:
|
|
6598
|
+
ariaLabel: t.stopResponse,
|
|
5679
6599
|
disabled,
|
|
5680
6600
|
onClick: onStop
|
|
5681
6601
|
}
|
|
@@ -5685,7 +6605,7 @@ var SChatInputImpl = /* @__PURE__ */ forwardRef(function SChatInput({
|
|
|
5685
6605
|
{
|
|
5686
6606
|
icon: "send",
|
|
5687
6607
|
intent: "subAction",
|
|
5688
|
-
ariaLabel:
|
|
6608
|
+
ariaLabel: t.send,
|
|
5689
6609
|
disabled: !canSend,
|
|
5690
6610
|
onClick: send
|
|
5691
6611
|
}
|
|
@@ -5716,6 +6636,7 @@ var CHAT_ATTACHED_FILE_CONFIG = {
|
|
|
5716
6636
|
};
|
|
5717
6637
|
var SChatAttachedFileImpl = /* @__PURE__ */ forwardRef(
|
|
5718
6638
|
function SChatAttachedFile({ name, onRemove, className, ...rest }, ref) {
|
|
6639
|
+
const t = useLocale().messages.chat;
|
|
5719
6640
|
return /* @__PURE__ */ jsxs(
|
|
5720
6641
|
"div",
|
|
5721
6642
|
{
|
|
@@ -5756,7 +6677,7 @@ var SChatAttachedFileImpl = /* @__PURE__ */ forwardRef(
|
|
|
5756
6677
|
{
|
|
5757
6678
|
icon: "close",
|
|
5758
6679
|
size: "xs",
|
|
5759
|
-
ariaLabel:
|
|
6680
|
+
ariaLabel: t.removeAttachment(name),
|
|
5760
6681
|
onClick: onRemove,
|
|
5761
6682
|
className: "shrink-0"
|
|
5762
6683
|
}
|
|
@@ -5883,10 +6804,6 @@ var OUTGOING_SURFACE = {
|
|
|
5883
6804
|
admin: "admin"
|
|
5884
6805
|
};
|
|
5885
6806
|
var CHAT_MESSAGE_READ_STATUSES = ["read", "unread"];
|
|
5886
|
-
var READ_STATUS_LABEL = {
|
|
5887
|
-
read: "\uC77D\uC74C",
|
|
5888
|
-
unread: "\uC548 \uC77D\uC74C"
|
|
5889
|
-
};
|
|
5890
6807
|
var READ_STATUS_COLOR = {
|
|
5891
6808
|
read: "text-(--cmp-chatTimeStamp-color)",
|
|
5892
6809
|
unread: "text-(--cmp-chatReadMark-color)"
|
|
@@ -5935,6 +6852,7 @@ var SChatMessageImpl = /* @__PURE__ */ forwardRef(function SChatMessage({
|
|
|
5935
6852
|
className,
|
|
5936
6853
|
...rest
|
|
5937
6854
|
}, ref) {
|
|
6855
|
+
const t = useLocale().messages.chat;
|
|
5938
6856
|
const outgoing = direction === "outgoing";
|
|
5939
6857
|
const surface = outgoing ? OUTGOING_SURFACE[variant] : "incoming";
|
|
5940
6858
|
const bubbles = messages ?? [];
|
|
@@ -6005,7 +6923,7 @@ var SChatMessageImpl = /* @__PURE__ */ forwardRef(function SChatMessage({
|
|
|
6005
6923
|
),
|
|
6006
6924
|
(readStatus != null || time != null) && // 읽음 표시와 시각은 한 줄에 선다 — 읽음이 먼저, 시각이 뒤다.
|
|
6007
6925
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center gap-(--cmp-chatMessage-subData-gap) px-(--cmp-chatMessage-subData-paddingX)", children: [
|
|
6008
|
-
readStatus != null && /* @__PURE__ */ jsx("span", { className: cn("typo-body-sm-bold", READ_STATUS_COLOR[readStatus]), children:
|
|
6926
|
+
readStatus != null && /* @__PURE__ */ jsx("span", { className: cn("typo-body-sm-bold", READ_STATUS_COLOR[readStatus]), children: t[readStatus] }),
|
|
6009
6927
|
time != null && /* @__PURE__ */ jsx("span", { className: "typo-body-sm-medium text-(--cmp-chatTimeStamp-color)", children: time })
|
|
6010
6928
|
] }),
|
|
6011
6929
|
actions != null && // 버튼이 많아 한 줄에 안 들어가면 감싼다 — 넘쳐서 잘리는 것보다 낫다.
|
|
@@ -6103,6 +7021,7 @@ var SDraggableItemView = /* @__PURE__ */ forwardRef(
|
|
|
6103
7021
|
style,
|
|
6104
7022
|
...rest
|
|
6105
7023
|
}, ref) {
|
|
7024
|
+
const tc = useLocale().messages.common;
|
|
6106
7025
|
const renderState = { hovered, dragging, disabled };
|
|
6107
7026
|
const titleNode = renderSlot(title, renderState);
|
|
6108
7027
|
const supportingTextNode = renderSlot(supportingText, renderState);
|
|
@@ -6166,7 +7085,7 @@ var SDraggableItemView = /* @__PURE__ */ forwardRef(
|
|
|
6166
7085
|
...dragHandleProps,
|
|
6167
7086
|
role: dragHandleProps?.role ?? "button",
|
|
6168
7087
|
tabIndex: dragHandleProps?.tabIndex ?? (disabled ? -1 : 0),
|
|
6169
|
-
"aria-label": dragHandleProps?.["aria-label"] ??
|
|
7088
|
+
"aria-label": dragHandleProps?.["aria-label"] ?? tc.dragHandle,
|
|
6170
7089
|
"aria-disabled": disabled || void 0,
|
|
6171
7090
|
onMouseDown: onDragHandleMouseDown,
|
|
6172
7091
|
className: cn(
|
|
@@ -7771,7 +8690,6 @@ var SLogo = /* @__PURE__ */ forwardRef(function SLogo2({
|
|
|
7771
8690
|
}
|
|
7772
8691
|
);
|
|
7773
8692
|
});
|
|
7774
|
-
var BUTTON_LABEL = "\uD1B5\uD569 \uACC4\uC815\uC73C\uB85C \uB85C\uADF8\uC778";
|
|
7775
8693
|
var SERVICE_LABEL = {
|
|
7776
8694
|
sellmate: "Sellmate",
|
|
7777
8695
|
wms: "Sellmate WMS",
|
|
@@ -7787,6 +8705,7 @@ var SERVICE_LABEL = {
|
|
|
7787
8705
|
};
|
|
7788
8706
|
var LOGO_SIZE = 70;
|
|
7789
8707
|
var SLoginCardImpl = /* @__PURE__ */ forwardRef(function SLoginCard({ service, title, description, onLogin, footerNote, bottomAction, className, ...rest }, ref) {
|
|
8708
|
+
const t = useLocale().messages.loginCard;
|
|
7790
8709
|
const hasIntro = title != null || description != null;
|
|
7791
8710
|
return /* @__PURE__ */ jsxs(
|
|
7792
8711
|
"div",
|
|
@@ -7834,7 +8753,7 @@ var SLoginCardImpl = /* @__PURE__ */ forwardRef(function SLoginCard({ service, t
|
|
|
7834
8753
|
{
|
|
7835
8754
|
color: "secondary",
|
|
7836
8755
|
size: "lg",
|
|
7837
|
-
label:
|
|
8756
|
+
label: t.login,
|
|
7838
8757
|
onClick: onLogin,
|
|
7839
8758
|
className: "w-[320px]"
|
|
7840
8759
|
}
|
|
@@ -8089,7 +9008,7 @@ function TreeConnector({
|
|
|
8089
9008
|
] });
|
|
8090
9009
|
}
|
|
8091
9010
|
function TreeAllRow({
|
|
8092
|
-
label
|
|
9011
|
+
label: labelProp,
|
|
8093
9012
|
selected,
|
|
8094
9013
|
indeterminate = false,
|
|
8095
9014
|
size = "sm",
|
|
@@ -8101,6 +9020,8 @@ function TreeAllRow({
|
|
|
8101
9020
|
className,
|
|
8102
9021
|
...rest
|
|
8103
9022
|
}) {
|
|
9023
|
+
const tc = useLocale().messages.common;
|
|
9024
|
+
const label = labelProp ?? tc.all;
|
|
8104
9025
|
return /* @__PURE__ */ jsx(
|
|
8105
9026
|
"div",
|
|
8106
9027
|
{
|
|
@@ -8148,7 +9069,7 @@ function collectSelectableIds(node) {
|
|
|
8148
9069
|
function toSelectedSet(value) {
|
|
8149
9070
|
return new Set(value ?? []);
|
|
8150
9071
|
}
|
|
8151
|
-
var
|
|
9072
|
+
var TREE_ALL_ID = "__all__";
|
|
8152
9073
|
function getSelectionState(node, selectedSet) {
|
|
8153
9074
|
const selectableChildren = (node.children ?? []).filter(
|
|
8154
9075
|
(child) => collectSelectableIds(child).length > 0
|
|
@@ -8347,6 +9268,8 @@ var STreeImpl = /* @__PURE__ */ forwardRef(function STree({
|
|
|
8347
9268
|
className,
|
|
8348
9269
|
...rest
|
|
8349
9270
|
}, ref) {
|
|
9271
|
+
const tc = useLocale().messages.common;
|
|
9272
|
+
const allNode = useMemo(() => ({ id: TREE_ALL_ID, label: tc.all }), [tc.all]);
|
|
8350
9273
|
const [internalValue, setInternalValue] = useState(defaultValue ?? []);
|
|
8351
9274
|
const [internalExpandedIds, setInternalExpandedIds] = useState(
|
|
8352
9275
|
defaultExpandedIds ?? items.filter((item4) => item4.children?.length).map((item4) => item4.id)
|
|
@@ -8363,7 +9286,7 @@ var STreeImpl = /* @__PURE__ */ forwardRef(function STree({
|
|
|
8363
9286
|
const visibleRows = useMemo(() => {
|
|
8364
9287
|
const rows = [];
|
|
8365
9288
|
if (showAllItem) {
|
|
8366
|
-
rows.push({ id:
|
|
9289
|
+
rows.push({ id: TREE_ALL_ID, node: allNode, parentId: null, expanded: false });
|
|
8367
9290
|
}
|
|
8368
9291
|
const walk = (nodes, parentId) => {
|
|
8369
9292
|
nodes.forEach((node) => {
|
|
@@ -8374,7 +9297,7 @@ var STreeImpl = /* @__PURE__ */ forwardRef(function STree({
|
|
|
8374
9297
|
};
|
|
8375
9298
|
walk(items, null);
|
|
8376
9299
|
return rows;
|
|
8377
|
-
}, [items, expandedSet, showAllItem]);
|
|
9300
|
+
}, [items, expandedSet, showAllItem, allNode]);
|
|
8378
9301
|
const [focusedId, setFocusedId] = useState(null);
|
|
8379
9302
|
const activeRowId = focusedId != null && visibleRows.some((row) => row.id === focusedId) ? focusedId : visibleRows[0]?.id ?? null;
|
|
8380
9303
|
const treeRef = useRef(null);
|
|
@@ -8419,7 +9342,7 @@ var STreeImpl = /* @__PURE__ */ forwardRef(function STree({
|
|
|
8419
9342
|
});
|
|
8420
9343
|
const orderedIds = collectIds(items).filter((id) => next.has(id));
|
|
8421
9344
|
if (value === void 0) setInternalValue(orderedIds);
|
|
8422
|
-
onValueChange?.(orderedIds,
|
|
9345
|
+
onValueChange?.(orderedIds, allNode);
|
|
8423
9346
|
};
|
|
8424
9347
|
const handleTreeKeyDown = (event) => {
|
|
8425
9348
|
const target = event.target;
|
|
@@ -8463,7 +9386,7 @@ var STreeImpl = /* @__PURE__ */ forwardRef(function STree({
|
|
|
8463
9386
|
}
|
|
8464
9387
|
case "Enter":
|
|
8465
9388
|
case " ": {
|
|
8466
|
-
if (row.id ===
|
|
9389
|
+
if (row.id === TREE_ALL_ID) updateAllSelected();
|
|
8467
9390
|
else if (selectable) updateSelected(row.node);
|
|
8468
9391
|
else if (hasChildren) updateExpanded(row.node);
|
|
8469
9392
|
else return;
|
|
@@ -8524,8 +9447,8 @@ var STreeImpl = /* @__PURE__ */ forwardRef(function STree({
|
|
|
8524
9447
|
showAllItem && /* @__PURE__ */ jsx(
|
|
8525
9448
|
STreeAllItem,
|
|
8526
9449
|
{
|
|
8527
|
-
rowId:
|
|
8528
|
-
tabIndex: activeRowId ===
|
|
9450
|
+
rowId: TREE_ALL_ID,
|
|
9451
|
+
tabIndex: activeRowId === TREE_ALL_ID ? 0 : -1,
|
|
8529
9452
|
onKeyDown: handleTreeKeyDown,
|
|
8530
9453
|
selected: allSelected,
|
|
8531
9454
|
indeterminate: allIndeterminate,
|
|
@@ -9161,7 +10084,6 @@ var SURFACE = {
|
|
|
9161
10084
|
content: "var(--cmp-callout-default-content)"
|
|
9162
10085
|
}
|
|
9163
10086
|
};
|
|
9164
|
-
var DANGER_TITLE_LABEL = "\uC8FC\uC758\uC0AC\uD56D";
|
|
9165
10087
|
function renderItems(message, depth = 1) {
|
|
9166
10088
|
const out = [];
|
|
9167
10089
|
message.forEach((m, i) => {
|
|
@@ -9193,6 +10115,7 @@ function renderItems(message, depth = 1) {
|
|
|
9193
10115
|
return out;
|
|
9194
10116
|
}
|
|
9195
10117
|
var SCallout = /* @__PURE__ */ forwardRef(function SCallout2({ type = "default", showTitle = true, message = [], children, className, style }, ref) {
|
|
10118
|
+
const t = useLocale().messages.callout;
|
|
9196
10119
|
const hasDangerTitle = type === "danger" && showTitle;
|
|
9197
10120
|
const surface = SURFACE[type];
|
|
9198
10121
|
const vars = {
|
|
@@ -9229,7 +10152,7 @@ var SCallout = /* @__PURE__ */ forwardRef(function SCallout2({ type = "default",
|
|
|
9229
10152
|
color: "var(--cmp-callout-danger-title-color)"
|
|
9230
10153
|
}
|
|
9231
10154
|
),
|
|
9232
|
-
/* @__PURE__ */ jsx("span", { className: "whitespace-nowrap", children:
|
|
10155
|
+
/* @__PURE__ */ jsx("span", { className: "whitespace-nowrap", children: t.dangerTitle })
|
|
9233
10156
|
]
|
|
9234
10157
|
}
|
|
9235
10158
|
),
|
|
@@ -9777,6 +10700,7 @@ var SDropdownButtonImpl = /* @__PURE__ */ forwardRef(
|
|
|
9777
10700
|
className,
|
|
9778
10701
|
style
|
|
9779
10702
|
}, ref) {
|
|
10703
|
+
const tc = useLocale().messages.common;
|
|
9780
10704
|
const insideModal = useInsideModal();
|
|
9781
10705
|
const [open, setOpen] = useState(false);
|
|
9782
10706
|
const splitWrapRef = useRef(null);
|
|
@@ -9883,7 +10807,7 @@ var SDropdownButtonImpl = /* @__PURE__ */ forwardRef(
|
|
|
9883
10807
|
ref: splitToggleRef,
|
|
9884
10808
|
type: "button",
|
|
9885
10809
|
disabled,
|
|
9886
|
-
"aria-label":
|
|
10810
|
+
"aria-label": tc.openMenu,
|
|
9887
10811
|
className: cn(
|
|
9888
10812
|
triggerBase,
|
|
9889
10813
|
"justify-center border-l-[length:var(--cmp-button-border-width-default)]"
|
|
@@ -9930,14 +10854,12 @@ var SDropdownButtonImpl = /* @__PURE__ */ forwardRef(
|
|
|
9930
10854
|
}
|
|
9931
10855
|
);
|
|
9932
10856
|
var SDropdownButton2 = /* @__PURE__ */ withDisplayName(SDropdownButtonImpl, "SDropdownButton");
|
|
9933
|
-
var DEFAULT_LABEL = "\uAE30\uB2A5 \uB354 \uBCF4\uAE30";
|
|
9934
10857
|
var SMeatballButtonImpl = /* @__PURE__ */ forwardRef(
|
|
9935
10858
|
function SMeatballButton({
|
|
9936
10859
|
size = "sm",
|
|
9937
10860
|
intent = "default",
|
|
9938
10861
|
items = [],
|
|
9939
|
-
|
|
9940
|
-
tooltipText = "\uAE30\uB2A5 \uB354 \uBCF4\uAE30",
|
|
10862
|
+
tooltipText: tooltipTextProp,
|
|
9941
10863
|
ariaLabel,
|
|
9942
10864
|
disabled = false,
|
|
9943
10865
|
onItemClick,
|
|
@@ -9946,6 +10868,8 @@ var SMeatballButtonImpl = /* @__PURE__ */ forwardRef(
|
|
|
9946
10868
|
style
|
|
9947
10869
|
}, ref) {
|
|
9948
10870
|
const insideModal = useInsideModal();
|
|
10871
|
+
const tc = useLocale().messages.common;
|
|
10872
|
+
const tooltipText = tooltipTextProp ?? tc.moreActions;
|
|
9949
10873
|
const [open, setOpen] = useState(false);
|
|
9950
10874
|
const buttonRef = useRef(null);
|
|
9951
10875
|
const pointerRef = useRef(false);
|
|
@@ -9961,7 +10885,7 @@ var SMeatballButtonImpl = /* @__PURE__ */ forwardRef(
|
|
|
9961
10885
|
}),
|
|
9962
10886
|
[]
|
|
9963
10887
|
);
|
|
9964
|
-
const label = ariaLabel?.trim() || tooltipText.trim() ||
|
|
10888
|
+
const label = ariaLabel?.trim() || tooltipText.trim() || tc.moreActions;
|
|
9965
10889
|
return /* @__PURE__ */ jsxs(
|
|
9966
10890
|
RDropdown5.Root,
|
|
9967
10891
|
{
|
|
@@ -10344,13 +11268,14 @@ function Row({
|
|
|
10344
11268
|
}
|
|
10345
11269
|
var SAccountListBox = /* @__PURE__ */ forwardRef(
|
|
10346
11270
|
function SAccountListBox2({ email, name, authority, accountSetting, language, logout, className, style, ...rest }, ref) {
|
|
11271
|
+
const tl = useLocale().messages.accountListBox;
|
|
10347
11272
|
const hasUserdata = email != null || name != null || authority != null;
|
|
10348
11273
|
const languageOptions = language?.options ?? [];
|
|
10349
11274
|
const hasLanguageMenu = languageOptions.length > 0;
|
|
10350
11275
|
const [languageMenuOpen, setLanguageMenuOpen] = useState(false);
|
|
10351
11276
|
const languageValueRef = useRef(null);
|
|
10352
11277
|
const languageRowRef = useRef(null);
|
|
10353
|
-
const languageLabel = language?.label ??
|
|
11278
|
+
const languageLabel = language?.label ?? tl.language;
|
|
10354
11279
|
const languageDoesNothing = Boolean(language) && !hasLanguageMenu && !language?.onClick;
|
|
10355
11280
|
useEffect(() => {
|
|
10356
11281
|
if (isDev() && languageDoesNothing) {
|
|
@@ -10403,7 +11328,7 @@ var SAccountListBox = /* @__PURE__ */ forwardRef(
|
|
|
10403
11328
|
Row,
|
|
10404
11329
|
{
|
|
10405
11330
|
icon: ACCOUNT_LIST_BOX_ICONS.accountSetting,
|
|
10406
|
-
label: accountSetting.label ??
|
|
11331
|
+
label: accountSetting.label ?? tl.accountSetting,
|
|
10407
11332
|
onClick: accountSetting.onClick
|
|
10408
11333
|
}
|
|
10409
11334
|
),
|
|
@@ -10447,7 +11372,7 @@ var SAccountListBox = /* @__PURE__ */ forwardRef(
|
|
|
10447
11372
|
{
|
|
10448
11373
|
tone: "negative",
|
|
10449
11374
|
icon: ACCOUNT_LIST_BOX_ICONS.logout,
|
|
10450
|
-
label: logout?.label ??
|
|
11375
|
+
label: logout?.label ?? tl.logout,
|
|
10451
11376
|
onClick: logout?.onClick
|
|
10452
11377
|
}
|
|
10453
11378
|
)
|
|
@@ -10860,6 +11785,7 @@ function SPopover({
|
|
|
10860
11785
|
menuClassName,
|
|
10861
11786
|
style
|
|
10862
11787
|
}) {
|
|
11788
|
+
const tc = useLocale().messages.common;
|
|
10863
11789
|
const portalContainer = usePortalContainer();
|
|
10864
11790
|
const [internalOpen, setInternalOpen] = useState(defaultOpen ?? false);
|
|
10865
11791
|
const isControlled = open !== void 0;
|
|
@@ -10898,7 +11824,7 @@ function SPopover({
|
|
|
10898
11824
|
{
|
|
10899
11825
|
icon: "close",
|
|
10900
11826
|
size: "xs",
|
|
10901
|
-
ariaLabel:
|
|
11827
|
+
ariaLabel: tc.close,
|
|
10902
11828
|
onClick: () => setOpen(false),
|
|
10903
11829
|
className: "absolute right-[12px] top-[12px]"
|
|
10904
11830
|
}
|
|
@@ -11015,7 +11941,6 @@ var SPopup = /* @__PURE__ */ forwardRef(function SPopup2({
|
|
|
11015
11941
|
}
|
|
11016
11942
|
);
|
|
11017
11943
|
});
|
|
11018
|
-
var DEFAULT_LABEL2 = { tip: "\uD65C\uC6A9 TIP", notion: "\uC0AC\uC6A9\uBC95 \uC548\uB0B4" };
|
|
11019
11944
|
var ICON = { tip: "helpOutline", notion: "notion" };
|
|
11020
11945
|
var VIEWPORT_GUTTER = 24;
|
|
11021
11946
|
var CLOSE_INSET = 12;
|
|
@@ -11033,11 +11958,12 @@ function SGuide({
|
|
|
11033
11958
|
className,
|
|
11034
11959
|
style
|
|
11035
11960
|
}) {
|
|
11961
|
+
const tg = useLocale().messages.guide;
|
|
11036
11962
|
const [open, setOpen] = useState(false);
|
|
11037
11963
|
const portalContainer = usePortalContainer();
|
|
11038
11964
|
const isNotion = type === "notion";
|
|
11039
11965
|
const isAutoWidth = popupWidth === "auto";
|
|
11040
|
-
const defaultLabel =
|
|
11966
|
+
const defaultLabel = type === "notion" ? tg.notion : tg.tip;
|
|
11041
11967
|
const iconName = ICON[type];
|
|
11042
11968
|
const messages = flattenMessages(message);
|
|
11043
11969
|
const active = open;
|
|
@@ -11182,7 +12108,7 @@ var CLOSE_ANIMATION_DURATION = 300;
|
|
|
11182
12108
|
function SModalContainer({
|
|
11183
12109
|
open,
|
|
11184
12110
|
onOpenChange,
|
|
11185
|
-
ariaTitle
|
|
12111
|
+
ariaTitle: ariaTitleProp,
|
|
11186
12112
|
showClose = false,
|
|
11187
12113
|
onClose,
|
|
11188
12114
|
persistent = true,
|
|
@@ -11192,6 +12118,8 @@ function SModalContainer({
|
|
|
11192
12118
|
className,
|
|
11193
12119
|
style
|
|
11194
12120
|
}) {
|
|
12121
|
+
const { common: tc, modal: tm } = useLocale().messages;
|
|
12122
|
+
const ariaTitle = ariaTitleProp ?? tm.defaultTitle;
|
|
11195
12123
|
const [shaking, setShaking] = useState(false);
|
|
11196
12124
|
const [rendered, setRendered] = useState(() => Boolean(open));
|
|
11197
12125
|
const contentRef = useRef(null);
|
|
@@ -11285,7 +12213,7 @@ function SModalContainer({
|
|
|
11285
12213
|
SGhostButton,
|
|
11286
12214
|
{
|
|
11287
12215
|
icon: "close",
|
|
11288
|
-
ariaLabel:
|
|
12216
|
+
ariaLabel: tc.close,
|
|
11289
12217
|
onClick: () => {
|
|
11290
12218
|
if (closeRequested.current) return;
|
|
11291
12219
|
closeRequested.current = true;
|
|
@@ -11351,7 +12279,7 @@ function SConfirmModal({
|
|
|
11351
12279
|
tagSlot,
|
|
11352
12280
|
optionSlot,
|
|
11353
12281
|
contentSlot,
|
|
11354
|
-
mainButtonLabel
|
|
12282
|
+
mainButtonLabel: mainButtonLabelProp,
|
|
11355
12283
|
mainButtonOutline,
|
|
11356
12284
|
mainButtonDisabled = false,
|
|
11357
12285
|
subButtonLabel,
|
|
@@ -11359,6 +12287,8 @@ function SConfirmModal({
|
|
|
11359
12287
|
onCancel,
|
|
11360
12288
|
onClose
|
|
11361
12289
|
}) {
|
|
12290
|
+
const tc = useLocale().messages.common;
|
|
12291
|
+
const mainButtonLabel = mainButtonLabelProp ?? tc.confirm;
|
|
11362
12292
|
const iconName = TYPE_ICON[type];
|
|
11363
12293
|
const mainColor = MAIN_BUTTON_COLOR[type];
|
|
11364
12294
|
const mainOutline = mainButtonOutline ?? MAIN_BUTTON_OUTLINE[type];
|
|
@@ -11473,6 +12403,7 @@ function SOverlayHeader({
|
|
|
11473
12403
|
descriptionClassName,
|
|
11474
12404
|
style
|
|
11475
12405
|
}) {
|
|
12406
|
+
const tc = useLocale().messages.common;
|
|
11476
12407
|
const hasDescription = description != null && description !== "";
|
|
11477
12408
|
return /* @__PURE__ */ jsxs(
|
|
11478
12409
|
"header",
|
|
@@ -11511,7 +12442,7 @@ function SOverlayHeader({
|
|
|
11511
12442
|
SGhostButton,
|
|
11512
12443
|
{
|
|
11513
12444
|
icon: "close",
|
|
11514
|
-
ariaLabel:
|
|
12445
|
+
ariaLabel: tc.close,
|
|
11515
12446
|
onClick: () => onClose?.(),
|
|
11516
12447
|
className: "absolute right-[12px] top-[12px]"
|
|
11517
12448
|
}
|
|
@@ -11566,14 +12497,6 @@ function SActionModal({
|
|
|
11566
12497
|
}
|
|
11567
12498
|
);
|
|
11568
12499
|
}
|
|
11569
|
-
var DEFAULT_MESSAGE = {
|
|
11570
|
-
loading: "\uC791\uC5C5 \uC9C4\uD589\uC911...",
|
|
11571
|
-
error: "\uC791\uC5C5\uC5D0 \uC2E4\uD328\uD558\uC600\uC2B5\uB2C8\uB2E4. \uB2E4\uC2DC \uC2DC\uB3C4\uD574 \uC8FC\uC138\uC694."
|
|
11572
|
-
};
|
|
11573
|
-
var DEFAULT_BUTTON_LABEL = {
|
|
11574
|
-
loading: "\uD655\uC778",
|
|
11575
|
-
error: "\uB2E4\uC2DC \uC2DC\uB3C4"
|
|
11576
|
-
};
|
|
11577
12500
|
function SLoadingModal({
|
|
11578
12501
|
open,
|
|
11579
12502
|
onOpenChange,
|
|
@@ -11588,7 +12511,8 @@ function SLoadingModal({
|
|
|
11588
12511
|
width = "var(--cmp-modal-loading-width)",
|
|
11589
12512
|
height = "var(--cmp-modal-loading-height)"
|
|
11590
12513
|
}) {
|
|
11591
|
-
const
|
|
12514
|
+
const { loadingModal: t, common: tc } = useLocale().messages;
|
|
12515
|
+
const resolvedMessage = message ?? (state2 === "loading" ? t.loadingMessage : t.errorMessage);
|
|
11592
12516
|
const lines = Array.isArray(resolvedMessage) ? resolvedMessage : resolvedMessage ? [resolvedMessage] : [];
|
|
11593
12517
|
const buttonVisible = showButton || state2 === "error";
|
|
11594
12518
|
return /* @__PURE__ */ jsx(
|
|
@@ -11599,7 +12523,7 @@ function SLoadingModal({
|
|
|
11599
12523
|
onClose,
|
|
11600
12524
|
showClose: state2 === "error",
|
|
11601
12525
|
persistent,
|
|
11602
|
-
ariaTitle: lines[0] ||
|
|
12526
|
+
ariaTitle: lines[0] || t.ariaTitle,
|
|
11603
12527
|
width,
|
|
11604
12528
|
height,
|
|
11605
12529
|
children: /* @__PURE__ */ jsx("div", { className: "flex min-h-0 flex-auto flex-col overflow-y-auto px-[32px]", children: /* @__PURE__ */ jsxs("div", { className: "m-auto flex flex-col items-center gap-(--cmp-modal-loading-gap)", children: [
|
|
@@ -11629,7 +12553,7 @@ function SLoadingModal({
|
|
|
11629
12553
|
onButtonClick?.();
|
|
11630
12554
|
onOpenChange?.(false);
|
|
11631
12555
|
},
|
|
11632
|
-
label: buttonLabel ??
|
|
12556
|
+
label: buttonLabel ?? (state2 === "loading" ? tc.confirm : t.errorButton)
|
|
11633
12557
|
}
|
|
11634
12558
|
)
|
|
11635
12559
|
] }) })
|
|
@@ -11639,7 +12563,7 @@ function SLoadingModal({
|
|
|
11639
12563
|
var CLOSE_ANIMATION_DURATION2 = 300;
|
|
11640
12564
|
var RESIZE_KEY_STEP = { normal: 10, large: 50 };
|
|
11641
12565
|
var RESIZE_HIT_WIDTH = "calc(var(--cmp-splitter-border-width) + var(--cmp-splitter-border-padding) * 2)";
|
|
11642
|
-
function
|
|
12566
|
+
function toPx2(value, percentBase) {
|
|
11643
12567
|
if (typeof value === "number") return value;
|
|
11644
12568
|
if (typeof value !== "string") return void 0;
|
|
11645
12569
|
const normalized = value.trim();
|
|
@@ -11683,6 +12607,7 @@ function SDrawer({
|
|
|
11683
12607
|
className,
|
|
11684
12608
|
style
|
|
11685
12609
|
}) {
|
|
12610
|
+
const tc = useLocale().messages.common;
|
|
11686
12611
|
const [shaking, setShaking] = useState(false);
|
|
11687
12612
|
const [rendered, setRendered] = useState(() => Boolean(open));
|
|
11688
12613
|
const [entered, setEntered] = useState(false);
|
|
@@ -11774,8 +12699,8 @@ function SDrawer({
|
|
|
11774
12699
|
const resizeBounds = () => {
|
|
11775
12700
|
const limit = viewportWidth;
|
|
11776
12701
|
if (limit === void 0) return { min: void 0, max: void 0 };
|
|
11777
|
-
const min =
|
|
11778
|
-
const max =
|
|
12702
|
+
const min = toPx2(minWidth, limit);
|
|
12703
|
+
const max = toPx2(maxWidth, limit);
|
|
11779
12704
|
return {
|
|
11780
12705
|
min: min === void 0 ? void 0 : Math.min(min, limit),
|
|
11781
12706
|
max: max === void 0 ? limit : Math.min(max, limit)
|
|
@@ -11909,7 +12834,7 @@ function SDrawer({
|
|
|
11909
12834
|
{
|
|
11910
12835
|
role: "separator",
|
|
11911
12836
|
"aria-orientation": "vertical",
|
|
11912
|
-
"aria-label":
|
|
12837
|
+
"aria-label": tc.resizeDrawer,
|
|
11913
12838
|
"aria-valuenow": resizeValueNow,
|
|
11914
12839
|
"aria-valuemin": resizeValueMin,
|
|
11915
12840
|
"aria-valuemax": resizeValueMax,
|
|
@@ -12475,6 +13400,7 @@ function resolveRows(items) {
|
|
|
12475
13400
|
}
|
|
12476
13401
|
var SLauncherListBox = /* @__PURE__ */ forwardRef(
|
|
12477
13402
|
function SLauncherListBox2({ items, onSelect, consoleHref, onConsoleClick, ariaLabel, className, style, ...rest }, ref) {
|
|
13403
|
+
const tl = useLocale().messages.launcher;
|
|
12478
13404
|
const rows = items ? resolveRows(items) : [];
|
|
12479
13405
|
if (rows.length === 0) return null;
|
|
12480
13406
|
return /* @__PURE__ */ jsxs(
|
|
@@ -12593,7 +13519,7 @@ var SLauncherListBox = /* @__PURE__ */ forwardRef(
|
|
|
12593
13519
|
onClick: () => onSelect?.(row.service),
|
|
12594
13520
|
children: [
|
|
12595
13521
|
content,
|
|
12596
|
-
/* @__PURE__ */ jsx("span", { className: "sr-only", children:
|
|
13522
|
+
/* @__PURE__ */ jsx("span", { className: "sr-only", children: tl.opensInNewTab })
|
|
12597
13523
|
]
|
|
12598
13524
|
}
|
|
12599
13525
|
)
|
|
@@ -12620,7 +13546,7 @@ var SLauncherListBox = /* @__PURE__ */ forwardRef(
|
|
|
12620
13546
|
window.open(consoleHref, "_blank", "noopener,noreferrer");
|
|
12621
13547
|
onConsoleClick?.();
|
|
12622
13548
|
},
|
|
12623
|
-
"aria-label": `${LAUNCHER_LIST_BOX_CONSOLE_LABEL} (
|
|
13549
|
+
"aria-label": `${LAUNCHER_LIST_BOX_CONSOLE_LABEL} (${tl.opensInNewTab})`
|
|
12624
13550
|
}
|
|
12625
13551
|
)
|
|
12626
13552
|
}
|
|
@@ -13755,8 +14681,6 @@ var GNB_SYSTEM_LAYOUT = {
|
|
|
13755
14681
|
domainRadius: domain("radius")
|
|
13756
14682
|
};
|
|
13757
14683
|
var GNB_SYSTEM_ALERT_DOT_SIZE = 6;
|
|
13758
|
-
var GNB_SYSTEM_ALERT_LABEL = "\uC54C\uB9BC";
|
|
13759
|
-
var GNB_SYSTEM_SETTING_LABEL = "\uC124\uC815";
|
|
13760
14684
|
function TokenIcon3({ name, size }) {
|
|
13761
14685
|
return /* @__PURE__ */ jsx(SIcon, { name, size: "100%", style: { width: size, height: size } });
|
|
13762
14686
|
}
|
|
@@ -13864,6 +14788,7 @@ var SGnbSystem = /* @__PURE__ */ forwardRef(function SGnbSystem2({
|
|
|
13864
14788
|
style,
|
|
13865
14789
|
...rest
|
|
13866
14790
|
}, ref) {
|
|
14791
|
+
const tg = useLocale().messages.gnbSystem;
|
|
13867
14792
|
const gnb3 = useContext(SGnbSystemContext);
|
|
13868
14793
|
const color = colorProp ?? gnb3?.color ?? "light";
|
|
13869
14794
|
const placement = gnb3?.placement ?? "panel";
|
|
@@ -13922,8 +14847,8 @@ var SGnbSystem = /* @__PURE__ */ forwardRef(function SGnbSystem2({
|
|
|
13922
14847
|
setAlertTooltipDismissed(true);
|
|
13923
14848
|
alert2?.onTooltipDismiss?.();
|
|
13924
14849
|
};
|
|
13925
|
-
const alertLabel = alert2?.label ??
|
|
13926
|
-
const settingLabel = setting?.label ??
|
|
14850
|
+
const alertLabel = alert2?.label ?? tg.alert;
|
|
14851
|
+
const settingLabel = setting?.label ?? tg.setting;
|
|
13927
14852
|
const alertButton = alert2 && /* @__PURE__ */ jsx(
|
|
13928
14853
|
SystemButton,
|
|
13929
14854
|
{
|
|
@@ -13959,7 +14884,7 @@ var SGnbSystem = /* @__PURE__ */ forwardRef(function SGnbSystem2({
|
|
|
13959
14884
|
align: "end",
|
|
13960
14885
|
offset: 8,
|
|
13961
14886
|
viewportPadding: 8,
|
|
13962
|
-
ariaLabel:
|
|
14887
|
+
ariaLabel: alertLabel,
|
|
13963
14888
|
onOpenAutoFocus: (event) => event.preventDefault(),
|
|
13964
14889
|
className: "rounded-(--radius-8)",
|
|
13965
14890
|
children: alert2.listBox
|
|
@@ -14287,6 +15212,7 @@ var PAGE_CONTENT_WIDTHS = ["full", "fixed", "fixedCenter"];
|
|
|
14287
15212
|
var PAGE_HEADER_VARIANTS = ["plain", "bar"];
|
|
14288
15213
|
var SPageHeader = /* @__PURE__ */ withDisplayName(
|
|
14289
15214
|
forwardRef(function SPageHeader2({ title, subText, titleSlot, variant, onBack, slot, scrolled, className, style, ...rest }, ref) {
|
|
15215
|
+
const tc = useLocale().messages.common;
|
|
14290
15216
|
const hasBack = onBack != null;
|
|
14291
15217
|
const hasTitleSlot = titleSlot != null && titleSlot !== false;
|
|
14292
15218
|
const titleEl = /* @__PURE__ */ jsx("span", { className: "typo-heading-lg min-w-0 truncate text-(--cmp-pageHeader-title-text)", children: title });
|
|
@@ -14325,7 +15251,7 @@ var SPageHeader = /* @__PURE__ */ withDisplayName(
|
|
|
14325
15251
|
{
|
|
14326
15252
|
icon: "chevronLeft",
|
|
14327
15253
|
size: "xs",
|
|
14328
|
-
ariaLabel:
|
|
15254
|
+
ariaLabel: tc.back,
|
|
14329
15255
|
onClick: onBack,
|
|
14330
15256
|
className: cn("shrink-0", bar ? "" : "mt-[3px]")
|
|
14331
15257
|
}
|
|
@@ -14902,7 +15828,6 @@ var STEPPER_VERTICAL_COLORS = {
|
|
|
14902
15828
|
sequenceIconCompleted: STEPPER_COLORS.sequenceText.completed,
|
|
14903
15829
|
errorBadge: "#FB4444"
|
|
14904
15830
|
};
|
|
14905
|
-
var ERROR_TOOLTIP_MESSAGE = "\uD655\uC778\uC774 \uD544\uC694\uD55C \uD56D\uBAA9\uC774 \uC788\uC2B5\uB2C8\uB2E4.";
|
|
14906
15831
|
function getItemValue(item4, index) {
|
|
14907
15832
|
return item4.value ?? String(index + 1);
|
|
14908
15833
|
}
|
|
@@ -14944,10 +15869,12 @@ var SStepper = /* @__PURE__ */ forwardRef(function SStepper2({
|
|
|
14944
15869
|
vertical = false,
|
|
14945
15870
|
clickable,
|
|
14946
15871
|
onValueChange,
|
|
14947
|
-
ariaLabel
|
|
15872
|
+
ariaLabel: ariaLabelProp,
|
|
14948
15873
|
className,
|
|
14949
15874
|
style
|
|
14950
15875
|
}, ref) {
|
|
15876
|
+
const t = useLocale().messages.stepper;
|
|
15877
|
+
const ariaLabel = ariaLabelProp ?? t.ariaLabel;
|
|
14951
15878
|
const config = STEPPER_SIZE_CONFIG[size];
|
|
14952
15879
|
const isClickable = clickable ?? vertical;
|
|
14953
15880
|
const [hoveredIndex, setHoveredIndex] = useState(null);
|
|
@@ -15229,7 +16156,7 @@ var SStepper = /* @__PURE__ */ forwardRef(function SStepper2({
|
|
|
15229
16156
|
{
|
|
15230
16157
|
trigger: "none",
|
|
15231
16158
|
open: showTooltip,
|
|
15232
|
-
content:
|
|
16159
|
+
content: t.errorTooltip,
|
|
15233
16160
|
tooltipType: "danger",
|
|
15234
16161
|
placement: "right",
|
|
15235
16162
|
children: /* @__PURE__ */ jsxs(
|
|
@@ -15407,16 +16334,20 @@ function monthCells(year, month) {
|
|
|
15407
16334
|
}
|
|
15408
16335
|
return cells;
|
|
15409
16336
|
}
|
|
15410
|
-
var
|
|
15411
|
-
var
|
|
15412
|
-
|
|
15413
|
-
|
|
16337
|
+
var glyphEm = (char) => /[\u1100-\u11ff\u3040-\u30ff\u3130-\u318f\u3400-\u9fff\uac00-\ud7a3]/.test(char) ? 1 : 0.58;
|
|
16338
|
+
var weekdaySuffixWidth = (fontSize, t) => {
|
|
16339
|
+
const longest = Math.max(
|
|
16340
|
+
...t.weekdaysLong.map((name) => Array.from(name).reduce((sum, char) => sum + glyphEm(char), 0))
|
|
16341
|
+
);
|
|
16342
|
+
return Math.ceil(fontSize * (0.25 + longest));
|
|
16343
|
+
};
|
|
16344
|
+
function withWeekday(value, t) {
|
|
15414
16345
|
const [date = "", ...rest] = value.split(" ");
|
|
15415
16346
|
const match = /^(\d{4})-(\d{2})-(\d{2})$/.exec(date);
|
|
15416
16347
|
if (!match) return value;
|
|
15417
16348
|
const day = new Date(Number(match[1]), Number(match[2]) - 1, Number(match[3])).getDay();
|
|
15418
16349
|
if (Number.isNaN(day)) return value;
|
|
15419
|
-
return [date,
|
|
16350
|
+
return [date, t.weekdaysLong[day], ...rest].join(" ");
|
|
15420
16351
|
}
|
|
15421
16352
|
|
|
15422
16353
|
// src/components/SCalendarBoard/calendar-board-layout.ts
|
|
@@ -15651,7 +16582,9 @@ function CalendarEventButton({
|
|
|
15651
16582
|
}
|
|
15652
16583
|
);
|
|
15653
16584
|
}
|
|
15654
|
-
var CalendarMoreButton = /* @__PURE__ */ forwardRef(function CalendarMoreButton2({ count, label
|
|
16585
|
+
var CalendarMoreButton = /* @__PURE__ */ forwardRef(function CalendarMoreButton2({ count, label: labelProp, dimmed = false, onClick, className, style }, ref) {
|
|
16586
|
+
const tc = useLocale().messages.common;
|
|
16587
|
+
const label = labelProp ?? tc.more;
|
|
15655
16588
|
return /* @__PURE__ */ jsxs(
|
|
15656
16589
|
"button",
|
|
15657
16590
|
{
|
|
@@ -15674,10 +16607,7 @@ var CalendarMoreButton = /* @__PURE__ */ forwardRef(function CalendarMoreButton2
|
|
|
15674
16607
|
className: "pointer-events-none absolute inset-0 rounded-(--cmp-calendarBoard-item-radius) bg-(--cmp-calendarBoard-moreButton-hover-overlay-color) opacity-0 transition-opacity group-hover:opacity-(--cmp-calendarBoard-moreButton-hover-overlay-opacity)"
|
|
15675
16608
|
}
|
|
15676
16609
|
),
|
|
15677
|
-
/* @__PURE__ */
|
|
15678
|
-
count,
|
|
15679
|
-
"\uAC1C"
|
|
15680
|
-
] }),
|
|
16610
|
+
/* @__PURE__ */ jsx("span", { className: "typo-body-sm-semibold shrink-0 text-(--cmp-calendarBoard-moreButton-count-color)", children: tc.count(count) }),
|
|
15681
16611
|
/* @__PURE__ */ jsx("span", { className: "typo-body-sm-default min-w-0 truncate text-(--cmp-calendarBoard-moreButton-label-color)", children: label })
|
|
15682
16612
|
]
|
|
15683
16613
|
}
|
|
@@ -15815,10 +16745,12 @@ function CalendarDayEventListBox({
|
|
|
15815
16745
|
minWidth,
|
|
15816
16746
|
minHeight,
|
|
15817
16747
|
onClose,
|
|
15818
|
-
closeLabel
|
|
16748
|
+
closeLabel: closeLabelProp
|
|
15819
16749
|
}) {
|
|
16750
|
+
const { common: tc, date: t } = useLocale().messages;
|
|
16751
|
+
const closeLabel = closeLabelProp ?? tc.close;
|
|
15820
16752
|
const [y, m, d] = date.split("-").map(Number);
|
|
15821
|
-
const weekday =
|
|
16753
|
+
const weekday = t.weekdays[new Date(y, m - 1, d).getDay()];
|
|
15822
16754
|
return /* @__PURE__ */ jsxs(
|
|
15823
16755
|
"div",
|
|
15824
16756
|
{
|
|
@@ -15826,10 +16758,7 @@ function CalendarDayEventListBox({
|
|
|
15826
16758
|
style: { minWidth, maxWidth: MAX_WIDTH, minHeight, maxHeight: MAX_HEIGHT },
|
|
15827
16759
|
children: [
|
|
15828
16760
|
/* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-(--cmp-calendarBoard-dayEvent-header-gap) px-(--cmp-calendarBoard-dayEvent-header-paddingX) py-(--cmp-calendarBoard-dayEvent-header-paddingY)", children: [
|
|
15829
|
-
/* @__PURE__ */
|
|
15830
|
-
d,
|
|
15831
|
-
"\uC77C"
|
|
15832
|
-
] }),
|
|
16761
|
+
/* @__PURE__ */ jsx("span", { className: "typo-heading-md text-(--cmp-calendarBoard-header-content-color)", children: t.dayLabel(d) }),
|
|
15833
16762
|
/* @__PURE__ */ jsxs("span", { className: "typo-body-lg-default flex-1 text-(--cmp-calendarBoard-header-content-color)", children: [
|
|
15834
16763
|
"(",
|
|
15835
16764
|
weekday,
|
|
@@ -15890,12 +16819,14 @@ function SCalendarBoard({
|
|
|
15890
16819
|
focusedEventId,
|
|
15891
16820
|
onEventClick,
|
|
15892
16821
|
onMoreClick,
|
|
15893
|
-
todayLabel
|
|
16822
|
+
todayLabel: todayLabelProp,
|
|
15894
16823
|
moreLabel,
|
|
15895
16824
|
headerRight,
|
|
15896
16825
|
className,
|
|
15897
16826
|
style
|
|
15898
16827
|
}) {
|
|
16828
|
+
const t = useLocale().messages.date;
|
|
16829
|
+
const todayLabel = todayLabelProp ?? t.today;
|
|
15899
16830
|
const today = todayStr();
|
|
15900
16831
|
const [ty, tm] = [Number(today.slice(0, 4)), Number(today.slice(5, 7))];
|
|
15901
16832
|
const [innerView, setInnerView] = useState(() => ({
|
|
@@ -16001,7 +16932,7 @@ function SCalendarBoard({
|
|
|
16001
16932
|
{
|
|
16002
16933
|
icon: "chevronLeft",
|
|
16003
16934
|
size: "xxs",
|
|
16004
|
-
ariaLabel:
|
|
16935
|
+
ariaLabel: t.prevYear,
|
|
16005
16936
|
onClick: () => setView({ year: view.year - 1, month: view.month })
|
|
16006
16937
|
}
|
|
16007
16938
|
),
|
|
@@ -16011,7 +16942,7 @@ function SCalendarBoard({
|
|
|
16011
16942
|
{
|
|
16012
16943
|
icon: "chevronRight",
|
|
16013
16944
|
size: "xxs",
|
|
16014
|
-
ariaLabel:
|
|
16945
|
+
ariaLabel: t.nextYear,
|
|
16015
16946
|
onClick: () => setView({ year: view.year + 1, month: view.month })
|
|
16016
16947
|
}
|
|
16017
16948
|
)
|
|
@@ -16023,20 +16954,17 @@ function SCalendarBoard({
|
|
|
16023
16954
|
{
|
|
16024
16955
|
icon: "chevronLeft",
|
|
16025
16956
|
size: "xxs",
|
|
16026
|
-
ariaLabel:
|
|
16957
|
+
ariaLabel: t.prevMonth,
|
|
16027
16958
|
onClick: () => setView(calcYearMonth(view.year, view.month, "prev"))
|
|
16028
16959
|
}
|
|
16029
16960
|
),
|
|
16030
|
-
/* @__PURE__ */
|
|
16031
|
-
view.month,
|
|
16032
|
-
"\uC6D4"
|
|
16033
|
-
] }),
|
|
16961
|
+
/* @__PURE__ */ jsx("span", { className: "typo-heading-lg inline-flex min-w-[48px] justify-center text-(--cmp-calendarBoard-header-content-color)", children: t.monthLabel(view.month) }),
|
|
16034
16962
|
/* @__PURE__ */ jsx(
|
|
16035
16963
|
SGhostButton,
|
|
16036
16964
|
{
|
|
16037
16965
|
icon: "chevronRight",
|
|
16038
16966
|
size: "xxs",
|
|
16039
|
-
ariaLabel:
|
|
16967
|
+
ariaLabel: t.nextMonth,
|
|
16040
16968
|
onClick: () => setView(calcYearMonth(view.year, view.month, "next"))
|
|
16041
16969
|
}
|
|
16042
16970
|
)
|
|
@@ -16059,7 +16987,7 @@ function SCalendarBoard({
|
|
|
16059
16987
|
{
|
|
16060
16988
|
className: "grid shrink-0 bg-(--cmp-calendarBoard-grid-bg) pt-(--cmp-calendarBoard-grid-paddingTop) pb-(--cmp-calendarBoard-grid-gap)",
|
|
16061
16989
|
style: { gridTemplateColumns: columns },
|
|
16062
|
-
children:
|
|
16990
|
+
children: t.weekdays.map((label) => /* @__PURE__ */ jsx(
|
|
16063
16991
|
"div",
|
|
16064
16992
|
{
|
|
16065
16993
|
className: "typo-body-md-default flex justify-center text-(--cmp-calendarBoard-grid-weekRow-color)",
|
|
@@ -16414,7 +17342,7 @@ var SSearchInput = /* @__PURE__ */ forwardRef(function SSearchInput2({
|
|
|
16414
17342
|
onChange,
|
|
16415
17343
|
onSearch,
|
|
16416
17344
|
size = "sm",
|
|
16417
|
-
placeholder
|
|
17345
|
+
placeholder: placeholderProp,
|
|
16418
17346
|
clearable = false,
|
|
16419
17347
|
disabled = false,
|
|
16420
17348
|
width,
|
|
@@ -16427,6 +17355,8 @@ var SSearchInput = /* @__PURE__ */ forwardRef(function SSearchInput2({
|
|
|
16427
17355
|
onKeyDown,
|
|
16428
17356
|
...rest
|
|
16429
17357
|
}, ref) {
|
|
17358
|
+
const { common: tc, input: ti } = useLocale().messages;
|
|
17359
|
+
const placeholder = placeholderProp ?? ti.searchWithinResults;
|
|
16430
17360
|
const f = FONT[size];
|
|
16431
17361
|
const hasValue = value !== void 0 && value !== null && String(value) !== "";
|
|
16432
17362
|
return /* @__PURE__ */ jsx(
|
|
@@ -16494,7 +17424,7 @@ var SSearchInput = /* @__PURE__ */ forwardRef(function SSearchInput2({
|
|
|
16494
17424
|
{
|
|
16495
17425
|
icon: "close",
|
|
16496
17426
|
size: "xxs",
|
|
16497
|
-
ariaLabel:
|
|
17427
|
+
ariaLabel: tc.clear,
|
|
16498
17428
|
className: "flex-shrink-0",
|
|
16499
17429
|
onClick: () => onValueChange?.("")
|
|
16500
17430
|
}
|
|
@@ -16679,6 +17609,7 @@ var SSelectImpl = /* @__PURE__ */ forwardRef(function SSelect({
|
|
|
16679
17609
|
className,
|
|
16680
17610
|
style
|
|
16681
17611
|
}, ref) {
|
|
17612
|
+
const runRules2 = useRunRules();
|
|
16682
17613
|
const multi = type === "multi" || type === "multi_depth" || type === "multi_tree";
|
|
16683
17614
|
const isDepth = type === "default_depth" || type === "multi_depth";
|
|
16684
17615
|
const isTree = type === "tree" || type === "multi_tree";
|
|
@@ -16791,7 +17722,7 @@ var SSelectImpl = /* @__PURE__ */ forwardRef(function SSelect({
|
|
|
16791
17722
|
setSearch("");
|
|
16792
17723
|
if (rules && rules.length > 0) {
|
|
16793
17724
|
const current = valueForRules ?? selectedRef.current;
|
|
16794
|
-
setRuleError(
|
|
17725
|
+
setRuleError(runRules2(multi ? current : current[0] ?? "", rules));
|
|
16795
17726
|
}
|
|
16796
17727
|
}
|
|
16797
17728
|
};
|
|
@@ -16830,7 +17761,7 @@ var SSelectImpl = /* @__PURE__ */ forwardRef(function SSelect({
|
|
|
16830
17761
|
useFormField({
|
|
16831
17762
|
name,
|
|
16832
17763
|
validate: () => {
|
|
16833
|
-
const msg =
|
|
17764
|
+
const msg = runRules2(multi ? selected : selected[0] ?? "", rules);
|
|
16834
17765
|
setRuleError(msg);
|
|
16835
17766
|
return msg === "";
|
|
16836
17767
|
},
|
|
@@ -17103,14 +18034,14 @@ var SSelectImpl = /* @__PURE__ */ forwardRef(function SSelect({
|
|
|
17103
18034
|
const showClear = clearable && !effectiveDisabled && !isPlaceholder;
|
|
17104
18035
|
const handleClear = () => {
|
|
17105
18036
|
emit3([]);
|
|
17106
|
-
if (rules && rules.length > 0) setRuleError(
|
|
18037
|
+
if (rules && rules.length > 0) setRuleError(runRules2(multi ? [] : "", rules));
|
|
17107
18038
|
triggerRef.current?.focus();
|
|
17108
18039
|
};
|
|
17109
18040
|
const handleRemoveChip = (targets) => {
|
|
17110
18041
|
const remove = new Set(targets);
|
|
17111
18042
|
const next = selected.filter((v) => !remove.has(v));
|
|
17112
18043
|
emit3(next);
|
|
17113
|
-
if (rules && rules.length > 0) setRuleError(
|
|
18044
|
+
if (rules && rules.length > 0) setRuleError(runRules2(next, rules));
|
|
17114
18045
|
triggerRef.current?.focus();
|
|
17115
18046
|
};
|
|
17116
18047
|
const handleSelect = (nextValue, index, extend = false) => {
|
|
@@ -17992,12 +18923,7 @@ var NO_KEYS = /* @__PURE__ */ new Set();
|
|
|
17992
18923
|
var DEFAULT_ROW_HEIGHT = 44;
|
|
17993
18924
|
var DENSE_ROW_HEIGHT = 32;
|
|
17994
18925
|
var SELECTABLE_COLUMN_WIDTH = 48;
|
|
17995
|
-
var
|
|
17996
|
-
{ label: "10\uAC1C\uC529 \uBCF4\uAE30", value: 10 },
|
|
17997
|
-
{ label: "25\uAC1C\uC529 \uBCF4\uAE30", value: 25 },
|
|
17998
|
-
{ label: "50\uAC1C\uC529 \uBCF4\uAE30", value: 50 },
|
|
17999
|
-
{ label: "100\uAC1C\uC529 \uBCF4\uAE30", value: 100 }
|
|
18000
|
-
];
|
|
18926
|
+
var DEFAULT_ROWS_PER_PAGE_COUNTS = [10, 25, 50, 100];
|
|
18001
18927
|
var cellValue = (col, row) => {
|
|
18002
18928
|
const raw = col.field == null ? void 0 : typeof col.field === "function" ? col.field(row) : row[col.field];
|
|
18003
18929
|
return col.format ? col.format(raw, row) : raw;
|
|
@@ -18037,7 +18963,7 @@ var STableImpl = /* @__PURE__ */ forwardRef(function STable({
|
|
|
18037
18963
|
rowKey = "id",
|
|
18038
18964
|
selectable = false,
|
|
18039
18965
|
rowSelectLabel,
|
|
18040
|
-
selectAllLabel
|
|
18966
|
+
selectAllLabel: selectAllLabelProp,
|
|
18041
18967
|
dragSelectable = false,
|
|
18042
18968
|
contextMenuItems,
|
|
18043
18969
|
onContextMenuItemClick,
|
|
@@ -18054,7 +18980,7 @@ var STableImpl = /* @__PURE__ */ forwardRef(function STable({
|
|
|
18054
18980
|
stickyColumn,
|
|
18055
18981
|
radius = "default",
|
|
18056
18982
|
bordered = true,
|
|
18057
|
-
emptyLabel
|
|
18983
|
+
emptyLabel: emptyLabelProp,
|
|
18058
18984
|
emptySlot,
|
|
18059
18985
|
loading: loading2 = false,
|
|
18060
18986
|
dense = false,
|
|
@@ -18064,7 +18990,7 @@ var STableImpl = /* @__PURE__ */ forwardRef(function STable({
|
|
|
18064
18990
|
onPageChange,
|
|
18065
18991
|
internalPagination = false,
|
|
18066
18992
|
showRowsPerPageSelect = false,
|
|
18067
|
-
rowsPerPageOption
|
|
18993
|
+
rowsPerPageOption: rowsPerPageOptionProp,
|
|
18068
18994
|
onRowsPerPageChange,
|
|
18069
18995
|
virtualScroll = false,
|
|
18070
18996
|
rowHeight,
|
|
@@ -18086,6 +19012,13 @@ var STableImpl = /* @__PURE__ */ forwardRef(function STable({
|
|
|
18086
19012
|
}, ref) {
|
|
18087
19013
|
const autoId = useId();
|
|
18088
19014
|
const resolvedTableId = tableId ?? autoId;
|
|
19015
|
+
const t = useLocale().messages.table;
|
|
19016
|
+
const selectAllLabel = selectAllLabelProp ?? t.selectAll;
|
|
19017
|
+
const emptyLabel = emptyLabelProp ?? t.empty;
|
|
19018
|
+
const rowsPerPageOption = useMemo(
|
|
19019
|
+
() => rowsPerPageOptionProp ?? DEFAULT_ROWS_PER_PAGE_COUNTS.map((count) => ({ label: t.rowsPerPage(count), value: count })),
|
|
19020
|
+
[rowsPerPageOptionProp, t]
|
|
19021
|
+
);
|
|
18089
19022
|
const [innerDense, setInnerDense] = useState(dense);
|
|
18090
19023
|
useEffect(() => {
|
|
18091
19024
|
setInnerDense(dense);
|
|
@@ -18897,7 +19830,7 @@ var STableImpl = /* @__PURE__ */ forwardRef(function STable({
|
|
|
18897
19830
|
name: "pageEdit",
|
|
18898
19831
|
size: 12,
|
|
18899
19832
|
color: "var(--sys-color-link-accent)",
|
|
18900
|
-
label:
|
|
19833
|
+
label: t.editable,
|
|
18901
19834
|
className: "shrink-0"
|
|
18902
19835
|
}
|
|
18903
19836
|
),
|
|
@@ -18907,7 +19840,7 @@ var STableImpl = /* @__PURE__ */ forwardRef(function STable({
|
|
|
18907
19840
|
name: "pageMove",
|
|
18908
19841
|
size: 12,
|
|
18909
19842
|
color: "var(--sys-color-link-accent)",
|
|
18910
|
-
label:
|
|
19843
|
+
label: t.opensInNewScreen,
|
|
18911
19844
|
className: "shrink-0"
|
|
18912
19845
|
}
|
|
18913
19846
|
),
|
|
@@ -18931,7 +19864,7 @@ var STableImpl = /* @__PURE__ */ forwardRef(function STable({
|
|
|
18931
19864
|
size: "xxs",
|
|
18932
19865
|
intent: sortDir ? "action" : "default",
|
|
18933
19866
|
icon: sortDir === "asc" ? "arrowUp" : sortDir === "desc" ? "arrowDown" : "updown",
|
|
18934
|
-
ariaLabel:
|
|
19867
|
+
ariaLabel: t.sortBy(col.label),
|
|
18935
19868
|
onClick: () => toggleSort(col)
|
|
18936
19869
|
}
|
|
18937
19870
|
) })
|
|
@@ -19081,7 +20014,7 @@ var STableImpl = /* @__PURE__ */ forwardRef(function STable({
|
|
|
19081
20014
|
value: isSel || !isRowIndeterminate?.(row) ? isSel : null,
|
|
19082
20015
|
disabled: !canSelectRow(row),
|
|
19083
20016
|
onValueChange: () => toggleRow(row, rowOffset + ri),
|
|
19084
|
-
ariaLabel: rowSelectLabel?.(row) ??
|
|
20017
|
+
ariaLabel: rowSelectLabel?.(row) ?? t.selectRow
|
|
19085
20018
|
}
|
|
19086
20019
|
) })
|
|
19087
20020
|
}
|
|
@@ -19234,7 +20167,7 @@ var STableImpl = /* @__PURE__ */ forwardRef(function STable({
|
|
|
19234
20167
|
icon: innerDense ? "row" : "rowDense",
|
|
19235
20168
|
iconRotate: 90,
|
|
19236
20169
|
iconColor: "var(--sys-color-fg-quaternary)",
|
|
19237
|
-
label: innerDense ?
|
|
20170
|
+
label: innerDense ? t.denseOff : t.denseOn,
|
|
19238
20171
|
onClick: () => changeDense(!innerDense)
|
|
19239
20172
|
}
|
|
19240
20173
|
),
|
|
@@ -19341,6 +20274,8 @@ var STableBar = /* @__PURE__ */ forwardRef(function STableBar2({ title, total, s
|
|
|
19341
20274
|
const hasTitle = title != null;
|
|
19342
20275
|
const hasLeading = hasTitle || hasCount;
|
|
19343
20276
|
const titleId = useId();
|
|
20277
|
+
const { messages, formatNumber } = useLocale();
|
|
20278
|
+
const t = messages.tableBar;
|
|
19344
20279
|
const isToolbar = Boolean(actions || rightActions);
|
|
19345
20280
|
return /* @__PURE__ */ jsxs(
|
|
19346
20281
|
"div",
|
|
@@ -19366,9 +20301,9 @@ var STableBar = /* @__PURE__ */ forwardRef(function STableBar2({ title, total, s
|
|
|
19366
20301
|
),
|
|
19367
20302
|
hasCount && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-[var(--cmp-table-content-gap)]", children: [
|
|
19368
20303
|
hasTotal && /* @__PURE__ */ jsxs("span", { className: "typo-table-accent whitespace-nowrap text-[var(--sys-color-fg-primary)]", children: [
|
|
19369
|
-
|
|
19370
|
-
/* @__PURE__ */ jsx("b", { style: { color: totalColor(total) }, children: total
|
|
19371
|
-
|
|
20304
|
+
t.totalBefore,
|
|
20305
|
+
/* @__PURE__ */ jsx("b", { style: { color: totalColor(total) }, children: formatNumber(total) }),
|
|
20306
|
+
t.totalAfter
|
|
19372
20307
|
] }),
|
|
19373
20308
|
hasTotal && hasSelected && /* @__PURE__ */ jsx(
|
|
19374
20309
|
"span",
|
|
@@ -19379,8 +20314,9 @@ var STableBar = /* @__PURE__ */ forwardRef(function STableBar2({ title, total, s
|
|
|
19379
20314
|
}
|
|
19380
20315
|
),
|
|
19381
20316
|
hasSelected && /* @__PURE__ */ jsxs("span", { className: "typo-table-body whitespace-nowrap text-[var(--sys-color-fg-primary)]", children: [
|
|
19382
|
-
|
|
19383
|
-
"
|
|
20317
|
+
t.selectedBefore,
|
|
20318
|
+
/* @__PURE__ */ jsx("b", { style: { color: selectedColor(selected) }, children: formatNumber(selected) }),
|
|
20319
|
+
t.selectedAfter
|
|
19384
20320
|
] })
|
|
19385
20321
|
] }),
|
|
19386
20322
|
actions && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-[var(--cmp-table-bar-section-gap)] has-[>div:empty]:hidden", children: [
|
|
@@ -19793,12 +20729,15 @@ var SInput = /* @__PURE__ */ forwardRef(function SInput2({
|
|
|
19793
20729
|
width,
|
|
19794
20730
|
disabled = false,
|
|
19795
20731
|
readOnly = false,
|
|
19796
|
-
placeholder
|
|
20732
|
+
placeholder: placeholderProp,
|
|
19797
20733
|
onBlur,
|
|
19798
20734
|
className,
|
|
19799
20735
|
style,
|
|
19800
20736
|
...rest
|
|
19801
20737
|
}, ref) {
|
|
20738
|
+
const runRules2 = useRunRules();
|
|
20739
|
+
const { common: tc, input: ti } = useLocale().messages;
|
|
20740
|
+
const placeholder = placeholderProp ?? ti.placeholder;
|
|
19802
20741
|
const [visible, setVisible] = useState(false);
|
|
19803
20742
|
const [ruleError, setRuleError] = useState("");
|
|
19804
20743
|
const controlId = useFieldControlId(rest.id);
|
|
@@ -19809,7 +20748,7 @@ var SInput = /* @__PURE__ */ forwardRef(function SInput2({
|
|
|
19809
20748
|
useFormField({
|
|
19810
20749
|
name: rest.name,
|
|
19811
20750
|
validate: () => {
|
|
19812
|
-
const msg =
|
|
20751
|
+
const msg = runRules2(value, rules);
|
|
19813
20752
|
setRuleError(msg);
|
|
19814
20753
|
return msg === "";
|
|
19815
20754
|
},
|
|
@@ -19874,11 +20813,11 @@ var SInput = /* @__PURE__ */ forwardRef(function SInput2({
|
|
|
19874
20813
|
onChange: (e) => {
|
|
19875
20814
|
onChange?.(e);
|
|
19876
20815
|
onValueChange?.(e.target.value);
|
|
19877
|
-
if (ruleError !== "") setRuleError(
|
|
20816
|
+
if (ruleError !== "") setRuleError(runRules2(e.target.value, rules));
|
|
19878
20817
|
},
|
|
19879
20818
|
onBlur: (e) => {
|
|
19880
20819
|
onBlur?.(e);
|
|
19881
|
-
if (rules && rules.length > 0) setRuleError(
|
|
20820
|
+
if (rules && rules.length > 0) setRuleError(runRules2(e.target.value, rules));
|
|
19882
20821
|
},
|
|
19883
20822
|
className: cn(
|
|
19884
20823
|
"h-full min-w-0 flex-1 border-0 bg-transparent p-0 outline-none placeholder:text-[color:var(--sys-color-field-text-placeholder)] disabled:cursor-not-allowed",
|
|
@@ -19908,7 +20847,7 @@ var SInput = /* @__PURE__ */ forwardRef(function SInput2({
|
|
|
19908
20847
|
{
|
|
19909
20848
|
icon: "close",
|
|
19910
20849
|
size: "xxs",
|
|
19911
|
-
ariaLabel:
|
|
20850
|
+
ariaLabel: tc.clear,
|
|
19912
20851
|
className: "flex-shrink-0",
|
|
19913
20852
|
onClick: () => onValueChange?.("")
|
|
19914
20853
|
}
|
|
@@ -19918,7 +20857,7 @@ var SInput = /* @__PURE__ */ forwardRef(function SInput2({
|
|
|
19918
20857
|
{
|
|
19919
20858
|
icon: visible ? "visibilityOn" : "visibilityOff",
|
|
19920
20859
|
size: "xxs",
|
|
19921
|
-
ariaLabel:
|
|
20860
|
+
ariaLabel: ti.showPassword,
|
|
19922
20861
|
disabled: disabled || readOnly,
|
|
19923
20862
|
className: "flex-shrink-0",
|
|
19924
20863
|
onClick: () => setVisible((v) => !v)
|
|
@@ -19959,15 +20898,15 @@ var formatInputWithCommas = (value) => {
|
|
|
19959
20898
|
const formattedInt = addCommas(intPart === "" ? "0" : intPart);
|
|
19960
20899
|
return `${isNeg ? "-" : ""}${formattedInt}${hasDecimal ? `.${decPart}` : ""}`;
|
|
19961
20900
|
};
|
|
19962
|
-
var getRangeError = (value, min, max) => {
|
|
20901
|
+
var getRangeError = (value, min, max, t) => {
|
|
19963
20902
|
if (value === null) return "";
|
|
19964
20903
|
const belowMin = value < min;
|
|
19965
20904
|
const aboveMax = value > max;
|
|
19966
20905
|
if (!belowMin && !aboveMax) return "";
|
|
19967
20906
|
if (Number.isFinite(min) && Number.isFinite(max)) {
|
|
19968
|
-
return
|
|
20907
|
+
return t.rangeBetween(formatWithCommas(min), formatWithCommas(max));
|
|
19969
20908
|
}
|
|
19970
|
-
return belowMin ?
|
|
20909
|
+
return belowMin ? t.atLeast(formatWithCommas(min)) : t.atMost(formatWithCommas(max));
|
|
19971
20910
|
};
|
|
19972
20911
|
var getDecimalLimit = (allowDecimal, maxDecimalLength) => {
|
|
19973
20912
|
if (!allowDecimal || maxDecimalLength === void 0 || !Number.isFinite(maxDecimalLength)) {
|
|
@@ -20011,7 +20950,7 @@ var SNumberInput = /* @__PURE__ */ forwardRef(function SNumberInput2({
|
|
|
20011
20950
|
onFocus,
|
|
20012
20951
|
onBlur,
|
|
20013
20952
|
name,
|
|
20014
|
-
placeholder
|
|
20953
|
+
placeholder: placeholderProp,
|
|
20015
20954
|
disabled = false,
|
|
20016
20955
|
readOnly = false,
|
|
20017
20956
|
rules,
|
|
@@ -20035,6 +20974,9 @@ var SNumberInput = /* @__PURE__ */ forwardRef(function SNumberInput2({
|
|
|
20035
20974
|
className,
|
|
20036
20975
|
style
|
|
20037
20976
|
}, ref) {
|
|
20977
|
+
const runRules2 = useRunRules();
|
|
20978
|
+
const { input: ti, numberInput: t } = useLocale().messages;
|
|
20979
|
+
const placeholder = placeholderProp ?? ti.placeholder;
|
|
20038
20980
|
const p = PAD2[size];
|
|
20039
20981
|
const padX = `var(--cmp-numberInput-${size}-paddingX)`;
|
|
20040
20982
|
const decimalLimit = getDecimalLimit(allowDecimal, maxDecimalLength);
|
|
@@ -20058,9 +21000,9 @@ var SNumberInput = /* @__PURE__ */ forwardRef(function SNumberInput2({
|
|
|
20058
21000
|
useFormField({
|
|
20059
21001
|
name,
|
|
20060
21002
|
validate: () => {
|
|
20061
|
-
const msg =
|
|
21003
|
+
const msg = runRules2(numValue, rules);
|
|
20062
21004
|
setRuleError(msg);
|
|
20063
|
-
const range = clampOnBlur ? "" : getRangeError(numValue, min, max);
|
|
21005
|
+
const range = clampOnBlur ? "" : getRangeError(numValue, min, max, t);
|
|
20064
21006
|
setRangeError(range);
|
|
20065
21007
|
return msg === "" && range === "";
|
|
20066
21008
|
},
|
|
@@ -20163,7 +21105,7 @@ var SNumberInput = /* @__PURE__ */ forwardRef(function SNumberInput2({
|
|
|
20163
21105
|
type: "button",
|
|
20164
21106
|
tabIndex: -1,
|
|
20165
21107
|
disabled: off,
|
|
20166
|
-
"aria-label": dir === "inc" ?
|
|
21108
|
+
"aria-label": dir === "inc" ? t.increase : t.decrease,
|
|
20167
21109
|
onClick: dir === "inc" ? increment : decrement,
|
|
20168
21110
|
className: cn(
|
|
20169
21111
|
"flex flex-shrink-0 items-center justify-center border border-solid border-transparent transition-colors",
|
|
@@ -20255,8 +21197,8 @@ var SNumberInput = /* @__PURE__ */ forwardRef(function SNumberInput2({
|
|
|
20255
21197
|
const clamped = !clampOnBlur || n === null ? n : Math.min(Math.max(n, min), max);
|
|
20256
21198
|
if (clamped !== n) emit3(clamped);
|
|
20257
21199
|
else setDisplay(n === null ? "" : formatInputWithCommas(cleaned));
|
|
20258
|
-
if (rules && rules.length > 0) setRuleError(
|
|
20259
|
-
setRangeError(clampOnBlur ? "" : getRangeError(clamped, min, max));
|
|
21200
|
+
if (rules && rules.length > 0) setRuleError(runRules2(clamped, rules));
|
|
21201
|
+
setRangeError(clampOnBlur ? "" : getRangeError(clamped, min, max, t));
|
|
20260
21202
|
onBlur?.(e);
|
|
20261
21203
|
},
|
|
20262
21204
|
className: cn(
|
|
@@ -20434,6 +21376,7 @@ function SCalendar({
|
|
|
20434
21376
|
className,
|
|
20435
21377
|
style
|
|
20436
21378
|
}) {
|
|
21379
|
+
const t = useLocale().messages.date;
|
|
20437
21380
|
const today = todayStr();
|
|
20438
21381
|
const base = value || today;
|
|
20439
21382
|
const [y, setY] = useState(() => Number(base.split("-")[0]));
|
|
@@ -20502,7 +21445,7 @@ function SCalendar({
|
|
|
20502
21445
|
{
|
|
20503
21446
|
icon: "chevronLeft",
|
|
20504
21447
|
size: "xxs",
|
|
20505
|
-
ariaLabel:
|
|
21448
|
+
ariaLabel: t.prevYear,
|
|
20506
21449
|
onClick: () => view(y - 1, m)
|
|
20507
21450
|
}
|
|
20508
21451
|
),
|
|
@@ -20512,7 +21455,7 @@ function SCalendar({
|
|
|
20512
21455
|
{
|
|
20513
21456
|
icon: "chevronRight",
|
|
20514
21457
|
size: "xxs",
|
|
20515
|
-
ariaLabel:
|
|
21458
|
+
ariaLabel: t.nextYear,
|
|
20516
21459
|
onClick: () => view(y + 1, m)
|
|
20517
21460
|
}
|
|
20518
21461
|
)
|
|
@@ -20524,23 +21467,20 @@ function SCalendar({
|
|
|
20524
21467
|
{
|
|
20525
21468
|
icon: "chevronLeft",
|
|
20526
21469
|
size: "xxs",
|
|
20527
|
-
ariaLabel:
|
|
21470
|
+
ariaLabel: t.prevMonth,
|
|
20528
21471
|
onClick: () => {
|
|
20529
21472
|
const n = calcYearMonth(y, m, "prev");
|
|
20530
21473
|
view(n.year, n.month);
|
|
20531
21474
|
}
|
|
20532
21475
|
}
|
|
20533
21476
|
),
|
|
20534
|
-
/* @__PURE__ */
|
|
20535
|
-
m,
|
|
20536
|
-
"\uC6D4"
|
|
20537
|
-
] }),
|
|
21477
|
+
/* @__PURE__ */ jsx("span", { className: "inline-flex w-full min-w-[40px] items-center justify-center text-center typo-field-md-medium", children: t.monthLabel(m) }),
|
|
20538
21478
|
/* @__PURE__ */ jsx(
|
|
20539
21479
|
SGhostButton,
|
|
20540
21480
|
{
|
|
20541
21481
|
icon: "chevronRight",
|
|
20542
21482
|
size: "xxs",
|
|
20543
|
-
ariaLabel:
|
|
21483
|
+
ariaLabel: t.nextMonth,
|
|
20544
21484
|
onClick: () => {
|
|
20545
21485
|
const n = calcYearMonth(y, m, "next");
|
|
20546
21486
|
view(n.year, n.month);
|
|
@@ -20549,7 +21489,7 @@ function SCalendar({
|
|
|
20549
21489
|
)
|
|
20550
21490
|
] })
|
|
20551
21491
|
] }),
|
|
20552
|
-
/* @__PURE__ */ jsx("div", { className: "grid grid-cols-7", children:
|
|
21492
|
+
/* @__PURE__ */ jsx("div", { className: "grid grid-cols-7", children: t.weekdays.map((label) => /* @__PURE__ */ jsx(
|
|
20553
21493
|
"span",
|
|
20554
21494
|
{
|
|
20555
21495
|
className: "flex h-[20px] items-center justify-center text-[12px] font-normal text-[color:var(--cmp-datepicker-calendar-week-color)]",
|
|
@@ -20641,11 +21581,6 @@ var modeListItemClass = (selected, disabled) => cn(
|
|
|
20641
21581
|
!disabled && !selected && "typo-field-sm-medium cursor-pointer bg-[var(--cmp-datepicker-mode-item-bg-default)] text-[color:var(--cmp-datepicker-mode-item-content-default)] hover:bg-[var(--cmp-datepicker-mode-item-bg-hover)] hover:text-[color:var(--cmp-datepicker-mode-item-content-hover)]",
|
|
20642
21582
|
!disabled && selected && "typo-field-sm-bold cursor-pointer bg-[var(--cmp-datepicker-mode-item-bg-default)] text-[color:var(--cmp-datepicker-mode-item-content-selected)]"
|
|
20643
21583
|
);
|
|
20644
|
-
var MODE_NOUN = {
|
|
20645
|
-
date: "\uB0A0\uC9DC",
|
|
20646
|
-
month: "\uC6D4",
|
|
20647
|
-
year: "\uC5F0\uB3C4"
|
|
20648
|
-
};
|
|
20649
21584
|
var YEAR_LIST_EDGE_BUFFER = 24;
|
|
20650
21585
|
var YEAR_LIST_EXPAND_SIZE = 80;
|
|
20651
21586
|
var MONTHS = Array.from({ length: 12 }, (_, i) => i + 1);
|
|
@@ -20799,6 +21734,7 @@ function SDatePickerYearListbox({
|
|
|
20799
21734
|
);
|
|
20800
21735
|
}
|
|
20801
21736
|
function MonthWheel({ year, value, selectable, onCommit }) {
|
|
21737
|
+
const t = useLocale().messages.date;
|
|
20802
21738
|
const listRef = useRef(null);
|
|
20803
21739
|
const initialValueRef = useRef(value);
|
|
20804
21740
|
useLayoutEffect(() => {
|
|
@@ -20819,7 +21755,7 @@ function MonthWheel({ year, value, selectable, onCommit }) {
|
|
|
20819
21755
|
children: MONTHS.map((month) => {
|
|
20820
21756
|
const selected = month === value;
|
|
20821
21757
|
const disabled = isMonthDisabled(year, month, selectable);
|
|
20822
|
-
return /* @__PURE__ */
|
|
21758
|
+
return /* @__PURE__ */ jsx(
|
|
20823
21759
|
"button",
|
|
20824
21760
|
{
|
|
20825
21761
|
type: "button",
|
|
@@ -20828,10 +21764,7 @@ function MonthWheel({ year, value, selectable, onCommit }) {
|
|
|
20828
21764
|
disabled,
|
|
20829
21765
|
className: modeListItemClass(selected, disabled),
|
|
20830
21766
|
onClick: () => !disabled && onCommit(month),
|
|
20831
|
-
children:
|
|
20832
|
-
month,
|
|
20833
|
-
"\uC6D4"
|
|
20834
|
-
]
|
|
21767
|
+
children: t.monthLabel(month)
|
|
20835
21768
|
},
|
|
20836
21769
|
month
|
|
20837
21770
|
);
|
|
@@ -20928,6 +21861,8 @@ function SDatePicker({
|
|
|
20928
21861
|
className,
|
|
20929
21862
|
style
|
|
20930
21863
|
}) {
|
|
21864
|
+
const runRules2 = useRunRules();
|
|
21865
|
+
const t = useLocale().messages.date;
|
|
20931
21866
|
const portalContainer = usePortalContainer();
|
|
20932
21867
|
const [open, setOpen] = useState(false);
|
|
20933
21868
|
const triggerId = useFieldControlId();
|
|
@@ -20936,11 +21871,16 @@ function SDatePicker({
|
|
|
20936
21871
|
const [ruleError, setRuleError] = useState("");
|
|
20937
21872
|
const hasValue = value != null && value !== "";
|
|
20938
21873
|
const weekday = showWeekday && mode === "date";
|
|
21874
|
+
const clearLabel = {
|
|
21875
|
+
date: t.clearDate,
|
|
21876
|
+
month: t.clearMonth,
|
|
21877
|
+
year: t.clearYear
|
|
21878
|
+
};
|
|
20939
21879
|
const resolvedPlaceholder = placeholder ?? (mode === "year" ? "YYYY" : mode === "month" ? "YYYY-MM" : "YYYY-MM-DD");
|
|
20940
21880
|
useFormField({
|
|
20941
21881
|
name,
|
|
20942
21882
|
validate: () => {
|
|
20943
|
-
const msg =
|
|
21883
|
+
const msg = runRules2(value, rules);
|
|
20944
21884
|
setRuleError(msg);
|
|
20945
21885
|
return msg === "";
|
|
20946
21886
|
},
|
|
@@ -20974,7 +21914,7 @@ function SDatePicker({
|
|
|
20974
21914
|
typo: "typo-field-sm-default",
|
|
20975
21915
|
radius: "var(--cmp-datepicker-sm-radius)"
|
|
20976
21916
|
};
|
|
20977
|
-
const weekdayW = weekday ? weekdaySuffixWidth(baseDims.fontSize) : 0;
|
|
21917
|
+
const weekdayW = weekday ? weekdaySuffixWidth(baseDims.fontSize, t) : 0;
|
|
20978
21918
|
const dims = {
|
|
20979
21919
|
...baseDims,
|
|
20980
21920
|
minW: baseDims.minW + weekdayW,
|
|
@@ -20983,16 +21923,16 @@ function SDatePicker({
|
|
|
20983
21923
|
};
|
|
20984
21924
|
const select = (date) => {
|
|
20985
21925
|
onValueChange?.(date);
|
|
20986
|
-
if (rules && rules.length > 0) setRuleError(
|
|
21926
|
+
if (rules && rules.length > 0) setRuleError(runRules2(date, rules));
|
|
20987
21927
|
setOpen(false);
|
|
20988
21928
|
};
|
|
20989
21929
|
const clear = () => {
|
|
20990
21930
|
onValueChange?.(null);
|
|
20991
|
-
if (rules && rules.length > 0) setRuleError(
|
|
21931
|
+
if (rules && rules.length > 0) setRuleError(runRules2(null, rules));
|
|
20992
21932
|
};
|
|
20993
21933
|
const selectListboxValue = (nextValue) => {
|
|
20994
21934
|
onValueChange?.(nextValue);
|
|
20995
|
-
if (rules && rules.length > 0) setRuleError(
|
|
21935
|
+
if (rules && rules.length > 0) setRuleError(runRules2(nextValue, rules));
|
|
20996
21936
|
};
|
|
20997
21937
|
return /* @__PURE__ */ jsx(
|
|
20998
21938
|
SField,
|
|
@@ -21063,7 +22003,7 @@ function SDatePicker({
|
|
|
21063
22003
|
minWidth: dims.minW,
|
|
21064
22004
|
color: disabled ? "var(--cmp-datepicker-text-disabled)" : hasValue ? "var(--cmp-datepicker-text-default)" : "var(--cmp-field-hint-color)"
|
|
21065
22005
|
},
|
|
21066
|
-
children: hasValue ? weekday ? withWeekday(value) : value : resolvedPlaceholder
|
|
22006
|
+
children: hasValue ? weekday ? withWeekday(value, t) : value : resolvedPlaceholder
|
|
21067
22007
|
}
|
|
21068
22008
|
),
|
|
21069
22009
|
clearable && hasValue && !disabled && /* @__PURE__ */ jsx(
|
|
@@ -21071,7 +22011,7 @@ function SDatePicker({
|
|
|
21071
22011
|
{
|
|
21072
22012
|
icon: "close",
|
|
21073
22013
|
size: "xxs",
|
|
21074
|
-
ariaLabel:
|
|
22014
|
+
ariaLabel: clearLabel[mode],
|
|
21075
22015
|
onClick: (event) => {
|
|
21076
22016
|
event.stopPropagation();
|
|
21077
22017
|
clear();
|
|
@@ -21140,6 +22080,7 @@ function RangeCalendar({
|
|
|
21140
22080
|
onPendingStartChange,
|
|
21141
22081
|
onViewChange
|
|
21142
22082
|
}) {
|
|
22083
|
+
const t = useLocale().messages.date;
|
|
21143
22084
|
const today = todayStr();
|
|
21144
22085
|
const initial = splitDateTime(value?.[0]);
|
|
21145
22086
|
const base = initial.date || today;
|
|
@@ -21210,8 +22151,8 @@ function RangeCalendar({
|
|
|
21210
22151
|
const RANGE_BG = "var(--cmp-datepicker-calendar-range-bg)";
|
|
21211
22152
|
const pad = (v) => String(Number(v) || 0).padStart(2, "0");
|
|
21212
22153
|
const emit3 = (dateStart, dateEnd, time) => {
|
|
21213
|
-
const
|
|
21214
|
-
const range = showTimePicker ? [`${dateStart} ${pad(
|
|
22154
|
+
const t2 = time ?? { sH, sM, eH, eM };
|
|
22155
|
+
const range = showTimePicker ? [`${dateStart} ${pad(t2.sH)}:${pad(t2.sM)}`, `${dateEnd} ${pad(t2.eH)}:${pad(t2.eM)}`] : [dateStart, dateEnd];
|
|
21215
22156
|
lastEmitted.current = JSON.stringify(range);
|
|
21216
22157
|
onSelect(range);
|
|
21217
22158
|
};
|
|
@@ -21266,7 +22207,7 @@ function RangeCalendar({
|
|
|
21266
22207
|
{
|
|
21267
22208
|
icon: "chevronLeft",
|
|
21268
22209
|
size: "xxs",
|
|
21269
|
-
ariaLabel:
|
|
22210
|
+
ariaLabel: t.prevMonth,
|
|
21270
22211
|
onClick: goPrevMonth,
|
|
21271
22212
|
className: cn(!isLeft && "invisible pointer-events-none")
|
|
21272
22213
|
}
|
|
@@ -21281,13 +22222,13 @@ function RangeCalendar({
|
|
|
21281
22222
|
{
|
|
21282
22223
|
icon: "chevronRight",
|
|
21283
22224
|
size: "xxs",
|
|
21284
|
-
ariaLabel:
|
|
22225
|
+
ariaLabel: t.nextMonth,
|
|
21285
22226
|
onClick: goNextMonth,
|
|
21286
22227
|
className: cn(isLeft && "invisible pointer-events-none")
|
|
21287
22228
|
}
|
|
21288
22229
|
)
|
|
21289
22230
|
] }),
|
|
21290
|
-
/* @__PURE__ */ jsx("div", { className: GRID_COLS, children:
|
|
22231
|
+
/* @__PURE__ */ jsx("div", { className: GRID_COLS, children: t.weekdays.map((l) => /* @__PURE__ */ jsx(
|
|
21291
22232
|
"span",
|
|
21292
22233
|
{
|
|
21293
22234
|
className: "flex h-[20px] items-center justify-center text-[12px] font-normal text-[color:var(--cmp-datepicker-calendar-week-color)]",
|
|
@@ -21352,11 +22293,11 @@ function RangeCalendar({
|
|
|
21352
22293
|
children: [
|
|
21353
22294
|
/* @__PURE__ */ jsxs("div", { className: "inline-flex items-center gap-[var(--cmp-datepicker-calendar-time-date-gap)]", children: [
|
|
21354
22295
|
/* @__PURE__ */ jsx("span", { className: LABEL, children: num(yy, false) }),
|
|
21355
|
-
/* @__PURE__ */ jsx("span", { className: UNIT, children:
|
|
22296
|
+
/* @__PURE__ */ jsx("span", { className: UNIT, children: t.unitYear }),
|
|
21356
22297
|
/* @__PURE__ */ jsx("span", { className: LABEL, children: num(mm, true) }),
|
|
21357
|
-
/* @__PURE__ */ jsx("span", { className: UNIT, children:
|
|
22298
|
+
/* @__PURE__ */ jsx("span", { className: UNIT, children: t.unitMonth }),
|
|
21358
22299
|
/* @__PURE__ */ jsx("span", { className: LABEL, children: num(dd, true) }),
|
|
21359
|
-
/* @__PURE__ */ jsx("span", { className: UNIT, children:
|
|
22300
|
+
t.unitDay && /* @__PURE__ */ jsx("span", { className: UNIT, children: t.unitDay })
|
|
21360
22301
|
] }),
|
|
21361
22302
|
/* @__PURE__ */ jsxs("div", { className: "inline-flex items-center gap-[var(--cmp-datepicker-calendar-time-unit-gap)]", children: [
|
|
21362
22303
|
/* @__PURE__ */ jsx(
|
|
@@ -21365,7 +22306,7 @@ function RangeCalendar({
|
|
|
21365
22306
|
type: "text",
|
|
21366
22307
|
inputMode: "numeric",
|
|
21367
22308
|
maxLength: 2,
|
|
21368
|
-
"aria-label":
|
|
22309
|
+
"aria-label": t.hourAria(suffix),
|
|
21369
22310
|
disabled: !active,
|
|
21370
22311
|
value: active ? hour : "",
|
|
21371
22312
|
placeholder: "--",
|
|
@@ -21381,7 +22322,7 @@ function RangeCalendar({
|
|
|
21381
22322
|
type: "text",
|
|
21382
22323
|
inputMode: "numeric",
|
|
21383
22324
|
maxLength: 2,
|
|
21384
|
-
"aria-label":
|
|
22325
|
+
"aria-label": t.minuteAria(suffix),
|
|
21385
22326
|
disabled: !active,
|
|
21386
22327
|
value: active ? minute : "",
|
|
21387
22328
|
placeholder: "--",
|
|
@@ -21409,9 +22350,17 @@ function RangeCalendar({
|
|
|
21409
22350
|
children: [
|
|
21410
22351
|
/* @__PURE__ */ jsxs("div", { className: "relative flex items-center justify-center", children: [
|
|
21411
22352
|
/* @__PURE__ */ jsxs("div", { className: "flex items-center justify-center gap-[var(--cmp-datepicker-calendar-gap)] typo-field-md-medium", children: [
|
|
21412
|
-
/* @__PURE__ */ jsx(SGhostButton, { icon: "chevronLeft", size: "xxs", ariaLabel:
|
|
22353
|
+
/* @__PURE__ */ jsx(SGhostButton, { icon: "chevronLeft", size: "xxs", ariaLabel: t.prevYear, onClick: goPrevYear }),
|
|
21413
22354
|
/* @__PURE__ */ jsx("span", { className: "inline-flex min-w-[40px] items-center justify-center text-center", children: y }),
|
|
21414
|
-
/* @__PURE__ */ jsx(
|
|
22355
|
+
/* @__PURE__ */ jsx(
|
|
22356
|
+
SGhostButton,
|
|
22357
|
+
{
|
|
22358
|
+
icon: "chevronRight",
|
|
22359
|
+
size: "xxs",
|
|
22360
|
+
ariaLabel: t.nextYear,
|
|
22361
|
+
onClick: goNextYear
|
|
22362
|
+
}
|
|
22363
|
+
)
|
|
21415
22364
|
] }),
|
|
21416
22365
|
/* @__PURE__ */ jsx(
|
|
21417
22366
|
"button",
|
|
@@ -21419,7 +22368,7 @@ function RangeCalendar({
|
|
|
21419
22368
|
type: "button",
|
|
21420
22369
|
onClick: goToday,
|
|
21421
22370
|
className: "absolute right-0 h-[24px] min-w-[37px] cursor-pointer bg-transparent text-center text-[12px] font-medium leading-[24px] text-[color:var(--cmp-datepicker-calendar-day-default-text)] hover:underline",
|
|
21422
|
-
children:
|
|
22371
|
+
children: t.today
|
|
21423
22372
|
}
|
|
21424
22373
|
)
|
|
21425
22374
|
] }),
|
|
@@ -21440,8 +22389,8 @@ function RangeCalendar({
|
|
|
21440
22389
|
showTimePicker && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
21441
22390
|
/* @__PURE__ */ jsx(SDivider, {}),
|
|
21442
22391
|
/* @__PURE__ */ jsxs("div", { className: "flex gap-[var(--cmp-datepicker-calendar-time-gap)]", children: [
|
|
21443
|
-
renderTimeSection("start", start,
|
|
21444
|
-
renderTimeSection("end", end,
|
|
22392
|
+
renderTimeSection("start", start, t.rangeFrom),
|
|
22393
|
+
renderTimeSection("end", end, t.rangeTo)
|
|
21445
22394
|
] })
|
|
21446
22395
|
] })
|
|
21447
22396
|
]
|
|
@@ -21481,6 +22430,8 @@ function SDateRangePicker({
|
|
|
21481
22430
|
className,
|
|
21482
22431
|
style
|
|
21483
22432
|
}) {
|
|
22433
|
+
const runRules2 = useRunRules();
|
|
22434
|
+
const t = useLocale().messages.date;
|
|
21484
22435
|
const portalContainer = usePortalContainer();
|
|
21485
22436
|
const [open, setOpen] = useState(false);
|
|
21486
22437
|
const triggerId = useFieldControlId();
|
|
@@ -21491,12 +22442,12 @@ function SDateRangePicker({
|
|
|
21491
22442
|
const hasDisplay = pendingStart != null || hasValue;
|
|
21492
22443
|
const rawStart = pendingStart ?? (hasValue ? value[0] : "");
|
|
21493
22444
|
const rawEnd = pendingStart ? "" : hasValue ? value[1] : "";
|
|
21494
|
-
const startText = showWeekday && rawStart ? withWeekday(rawStart) : rawStart;
|
|
21495
|
-
const endText = showWeekday && rawEnd ? withWeekday(rawEnd) : rawEnd;
|
|
22445
|
+
const startText = showWeekday && rawStart ? withWeekday(rawStart, t) : rawStart;
|
|
22446
|
+
const endText = showWeekday && rawEnd ? withWeekday(rawEnd, t) : rawEnd;
|
|
21496
22447
|
useFormField({
|
|
21497
22448
|
name,
|
|
21498
22449
|
validate: () => {
|
|
21499
|
-
const msg =
|
|
22450
|
+
const msg = runRules2(value, rules);
|
|
21500
22451
|
setRuleError(msg);
|
|
21501
22452
|
return msg === "";
|
|
21502
22453
|
},
|
|
@@ -21529,7 +22480,7 @@ function SDateRangePicker({
|
|
|
21529
22480
|
typo: "typo-field-sm-default",
|
|
21530
22481
|
radius: "var(--cmp-datepicker-sm-radius)"
|
|
21531
22482
|
};
|
|
21532
|
-
const weekdayW = showWeekday ? weekdaySuffixWidth(baseDims.fontSize) * 2 : 0;
|
|
22483
|
+
const weekdayW = showWeekday ? weekdaySuffixWidth(baseDims.fontSize, t) * 2 : 0;
|
|
21533
22484
|
const dims = {
|
|
21534
22485
|
...baseDims,
|
|
21535
22486
|
minW: baseDims.minW + weekdayW,
|
|
@@ -21539,13 +22490,13 @@ function SDateRangePicker({
|
|
|
21539
22490
|
const select = (r3) => {
|
|
21540
22491
|
setPendingStart(null);
|
|
21541
22492
|
onValueChange?.(r3);
|
|
21542
|
-
if (rules && rules.length > 0) setRuleError(
|
|
22493
|
+
if (rules && rules.length > 0) setRuleError(runRules2(r3, rules));
|
|
21543
22494
|
if (!showTimePicker) setOpen(false);
|
|
21544
22495
|
};
|
|
21545
22496
|
const clear = () => {
|
|
21546
22497
|
setPendingStart(null);
|
|
21547
22498
|
onValueChange?.(null);
|
|
21548
|
-
if (rules && rules.length > 0) setRuleError(
|
|
22499
|
+
if (rules && rules.length > 0) setRuleError(runRules2(null, rules));
|
|
21549
22500
|
};
|
|
21550
22501
|
const resolvedPlaceholder = showTimePicker && placeholder === "YYYY-MM-DD ~ YYYY-MM-DD" ? "YYYY-MM-DD HH:mm ~ YYYY-MM-DD HH:mm" : placeholder;
|
|
21551
22502
|
return /* @__PURE__ */ jsx(
|
|
@@ -21640,7 +22591,7 @@ function SDateRangePicker({
|
|
|
21640
22591
|
{
|
|
21641
22592
|
icon: "close",
|
|
21642
22593
|
size: "xxs",
|
|
21643
|
-
ariaLabel:
|
|
22594
|
+
ariaLabel: t.clearPeriod,
|
|
21644
22595
|
onClick: (event) => {
|
|
21645
22596
|
event.stopPropagation();
|
|
21646
22597
|
clear();
|
|
@@ -21708,6 +22659,7 @@ var SChipImpl = /* @__PURE__ */ forwardRef(function SChip({
|
|
|
21708
22659
|
className,
|
|
21709
22660
|
style
|
|
21710
22661
|
}, ref) {
|
|
22662
|
+
const runRules2 = useRunRules();
|
|
21711
22663
|
const [editing, setEditing] = useState(false);
|
|
21712
22664
|
const [error, setError] = useState(errorProp);
|
|
21713
22665
|
const inputRef = useRef(null);
|
|
@@ -21748,7 +22700,7 @@ var SChipImpl = /* @__PURE__ */ forwardRef(function SChip({
|
|
|
21748
22700
|
const changed = next !== draftRef.current;
|
|
21749
22701
|
setEditing(false);
|
|
21750
22702
|
if (changed) onValueChange?.(next);
|
|
21751
|
-
if (rules && rules.length > 0) setError(
|
|
22703
|
+
if (rules && rules.length > 0) setError(runRules2(next, rules) !== "");
|
|
21752
22704
|
onBlur?.();
|
|
21753
22705
|
};
|
|
21754
22706
|
const cancel = () => {
|
|
@@ -21879,6 +22831,7 @@ function SFilePicker({
|
|
|
21879
22831
|
className,
|
|
21880
22832
|
style
|
|
21881
22833
|
}) {
|
|
22834
|
+
const runRules2 = useRunRules();
|
|
21882
22835
|
const autoId = useId();
|
|
21883
22836
|
const resolvedName = name ?? autoId;
|
|
21884
22837
|
const triggerId = `${autoId}-trigger`;
|
|
@@ -21894,7 +22847,7 @@ function SFilePicker({
|
|
|
21894
22847
|
useFormField({
|
|
21895
22848
|
name,
|
|
21896
22849
|
validate: () => {
|
|
21897
|
-
const msg =
|
|
22850
|
+
const msg = runRules2(files, rules);
|
|
21898
22851
|
setRuleError(msg);
|
|
21899
22852
|
return msg === "";
|
|
21900
22853
|
},
|
|
@@ -21926,7 +22879,7 @@ function SFilePicker({
|
|
|
21926
22879
|
}
|
|
21927
22880
|
const merged = [...existing, ...accepted];
|
|
21928
22881
|
onValueChange?.(merged);
|
|
21929
|
-
if (rules?.length) setRuleError(
|
|
22882
|
+
if (rules?.length) setRuleError(runRules2(merged, rules));
|
|
21930
22883
|
} else {
|
|
21931
22884
|
const { accepted, rejected, reason } = validate(arr);
|
|
21932
22885
|
if (reason) {
|
|
@@ -21934,7 +22887,7 @@ function SFilePicker({
|
|
|
21934
22887
|
return;
|
|
21935
22888
|
}
|
|
21936
22889
|
onValueChange?.(accepted[0]);
|
|
21937
|
-
if (rules?.length) setRuleError(
|
|
22890
|
+
if (rules?.length) setRuleError(runRules2(accepted[0], rules));
|
|
21938
22891
|
}
|
|
21939
22892
|
};
|
|
21940
22893
|
const clear = (e) => {
|
|
@@ -22094,6 +23047,7 @@ function SKeyValueTable({
|
|
|
22094
23047
|
className,
|
|
22095
23048
|
style
|
|
22096
23049
|
}) {
|
|
23050
|
+
const tc = useLocale().messages.common;
|
|
22097
23051
|
if (fields.length === 0) return null;
|
|
22098
23052
|
const emit3 = (name, value) => onChange?.({
|
|
22099
23053
|
name,
|
|
@@ -22271,7 +23225,7 @@ function SKeyValueTable({
|
|
|
22271
23225
|
{
|
|
22272
23226
|
className: "flex flex-shrink-0 items-center justify-center border-l border-solid border-[color:var(--cmp-table-border-color)] px-[var(--cmp-table-keyValue-search-paddingX)]",
|
|
22273
23227
|
style: { background: "var(--cmp-table-keyValue-search-bg)" },
|
|
22274
|
-
children: /* @__PURE__ */ jsx(SButton, { color: "neutral", outline: true, size: "md", label:
|
|
23228
|
+
children: /* @__PURE__ */ jsx(SButton, { color: "neutral", outline: true, size: "md", label: tc.search, onClick: () => onSearch?.() })
|
|
22275
23229
|
}
|
|
22276
23230
|
)
|
|
22277
23231
|
] });
|
|
@@ -22565,6 +23519,7 @@ function ChartRotatedCategoryLabels({
|
|
|
22565
23519
|
);
|
|
22566
23520
|
}
|
|
22567
23521
|
var ChartFrame = /* @__PURE__ */ forwardRef(function ChartFrame2({ title, unit, legend, legendPosition = "top", children, className, style, ...props }, ref) {
|
|
23522
|
+
const t = useLocale().messages.chart;
|
|
22568
23523
|
return /* @__PURE__ */ jsxs(
|
|
22569
23524
|
"div",
|
|
22570
23525
|
{
|
|
@@ -22580,10 +23535,7 @@ var ChartFrame = /* @__PURE__ */ forwardRef(function ChartFrame2({ title, unit,
|
|
|
22580
23535
|
(title || unit) && /* @__PURE__ */ jsxs("div", { className: "flex items-center gap-(--cmp-chart-gap)", children: [
|
|
22581
23536
|
title && /* @__PURE__ */ jsx("span", { className: "typo-body-md-medium text-(--cmp-chart-title-color)", children: title }),
|
|
22582
23537
|
unit && // ml-auto — title 유무와 관계없이 항상 오른쪽 끝에 붙는다.
|
|
22583
|
-
/* @__PURE__ */
|
|
22584
|
-
"\uB2E8\uC704 : ",
|
|
22585
|
-
unit
|
|
22586
|
-
] })
|
|
23538
|
+
/* @__PURE__ */ jsx("span", { className: "ml-auto whitespace-nowrap typo-body-sm-default text-(--cmp-chart-unit-color)", children: t.unit(unit) })
|
|
22587
23539
|
] }),
|
|
22588
23540
|
legend && legendPosition === "top" && legend,
|
|
22589
23541
|
children,
|
|
@@ -22927,6 +23879,7 @@ var SBarChart = /* @__PURE__ */ forwardRef(function SBarChart2({
|
|
|
22927
23879
|
className,
|
|
22928
23880
|
style
|
|
22929
23881
|
}, ref) {
|
|
23882
|
+
const t = useLocale().messages.chart;
|
|
22930
23883
|
const vertical = direction === "vertical";
|
|
22931
23884
|
const rotateLabels = rotateCategoryLabels && vertical;
|
|
22932
23885
|
const { ref: plotRef, size } = useElementSize();
|
|
@@ -23304,7 +24257,7 @@ var SBarChart = /* @__PURE__ */ forwardRef(function SBarChart2({
|
|
|
23304
24257
|
width: size.width,
|
|
23305
24258
|
height: size.height,
|
|
23306
24259
|
role: "img",
|
|
23307
|
-
"aria-label":
|
|
24260
|
+
"aria-label": t.barSummary(categories.length, series.length, !!stacked),
|
|
23308
24261
|
children: [
|
|
23309
24262
|
/* @__PURE__ */ jsx(
|
|
23310
24263
|
"text",
|
|
@@ -23554,6 +24507,7 @@ var SLineChart = /* @__PURE__ */ forwardRef(function SLineChart2({
|
|
|
23554
24507
|
className,
|
|
23555
24508
|
style
|
|
23556
24509
|
}, ref) {
|
|
24510
|
+
const t = useLocale().messages.chart;
|
|
23557
24511
|
const smooth = curve === "smooth";
|
|
23558
24512
|
const { ref: plotRef, size } = useElementSize();
|
|
23559
24513
|
const { ref: axisTextRef, size: axisText } = useElementSize(rotateCategoryLabels);
|
|
@@ -23880,7 +24834,7 @@ var SLineChart = /* @__PURE__ */ forwardRef(function SLineChart2({
|
|
|
23880
24834
|
height: size.height,
|
|
23881
24835
|
overflow: "visible",
|
|
23882
24836
|
role: "img",
|
|
23883
|
-
"aria-label":
|
|
24837
|
+
"aria-label": t.lineSummary(categories.length, series.length, !!stacked),
|
|
23884
24838
|
children: [
|
|
23885
24839
|
/* @__PURE__ */ jsx(
|
|
23886
24840
|
"text",
|
|
@@ -24064,6 +25018,7 @@ var RadialChart = /* @__PURE__ */ forwardRef(function RadialChart2({
|
|
|
24064
25018
|
innerRatio,
|
|
24065
25019
|
kind
|
|
24066
25020
|
}, ref) {
|
|
25021
|
+
const t = useLocale().messages.chart;
|
|
24067
25022
|
const { ref: plotRef, size } = useElementSize();
|
|
24068
25023
|
const [hovered, setHovered] = useState(null);
|
|
24069
25024
|
const arcs = useMemo(() => {
|
|
@@ -24142,7 +25097,7 @@ var RadialChart = /* @__PURE__ */ forwardRef(function RadialChart2({
|
|
|
24142
25097
|
height: diameter,
|
|
24143
25098
|
overflow: "visible",
|
|
24144
25099
|
role: "img",
|
|
24145
|
-
"aria-label":
|
|
25100
|
+
"aria-label": t.radialSummary(arcs.length, t[kind]),
|
|
24146
25101
|
onMouseLeave: () => setHovered(null),
|
|
24147
25102
|
children: [
|
|
24148
25103
|
arcs.length === 0 ? (
|
|
@@ -24256,7 +25211,7 @@ var SPieChart = /* @__PURE__ */ forwardRef(function SPieChart2({
|
|
|
24256
25211
|
legendPosition,
|
|
24257
25212
|
showTooltip,
|
|
24258
25213
|
innerRatio: 0,
|
|
24259
|
-
kind: "
|
|
25214
|
+
kind: "pie"
|
|
24260
25215
|
}
|
|
24261
25216
|
);
|
|
24262
25217
|
});
|
|
@@ -24281,7 +25236,7 @@ var SDonutChart = /* @__PURE__ */ forwardRef(function SDonutChart2({
|
|
|
24281
25236
|
legendVariant,
|
|
24282
25237
|
showTooltip,
|
|
24283
25238
|
innerRatio: DONUT_INNER_RATIO,
|
|
24284
|
-
kind: "
|
|
25239
|
+
kind: "donut"
|
|
24285
25240
|
}
|
|
24286
25241
|
);
|
|
24287
25242
|
});
|
|
@@ -24741,7 +25696,9 @@ var SSkeleton = /* @__PURE__ */ forwardRef(function SSkeleton2({
|
|
|
24741
25696
|
}
|
|
24742
25697
|
);
|
|
24743
25698
|
});
|
|
24744
|
-
var STimelineImpl = /* @__PURE__ */ forwardRef(function STimeline({ groups, emptyText
|
|
25699
|
+
var STimelineImpl = /* @__PURE__ */ forwardRef(function STimeline({ groups, emptyText: emptyTextProp, className, ...rest }, ref) {
|
|
25700
|
+
const t = useLocale().messages.timeline;
|
|
25701
|
+
const emptyText = emptyTextProp === void 0 ? t.empty : emptyTextProp;
|
|
24745
25702
|
const filled = groups.filter((group) => group.entries.length > 0);
|
|
24746
25703
|
if (filled.length === 0) {
|
|
24747
25704
|
return /* @__PURE__ */ jsx(
|
|
@@ -25626,14 +26583,14 @@ var SEDITOR_HEADING_LABELS = {
|
|
|
25626
26583
|
var SEDITOR_FONT_SIZES = [8, 9, 10, 11, 12, 14, 16, 18, 24, 30, 36, 48, 60, 72];
|
|
25627
26584
|
var SEDITOR_DEFAULT_FONT_SIZE = 12;
|
|
25628
26585
|
var SEDITOR_DEFAULT_COLORS = [
|
|
25629
|
-
{ label: "\uAE30\uBCF8", color: "var(--color-fg-primary)" },
|
|
25630
|
-
{ label: "\uBCF4\uC870", color: "var(--color-fg-secondary)" },
|
|
25631
|
-
{ label: "\uD750\uB9BC", color: "var(--color-fg-tertiary)" },
|
|
25632
|
-
{ label: "\uAC15\uC870", color: "var(--color-fg-accent)" },
|
|
25633
|
-
{ label: "\uBE0C\uB79C\uB4DC", color: "var(--color-fg-brand)" },
|
|
25634
|
-
{ label: "\uC131\uACF5", color: "var(--color-fg-success)" },
|
|
25635
|
-
{ label: "\uC8FC\uC758", color: "var(--color-fg-warning)" },
|
|
25636
|
-
{ label: "\uC704\uD5D8", color: "var(--color-fg-danger)" }
|
|
26586
|
+
{ key: "colorDefault", label: "\uAE30\uBCF8", color: "var(--color-fg-primary)" },
|
|
26587
|
+
{ key: "colorSecondary", label: "\uBCF4\uC870", color: "var(--color-fg-secondary)" },
|
|
26588
|
+
{ key: "colorMuted", label: "\uD750\uB9BC", color: "var(--color-fg-tertiary)" },
|
|
26589
|
+
{ key: "colorAccent", label: "\uAC15\uC870", color: "var(--color-fg-accent)" },
|
|
26590
|
+
{ key: "colorBrand", label: "\uBE0C\uB79C\uB4DC", color: "var(--color-fg-brand)" },
|
|
26591
|
+
{ key: "colorSuccess", label: "\uC131\uACF5", color: "var(--color-fg-success)" },
|
|
26592
|
+
{ key: "colorWarning", label: "\uC8FC\uC758", color: "var(--color-fg-warning)" },
|
|
26593
|
+
{ key: "colorDanger", label: "\uC704\uD5D8", color: "var(--color-fg-danger)" }
|
|
25637
26594
|
];
|
|
25638
26595
|
var TASK_LIST_CLASS = "sd-editor-task-list";
|
|
25639
26596
|
var TASK_ITEM_CLASS = "sd-editor-task-item";
|
|
@@ -25774,7 +26731,6 @@ var scrollMenuClass = cn(
|
|
|
25774
26731
|
FLOATING_SLIDE_ANIM,
|
|
25775
26732
|
SCROLLBAR_CLASS
|
|
25776
26733
|
);
|
|
25777
|
-
var FONT_SIZE_DEFAULT_LABEL = "\uAE30\uBCF8";
|
|
25778
26734
|
var FONT_SIZE_MENU_MAX_HEIGHT = "min(280px, var(--radix-dropdown-menu-content-available-height))";
|
|
25779
26735
|
var swatchClass = cn(
|
|
25780
26736
|
"flex h-[24px] w-[24px] cursor-pointer items-center justify-center rounded-[4px] outline-none",
|
|
@@ -25842,6 +26798,7 @@ var TableSizePicker = ({
|
|
|
25842
26798
|
disabled,
|
|
25843
26799
|
onPick
|
|
25844
26800
|
}) => {
|
|
26801
|
+
const t = useLocale().messages.editor;
|
|
25845
26802
|
const [size, setSize] = useState({ rows: 1, cols: 1 });
|
|
25846
26803
|
const gridRef = useRef(null);
|
|
25847
26804
|
useEffect(() => {
|
|
@@ -25860,7 +26817,7 @@ var TableSizePicker = ({
|
|
|
25860
26817
|
{
|
|
25861
26818
|
ref: gridRef,
|
|
25862
26819
|
role: "grid",
|
|
25863
|
-
"aria-label":
|
|
26820
|
+
"aria-label": t.tableSize,
|
|
25864
26821
|
"aria-disabled": disabled || void 0,
|
|
25865
26822
|
tabIndex: disabled ? -1 : 0,
|
|
25866
26823
|
className: cn("flex flex-col outline-none", disabled && "pointer-events-none opacity-40"),
|
|
@@ -25892,7 +26849,7 @@ var TableSizePicker = ({
|
|
|
25892
26849
|
{
|
|
25893
26850
|
type: "button",
|
|
25894
26851
|
role: "gridcell",
|
|
25895
|
-
"aria-label":
|
|
26852
|
+
"aria-label": t.tableCell(r3 + 1, c + 1),
|
|
25896
26853
|
"aria-selected": on,
|
|
25897
26854
|
tabIndex: -1,
|
|
25898
26855
|
className: "box-border cursor-pointer rounded-[3px] border border-solid p-0 outline-none",
|
|
@@ -25911,17 +26868,12 @@ var TableSizePicker = ({
|
|
|
25911
26868
|
}) }, r3))
|
|
25912
26869
|
}
|
|
25913
26870
|
),
|
|
25914
|
-
/* @__PURE__ */
|
|
26871
|
+
/* @__PURE__ */ jsx(
|
|
25915
26872
|
"div",
|
|
25916
26873
|
{
|
|
25917
26874
|
"aria-live": "polite",
|
|
25918
26875
|
className: "mt-[6px] text-center text-[12px] leading-[20px] text-[color:var(--sys-color-fg-secondary)]",
|
|
25919
|
-
children:
|
|
25920
|
-
size.rows,
|
|
25921
|
-
"\uD589 \xD7 ",
|
|
25922
|
-
size.cols,
|
|
25923
|
-
"\uC5F4"
|
|
25924
|
-
]
|
|
26876
|
+
children: t.tableSizeText(size.rows, size.cols)
|
|
25925
26877
|
}
|
|
25926
26878
|
)
|
|
25927
26879
|
] });
|
|
@@ -25945,27 +26897,30 @@ var LinkEditor = ({
|
|
|
25945
26897
|
onApply,
|
|
25946
26898
|
onRemove,
|
|
25947
26899
|
hasLink
|
|
25948
|
-
}) =>
|
|
25949
|
-
|
|
25950
|
-
|
|
25951
|
-
|
|
25952
|
-
|
|
25953
|
-
|
|
25954
|
-
|
|
25955
|
-
|
|
25956
|
-
|
|
25957
|
-
|
|
25958
|
-
|
|
25959
|
-
|
|
25960
|
-
|
|
25961
|
-
|
|
26900
|
+
}) => {
|
|
26901
|
+
const t = useLocale().messages.editor;
|
|
26902
|
+
return /* @__PURE__ */ jsxs("div", { className: "flex min-w-0 items-center gap-[8px]", children: [
|
|
26903
|
+
/* @__PURE__ */ jsx(
|
|
26904
|
+
SInput,
|
|
26905
|
+
{
|
|
26906
|
+
value: href,
|
|
26907
|
+
onValueChange: onHrefChange,
|
|
26908
|
+
type: "url",
|
|
26909
|
+
placeholder: "https://",
|
|
26910
|
+
width: "md",
|
|
26911
|
+
"aria-label": t.linkUrl,
|
|
26912
|
+
onKeyDown: (e) => {
|
|
26913
|
+
if (e.key === "Enter") {
|
|
26914
|
+
e.preventDefault();
|
|
26915
|
+
onApply();
|
|
26916
|
+
}
|
|
25962
26917
|
}
|
|
25963
26918
|
}
|
|
25964
|
-
|
|
25965
|
-
|
|
25966
|
-
|
|
25967
|
-
|
|
25968
|
-
|
|
26919
|
+
),
|
|
26920
|
+
/* @__PURE__ */ jsx(SButton, { size: "sm", label: t.apply, onClick: onApply }),
|
|
26921
|
+
hasLink && /* @__PURE__ */ jsx(SButton, { size: "sm", color: "neutral", outline: true, label: t.remove, onClick: onRemove })
|
|
26922
|
+
] });
|
|
26923
|
+
};
|
|
25969
26924
|
var TOOLBAR_BAR_CLASS = "sticky top-0 z-[1] flex flex-wrap items-center gap-[2px] border-b border-solid bg-inherit px-[8px] py-[4px]";
|
|
25970
26925
|
var TOOLBAR_BAR_STYLE = { borderBottomColor: "var(--sys-color-border-default)" };
|
|
25971
26926
|
var BUBBLE_BAR_CLASS = cn(
|
|
@@ -26032,6 +26987,11 @@ function EditorToolbarBar({
|
|
|
26032
26987
|
disabled,
|
|
26033
26988
|
variant = "bar"
|
|
26034
26989
|
}) {
|
|
26990
|
+
const t = useLocale().messages.editor;
|
|
26991
|
+
const colorOptions = useMemo(
|
|
26992
|
+
() => SEDITOR_DEFAULT_COLORS.map((option) => ({ color: option.color, label: t[option.key] })),
|
|
26993
|
+
[t]
|
|
26994
|
+
);
|
|
26035
26995
|
const portalContainer = usePortalContainer();
|
|
26036
26996
|
const insideModal = useInsideModal();
|
|
26037
26997
|
const isMobile = useIsMobile();
|
|
@@ -26102,7 +27062,7 @@ function EditorToolbarBar({
|
|
|
26102
27062
|
/* @__PURE__ */ jsx(RDropdown5.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsxs(
|
|
26103
27063
|
ToolbarButton,
|
|
26104
27064
|
{
|
|
26105
|
-
label:
|
|
27065
|
+
label: t.headingLevel,
|
|
26106
27066
|
active: state2.heading !== 0,
|
|
26107
27067
|
disabled: off,
|
|
26108
27068
|
className: "px-[4px]",
|
|
@@ -26118,7 +27078,7 @@ function EditorToolbarBar({
|
|
|
26118
27078
|
{
|
|
26119
27079
|
className: menuItemClass,
|
|
26120
27080
|
onSelect: () => chain()?.setParagraph().run(),
|
|
26121
|
-
children:
|
|
27081
|
+
children: t.headingBody
|
|
26122
27082
|
}
|
|
26123
27083
|
),
|
|
26124
27084
|
SEDITOR_HEADING_LEVELS.map((level) => /* @__PURE__ */ jsx(
|
|
@@ -26126,7 +27086,7 @@ function EditorToolbarBar({
|
|
|
26126
27086
|
{
|
|
26127
27087
|
className: menuItemClass,
|
|
26128
27088
|
onSelect: () => chain()?.setHeading({ level }).run(),
|
|
26129
|
-
children: /* @__PURE__ */ jsx("span", { className: HEADING_ITEM_CLASS[level], children:
|
|
27089
|
+
children: /* @__PURE__ */ jsx("span", { className: HEADING_ITEM_CLASS[level], children: t.heading(level) })
|
|
26130
27090
|
},
|
|
26131
27091
|
level
|
|
26132
27092
|
))
|
|
@@ -26134,8 +27094,8 @@ function EditorToolbarBar({
|
|
|
26134
27094
|
] }, item4);
|
|
26135
27095
|
case "fontSize":
|
|
26136
27096
|
return /* @__PURE__ */ jsxs(RDropdown5.Root, { modal: !insideModal, children: [
|
|
26137
|
-
/* @__PURE__ */ jsx(RDropdown5.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsxs(ToolbarButton, { label:
|
|
26138
|
-
/* @__PURE__ */ jsx("span", { className: "text-[12px] leading-[20px]", children: activeFontSize ??
|
|
27097
|
+
/* @__PURE__ */ jsx(RDropdown5.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsxs(ToolbarButton, { label: t.fontSize, disabled: off, className: "px-[6px]", children: [
|
|
27098
|
+
/* @__PURE__ */ jsx("span", { className: "text-[12px] leading-[20px]", children: activeFontSize ?? t.fontSizeDefaultLabel }),
|
|
26139
27099
|
/* @__PURE__ */ jsx(SIcon, { name: "caretDown", size: 12 })
|
|
26140
27100
|
] }) }),
|
|
26141
27101
|
/* @__PURE__ */ jsx(RDropdown5.Portal, { container: portalContainer, children: /* @__PURE__ */ jsxs(
|
|
@@ -26150,9 +27110,9 @@ function EditorToolbarBar({
|
|
|
26150
27110
|
RDropdown5.Item,
|
|
26151
27111
|
{
|
|
26152
27112
|
className: cn(menuItemClass, activeFontSize === null && menuItemSelectedClass),
|
|
26153
|
-
title:
|
|
27113
|
+
title: t.fontSizeDefault(SEDITOR_DEFAULT_FONT_SIZE),
|
|
26154
27114
|
onSelect: () => chain()?.unsetFontSize().run(),
|
|
26155
|
-
children:
|
|
27115
|
+
children: t.fontSizeDefaultLabel
|
|
26156
27116
|
}
|
|
26157
27117
|
),
|
|
26158
27118
|
SEDITOR_FONT_SIZES.map((size) => /* @__PURE__ */ jsx(
|
|
@@ -26175,7 +27135,7 @@ function EditorToolbarBar({
|
|
|
26175
27135
|
return /* @__PURE__ */ jsx(
|
|
26176
27136
|
ToolbarButton,
|
|
26177
27137
|
{
|
|
26178
|
-
label:
|
|
27138
|
+
label: t.bold,
|
|
26179
27139
|
active: state2.bold,
|
|
26180
27140
|
"aria-pressed": state2.bold,
|
|
26181
27141
|
disabled: off,
|
|
@@ -26188,7 +27148,7 @@ function EditorToolbarBar({
|
|
|
26188
27148
|
return /* @__PURE__ */ jsx(
|
|
26189
27149
|
ToolbarButton,
|
|
26190
27150
|
{
|
|
26191
|
-
label:
|
|
27151
|
+
label: t.italic,
|
|
26192
27152
|
active: state2.italic,
|
|
26193
27153
|
"aria-pressed": state2.italic,
|
|
26194
27154
|
disabled: off,
|
|
@@ -26201,7 +27161,7 @@ function EditorToolbarBar({
|
|
|
26201
27161
|
return /* @__PURE__ */ jsx(
|
|
26202
27162
|
ToolbarButton,
|
|
26203
27163
|
{
|
|
26204
|
-
label:
|
|
27164
|
+
label: t.underline,
|
|
26205
27165
|
active: state2.underline,
|
|
26206
27166
|
"aria-pressed": state2.underline,
|
|
26207
27167
|
disabled: off,
|
|
@@ -26214,7 +27174,7 @@ function EditorToolbarBar({
|
|
|
26214
27174
|
return /* @__PURE__ */ jsx(
|
|
26215
27175
|
ToolbarButton,
|
|
26216
27176
|
{
|
|
26217
|
-
label:
|
|
27177
|
+
label: t.strike,
|
|
26218
27178
|
active: state2.strike,
|
|
26219
27179
|
"aria-pressed": state2.strike,
|
|
26220
27180
|
disabled: off,
|
|
@@ -26227,7 +27187,7 @@ function EditorToolbarBar({
|
|
|
26227
27187
|
return /* @__PURE__ */ jsx(
|
|
26228
27188
|
ToolbarButton,
|
|
26229
27189
|
{
|
|
26230
|
-
label:
|
|
27190
|
+
label: t.inlineCode,
|
|
26231
27191
|
active: state2.code,
|
|
26232
27192
|
"aria-pressed": state2.code,
|
|
26233
27193
|
disabled: off,
|
|
@@ -26241,7 +27201,7 @@ function EditorToolbarBar({
|
|
|
26241
27201
|
return /* @__PURE__ */ jsx(
|
|
26242
27202
|
ToolbarButton,
|
|
26243
27203
|
{
|
|
26244
|
-
label:
|
|
27204
|
+
label: t.textColor,
|
|
26245
27205
|
disabled: off,
|
|
26246
27206
|
onClick: () => setMobileView("color"),
|
|
26247
27207
|
children: /* @__PURE__ */ jsx(ColorIndicator, { color: off ? "currentColor" : activeColor, children: /* @__PURE__ */ jsx(IconTextColor, { size: ICON_SIZE }) })
|
|
@@ -26249,14 +27209,14 @@ function EditorToolbarBar({
|
|
|
26249
27209
|
item4
|
|
26250
27210
|
);
|
|
26251
27211
|
return /* @__PURE__ */ jsxs(RDropdown5.Root, { modal: !insideModal, children: [
|
|
26252
|
-
/* @__PURE__ */ jsx(RDropdown5.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsx(ToolbarButton, { label:
|
|
27212
|
+
/* @__PURE__ */ jsx(RDropdown5.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsx(ToolbarButton, { label: t.textColor, disabled: off, children: /* @__PURE__ */ jsx(ColorIndicator, { color: off ? "currentColor" : activeColor, children: /* @__PURE__ */ jsx(IconTextColor, { size: ICON_SIZE }) }) }) }),
|
|
26253
27213
|
/* @__PURE__ */ jsx(RDropdown5.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(RDropdown5.Content, { sideOffset: 4, align: "start", className: menuClass, children: /* @__PURE__ */ jsx(
|
|
26254
27214
|
ColorPalette,
|
|
26255
27215
|
{
|
|
26256
27216
|
asMenu: true,
|
|
26257
|
-
colors:
|
|
27217
|
+
colors: colorOptions,
|
|
26258
27218
|
columns: 4,
|
|
26259
|
-
clearLabel:
|
|
27219
|
+
clearLabel: t.clearColor,
|
|
26260
27220
|
onPick: applyColor,
|
|
26261
27221
|
onClear: clearColor
|
|
26262
27222
|
}
|
|
@@ -26266,7 +27226,7 @@ function EditorToolbarBar({
|
|
|
26266
27226
|
return /* @__PURE__ */ jsx(
|
|
26267
27227
|
ToolbarButton,
|
|
26268
27228
|
{
|
|
26269
|
-
label:
|
|
27229
|
+
label: t.alignLeft,
|
|
26270
27230
|
active: state2.alignLeft,
|
|
26271
27231
|
"aria-pressed": state2.alignLeft,
|
|
26272
27232
|
disabled: off,
|
|
@@ -26279,7 +27239,7 @@ function EditorToolbarBar({
|
|
|
26279
27239
|
return /* @__PURE__ */ jsx(
|
|
26280
27240
|
ToolbarButton,
|
|
26281
27241
|
{
|
|
26282
|
-
label:
|
|
27242
|
+
label: t.alignCenter,
|
|
26283
27243
|
active: state2.alignCenter,
|
|
26284
27244
|
"aria-pressed": state2.alignCenter,
|
|
26285
27245
|
disabled: off,
|
|
@@ -26292,7 +27252,7 @@ function EditorToolbarBar({
|
|
|
26292
27252
|
return /* @__PURE__ */ jsx(
|
|
26293
27253
|
ToolbarButton,
|
|
26294
27254
|
{
|
|
26295
|
-
label:
|
|
27255
|
+
label: t.alignRight,
|
|
26296
27256
|
active: state2.alignRight,
|
|
26297
27257
|
"aria-pressed": state2.alignRight,
|
|
26298
27258
|
disabled: off,
|
|
@@ -26305,7 +27265,7 @@ function EditorToolbarBar({
|
|
|
26305
27265
|
return /* @__PURE__ */ jsx(
|
|
26306
27266
|
ToolbarButton,
|
|
26307
27267
|
{
|
|
26308
|
-
label:
|
|
27268
|
+
label: t.alignJustify,
|
|
26309
27269
|
active: state2.alignJustify,
|
|
26310
27270
|
"aria-pressed": state2.alignJustify,
|
|
26311
27271
|
disabled: off,
|
|
@@ -26318,7 +27278,7 @@ function EditorToolbarBar({
|
|
|
26318
27278
|
return /* @__PURE__ */ jsx(
|
|
26319
27279
|
ToolbarButton,
|
|
26320
27280
|
{
|
|
26321
|
-
label:
|
|
27281
|
+
label: t.bulletList,
|
|
26322
27282
|
active: state2.bulletList,
|
|
26323
27283
|
"aria-pressed": state2.bulletList,
|
|
26324
27284
|
disabled: off,
|
|
@@ -26331,7 +27291,7 @@ function EditorToolbarBar({
|
|
|
26331
27291
|
return /* @__PURE__ */ jsx(
|
|
26332
27292
|
ToolbarButton,
|
|
26333
27293
|
{
|
|
26334
|
-
label:
|
|
27294
|
+
label: t.orderedList,
|
|
26335
27295
|
active: state2.orderedList,
|
|
26336
27296
|
"aria-pressed": state2.orderedList,
|
|
26337
27297
|
disabled: off,
|
|
@@ -26344,7 +27304,7 @@ function EditorToolbarBar({
|
|
|
26344
27304
|
return /* @__PURE__ */ jsx(
|
|
26345
27305
|
ToolbarButton,
|
|
26346
27306
|
{
|
|
26347
|
-
label:
|
|
27307
|
+
label: t.taskList,
|
|
26348
27308
|
active: state2.taskList,
|
|
26349
27309
|
"aria-pressed": state2.taskList,
|
|
26350
27310
|
disabled: off,
|
|
@@ -26357,7 +27317,7 @@ function EditorToolbarBar({
|
|
|
26357
27317
|
const ListIcon = state2.orderedList ? IconOrderedList : state2.taskList ? IconTaskList : IconBulletList;
|
|
26358
27318
|
const listActive = state2.bulletList || state2.orderedList || state2.taskList;
|
|
26359
27319
|
return /* @__PURE__ */ jsxs(RDropdown5.Root, { modal: !insideModal, children: [
|
|
26360
|
-
/* @__PURE__ */ jsx(RDropdown5.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsxs(ToolbarButton, { label:
|
|
27320
|
+
/* @__PURE__ */ jsx(RDropdown5.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsxs(ToolbarButton, { label: t.list, active: listActive, disabled: off, className: "px-[4px]", children: [
|
|
26361
27321
|
/* @__PURE__ */ jsx(ListIcon, { size: ICON_SIZE }),
|
|
26362
27322
|
/* @__PURE__ */ jsx(SIcon, { name: "caretDown", size: CARET_SIZE })
|
|
26363
27323
|
] }) }),
|
|
@@ -26369,7 +27329,7 @@ function EditorToolbarBar({
|
|
|
26369
27329
|
onSelect: () => chain()?.toggleBulletList().run(),
|
|
26370
27330
|
children: [
|
|
26371
27331
|
/* @__PURE__ */ jsx(IconBulletList, { size: 16, className: "mr-[6px]" }),
|
|
26372
|
-
|
|
27332
|
+
t.bulletList
|
|
26373
27333
|
]
|
|
26374
27334
|
}
|
|
26375
27335
|
),
|
|
@@ -26380,7 +27340,7 @@ function EditorToolbarBar({
|
|
|
26380
27340
|
onSelect: () => chain()?.toggleOrderedList().run(),
|
|
26381
27341
|
children: [
|
|
26382
27342
|
/* @__PURE__ */ jsx(IconOrderedList, { size: 16, className: "mr-[6px]" }),
|
|
26383
|
-
|
|
27343
|
+
t.orderedList
|
|
26384
27344
|
]
|
|
26385
27345
|
}
|
|
26386
27346
|
),
|
|
@@ -26391,7 +27351,7 @@ function EditorToolbarBar({
|
|
|
26391
27351
|
onSelect: () => chain()?.toggleTaskList().run(),
|
|
26392
27352
|
children: [
|
|
26393
27353
|
/* @__PURE__ */ jsx(IconTaskList, { size: 16, className: "mr-[6px]" }),
|
|
26394
|
-
|
|
27354
|
+
t.taskList
|
|
26395
27355
|
]
|
|
26396
27356
|
}
|
|
26397
27357
|
)
|
|
@@ -26402,7 +27362,7 @@ function EditorToolbarBar({
|
|
|
26402
27362
|
return /* @__PURE__ */ jsx(
|
|
26403
27363
|
ToolbarButton,
|
|
26404
27364
|
{
|
|
26405
|
-
label:
|
|
27365
|
+
label: t.blockquote,
|
|
26406
27366
|
active: state2.blockquote,
|
|
26407
27367
|
"aria-pressed": state2.blockquote,
|
|
26408
27368
|
disabled: off,
|
|
@@ -26415,7 +27375,7 @@ function EditorToolbarBar({
|
|
|
26415
27375
|
return /* @__PURE__ */ jsx(
|
|
26416
27376
|
ToolbarButton,
|
|
26417
27377
|
{
|
|
26418
|
-
label:
|
|
27378
|
+
label: t.codeBlock,
|
|
26419
27379
|
active: state2.codeBlock,
|
|
26420
27380
|
"aria-pressed": state2.codeBlock,
|
|
26421
27381
|
disabled: off,
|
|
@@ -26428,7 +27388,7 @@ function EditorToolbarBar({
|
|
|
26428
27388
|
return /* @__PURE__ */ jsx(
|
|
26429
27389
|
ToolbarButton,
|
|
26430
27390
|
{
|
|
26431
|
-
label:
|
|
27391
|
+
label: t.divider,
|
|
26432
27392
|
disabled: off,
|
|
26433
27393
|
onClick: () => chain()?.setHorizontalRule().run(),
|
|
26434
27394
|
children: /* @__PURE__ */ jsx(IconHorizontalRule, { size: ICON_SIZE })
|
|
@@ -26440,7 +27400,7 @@ function EditorToolbarBar({
|
|
|
26440
27400
|
return /* @__PURE__ */ jsx(
|
|
26441
27401
|
ToolbarButton,
|
|
26442
27402
|
{
|
|
26443
|
-
label:
|
|
27403
|
+
label: t.link,
|
|
26444
27404
|
active: state2.link,
|
|
26445
27405
|
disabled: off,
|
|
26446
27406
|
onClick: () => setMobileView("link"),
|
|
@@ -26449,7 +27409,7 @@ function EditorToolbarBar({
|
|
|
26449
27409
|
item4
|
|
26450
27410
|
);
|
|
26451
27411
|
return /* @__PURE__ */ jsxs(RPopover13.Root, { open: linkOpen, onOpenChange: setLinkOpen, children: [
|
|
26452
|
-
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsx(ToolbarButton, { label:
|
|
27412
|
+
/* @__PURE__ */ jsx(RPopover13.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsx(ToolbarButton, { label: t.link, active: state2.link, disabled: off, children: /* @__PURE__ */ jsx(IconLink, { size: ICON_SIZE }) }) }),
|
|
26453
27413
|
/* @__PURE__ */ jsx(RPopover13.Portal, { container: portalContainer, children: /* @__PURE__ */ jsx(
|
|
26454
27414
|
RPopover13.Content,
|
|
26455
27415
|
{
|
|
@@ -26476,13 +27436,13 @@ function EditorToolbarBar({
|
|
|
26476
27436
|
return /* @__PURE__ */ jsxs(
|
|
26477
27437
|
ToolbarButton,
|
|
26478
27438
|
{
|
|
26479
|
-
label:
|
|
27439
|
+
label: t.insertImage,
|
|
26480
27440
|
disabled: off || uploading,
|
|
26481
27441
|
className: "px-[6px]",
|
|
26482
27442
|
onClick: () => fileInputRef.current?.click(),
|
|
26483
27443
|
children: [
|
|
26484
27444
|
/* @__PURE__ */ jsx(SIcon, { name: "image", size: ICON_SIZE }),
|
|
26485
|
-
/* @__PURE__ */ jsx("span", { className: "text-[12px] leading-[20px]", children:
|
|
27445
|
+
/* @__PURE__ */ jsx("span", { className: "text-[12px] leading-[20px]", children: t.image })
|
|
26486
27446
|
]
|
|
26487
27447
|
},
|
|
26488
27448
|
item4
|
|
@@ -26495,10 +27455,19 @@ function EditorToolbarBar({
|
|
|
26495
27455
|
onOpenChange: setTableOpen,
|
|
26496
27456
|
modal: !insideModal,
|
|
26497
27457
|
children: [
|
|
26498
|
-
/* @__PURE__ */ jsx(RDropdown5.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsxs(
|
|
26499
|
-
|
|
26500
|
-
|
|
26501
|
-
|
|
27458
|
+
/* @__PURE__ */ jsx(RDropdown5.Trigger, { asChild: true, disabled: off, children: /* @__PURE__ */ jsxs(
|
|
27459
|
+
ToolbarButton,
|
|
27460
|
+
{
|
|
27461
|
+
label: t.table,
|
|
27462
|
+
active: state2.inTable,
|
|
27463
|
+
disabled: off,
|
|
27464
|
+
className: "px-[6px]",
|
|
27465
|
+
children: [
|
|
27466
|
+
/* @__PURE__ */ jsx(IconTable, { size: ICON_SIZE }),
|
|
27467
|
+
/* @__PURE__ */ jsx(SIcon, { name: "caretDown", size: CARET_SIZE })
|
|
27468
|
+
]
|
|
27469
|
+
}
|
|
27470
|
+
) }),
|
|
26502
27471
|
/* @__PURE__ */ jsx(RDropdown5.Portal, { container: portalContainer, children: /* @__PURE__ */ jsxs(RDropdown5.Content, { sideOffset: 4, align: "start", className: menuClass, children: [
|
|
26503
27472
|
!state2.inTable && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
26504
27473
|
/* @__PURE__ */ jsx(
|
|
@@ -26516,7 +27485,7 @@ function EditorToolbarBar({
|
|
|
26516
27485
|
/* @__PURE__ */ jsx(
|
|
26517
27486
|
TableMenuItem,
|
|
26518
27487
|
{
|
|
26519
|
-
label:
|
|
27488
|
+
label: t.addRowAbove,
|
|
26520
27489
|
disabled: !state2.inTable,
|
|
26521
27490
|
onSelect: () => chain()?.addRowBefore().run()
|
|
26522
27491
|
}
|
|
@@ -26524,7 +27493,7 @@ function EditorToolbarBar({
|
|
|
26524
27493
|
/* @__PURE__ */ jsx(
|
|
26525
27494
|
TableMenuItem,
|
|
26526
27495
|
{
|
|
26527
|
-
label:
|
|
27496
|
+
label: t.addRowBelow,
|
|
26528
27497
|
disabled: !state2.inTable,
|
|
26529
27498
|
onSelect: () => chain()?.addRowAfter().run()
|
|
26530
27499
|
}
|
|
@@ -26532,7 +27501,7 @@ function EditorToolbarBar({
|
|
|
26532
27501
|
/* @__PURE__ */ jsx(
|
|
26533
27502
|
TableMenuItem,
|
|
26534
27503
|
{
|
|
26535
|
-
label:
|
|
27504
|
+
label: t.addColLeft,
|
|
26536
27505
|
disabled: !state2.inTable,
|
|
26537
27506
|
onSelect: () => chain()?.addColumnBefore().run()
|
|
26538
27507
|
}
|
|
@@ -26540,7 +27509,7 @@ function EditorToolbarBar({
|
|
|
26540
27509
|
/* @__PURE__ */ jsx(
|
|
26541
27510
|
TableMenuItem,
|
|
26542
27511
|
{
|
|
26543
|
-
label:
|
|
27512
|
+
label: t.addColRight,
|
|
26544
27513
|
disabled: !state2.inTable,
|
|
26545
27514
|
onSelect: () => chain()?.addColumnAfter().run()
|
|
26546
27515
|
}
|
|
@@ -26549,7 +27518,7 @@ function EditorToolbarBar({
|
|
|
26549
27518
|
/* @__PURE__ */ jsx(
|
|
26550
27519
|
TableMenuItem,
|
|
26551
27520
|
{
|
|
26552
|
-
label:
|
|
27521
|
+
label: t.mergeCells,
|
|
26553
27522
|
disabled: !state2.canMergeCells,
|
|
26554
27523
|
onSelect: () => chain()?.mergeCells().run()
|
|
26555
27524
|
}
|
|
@@ -26557,7 +27526,7 @@ function EditorToolbarBar({
|
|
|
26557
27526
|
/* @__PURE__ */ jsx(
|
|
26558
27527
|
TableMenuItem,
|
|
26559
27528
|
{
|
|
26560
|
-
label:
|
|
27529
|
+
label: t.splitCell,
|
|
26561
27530
|
disabled: !state2.canSplitCell,
|
|
26562
27531
|
onSelect: () => chain()?.splitCell().run()
|
|
26563
27532
|
}
|
|
@@ -26565,7 +27534,7 @@ function EditorToolbarBar({
|
|
|
26565
27534
|
/* @__PURE__ */ jsx(
|
|
26566
27535
|
TableMenuItem,
|
|
26567
27536
|
{
|
|
26568
|
-
label:
|
|
27537
|
+
label: t.toggleHeaderRow,
|
|
26569
27538
|
disabled: !state2.inTable,
|
|
26570
27539
|
onSelect: () => chain()?.toggleHeaderRow().run()
|
|
26571
27540
|
}
|
|
@@ -26573,7 +27542,7 @@ function EditorToolbarBar({
|
|
|
26573
27542
|
/* @__PURE__ */ jsx(
|
|
26574
27543
|
TableMenuItem,
|
|
26575
27544
|
{
|
|
26576
|
-
label:
|
|
27545
|
+
label: t.toggleHeaderCol,
|
|
26577
27546
|
disabled: !state2.inTable,
|
|
26578
27547
|
onSelect: () => chain()?.toggleHeaderColumn().run()
|
|
26579
27548
|
}
|
|
@@ -26582,7 +27551,7 @@ function EditorToolbarBar({
|
|
|
26582
27551
|
/* @__PURE__ */ jsx(
|
|
26583
27552
|
TableMenuItem,
|
|
26584
27553
|
{
|
|
26585
|
-
label:
|
|
27554
|
+
label: t.deleteRow,
|
|
26586
27555
|
disabled: !state2.inTable,
|
|
26587
27556
|
onSelect: () => chain()?.deleteRow().run()
|
|
26588
27557
|
}
|
|
@@ -26590,7 +27559,7 @@ function EditorToolbarBar({
|
|
|
26590
27559
|
/* @__PURE__ */ jsx(
|
|
26591
27560
|
TableMenuItem,
|
|
26592
27561
|
{
|
|
26593
|
-
label:
|
|
27562
|
+
label: t.deleteCol,
|
|
26594
27563
|
disabled: !state2.inTable,
|
|
26595
27564
|
onSelect: () => chain()?.deleteColumn().run()
|
|
26596
27565
|
}
|
|
@@ -26598,7 +27567,7 @@ function EditorToolbarBar({
|
|
|
26598
27567
|
/* @__PURE__ */ jsx(
|
|
26599
27568
|
TableMenuItem,
|
|
26600
27569
|
{
|
|
26601
|
-
label:
|
|
27570
|
+
label: t.deleteTable,
|
|
26602
27571
|
disabled: !state2.inTable,
|
|
26603
27572
|
onSelect: () => chain()?.deleteTable().run()
|
|
26604
27573
|
}
|
|
@@ -26612,7 +27581,7 @@ function EditorToolbarBar({
|
|
|
26612
27581
|
return /* @__PURE__ */ jsx(
|
|
26613
27582
|
ToolbarButton,
|
|
26614
27583
|
{
|
|
26615
|
-
label:
|
|
27584
|
+
label: t.undo,
|
|
26616
27585
|
disabled: off || !state2.canUndo,
|
|
26617
27586
|
onClick: () => chain()?.undo().run(),
|
|
26618
27587
|
children: /* @__PURE__ */ jsx(IconUndo, { size: ICON_SIZE })
|
|
@@ -26623,7 +27592,7 @@ function EditorToolbarBar({
|
|
|
26623
27592
|
return /* @__PURE__ */ jsx(
|
|
26624
27593
|
ToolbarButton,
|
|
26625
27594
|
{
|
|
26626
|
-
label:
|
|
27595
|
+
label: t.redo,
|
|
26627
27596
|
disabled: off || !state2.canRedo,
|
|
26628
27597
|
onClick: () => chain()?.redo().run(),
|
|
26629
27598
|
children: /* @__PURE__ */ jsx(IconRedo, { size: ICON_SIZE })
|
|
@@ -26636,21 +27605,21 @@ function EditorToolbarBar({
|
|
|
26636
27605
|
};
|
|
26637
27606
|
const shell = {
|
|
26638
27607
|
"role": "toolbar",
|
|
26639
|
-
"aria-label":
|
|
27608
|
+
"aria-label": t.toolbarLabel,
|
|
26640
27609
|
"aria-disabled": disabled || void 0,
|
|
26641
27610
|
"className": variant === "bubble" ? BUBBLE_BAR_CLASS : TOOLBAR_BAR_CLASS,
|
|
26642
27611
|
"style": variant === "bubble" ? void 0 : TOOLBAR_BAR_STYLE
|
|
26643
27612
|
};
|
|
26644
27613
|
if (mobileView !== "main") {
|
|
26645
27614
|
const editing = {
|
|
26646
|
-
color: { icon: /* @__PURE__ */ jsx(IconTextColor, { size: ICON_SIZE }), label:
|
|
26647
|
-
link: { icon: /* @__PURE__ */ jsx(IconLink, { size: ICON_SIZE }), label:
|
|
27615
|
+
color: { icon: /* @__PURE__ */ jsx(IconTextColor, { size: ICON_SIZE }), label: t.textColor },
|
|
27616
|
+
link: { icon: /* @__PURE__ */ jsx(IconLink, { size: ICON_SIZE }), label: t.link }
|
|
26648
27617
|
}[mobileView];
|
|
26649
27618
|
return /* @__PURE__ */ jsxs("div", { ...shell, children: [
|
|
26650
27619
|
/* @__PURE__ */ jsx("div", { role: "group", className: "flex items-center gap-[2px]", children: /* @__PURE__ */ jsxs(
|
|
26651
27620
|
ToolbarButton,
|
|
26652
27621
|
{
|
|
26653
|
-
label:
|
|
27622
|
+
label: t.closeEditing(editing.label),
|
|
26654
27623
|
className: "px-[4px]",
|
|
26655
27624
|
onClick: () => setMobileView("main"),
|
|
26656
27625
|
children: [
|
|
@@ -26672,9 +27641,9 @@ function EditorToolbarBar({
|
|
|
26672
27641
|
) : /* @__PURE__ */ jsx(
|
|
26673
27642
|
ColorPalette,
|
|
26674
27643
|
{
|
|
26675
|
-
colors:
|
|
27644
|
+
colors: colorOptions,
|
|
26676
27645
|
columns: 4,
|
|
26677
|
-
clearLabel:
|
|
27646
|
+
clearLabel: t.clearColor,
|
|
26678
27647
|
onPick: applyColor,
|
|
26679
27648
|
onClear: clearColor
|
|
26680
27649
|
}
|
|
@@ -26971,7 +27940,7 @@ var SEditor = /* @__PURE__ */ forwardRef(function SEditor2({
|
|
|
26971
27940
|
value,
|
|
26972
27941
|
defaultValue,
|
|
26973
27942
|
onValueChange,
|
|
26974
|
-
placeholder
|
|
27943
|
+
placeholder: placeholderProp,
|
|
26975
27944
|
minHeight = 200,
|
|
26976
27945
|
maxHeight,
|
|
26977
27946
|
simple = false,
|
|
@@ -27004,6 +27973,9 @@ var SEditor = /* @__PURE__ */ forwardRef(function SEditor2({
|
|
|
27004
27973
|
className,
|
|
27005
27974
|
style
|
|
27006
27975
|
}, ref) {
|
|
27976
|
+
const runRules2 = useRunRules();
|
|
27977
|
+
const t = useLocale().messages.editor;
|
|
27978
|
+
const placeholder = placeholderProp ?? t.placeholder;
|
|
27007
27979
|
const [ruleError, setRuleError] = useState("");
|
|
27008
27980
|
const [selfFocused, setSelfFocused] = useState(false);
|
|
27009
27981
|
const controlId = useFieldControlId();
|
|
@@ -27014,7 +27986,7 @@ var SEditor = /* @__PURE__ */ forwardRef(function SEditor2({
|
|
|
27014
27986
|
const editable = !disabled && !readOnly;
|
|
27015
27987
|
const handleInput = (html) => {
|
|
27016
27988
|
onValueChange?.(html);
|
|
27017
|
-
if (ruleError !== "") setRuleError(
|
|
27989
|
+
if (ruleError !== "") setRuleError(runRules2(html, rules));
|
|
27018
27990
|
};
|
|
27019
27991
|
const handleFocusChange = (next) => {
|
|
27020
27992
|
setSelfFocused(next);
|
|
@@ -27023,7 +27995,7 @@ var SEditor = /* @__PURE__ */ forwardRef(function SEditor2({
|
|
|
27023
27995
|
return;
|
|
27024
27996
|
}
|
|
27025
27997
|
onBlur?.();
|
|
27026
|
-
if (rules && rules.length > 0) setRuleError(
|
|
27998
|
+
if (rules && rules.length > 0) setRuleError(runRules2(htmlRef.current, rules));
|
|
27027
27999
|
};
|
|
27028
28000
|
const handleReady = () => {
|
|
27029
28001
|
if (!pendingFocusRef.current) return;
|
|
@@ -27033,7 +28005,7 @@ var SEditor = /* @__PURE__ */ forwardRef(function SEditor2({
|
|
|
27033
28005
|
useFormField({
|
|
27034
28006
|
name,
|
|
27035
28007
|
validate: () => {
|
|
27036
|
-
const msg =
|
|
28008
|
+
const msg = runRules2(htmlRef.current, rules);
|
|
27037
28009
|
setRuleError(msg);
|
|
27038
28010
|
return msg === "";
|
|
27039
28011
|
},
|
|
@@ -27207,6 +28179,8 @@ var SSlider = /* @__PURE__ */ forwardRef(function SSlider2({
|
|
|
27207
28179
|
className,
|
|
27208
28180
|
style
|
|
27209
28181
|
}, ref) {
|
|
28182
|
+
const runRules2 = useRunRules();
|
|
28183
|
+
const t = useLocale().messages.slider;
|
|
27210
28184
|
const isRange = Array.isArray(value);
|
|
27211
28185
|
const values = isRange ? value : [value ?? min];
|
|
27212
28186
|
const toOut = (v) => isRange ? [v[0], v[1]] : v[0];
|
|
@@ -27214,7 +28188,7 @@ var SSlider = /* @__PURE__ */ forwardRef(function SSlider2({
|
|
|
27214
28188
|
useFormField({
|
|
27215
28189
|
name,
|
|
27216
28190
|
validate: () => {
|
|
27217
|
-
const msg =
|
|
28191
|
+
const msg = runRules2(value, rules);
|
|
27218
28192
|
setRuleError(msg);
|
|
27219
28193
|
return msg === "";
|
|
27220
28194
|
},
|
|
@@ -27310,13 +28284,13 @@ var SSlider = /* @__PURE__ */ forwardRef(function SSlider2({
|
|
|
27310
28284
|
if (!interactive) return;
|
|
27311
28285
|
const next = toOut(v);
|
|
27312
28286
|
onValueChange?.(next);
|
|
27313
|
-
if (ruleError !== "") setRuleError(
|
|
28287
|
+
if (ruleError !== "") setRuleError(runRules2(next, rules));
|
|
27314
28288
|
},
|
|
27315
28289
|
onValueCommit: (v) => {
|
|
27316
28290
|
if (!interactive) return;
|
|
27317
28291
|
const next = toOut(v);
|
|
27318
28292
|
onValueCommit?.(next);
|
|
27319
|
-
if (rules && rules.length > 0) setRuleError(
|
|
28293
|
+
if (rules && rules.length > 0) setRuleError(runRules2(next, rules));
|
|
27320
28294
|
},
|
|
27321
28295
|
onPointerDown: () => interactive && setDragging(true),
|
|
27322
28296
|
onPointerUp: () => setDragging(false),
|
|
@@ -27365,7 +28339,7 @@ var SSlider = /* @__PURE__ */ forwardRef(function SSlider2({
|
|
|
27365
28339
|
RSlider.Thumb,
|
|
27366
28340
|
{
|
|
27367
28341
|
id: i === 0 ? thumbId : void 0,
|
|
27368
|
-
"aria-label": isRange ? `${label ?? ""} ${i === 0 ?
|
|
28342
|
+
"aria-label": isRange ? `${label ?? ""} ${i === 0 ? t.minValue : t.maxValue}`.trim() : label,
|
|
27369
28343
|
"aria-valuetext": formatValue(v),
|
|
27370
28344
|
"aria-readonly": readOnly || void 0,
|
|
27371
28345
|
onFocus: () => setFocusIndex(i),
|
|
@@ -27491,28 +28465,41 @@ var CHIPFILTER = {
|
|
|
27491
28465
|
itemTextSelected: "var(--cmp-chipFilter-item-text-selected)"
|
|
27492
28466
|
};
|
|
27493
28467
|
var DEFAULT_CUSTOM_MAX_RANGE = 90;
|
|
27494
|
-
var
|
|
27495
|
-
|
|
27496
|
-
|
|
27497
|
-
|
|
27498
|
-
|
|
27499
|
-
|
|
27500
|
-
|
|
27501
|
-
|
|
27502
|
-
|
|
27503
|
-
|
|
27504
|
-
|
|
27505
|
-
|
|
27506
|
-
|
|
27507
|
-
|
|
27508
|
-
|
|
27509
|
-
|
|
27510
|
-
|
|
27511
|
-
|
|
27512
|
-
|
|
27513
|
-
|
|
27514
|
-
|
|
27515
|
-
|
|
28468
|
+
var defaultPresetCache = /* @__PURE__ */ new WeakMap();
|
|
28469
|
+
var STRUCTURE_MESSAGES = resolveMessages(DEFAULT_LOCALE);
|
|
28470
|
+
var getDefaultPresets = (m) => {
|
|
28471
|
+
const cached = defaultPresetCache.get(m.chipFilter);
|
|
28472
|
+
if (cached) return cached;
|
|
28473
|
+
const t = m.chipFilter;
|
|
28474
|
+
const created = {
|
|
28475
|
+
period: [
|
|
28476
|
+
{ value: "day", label: t.periodDay },
|
|
28477
|
+
{ value: "month", label: t.periodMonth },
|
|
28478
|
+
{ value: "quarter", label: t.periodQuarter },
|
|
28479
|
+
{ value: "half", label: t.periodHalf },
|
|
28480
|
+
{ value: "year", label: t.periodYear },
|
|
28481
|
+
{ value: "custom", label: t.custom, custom: true }
|
|
28482
|
+
],
|
|
28483
|
+
/** presets 를 지정하지 않은 datepicker-range 필드가 쓰는 기본 프리셋 목록.
|
|
28484
|
+
* 프리셋 라디오 자체를 없애고 캘린더 하나만 두려면 presets: [] 를 명시한다 */
|
|
28485
|
+
range: [
|
|
28486
|
+
{ value: "today", label: t.today, resolve: () => todayIso() },
|
|
28487
|
+
{
|
|
28488
|
+
value: "last7",
|
|
28489
|
+
label: t.last7,
|
|
28490
|
+
resolve: () => [rangeStartIso(todayIso(), 7), todayIso()]
|
|
28491
|
+
},
|
|
28492
|
+
{
|
|
28493
|
+
value: "last30",
|
|
28494
|
+
label: t.last30,
|
|
28495
|
+
resolve: () => [rangeStartIso(todayIso(), 30), todayIso()]
|
|
28496
|
+
},
|
|
28497
|
+
{ value: "custom", label: t.custom, custom: true }
|
|
28498
|
+
]
|
|
28499
|
+
};
|
|
28500
|
+
defaultPresetCache.set(m.chipFilter, created);
|
|
28501
|
+
return created;
|
|
28502
|
+
};
|
|
27516
28503
|
var isKeywordValue = (value) => typeof value === "object" && value != null && !Array.isArray(value) && "keywords" in value;
|
|
27517
28504
|
var isPeriodValue = (value) => typeof value === "object" && value != null && !Array.isArray(value) && "unit" in value;
|
|
27518
28505
|
var keywordEntries = (value) => {
|
|
@@ -27604,18 +28591,20 @@ var addDaysIso = (iso, n) => {
|
|
|
27604
28591
|
};
|
|
27605
28592
|
var rangeStartIso = (today, days) => addDaysIso(today, -(days - 1));
|
|
27606
28593
|
var isInlineDateField = (field) => field.type === "datepicker-range" && field.radioButton === true && (field.presets?.length ?? 0) > 0;
|
|
27607
|
-
var getFieldPresets = (field) => {
|
|
27608
|
-
if (field.type === "datepicker-statistics") return field.presets ??
|
|
27609
|
-
return field.presets ??
|
|
28594
|
+
var getFieldPresets = (field, m) => {
|
|
28595
|
+
if (field.type === "datepicker-statistics") return field.presets ?? getDefaultPresets(m).period;
|
|
28596
|
+
return field.presets ?? getDefaultPresets(m).range;
|
|
27610
28597
|
};
|
|
27611
|
-
var getEffectiveMaxRange = (field) => {
|
|
28598
|
+
var getEffectiveMaxRange = (field, m) => {
|
|
27612
28599
|
if (field.maxRange !== void 0) return field.maxRange;
|
|
27613
|
-
const hasCustomPreset = getFieldPresets(field).some((preset) => preset.custom);
|
|
28600
|
+
const hasCustomPreset = getFieldPresets(field, m).some((preset) => preset.custom);
|
|
27614
28601
|
return hasCustomPreset ? DEFAULT_CUSTOM_MAX_RANGE : void 0;
|
|
27615
28602
|
};
|
|
27616
|
-
var getPresetLabel = (preset, maxRange) => {
|
|
27617
|
-
|
|
27618
|
-
|
|
28603
|
+
var getPresetLabel = (preset, maxRange, m) => {
|
|
28604
|
+
const t = m.chipFilter;
|
|
28605
|
+
if (!preset.custom || !maxRange || preset.label.toLowerCase().includes(t.maxWord.toLowerCase()))
|
|
28606
|
+
return preset.label;
|
|
28607
|
+
return `${preset.label} (${t.maxRangeHint(maxRange)})`;
|
|
27619
28608
|
};
|
|
27620
28609
|
var getDefaultPeriodInputValue = (unit, maxRange) => {
|
|
27621
28610
|
const today = todayIso();
|
|
@@ -27652,7 +28641,7 @@ var resolveFieldDefault = (field) => {
|
|
|
27652
28641
|
if (field.type === "datepicker-day") return todayIso();
|
|
27653
28642
|
if (field.type === "select" || field.type === "select-depth") return leafOptions(field)[0]?.value;
|
|
27654
28643
|
if (field.type === "datepicker-statistics") {
|
|
27655
|
-
const presets = getFieldPresets(field).filter((preset) => !preset.custom);
|
|
28644
|
+
const presets = getFieldPresets(field, STRUCTURE_MESSAGES).filter((preset) => !preset.custom);
|
|
27656
28645
|
const unit = presets.some((preset) => preset.value === "day") ? "day" : presets[0]?.value;
|
|
27657
28646
|
return unit ? createPeriodValue(unit) : void 0;
|
|
27658
28647
|
}
|
|
@@ -27700,20 +28689,16 @@ var isGroupSatisfied = (group, values) => {
|
|
|
27700
28689
|
if (group.rule.type === "requireAny") return keys.some((k) => !isEmptyValue(values[k]));
|
|
27701
28690
|
return true;
|
|
27702
28691
|
};
|
|
27703
|
-
var
|
|
27704
|
-
const
|
|
27705
|
-
if (
|
|
27706
|
-
return (code - 44032) % 28 === 0 ? vowel : consonant;
|
|
27707
|
-
};
|
|
27708
|
-
var defaultGroupTooltipMessage = (rule, fields) => {
|
|
27709
|
-
if (rule.type === "requireAll") return "\uD56D\uBAA9\uC744 \uBAA8\uB450 \uC120\uD0DD\uD574 \uC8FC\uC138\uC694.";
|
|
28692
|
+
var defaultGroupTooltipMessage = (rule, fields, m) => {
|
|
28693
|
+
const t = m.chipFilter;
|
|
28694
|
+
if (rule.type === "requireAll") return t.requireAll;
|
|
27710
28695
|
if (rule.type === "requireAny") {
|
|
27711
28696
|
const name = rule.dataGroupName;
|
|
27712
|
-
if (!name) return
|
|
27713
|
-
return
|
|
28697
|
+
if (!name) return t.requireAnyDefault;
|
|
28698
|
+
return t.requireAnyNamed(name);
|
|
27714
28699
|
}
|
|
27715
|
-
const label = fields.find((f) => f.key === rule.key)?.label ??
|
|
27716
|
-
return
|
|
28700
|
+
const label = fields.find((f) => f.key === rule.key)?.label ?? t.fieldFallback;
|
|
28701
|
+
return t.requireField(label);
|
|
27717
28702
|
};
|
|
27718
28703
|
var toDateRange = (value) => Array.isArray(value) ? [value[0], value[1]] : [value, value];
|
|
27719
28704
|
var sameDateValue = (a, b) => {
|
|
@@ -27732,20 +28717,24 @@ var matchPresetId = (presets, value) => {
|
|
|
27732
28717
|
return presets.find((preset) => preset.custom)?.value ?? null;
|
|
27733
28718
|
};
|
|
27734
28719
|
var optionLabel = (field, value) => leafOptions(field).find((option) => option.value === value)?.label ?? String(value);
|
|
27735
|
-
var formatValueList = (labels) => {
|
|
28720
|
+
var formatValueList = (labels, m) => {
|
|
27736
28721
|
if (labels.length <= 1) return labels[0] ?? "";
|
|
27737
|
-
return
|
|
28722
|
+
return m.chipFilter.valueListMore(labels[0], labels.length - 1);
|
|
27738
28723
|
};
|
|
27739
|
-
var displayValue = (field, value) => {
|
|
28724
|
+
var displayValue = (field, value, m) => {
|
|
28725
|
+
const t = m.chipFilter;
|
|
27740
28726
|
if (isEmptyValue(value)) return "";
|
|
27741
28727
|
if (isMultiSelectType(field.type)) {
|
|
27742
28728
|
const optionsField = field;
|
|
27743
28729
|
const values = toArrayValue(value);
|
|
27744
28730
|
const selectableValues = selectableLeafValues(optionsField);
|
|
27745
28731
|
if (selectableValues.length > 1 && selectableValues.every((selectableValue) => values.includes(selectableValue))) {
|
|
27746
|
-
return
|
|
28732
|
+
return m.common.all;
|
|
27747
28733
|
}
|
|
27748
|
-
return formatValueList(
|
|
28734
|
+
return formatValueList(
|
|
28735
|
+
values.map((v) => optionLabel(optionsField, v)),
|
|
28736
|
+
m
|
|
28737
|
+
);
|
|
27749
28738
|
}
|
|
27750
28739
|
if (field.type === "select" || field.type === "select-depth") {
|
|
27751
28740
|
return optionLabel(field, value);
|
|
@@ -27756,23 +28745,24 @@ var displayValue = (field, value) => {
|
|
|
27756
28745
|
}
|
|
27757
28746
|
if (field.type === "datepicker-statistics") {
|
|
27758
28747
|
if (!isPeriodValue(value)) {
|
|
27759
|
-
const preset2 = getFieldPresets(field).find((p) => p.value === value);
|
|
28748
|
+
const preset2 = getFieldPresets(field, m).find((p) => p.value === value);
|
|
27760
28749
|
return preset2?.label ?? String(value);
|
|
27761
28750
|
}
|
|
27762
|
-
const preset = getFieldPresets(field).find((p) => p.value === value.unit);
|
|
28751
|
+
const preset = getFieldPresets(field, m).find((p) => p.value === value.unit);
|
|
27763
28752
|
const label = preset?.label ?? value.unit;
|
|
27764
|
-
if (value.unit === "quarter") return `${label}(${value.value ?? 1}
|
|
27765
|
-
if (value.unit === "half")
|
|
28753
|
+
if (value.unit === "quarter") return `${label}(${t.quarter(Number(value.value ?? 1))})`;
|
|
28754
|
+
if (value.unit === "half")
|
|
28755
|
+
return `${label}(${value.value === "second" ? t.secondHalf : t.firstHalf})`;
|
|
27766
28756
|
if (Array.isArray(value.value)) return `${value.value[0]} ~ ${value.value[1]}`;
|
|
27767
28757
|
return value.value != null && value.value !== "" ? String(value.value) : label;
|
|
27768
28758
|
}
|
|
27769
|
-
if (field.type === "keyword") return formatValueList(keywordEntries(value));
|
|
28759
|
+
if (field.type === "keyword") return formatValueList(keywordEntries(value), m);
|
|
27770
28760
|
return String(value);
|
|
27771
28761
|
};
|
|
27772
|
-
var chipDisplayValue = (field, value) => {
|
|
27773
|
-
const text = displayValue(field, value);
|
|
28762
|
+
var chipDisplayValue = (field, value, m) => {
|
|
28763
|
+
const text = displayValue(field, value, m);
|
|
27774
28764
|
if (field.type !== "datepicker-range" || isEmptyValue(value)) return text;
|
|
27775
|
-
const presets = getFieldPresets(field);
|
|
28765
|
+
const presets = getFieldPresets(field, m);
|
|
27776
28766
|
if (presets.length === 0) return text;
|
|
27777
28767
|
const preset = presets.find((p) => p.value === matchPresetId(presets, value));
|
|
27778
28768
|
return preset && !preset.custom ? `${preset.label}(${text})` : text;
|
|
@@ -27791,6 +28781,8 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
27791
28781
|
className,
|
|
27792
28782
|
style
|
|
27793
28783
|
}, ref) {
|
|
28784
|
+
const messages = useLocale().messages;
|
|
28785
|
+
const t = messages.chipFilter;
|
|
27794
28786
|
const fields = useMemo(() => groups.flatMap((group) => group.fields), [groups]);
|
|
27795
28787
|
const values = normalizeValues(value);
|
|
27796
28788
|
const portalContainer = usePortalContainer();
|
|
@@ -27937,7 +28929,7 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
27937
28929
|
if (currentOpenField?.type === "keyword") {
|
|
27938
28930
|
return { width: CHIPFILTER_LISTBOX_WIDTH };
|
|
27939
28931
|
}
|
|
27940
|
-
if ((currentOpenField?.type === "datepicker-range" || currentOpenField?.type === "datepicker-statistics") && getFieldPresets(currentOpenField).length > 0) {
|
|
28932
|
+
if ((currentOpenField?.type === "datepicker-range" || currentOpenField?.type === "datepicker-statistics") && getFieldPresets(currentOpenField, STRUCTURE_MESSAGES).length > 0) {
|
|
27941
28933
|
return { width: CHIPFILTER_DATE_PRESET_LISTBOX_WIDTH };
|
|
27942
28934
|
}
|
|
27943
28935
|
return { width: CHIPFILTER_LISTBOX_WIDTH };
|
|
@@ -28044,7 +29036,7 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
28044
29036
|
const flushRun = () => {
|
|
28045
29037
|
if (runBuffer.length === 0) return;
|
|
28046
29038
|
const group = runGroupIndex != null ? groups[runGroupIndex] : void 0;
|
|
28047
|
-
const message = group?.rule ? group.tooltipMessage ?? defaultGroupTooltipMessage(group.rule, group.fields) : void 0;
|
|
29039
|
+
const message = group?.rule ? group.tooltipMessage ?? defaultGroupTooltipMessage(group.rule, group.fields, messages) : void 0;
|
|
28048
29040
|
if (message) {
|
|
28049
29041
|
nodes.push(
|
|
28050
29042
|
/* @__PURE__ */ jsx(
|
|
@@ -28109,7 +29101,7 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
28109
29101
|
{
|
|
28110
29102
|
icon: "close",
|
|
28111
29103
|
size: "xxs",
|
|
28112
|
-
ariaLabel:
|
|
29104
|
+
ariaLabel: t.removeFilter(field.label),
|
|
28113
29105
|
className: "shrink-0",
|
|
28114
29106
|
onClick: handleClear
|
|
28115
29107
|
}
|
|
@@ -28118,7 +29110,7 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
28118
29110
|
FilterChip,
|
|
28119
29111
|
{
|
|
28120
29112
|
field,
|
|
28121
|
-
valueText: chipDisplayValue(field, values[field.key]),
|
|
29113
|
+
valueText: chipDisplayValue(field, values[field.key], messages),
|
|
28122
29114
|
active: openKey === field.key,
|
|
28123
29115
|
applied: !isEmptyValue(values[field.key]),
|
|
28124
29116
|
disabled: disabled || field.disabled,
|
|
@@ -28170,7 +29162,7 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
28170
29162
|
color: disabled || inactiveFields.length === 0 ? CHIPFILTER.addTextDisabled : CHIPFILTER.addText
|
|
28171
29163
|
}
|
|
28172
29164
|
),
|
|
28173
|
-
/* @__PURE__ */ jsx("span", { children:
|
|
29165
|
+
/* @__PURE__ */ jsx("span", { children: t.addFilter })
|
|
28174
29166
|
]
|
|
28175
29167
|
}
|
|
28176
29168
|
) }),
|
|
@@ -28186,7 +29178,7 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
28186
29178
|
event.preventDefault();
|
|
28187
29179
|
},
|
|
28188
29180
|
className: cn("z-50 min-w-[180px]", FLOATING_SLIDE_ANIM),
|
|
28189
|
-
children: /* @__PURE__ */ jsx(ListBox, { children: inactiveFields.length > 0 ? inactiveFields.map((field) => /* @__PURE__ */ jsx(MenuItem, { onClick: () => addField(field.key), children: field.label }, field.key)) : /* @__PURE__ */ jsx(EmptyItem, { children:
|
|
29181
|
+
children: /* @__PURE__ */ jsx(ListBox, { children: inactiveFields.length > 0 ? inactiveFields.map((field) => /* @__PURE__ */ jsx(MenuItem, { onClick: () => addField(field.key), children: field.label }, field.key)) : /* @__PURE__ */ jsx(EmptyItem, { children: t.noAddableFilter }) })
|
|
28190
29182
|
}
|
|
28191
29183
|
) })
|
|
28192
29184
|
] }),
|
|
@@ -28196,7 +29188,7 @@ var SChipFilter = /* @__PURE__ */ forwardRef(function SChipFilter2({
|
|
|
28196
29188
|
size: "sm",
|
|
28197
29189
|
icon: "reset",
|
|
28198
29190
|
iconColor: "grey_80",
|
|
28199
|
-
label:
|
|
29191
|
+
label: t.resetSearch,
|
|
28200
29192
|
labelClassName: "text-grey-80",
|
|
28201
29193
|
disabled: disabled || !canReset,
|
|
28202
29194
|
onClick: reset,
|
|
@@ -28295,6 +29287,7 @@ function FilterChip({
|
|
|
28295
29287
|
onOpen,
|
|
28296
29288
|
onClear
|
|
28297
29289
|
}) {
|
|
29290
|
+
const t = useLocale().messages.chipFilter;
|
|
28298
29291
|
const border = disabled ? CHIPFILTER.chipDisabledBorder : warning ? CHIPFILTER.chipWarningBorder : applied ? active ? "var(--color-blue-strong)" : CHIPFILTER.chipAppliedBorder : active ? CHIPFILTER.chipActiveBorder : CHIPFILTER.chipDefaultBorder;
|
|
28299
29292
|
const background = disabled ? CHIPFILTER.chipDisabledBg : applied ? CHIPFILTER.chipAppliedBg : CHIPFILTER.chipDefaultBg;
|
|
28300
29293
|
const textColor = disabled ? CHIPFILTER.chipDisabledText : CHIPFILTER.chipDefaultText;
|
|
@@ -28386,7 +29379,7 @@ function FilterChip({
|
|
|
28386
29379
|
{
|
|
28387
29380
|
icon: "close",
|
|
28388
29381
|
size: "xxs",
|
|
28389
|
-
ariaLabel:
|
|
29382
|
+
ariaLabel: t.clearFilter(field.label),
|
|
28390
29383
|
className: "shrink-0 self-center",
|
|
28391
29384
|
onClick: onClear
|
|
28392
29385
|
}
|
|
@@ -28404,6 +29397,8 @@ function EditorPanel({
|
|
|
28404
29397
|
onDraftChange,
|
|
28405
29398
|
onClose
|
|
28406
29399
|
}) {
|
|
29400
|
+
const messages = useLocale().messages;
|
|
29401
|
+
const t = messages.chipFilter;
|
|
28407
29402
|
const wrapsInPaddedTop = field.type === "datepicker-day" || field.type === "datepicker-range" || field.type === "datepicker-statistics";
|
|
28408
29403
|
const isScrollableListField = isSelectType(field.type) || field.type === "keyword";
|
|
28409
29404
|
const isMulti = isMultiSelectType(field.type);
|
|
@@ -28448,7 +29443,7 @@ function EditorPanel({
|
|
|
28448
29443
|
STextLink,
|
|
28449
29444
|
{
|
|
28450
29445
|
size: "sm",
|
|
28451
|
-
label: allSelected ?
|
|
29446
|
+
label: allSelected ? t.selectNone : t.selectAll,
|
|
28452
29447
|
labelClassName: "font-bold",
|
|
28453
29448
|
disabled,
|
|
28454
29449
|
onClick: toggleSelectAll,
|
|
@@ -28471,7 +29466,7 @@ function EditorPanel({
|
|
|
28471
29466
|
STextLink,
|
|
28472
29467
|
{
|
|
28473
29468
|
size: "sm",
|
|
28474
|
-
label:
|
|
29469
|
+
label: messages.common.search,
|
|
28475
29470
|
labelClassName: "font-bold",
|
|
28476
29471
|
onClick: onClose,
|
|
28477
29472
|
style: { color: CHIPFILTER.chipAppliedValue }
|
|
@@ -28557,8 +29552,9 @@ function DatePresetEditor({
|
|
|
28557
29552
|
disabled,
|
|
28558
29553
|
onValueChange
|
|
28559
29554
|
}) {
|
|
28560
|
-
const
|
|
28561
|
-
const
|
|
29555
|
+
const messages = useLocale().messages;
|
|
29556
|
+
const presets = getFieldPresets(field, messages);
|
|
29557
|
+
const maxRange = getEffectiveMaxRange(field, messages);
|
|
28562
29558
|
const [selectedId, setSelectedId] = useState(() => matchPresetId(presets, value));
|
|
28563
29559
|
const syncedInitialValueRef = useRef(!isEmptyValue(value));
|
|
28564
29560
|
useEffect(() => {
|
|
@@ -28596,7 +29592,7 @@ function DatePresetEditor({
|
|
|
28596
29592
|
{
|
|
28597
29593
|
val: preset.value,
|
|
28598
29594
|
value: selectedId,
|
|
28599
|
-
label: getPresetLabel(preset, maxRange),
|
|
29595
|
+
label: getPresetLabel(preset, maxRange, messages),
|
|
28600
29596
|
disabled,
|
|
28601
29597
|
onValueChange: () => selectPreset(preset)
|
|
28602
29598
|
},
|
|
@@ -28620,8 +29616,10 @@ function PeriodPresetEditor({
|
|
|
28620
29616
|
disabled,
|
|
28621
29617
|
onValueChange
|
|
28622
29618
|
}) {
|
|
28623
|
-
const
|
|
28624
|
-
const
|
|
29619
|
+
const messages = useLocale().messages;
|
|
29620
|
+
const t = messages.chipFilter;
|
|
29621
|
+
const presets = getFieldPresets(field, messages);
|
|
29622
|
+
const maxRange = getEffectiveMaxRange(field, messages);
|
|
28625
29623
|
const firstUnit = presets.find((preset) => !preset.custom)?.value ?? "day";
|
|
28626
29624
|
const [selectedId, setSelectedId] = useState(() => matchPresetId(presets, value) ?? firstUnit);
|
|
28627
29625
|
const periodValue = isPeriodValue(value) ? value : createPeriodValue(selectedId ?? firstUnit, maxRange);
|
|
@@ -28674,10 +29672,10 @@ function PeriodPresetEditor({
|
|
|
28674
29672
|
onValueChange: updateInputValue,
|
|
28675
29673
|
disabled,
|
|
28676
29674
|
options: [
|
|
28677
|
-
{ value: 1, label:
|
|
28678
|
-
{ value: 2, label:
|
|
28679
|
-
{ value: 3, label:
|
|
28680
|
-
{ value: 4, label:
|
|
29675
|
+
{ value: 1, label: t.quarter(1) },
|
|
29676
|
+
{ value: 2, label: t.quarter(2) },
|
|
29677
|
+
{ value: 3, label: t.quarter(3) },
|
|
29678
|
+
{ value: 4, label: t.quarter(4) }
|
|
28681
29679
|
]
|
|
28682
29680
|
}
|
|
28683
29681
|
);
|
|
@@ -28690,8 +29688,8 @@ function PeriodPresetEditor({
|
|
|
28690
29688
|
onValueChange: updateInputValue,
|
|
28691
29689
|
disabled,
|
|
28692
29690
|
options: [
|
|
28693
|
-
{ value: "first", label:
|
|
28694
|
-
{ value: "second", label:
|
|
29691
|
+
{ value: "first", label: t.firstHalf },
|
|
29692
|
+
{ value: "second", label: t.secondHalf }
|
|
28695
29693
|
]
|
|
28696
29694
|
}
|
|
28697
29695
|
);
|
|
@@ -28728,7 +29726,7 @@ function PeriodPresetEditor({
|
|
|
28728
29726
|
{
|
|
28729
29727
|
val: preset.value,
|
|
28730
29728
|
value: selectedId,
|
|
28731
|
-
label: getPresetLabel(preset, maxRange),
|
|
29729
|
+
label: getPresetLabel(preset, maxRange, messages),
|
|
28732
29730
|
disabled,
|
|
28733
29731
|
onValueChange: () => selectPreset(preset)
|
|
28734
29732
|
},
|
|
@@ -28746,6 +29744,8 @@ function InlineDatePresetFilter({
|
|
|
28746
29744
|
onValueChange,
|
|
28747
29745
|
onClear
|
|
28748
29746
|
}) {
|
|
29747
|
+
const messages = useLocale().messages;
|
|
29748
|
+
const t = messages.chipFilter;
|
|
28749
29749
|
const presets = (field.presets ?? []).filter((preset) => !preset.custom);
|
|
28750
29750
|
const [selectedId, setSelectedId] = useState(() => matchPresetId(presets, value));
|
|
28751
29751
|
const syncedInitialValueRef = useRef(!isEmptyValue(value));
|
|
@@ -28778,7 +29778,7 @@ function InlineDatePresetFilter({
|
|
|
28778
29778
|
field.label,
|
|
28779
29779
|
":"
|
|
28780
29780
|
] }),
|
|
28781
|
-
/* @__PURE__ */ jsx("span", { className: "typo-body-sm-bold", style: { color: badgeValueColor }, children: displayValue(field, value) })
|
|
29781
|
+
/* @__PURE__ */ jsx("span", { className: "typo-body-sm-bold", style: { color: badgeValueColor }, children: displayValue(field, value, messages) })
|
|
28782
29782
|
] });
|
|
28783
29783
|
return /* @__PURE__ */ jsxs("div", { className: "flex shrink-0 items-center gap-[8px]", children: [
|
|
28784
29784
|
/* @__PURE__ */ jsx(
|
|
@@ -28848,7 +29848,7 @@ function InlineDatePresetFilter({
|
|
|
28848
29848
|
{
|
|
28849
29849
|
icon: "close",
|
|
28850
29850
|
size: "xxs",
|
|
28851
|
-
ariaLabel:
|
|
29851
|
+
ariaLabel: t.clearFilter(field.label),
|
|
28852
29852
|
className: "shrink-0 self-center",
|
|
28853
29853
|
onClick: onClear
|
|
28854
29854
|
}
|
|
@@ -28858,14 +29858,14 @@ function InlineDatePresetFilter({
|
|
|
28858
29858
|
)
|
|
28859
29859
|
] });
|
|
28860
29860
|
}
|
|
28861
|
-
var
|
|
28862
|
-
{ value: "contains", label:
|
|
28863
|
-
{ value: "exact", label:
|
|
29861
|
+
var matchModeOptions = (t) => [
|
|
29862
|
+
{ value: "contains", label: t.keywordContains },
|
|
29863
|
+
{ value: "exact", label: t.keywordExact }
|
|
28864
29864
|
];
|
|
28865
|
-
var
|
|
29865
|
+
var excludeMatchModeOption = (t) => ({
|
|
28866
29866
|
value: "excludes",
|
|
28867
|
-
label:
|
|
28868
|
-
};
|
|
29867
|
+
label: t.keywordExcludes
|
|
29868
|
+
});
|
|
28869
29869
|
function KeywordEditor({
|
|
28870
29870
|
field,
|
|
28871
29871
|
value,
|
|
@@ -28874,6 +29874,7 @@ function KeywordEditor({
|
|
|
28874
29874
|
onValueCommit,
|
|
28875
29875
|
onDraftChange
|
|
28876
29876
|
}) {
|
|
29877
|
+
const t = useLocale().messages.chipFilter;
|
|
28877
29878
|
const entries4 = keywordEntries(value);
|
|
28878
29879
|
const [draftText, setDraftText] = useState("");
|
|
28879
29880
|
const [mode, setMode] = useState(
|
|
@@ -28946,7 +29947,7 @@ function KeywordEditor({
|
|
|
28946
29947
|
{
|
|
28947
29948
|
className: "shrink-0 whitespace-nowrap typo-body-sm-medium",
|
|
28948
29949
|
style: { color: CHIPFILTER.listboxLabel },
|
|
28949
|
-
children:
|
|
29950
|
+
children: t.keywordCondition
|
|
28950
29951
|
}
|
|
28951
29952
|
),
|
|
28952
29953
|
/* @__PURE__ */ jsx(
|
|
@@ -28954,7 +29955,7 @@ function KeywordEditor({
|
|
|
28954
29955
|
{
|
|
28955
29956
|
size: "xs",
|
|
28956
29957
|
style: { width: 150 },
|
|
28957
|
-
options: field.excludeMode ? [...
|
|
29958
|
+
options: field.excludeMode ? [...matchModeOptions(t), excludeMatchModeOption(t)] : matchModeOptions(t),
|
|
28958
29959
|
value: mode,
|
|
28959
29960
|
disabled,
|
|
28960
29961
|
onValueChange: (next) => changeMode(next)
|
|
@@ -28969,7 +29970,7 @@ function KeywordEditor({
|
|
|
28969
29970
|
ref: inputRef,
|
|
28970
29971
|
value: draftText,
|
|
28971
29972
|
disabled,
|
|
28972
|
-
placeholder: field.placeholder ?? (field.input === "csv" ?
|
|
29973
|
+
placeholder: field.placeholder ?? (field.input === "csv" ? t.keywordHintCsv : t.keywordHintEnter),
|
|
28973
29974
|
onChange: (event) => changeDraft(event.target.value),
|
|
28974
29975
|
onPaste,
|
|
28975
29976
|
onKeyDown,
|
|
@@ -29001,6 +30002,7 @@ function KeywordEntryRow({
|
|
|
29001
30002
|
disabled,
|
|
29002
30003
|
onRemove
|
|
29003
30004
|
}) {
|
|
30005
|
+
const t = useLocale().messages.chipFilter;
|
|
29004
30006
|
return /* @__PURE__ */ jsxs(
|
|
29005
30007
|
"div",
|
|
29006
30008
|
{
|
|
@@ -29019,7 +30021,7 @@ function KeywordEntryRow({
|
|
|
29019
30021
|
{
|
|
29020
30022
|
icon: "close",
|
|
29021
30023
|
size: "xxs",
|
|
29022
|
-
ariaLabel:
|
|
30024
|
+
ariaLabel: t.removeItem(label),
|
|
29023
30025
|
className: "invisible shrink-0 group-hover:visible",
|
|
29024
30026
|
onClick: onRemove
|
|
29025
30027
|
}
|
|
@@ -29038,6 +30040,7 @@ function OptionList({
|
|
|
29038
30040
|
disabled,
|
|
29039
30041
|
onValueChange
|
|
29040
30042
|
}) {
|
|
30043
|
+
const messages = useLocale().messages;
|
|
29041
30044
|
const selected = multiple ? toArrayValue(value) : [];
|
|
29042
30045
|
const singleValue = !multiple && (typeof value === "string" || typeof value === "number") ? value : null;
|
|
29043
30046
|
const [search, setSearch] = useState("");
|
|
@@ -29069,7 +30072,7 @@ function OptionList({
|
|
|
29069
30072
|
allSelected ? selected.filter((v) => !leafValues.includes(v)) : [...selected, ...leafValues.filter((v) => !selected.includes(v))]
|
|
29070
30073
|
);
|
|
29071
30074
|
};
|
|
29072
|
-
if (flat.length === 0) return /* @__PURE__ */ jsx(EmptyItem, { children:
|
|
30075
|
+
if (flat.length === 0) return /* @__PURE__ */ jsx(EmptyItem, { children: messages.select.empty });
|
|
29073
30076
|
return /* @__PURE__ */ jsxs("div", { className: "flex min-h-0 flex-1 flex-col", children: [
|
|
29074
30077
|
showSearch && /* @__PURE__ */ jsx(
|
|
29075
30078
|
"div",
|
|
@@ -29084,7 +30087,7 @@ function OptionList({
|
|
|
29084
30087
|
value: search,
|
|
29085
30088
|
onValueChange: setSearch,
|
|
29086
30089
|
disabled,
|
|
29087
|
-
placeholder:
|
|
30090
|
+
placeholder: messages.common.search,
|
|
29088
30091
|
clearable: true,
|
|
29089
30092
|
width: "100%"
|
|
29090
30093
|
}
|
|
@@ -29102,7 +30105,7 @@ function OptionList({
|
|
|
29102
30105
|
"pb-[var(--cmp-chipFilter-listbox-list-paddingY)]"
|
|
29103
30106
|
),
|
|
29104
30107
|
children: [
|
|
29105
|
-
showSearch && filteredOptions.length === 0 && /* @__PURE__ */ jsx(EmptyItem, { children:
|
|
30108
|
+
showSearch && filteredOptions.length === 0 && /* @__PURE__ */ jsx(EmptyItem, { children: messages.chipFilter.noSearchResults }),
|
|
29106
30109
|
filteredOptions.map((option, index) => {
|
|
29107
30110
|
const rowKey = `${option.value}-${index}`;
|
|
29108
30111
|
if (option.isGroup) {
|
|
@@ -29388,7 +30391,9 @@ var SChipInput = /* @__PURE__ */ forwardRef(function SChipInput2({
|
|
|
29388
30391
|
className,
|
|
29389
30392
|
style
|
|
29390
30393
|
}, ref) {
|
|
29391
|
-
const
|
|
30394
|
+
const runRules2 = useRunRules();
|
|
30395
|
+
const { input: ti, chipInput: t, select: selectT } = useLocale().messages;
|
|
30396
|
+
const placeholder = placeholderProp ?? (separators?.includes(",") ? t.placeholderWithComma : t.placeholder);
|
|
29392
30397
|
const autoId = useId();
|
|
29393
30398
|
const controlId = `${autoId}-input`;
|
|
29394
30399
|
const resolvedName = name ?? autoId;
|
|
@@ -29418,19 +30423,18 @@ var SChipInput = /* @__PURE__ */ forwardRef(function SChipInput2({
|
|
|
29418
30423
|
const duplicateMessage = useMemo(() => {
|
|
29419
30424
|
const seen = /* @__PURE__ */ new Set();
|
|
29420
30425
|
for (const v of values) {
|
|
29421
|
-
if (seen.has(v))
|
|
29422
|
-
return duplicateLabel ? `\uC774\uBBF8 \uC785\uB825\uB41C ${duplicateLabel}\uC785\uB2C8\uB2E4.` : "\uC911\uBCF5\uB41C \uAC12\uC774 \uC874\uC7AC\uD569\uB2C8\uB2E4.";
|
|
30426
|
+
if (seen.has(v)) return duplicateLabel ? t.duplicateNamed(duplicateLabel) : t.duplicate;
|
|
29423
30427
|
seen.add(v);
|
|
29424
30428
|
}
|
|
29425
30429
|
return "";
|
|
29426
|
-
}, [values, duplicateLabel]);
|
|
29427
|
-
const ruleMessage = useMemo(() =>
|
|
30430
|
+
}, [values, duplicateLabel, t]);
|
|
30431
|
+
const ruleMessage = useMemo(() => runRules2(values, rules), [runRules2, values, rules]);
|
|
29428
30432
|
const resolvedErrorMessage = duplicateMessage || ruleMessage || errorMessage;
|
|
29429
30433
|
const resolvedError = error || duplicateMessage !== "" || ruleMessage !== "";
|
|
29430
30434
|
const resolvedStatus = status ?? (resolvedError ? "error" : void 0);
|
|
29431
30435
|
useFormField({
|
|
29432
30436
|
name,
|
|
29433
|
-
validate: () =>
|
|
30437
|
+
validate: () => runRules2(values, rules) === "" && duplicateMessage === "",
|
|
29434
30438
|
resetValidation: () => {
|
|
29435
30439
|
}
|
|
29436
30440
|
});
|
|
@@ -29730,18 +30734,14 @@ var SChipInput = /* @__PURE__ */ forwardRef(function SChipInput2({
|
|
|
29730
30734
|
style: { width: 1, height: 12, backgroundColor: "var(--color-divider-default)" }
|
|
29731
30735
|
}
|
|
29732
30736
|
),
|
|
29733
|
-
showMaxCount && /* @__PURE__ */
|
|
30737
|
+
showMaxCount && /* @__PURE__ */ jsx(
|
|
29734
30738
|
"span",
|
|
29735
30739
|
{
|
|
29736
30740
|
className: cn(
|
|
29737
30741
|
"s-chip-input__max-count text-12",
|
|
29738
30742
|
isMax ? "text-(--sys-color-fg-warning)" : "text-(--cmp-chipInput-text-placeholder)"
|
|
29739
30743
|
),
|
|
29740
|
-
children:
|
|
29741
|
-
"\uCD5C\uB300 ",
|
|
29742
|
-
maxCount,
|
|
29743
|
-
"\uAC1C"
|
|
29744
|
-
]
|
|
30744
|
+
children: t.maxCount(maxCount)
|
|
29745
30745
|
}
|
|
29746
30746
|
),
|
|
29747
30747
|
showResetLink && /* @__PURE__ */ jsx(
|
|
@@ -29750,7 +30750,7 @@ var SChipInput = /* @__PURE__ */ forwardRef(function SChipInput2({
|
|
|
29750
30750
|
className: "s-chip-input__reset",
|
|
29751
30751
|
icon: "reset",
|
|
29752
30752
|
iconColor: "var(--color-grey-65)",
|
|
29753
|
-
label:
|
|
30753
|
+
label: ti.clearInput,
|
|
29754
30754
|
underline: true,
|
|
29755
30755
|
disabled,
|
|
29756
30756
|
onClick: reset,
|
|
@@ -29781,7 +30781,7 @@ var SChipInput = /* @__PURE__ */ forwardRef(function SChipInput2({
|
|
|
29781
30781
|
className: "s-chip-input__suggestions flex w-full flex-col outline-none",
|
|
29782
30782
|
onMouseDown: (e) => e.preventDefault(),
|
|
29783
30783
|
children: [
|
|
29784
|
-
loading2 && /* @__PURE__ */ jsx("div", { className: "s-chip-input__suggestions-empty p-sd-12 text-center text-12 leading-sd-20 text-(--color-grey-65)", children:
|
|
30784
|
+
loading2 && /* @__PURE__ */ jsx("div", { className: "s-chip-input__suggestions-empty p-sd-12 text-center text-12 leading-sd-20 text-(--color-grey-65)", children: selectT.loading }),
|
|
29785
30785
|
!effectiveAutocomplete ? /* @__PURE__ */ jsx("div", { className: "flex flex-wrap gap-sd-8 px-sd-12 py-sd-6", children: items.map((item4, i) => {
|
|
29786
30786
|
const selected = values.includes(item4);
|
|
29787
30787
|
const active = i === activeIndex && !selected;
|
|
@@ -29868,7 +30868,7 @@ var SBarcodeInput = /* @__PURE__ */ forwardRef(
|
|
|
29868
30868
|
clearable = false,
|
|
29869
30869
|
autoFocus,
|
|
29870
30870
|
name,
|
|
29871
|
-
placeholder
|
|
30871
|
+
placeholder: placeholderProp,
|
|
29872
30872
|
disabled = false,
|
|
29873
30873
|
readOnly = false,
|
|
29874
30874
|
rules,
|
|
@@ -29896,6 +30896,9 @@ var SBarcodeInput = /* @__PURE__ */ forwardRef(
|
|
|
29896
30896
|
className,
|
|
29897
30897
|
style
|
|
29898
30898
|
}, ref) {
|
|
30899
|
+
const runRules2 = useRunRules();
|
|
30900
|
+
const { common: tc, input: ti } = useLocale().messages;
|
|
30901
|
+
const placeholder = placeholderProp ?? ti.placeholder;
|
|
29899
30902
|
const f = FONT3[size];
|
|
29900
30903
|
const [ruleError, setRuleError] = useState("");
|
|
29901
30904
|
const controlId = useFieldControlId();
|
|
@@ -29903,7 +30906,7 @@ var SBarcodeInput = /* @__PURE__ */ forwardRef(
|
|
|
29903
30906
|
useFormField({
|
|
29904
30907
|
name,
|
|
29905
30908
|
validate: () => {
|
|
29906
|
-
const msg =
|
|
30909
|
+
const msg = runRules2(value, rules);
|
|
29907
30910
|
setRuleError(msg);
|
|
29908
30911
|
return msg === "";
|
|
29909
30912
|
},
|
|
@@ -29969,11 +30972,11 @@ var SBarcodeInput = /* @__PURE__ */ forwardRef(
|
|
|
29969
30972
|
autoFocus,
|
|
29970
30973
|
onChange: (e) => {
|
|
29971
30974
|
onValueChange?.(e.target.value);
|
|
29972
|
-
if (ruleError !== "") setRuleError(
|
|
30975
|
+
if (ruleError !== "") setRuleError(runRules2(e.target.value, rules));
|
|
29973
30976
|
},
|
|
29974
30977
|
onFocus: () => onFocus?.(),
|
|
29975
30978
|
onBlur: (e) => {
|
|
29976
|
-
if (rules && rules.length > 0) setRuleError(
|
|
30979
|
+
if (rules && rules.length > 0) setRuleError(runRules2(e.target.value, rules));
|
|
29977
30980
|
onBlur?.();
|
|
29978
30981
|
},
|
|
29979
30982
|
className: cn(
|
|
@@ -29997,10 +31000,10 @@ var SBarcodeInput = /* @__PURE__ */ forwardRef(
|
|
|
29997
31000
|
{
|
|
29998
31001
|
icon: "close",
|
|
29999
31002
|
size: "xxs",
|
|
30000
|
-
ariaLabel:
|
|
31003
|
+
ariaLabel: tc.clear,
|
|
30001
31004
|
onClick: () => {
|
|
30002
31005
|
onValueChange?.("");
|
|
30003
|
-
setRuleError(
|
|
31006
|
+
setRuleError(runRules2("", rules));
|
|
30004
31007
|
}
|
|
30005
31008
|
}
|
|
30006
31009
|
)
|
|
@@ -30061,11 +31064,11 @@ function parseTimeValue(value) {
|
|
|
30061
31064
|
function formatTimeValue(hour, minute) {
|
|
30062
31065
|
return `${padTimePart(clampTimePart(hour, 0, 23))}:${padTimePart(clampTimePart(minute, 0, 59))}`;
|
|
30063
31066
|
}
|
|
30064
|
-
function formatTimeDisplay(value, type) {
|
|
31067
|
+
function formatTimeDisplay(value, type, t) {
|
|
30065
31068
|
if (value == null || value === "") return "";
|
|
30066
31069
|
const { hour, minute } = parseTimeValue(value);
|
|
30067
31070
|
if (type === "default") return formatTimeValue(hour, minute);
|
|
30068
|
-
const meridiem = hour >= 12 ?
|
|
31071
|
+
const meridiem = hour >= 12 ? t.pm : t.am;
|
|
30069
31072
|
const displayHour = hour % 12 === 0 ? 12 : hour % 12;
|
|
30070
31073
|
return `${meridiem} ${padTimePart(displayHour)}:${padTimePart(minute)}`;
|
|
30071
31074
|
}
|
|
@@ -30148,6 +31151,7 @@ function TimeListbox({
|
|
|
30148
31151
|
labelPrefix,
|
|
30149
31152
|
elevated = true
|
|
30150
31153
|
}) {
|
|
31154
|
+
const t = useLocale().messages.date;
|
|
30151
31155
|
const toState = (v) => v ? parseTimeValue(v) : null;
|
|
30152
31156
|
const [time, setTime] = useState(() => toState(value));
|
|
30153
31157
|
useEffect(() => {
|
|
@@ -30171,13 +31175,13 @@ function TimeListbox({
|
|
|
30171
31175
|
const hour = time?.hour;
|
|
30172
31176
|
const minute = time?.minute ?? 0;
|
|
30173
31177
|
const meridiem = hour === void 0 ? void 0 : hour >= 12 ? "PM" : "AM";
|
|
30174
|
-
const prefix = labelPrefix
|
|
31178
|
+
const prefix = labelPrefix ?? "";
|
|
30175
31179
|
const meridiemItems = ["AM", "PM"].map((item4) => {
|
|
30176
31180
|
const base = item4 === "AM" ? 0 : 12;
|
|
30177
31181
|
const range = HOURS_24.slice(base, base + 12);
|
|
30178
31182
|
return {
|
|
30179
31183
|
key: item4,
|
|
30180
|
-
label: item4 === "AM" ?
|
|
31184
|
+
label: item4 === "AM" ? t.am : t.pm,
|
|
30181
31185
|
selected: meridiem === item4,
|
|
30182
31186
|
disabled: range.every(hourBlocked),
|
|
30183
31187
|
onSelect: () => {
|
|
@@ -30191,14 +31195,14 @@ function TimeListbox({
|
|
|
30191
31195
|
const h = display % 12 + (meridiem === "PM" ? 12 : 0);
|
|
30192
31196
|
return {
|
|
30193
31197
|
key: String(display),
|
|
30194
|
-
label:
|
|
31198
|
+
label: t.hourItem(padTimePart(display)),
|
|
30195
31199
|
selected: hour === h,
|
|
30196
31200
|
disabled: hourBlocked(h),
|
|
30197
31201
|
onSelect: () => commit([h], { hour: h, minute }, "hour")
|
|
30198
31202
|
};
|
|
30199
31203
|
}) : HOURS_24.map((h) => ({
|
|
30200
31204
|
key: String(h),
|
|
30201
|
-
label:
|
|
31205
|
+
label: t.hourItem(padTimePart(h)),
|
|
30202
31206
|
selected: hour === h,
|
|
30203
31207
|
disabled: hourBlocked(h),
|
|
30204
31208
|
onSelect: () => commit([h], { hour: h, minute }, "hour")
|
|
@@ -30206,7 +31210,7 @@ function TimeListbox({
|
|
|
30206
31210
|
const minuteHour = hour ?? (meridiem === "PM" ? 12 : 0);
|
|
30207
31211
|
const minuteItems = minutes.map((m) => ({
|
|
30208
31212
|
key: String(m),
|
|
30209
|
-
label:
|
|
31213
|
+
label: t.minuteItem(padTimePart(m)),
|
|
30210
31214
|
selected: time != null && minute === m,
|
|
30211
31215
|
disabled: blocked(minuteHour, m),
|
|
30212
31216
|
onSelect: () => commit([minuteHour], { hour: minuteHour, minute: m }, "minute")
|
|
@@ -30228,12 +31232,12 @@ function TimeListbox({
|
|
|
30228
31232
|
style: { height: MODE_LIST_HEIGHT },
|
|
30229
31233
|
children: [
|
|
30230
31234
|
showMeridiem && /* @__PURE__ */ jsxs(Fragment, { children: [
|
|
30231
|
-
/* @__PURE__ */ jsx(ListColumn, { ariaLabel:
|
|
31235
|
+
/* @__PURE__ */ jsx(ListColumn, { ariaLabel: t.meridiemAria(prefix), items: meridiemItems }),
|
|
30232
31236
|
divider
|
|
30233
31237
|
] }),
|
|
30234
|
-
/* @__PURE__ */ jsx(ListColumn, { ariaLabel:
|
|
31238
|
+
/* @__PURE__ */ jsx(ListColumn, { ariaLabel: t.hourAria(prefix), items: hourItems }),
|
|
30235
31239
|
divider,
|
|
30236
|
-
/* @__PURE__ */ jsx(ListColumn, { ariaLabel:
|
|
31240
|
+
/* @__PURE__ */ jsx(ListColumn, { ariaLabel: t.minuteAria(prefix), items: minuteItems })
|
|
30237
31241
|
]
|
|
30238
31242
|
}
|
|
30239
31243
|
);
|
|
@@ -30270,6 +31274,8 @@ function STimePicker({
|
|
|
30270
31274
|
className,
|
|
30271
31275
|
style
|
|
30272
31276
|
}) {
|
|
31277
|
+
const runRules2 = useRunRules();
|
|
31278
|
+
const t = useLocale().messages.date;
|
|
30273
31279
|
const portalContainer = usePortalContainer();
|
|
30274
31280
|
const [open, setOpen] = useState(false);
|
|
30275
31281
|
const triggerId = useFieldControlId();
|
|
@@ -30279,12 +31285,16 @@ function STimePicker({
|
|
|
30279
31285
|
const dims = TIMEPICKER_SIZE_CONFIG[size] ?? TIMEPICKER_SIZE_CONFIG.sm;
|
|
30280
31286
|
const normalized = value ? formatTimeValue(parseTimeValue(value).hour, parseTimeValue(value).minute) : null;
|
|
30281
31287
|
const effectiveShowMeridiem = showMeridiem ?? type === "midday";
|
|
30282
|
-
const displayText = formatTimeDisplay(
|
|
31288
|
+
const displayText = formatTimeDisplay(
|
|
31289
|
+
normalized,
|
|
31290
|
+
effectiveShowMeridiem ? "midday" : "default",
|
|
31291
|
+
t
|
|
31292
|
+
);
|
|
30283
31293
|
const hasValue = normalized != null && normalized !== "";
|
|
30284
31294
|
useFormField({
|
|
30285
31295
|
name,
|
|
30286
31296
|
validate: () => {
|
|
30287
|
-
const msg =
|
|
31297
|
+
const msg = runRules2(value, rules);
|
|
30288
31298
|
setRuleError(msg);
|
|
30289
31299
|
return msg === "";
|
|
30290
31300
|
},
|
|
@@ -30296,11 +31306,11 @@ function STimePicker({
|
|
|
30296
31306
|
if (disabled) return;
|
|
30297
31307
|
setOpen(next);
|
|
30298
31308
|
onOpenChange?.(next);
|
|
30299
|
-
if (!next && rules && rules.length > 0) setRuleError(
|
|
31309
|
+
if (!next && rules && rules.length > 0) setRuleError(runRules2(value, rules));
|
|
30300
31310
|
};
|
|
30301
31311
|
const commitValue = (next) => {
|
|
30302
31312
|
onValueChange?.(next);
|
|
30303
|
-
if (rules && rules.length > 0) setRuleError(
|
|
31313
|
+
if (rules && rules.length > 0) setRuleError(runRules2(next, rules));
|
|
30304
31314
|
};
|
|
30305
31315
|
return /* @__PURE__ */ jsx(
|
|
30306
31316
|
SField,
|
|
@@ -30379,7 +31389,7 @@ function STimePicker({
|
|
|
30379
31389
|
{
|
|
30380
31390
|
icon: "close",
|
|
30381
31391
|
size: "xs",
|
|
30382
|
-
ariaLabel:
|
|
31392
|
+
ariaLabel: t.clearTime,
|
|
30383
31393
|
onClick: (event) => {
|
|
30384
31394
|
event.stopPropagation();
|
|
30385
31395
|
commitValue(null);
|
|
@@ -30434,9 +31444,9 @@ function normalizeTimeRangeValue(value, rangeOrder = "strict") {
|
|
|
30434
31444
|
}
|
|
30435
31445
|
return normalized;
|
|
30436
31446
|
}
|
|
30437
|
-
function formatTimeRangeDisplay(value, type) {
|
|
31447
|
+
function formatTimeRangeDisplay(value, type, t) {
|
|
30438
31448
|
if (value == null || value[0] === "" || value[1] === "") return "";
|
|
30439
|
-
return `${formatTimeDisplay(value[0], type)} ~ ${formatTimeDisplay(value[1], type)}`;
|
|
31449
|
+
return `${formatTimeDisplay(value[0], type, t)} ~ ${formatTimeDisplay(value[1], type, t)}`;
|
|
30440
31450
|
}
|
|
30441
31451
|
var MIDDAY_FIELD_MIN_WIDTH = {
|
|
30442
31452
|
sm: 178,
|
|
@@ -30457,6 +31467,7 @@ function RangeTimeSelector({
|
|
|
30457
31467
|
rangeOrder,
|
|
30458
31468
|
onChange
|
|
30459
31469
|
}) {
|
|
31470
|
+
const t = useLocale().messages.date;
|
|
30460
31471
|
const range = value ?? ["00:00", "23:59"];
|
|
30461
31472
|
const strict = rangeOrder !== "allow-cross-day";
|
|
30462
31473
|
const change = (side, time) => {
|
|
@@ -30479,7 +31490,7 @@ function RangeTimeSelector({
|
|
|
30479
31490
|
value: side === "start" ? range[0] : range[1],
|
|
30480
31491
|
showMeridiem,
|
|
30481
31492
|
minuteStep,
|
|
30482
|
-
labelPrefix: side === "start" ?
|
|
31493
|
+
labelPrefix: side === "start" ? t.start : t.end,
|
|
30483
31494
|
elevated: false,
|
|
30484
31495
|
isDisabled: strict && side === "end" ? (minutes) => minutes < toMinutes(range[0]) : void 0,
|
|
30485
31496
|
onChange: (time) => change(side, time)
|
|
@@ -30500,9 +31511,9 @@ function RangeTimeSelector({
|
|
|
30500
31511
|
boxShadow: "var(--shadow-spread-sm), var(--shadow-spread-md)"
|
|
30501
31512
|
},
|
|
30502
31513
|
children: [
|
|
30503
|
-
renderPanel("start",
|
|
31514
|
+
renderPanel("start", t.startTime),
|
|
30504
31515
|
/* @__PURE__ */ jsx("div", { className: "self-stretch w-px bg-[var(--sys-color-divider-default)]" }),
|
|
30505
|
-
renderPanel("end",
|
|
31516
|
+
renderPanel("end", t.endTime)
|
|
30506
31517
|
]
|
|
30507
31518
|
}
|
|
30508
31519
|
);
|
|
@@ -30540,6 +31551,8 @@ function STimeRangePicker({
|
|
|
30540
31551
|
className,
|
|
30541
31552
|
style
|
|
30542
31553
|
}) {
|
|
31554
|
+
const runRules2 = useRunRules();
|
|
31555
|
+
const t = useLocale().messages.date;
|
|
30543
31556
|
const portalContainer = usePortalContainer();
|
|
30544
31557
|
const [open, setOpen] = useState(false);
|
|
30545
31558
|
const triggerId = useFieldControlId();
|
|
@@ -30551,13 +31564,14 @@ function STimeRangePicker({
|
|
|
30551
31564
|
const effectiveShowMeridiem = showMeridiem ?? type === "midday";
|
|
30552
31565
|
const displayText = formatTimeRangeDisplay(
|
|
30553
31566
|
normalized,
|
|
30554
|
-
effectiveShowMeridiem ? "midday" : "default"
|
|
31567
|
+
effectiveShowMeridiem ? "midday" : "default",
|
|
31568
|
+
t
|
|
30555
31569
|
);
|
|
30556
31570
|
const hasValue = normalized != null && normalized[0] !== "" && normalized[1] !== "";
|
|
30557
31571
|
useFormField({
|
|
30558
31572
|
name,
|
|
30559
31573
|
validate: () => {
|
|
30560
|
-
const msg =
|
|
31574
|
+
const msg = runRules2(value, rules);
|
|
30561
31575
|
setRuleError(msg);
|
|
30562
31576
|
return msg === "";
|
|
30563
31577
|
},
|
|
@@ -30569,11 +31583,11 @@ function STimeRangePicker({
|
|
|
30569
31583
|
if (disabled) return;
|
|
30570
31584
|
setOpen(next);
|
|
30571
31585
|
onOpenChange?.(next);
|
|
30572
|
-
if (!next && rules && rules.length > 0) setRuleError(
|
|
31586
|
+
if (!next && rules && rules.length > 0) setRuleError(runRules2(value, rules));
|
|
30573
31587
|
};
|
|
30574
31588
|
const commitValue = (next) => {
|
|
30575
31589
|
onValueChange?.(next);
|
|
30576
|
-
if (rules && rules.length > 0) setRuleError(
|
|
31590
|
+
if (rules && rules.length > 0) setRuleError(runRules2(next, rules));
|
|
30577
31591
|
};
|
|
30578
31592
|
return /* @__PURE__ */ jsx(
|
|
30579
31593
|
SField,
|
|
@@ -30652,7 +31666,7 @@ function STimeRangePicker({
|
|
|
30652
31666
|
{
|
|
30653
31667
|
icon: "close",
|
|
30654
31668
|
size: "xs",
|
|
30655
|
-
ariaLabel:
|
|
31669
|
+
ariaLabel: t.clearTimeRange,
|
|
30656
31670
|
onClick: (event) => {
|
|
30657
31671
|
event.stopPropagation();
|
|
30658
31672
|
commitValue(null);
|