@semcore/d3-chart 2.6.1 → 2.7.1
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/CHANGELOG.md +12 -0
- package/lib/cjs/Area.js +9 -9
- package/lib/cjs/Axis.js +14 -14
- package/lib/cjs/Bar.js +8 -8
- package/lib/cjs/Bubble.js +10 -10
- package/lib/cjs/Donut.js +7 -7
- package/lib/cjs/Dots.js +9 -9
- package/lib/cjs/HorizontalBar.js +8 -8
- package/lib/cjs/Hover.js +4 -4
- package/lib/cjs/Line.js +8 -8
- package/lib/cjs/Plot.js +4 -4
- package/lib/cjs/RadialTree.js +11 -11
- package/lib/cjs/ReferenceLine.js +10 -10
- package/lib/cjs/ScatterPlot.js +7 -7
- package/lib/cjs/Tooltip.js +8 -8
- package/lib/cjs/Venn.js +7 -7
- package/lib/cjs/a11y/PlotA11yModule.js +9 -11
- package/lib/cjs/a11y/PlotA11yModule.js.map +1 -1
- package/lib/cjs/a11y/PlotA11yView.js +10 -5
- package/lib/cjs/a11y/PlotA11yView.js.map +1 -1
- package/lib/cjs/a11y/intl.js +1 -3
- package/lib/cjs/a11y/intl.js.map +1 -1
- package/lib/cjs/a11y/translations/module/{translations.js → __intergalactic-dynamic-locales.js} +4 -4
- package/lib/cjs/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -0
- package/lib/cjs/a11y/translations/view/{translations.js → __intergalactic-dynamic-locales.js} +4 -4
- package/lib/cjs/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -0
- package/lib/es6/Area.js +9 -9
- package/lib/es6/Axis.js +14 -14
- package/lib/es6/Bar.js +8 -8
- package/lib/es6/Bubble.js +10 -10
- package/lib/es6/Donut.js +7 -7
- package/lib/es6/Dots.js +9 -9
- package/lib/es6/HorizontalBar.js +8 -8
- package/lib/es6/Hover.js +4 -4
- package/lib/es6/Line.js +8 -8
- package/lib/es6/Plot.js +4 -4
- package/lib/es6/RadialTree.js +11 -11
- package/lib/es6/ReferenceLine.js +10 -10
- package/lib/es6/ScatterPlot.js +7 -7
- package/lib/es6/Tooltip.js +8 -8
- package/lib/es6/Venn.js +7 -7
- package/lib/es6/a11y/PlotA11yModule.js +10 -12
- package/lib/es6/a11y/PlotA11yModule.js.map +1 -1
- package/lib/es6/a11y/PlotA11yView.js +8 -5
- package/lib/es6/a11y/PlotA11yView.js.map +1 -1
- package/lib/es6/a11y/intl.js +1 -2
- package/lib/es6/a11y/intl.js.map +1 -1
- package/lib/es6/a11y/translations/module/{translations.js → __intergalactic-dynamic-locales.js} +2 -2
- package/lib/es6/a11y/translations/module/__intergalactic-dynamic-locales.js.map +1 -0
- package/lib/es6/a11y/translations/view/{translations.js → __intergalactic-dynamic-locales.js} +2 -2
- package/lib/es6/a11y/translations/view/__intergalactic-dynamic-locales.js.map +1 -0
- package/lib/types/a11y/intl.d.ts +3 -7
- package/lib/types/a11y/translations/module/__intergalactic-dynamic-locales.d.ts +57 -0
- package/lib/types/a11y/translations/view/__intergalactic-dynamic-locales.d.ts +464 -0
- package/package.json +2 -2
- package/lib/cjs/a11y/translations/module/translations.js.map +0 -1
- package/lib/cjs/a11y/translations/view/translations.js.map +0 -1
- package/lib/es6/a11y/translations/module/translations.js.map +0 -1
- package/lib/es6/a11y/translations/view/translations.js.map +0 -1
- package/lib/types/a11y/translations/module/translations.d.ts +0 -5
- package/lib/types/a11y/translations/view/translations.d.ts +0 -5
package/lib/es6/Tooltip.js
CHANGED
|
@@ -34,17 +34,17 @@ var style = (
|
|
|
34
34
|
/*__reshadow_css_start__*/
|
|
35
35
|
_sstyled.insert(
|
|
36
36
|
/*__inner_css_start__*/
|
|
37
|
-
".
|
|
37
|
+
".___STooltip_ibw7v_gg_{font-size:var(--intergalactic-fs-100,12px);line-height:var(--intergalactic-lh-100,133%);position:relative;background-color:var(--intergalactic-bg-primary-neutral,#fff);border-radius:var(--intergalactic-rounded-medium,6px);border:1px solid var(--intergalactic-border-secondary,#e0e1e9);box-sizing:border-box;box-shadow:var(--intergalactic-box-shadow-popper,0 1px 12px 0 rgba(25,27,35,.15));padding:var(--intergalactic-spacing-3x,12px)}.___STitle_ibw7v_gg_{color:var(--intergalactic-text-secondary,#6c6e79);margin-bottom:var(--intergalactic-spacing-2x,8px)}.___SDotGroup_ibw7v_gg_{display:flex;align-items:center}.___SDot_ibw7v_gg_{width:8px;height:8px;border-radius:50%;margin-right:var(--intergalactic-spacing-2x,8px);background:var(--intergalactic-icon-secondary-info,#2bb3ff)}.___SDot_ibw7v_gg_.__color_ibw7v_gg_{background:var(--color_ibw7v)}"
|
|
38
38
|
/*__inner_css_end__*/
|
|
39
|
-
, "
|
|
39
|
+
, "ibw7v_gg_")
|
|
40
40
|
/*__reshadow_css_end__*/
|
|
41
41
|
, {
|
|
42
|
-
"__STooltip": "
|
|
43
|
-
"__STitle": "
|
|
44
|
-
"__SDotGroup": "
|
|
45
|
-
"__SDot": "
|
|
46
|
-
"_color": "
|
|
47
|
-
"--color": "--
|
|
42
|
+
"__STooltip": "___STooltip_ibw7v_gg_",
|
|
43
|
+
"__STitle": "___STitle_ibw7v_gg_",
|
|
44
|
+
"__SDotGroup": "___SDotGroup_ibw7v_gg_",
|
|
45
|
+
"__SDot": "___SDot_ibw7v_gg_",
|
|
46
|
+
"_color": "__color_ibw7v_gg_",
|
|
47
|
+
"--color": "--color_ibw7v"
|
|
48
48
|
});
|
|
49
49
|
|
|
50
50
|
var TooltipRoot = /*#__PURE__*/function (_Component) {
|
package/lib/es6/Venn.js
CHANGED
|
@@ -26,16 +26,16 @@ var style = (
|
|
|
26
26
|
/*__reshadow_css_start__*/
|
|
27
27
|
_sstyled.insert(
|
|
28
28
|
/*__inner_css_start__*/
|
|
29
|
-
".
|
|
29
|
+
".___SCircle_gby1l_gg_{fill:var(--intergalactic-chart-palette-order-green,#59ddaa);stroke:var(--intergalactic-chart-grid-border,#fff);stroke-width:2px;fill-opacity:.5;transition-property:cx,cy;transition-duration:var(--duration_gby1l);transition-timing-function:ease-in-out}.___SCircle_gby1l_gg_:hover{fill-opacity:.7}.___SCircle_gby1l_gg_.__color_gby1l_gg_{fill:var(--color_gby1l)}.___SIntersection_gby1l_gg_{stroke:var(--intergalactic-chart-grid-border,#fff);stroke-width:2px;fill-opacity:0}.___SIntersection_gby1l_gg_:hover{fill-opacity:.1}"
|
|
30
30
|
/*__inner_css_end__*/
|
|
31
|
-
, "
|
|
31
|
+
, "gby1l_gg_")
|
|
32
32
|
/*__reshadow_css_end__*/
|
|
33
33
|
, {
|
|
34
|
-
"__SCircle": "
|
|
35
|
-
"--duration": "--
|
|
36
|
-
"_color": "
|
|
37
|
-
"--color": "--
|
|
38
|
-
"__SIntersection": "
|
|
34
|
+
"__SCircle": "___SCircle_gby1l_gg_",
|
|
35
|
+
"--duration": "--duration_gby1l",
|
|
36
|
+
"_color": "__color_gby1l_gg_",
|
|
37
|
+
"--color": "--color_gby1l",
|
|
38
|
+
"__SIntersection": "___SIntersection_gby1l_gg_"
|
|
39
39
|
});
|
|
40
40
|
|
|
41
41
|
var VennRoot = /*#__PURE__*/function (_Component) {
|
|
@@ -12,7 +12,7 @@ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { va
|
|
|
12
12
|
|
|
13
13
|
import React from 'react';
|
|
14
14
|
import { normalizeLocale } from './locale';
|
|
15
|
-
import {
|
|
15
|
+
import { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';
|
|
16
16
|
import { Root, sstyled } from '@semcore/core';
|
|
17
17
|
|
|
18
18
|
/*__reshadow-styles__:"../style/plotA11yModule.shadow.css"*/
|
|
@@ -20,14 +20,14 @@ var styles = (
|
|
|
20
20
|
/*__reshadow_css_start__*/
|
|
21
21
|
_sstyled.insert(
|
|
22
22
|
/*__inner_css_start__*/
|
|
23
|
-
".
|
|
23
|
+
".___SPlotA11yModule_vk0ol_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0}.___SPlotA11yModule_vk0ol_gg_:focus{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1}"
|
|
24
24
|
/*__inner_css_end__*/
|
|
25
|
-
, "
|
|
25
|
+
, "vk0ol_gg_")
|
|
26
26
|
/*__reshadow_css_end__*/
|
|
27
27
|
, {
|
|
28
|
-
"__SPlotA11yModule": "
|
|
28
|
+
"__SPlotA11yModule": "___SPlotA11yModule_vk0ol_gg_"
|
|
29
29
|
});
|
|
30
|
-
import { Context as I18nContext } from '@semcore/utils/lib/enhances/WithI18n';
|
|
30
|
+
import { Context as I18nContext, useI18n } from '@semcore/utils/lib/enhances/WithI18n';
|
|
31
31
|
import { Box } from '@semcore/flex-box';
|
|
32
32
|
var globalWasFocused = false;
|
|
33
33
|
var globalNavWithKeyboard = false;
|
|
@@ -71,11 +71,9 @@ export var PlotA11yModule = function PlotA11yModule(props) {
|
|
|
71
71
|
var locale = React.useMemo(function () {
|
|
72
72
|
var _props$locale;
|
|
73
73
|
|
|
74
|
-
return normalizeLocale((_props$locale = props.locale) !== null && _props$locale !== void 0 ? _props$locale : contextLocale,
|
|
74
|
+
return normalizeLocale((_props$locale = props.locale) !== null && _props$locale !== void 0 ? _props$locale : contextLocale, localizedMessages);
|
|
75
75
|
}, [props.locale]);
|
|
76
|
-
var
|
|
77
|
-
return locale ? translations[locale] : {};
|
|
78
|
-
}, [locale]);
|
|
76
|
+
var t = useI18n(localizedMessages, locale);
|
|
79
77
|
React.useEffect(function () {
|
|
80
78
|
var _props$plotRef$curren;
|
|
81
79
|
|
|
@@ -148,7 +146,7 @@ export var PlotA11yModule = function PlotA11yModule(props) {
|
|
|
148
146
|
return _ref3 = sstyled(styles), /*#__PURE__*/React.createElement(SPlotA11yModule, _ref3.cn("SPlotA11yModule", _objectSpread({}, _assignProps({
|
|
149
147
|
"tabIndex": 0,
|
|
150
148
|
"aria-live": "assertive"
|
|
151
|
-
}, _ref))),
|
|
149
|
+
}, _ref))), t('failed'));
|
|
152
150
|
}
|
|
153
151
|
|
|
154
152
|
if (loading) {
|
|
@@ -157,12 +155,12 @@ export var PlotA11yModule = function PlotA11yModule(props) {
|
|
|
157
155
|
return _ref4 = sstyled(styles), /*#__PURE__*/React.createElement(SPlotA11yModule, _ref4.cn("SPlotA11yModule", _objectSpread({}, _assignProps2({
|
|
158
156
|
"tabIndex": 0,
|
|
159
157
|
"aria-live": "polite"
|
|
160
|
-
}, _ref))),
|
|
158
|
+
}, _ref))), t('loading'));
|
|
161
159
|
}
|
|
162
160
|
|
|
163
161
|
return _ref5 = sstyled(styles), /*#__PURE__*/React.createElement(SPlotA11yModule, _ref5.cn("SPlotA11yModule", _objectSpread({}, _assignProps3({
|
|
164
162
|
"tabIndex": 0,
|
|
165
163
|
"onFocus": hadnleHiddenElementsFocus
|
|
166
|
-
}, _ref))),
|
|
164
|
+
}, _ref))), t('disabled'));
|
|
167
165
|
};
|
|
168
166
|
//# sourceMappingURL=PlotA11yModule.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlotA11yModule.js","names":["React","normalizeLocale","
|
|
1
|
+
{"version":3,"file":"PlotA11yModule.js","names":["React","normalizeLocale","localizedMessages","Root","sstyled","Context","I18nContext","useI18n","Box","globalWasFocused","globalNavWithKeyboard","PlotA11yModule","props","SPlotA11yModule","useState","wasFocused","setWasFocused","navWithKeyboard","setNavWithKeyboard","plotA11yView","setPlotA11yView","hadnleHiddenElementsFocus","useCallback","loading","setLoading","error","setError","contextLocale","useContext","locale","useMemo","t","useEffect","focusListener","plotRef","current","addEventListener","removeEventListener","keyboardListener","event","navigationKeys","includes","key","document","body","shouldDisplayView","then","PlotA11yView","Component","console","styles"],"sources":["../../../src/a11y/PlotA11yModule.tsx"],"sourcesContent":["import React from 'react';\nimport { DataStructureHints, PartialDataSummarizationConfig } from './hints';\nimport { normalizeLocale } from './locale';\nimport { localizedMessages } from './translations/module/__intergalactic-dynamic-locales';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yModule.shadow.css';\nimport { Context as I18nContext, useI18n } from '@semcore/utils/lib/enhances/WithI18n';\nimport { Box } from '@semcore/flex-box';\n\nlet globalWasFocused = false;\nlet globalNavWithKeyboard = false;\n\nexport type A11yViewProps = {\n id: string;\n data: Record<string, unknown>[];\n hints: DataStructureHints;\n plotLabel: string;\n locale: NavigatorLanguage['language'];\n config: PartialDataSummarizationConfig;\n // eslint-disable-next-line ssr-friendly/no-dom-globals-in-module-scope\n plotRef: React.RefObject<Element>;\n};\n\nexport const PlotA11yModule: React.FC<A11yViewProps> = (props) => {\n const SPlotA11yModule = Root;\n const [wasFocused, setWasFocused] = React.useState(globalWasFocused);\n const [navWithKeyboard, setNavWithKeyboard] = React.useState(globalNavWithKeyboard);\n const [plotA11yView, setPlotA11yView] = React.useState<{\n Component: React.FC<A11yViewProps>;\n } | null>(null);\n\n const hadnleHiddenElementsFocus = React.useCallback(() => {\n setWasFocused(true);\n setNavWithKeyboard(true);\n }, []);\n\n const [loading, setLoading] = React.useState(false);\n const [error, setError] = React.useState<Error | null>(null);\n\n const contextLocale = React.useContext(I18nContext);\n const locale = React.useMemo(\n () => normalizeLocale(props.locale ?? contextLocale, localizedMessages),\n [props.locale],\n );\n const t = useI18n(localizedMessages, locale);\n\n React.useEffect(() => {\n if (wasFocused) return;\n const focusListener = () => {\n globalWasFocused = true;\n setWasFocused(true);\n };\n\n props.plotRef.current?.addEventListener('focus', focusListener);\n return () => props.plotRef.current?.removeEventListener('focus', focusListener);\n }, [wasFocused, props.plotRef]);\n React.useEffect(() => {\n if (navWithKeyboard) return;\n const keyboardListener = (event: Event) => {\n const navigationKeys = [\n 'Tab',\n 'ArrowUp',\n 'ArrowLeft',\n 'ArrowDown',\n 'ArrowRight',\n 'ArrowUp',\n 'ArrowLeft',\n ];\n if ('key' in event && navigationKeys.includes((event as KeyboardEvent).key)) {\n setNavWithKeyboard(true);\n globalNavWithKeyboard = true;\n }\n };\n document.body?.addEventListener('keydown', keyboardListener);\n return () => document.body?.removeEventListener('keydown', keyboardListener);\n }, [navWithKeyboard]);\n\n const shouldDisplayView = wasFocused && navWithKeyboard;\n\n React.useEffect(() => {\n if (!shouldDisplayView) return;\n if (plotA11yView) return;\n if (loading) return;\n\n setLoading(true);\n\n import('./PlotA11yView')\n .then(({ PlotA11yView }) => {\n setPlotA11yView({ Component: PlotA11yView });\n setLoading(false);\n setError(null);\n })\n .catch((error) => {\n // eslint-disable-next-line no-console\n console.error(error);\n setError(error);\n });\n }, [plotA11yView, shouldDisplayView, loading, setLoading]);\n\n if (plotA11yView) {\n return sstyled(styles)(\n <plotA11yView.Component {...props} locale={locale!} />,\n ) as React.ReactElement;\n }\n\n if (error) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live=\"assertive\">\n {t('failed')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n if (loading) {\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} aria-live=\"polite\">\n {t('loading')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n }\n\n return sstyled(styles)(\n <SPlotA11yModule render={Box} tabIndex={0} onFocus={hadnleHiddenElementsFocus}>\n {t('disabled')}\n </SPlotA11yModule>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
|
|
@@ -27,15 +27,17 @@ var styles = (
|
|
|
27
27
|
/*__reshadow_css_start__*/
|
|
28
28
|
_sstyled.insert(
|
|
29
29
|
/*__inner_css_start__*/
|
|
30
|
-
".
|
|
30
|
+
".___SPlotA11yView_m4mq4_gg_{-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none;opacity:0;background-color:var(--intergalactic-bg-primary-neutral,#fff);color:var(--intergalactic-text-primary,#191b23);border:3px solid var(--intergalactic-border-primary,#c4c7cf);font-size:var(--intergalactic-fs-50,10px);padding:2px;width:200px;height:200px;max-width:80%;max-height:80%;overflow:auto}.___SPlotA11yView_m4mq4_gg_:focus,.___SPlotA11yView_m4mq4_gg_.__focus-within_m4mq4_gg_{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay,500);position:relative;display:block}.___SPlotA11yView_m4mq4_gg_:focus,.___SPlotA11yView_m4mq4_gg_:focus-within{-webkit-user-select:all;-moz-user-select:all;user-select:all;pointer-events:all;opacity:1;z-index:var(--intergalactic-z-index-overlay,500);position:relative;display:block}.___SPlotA11yView_m4mq4_gg_ a{cursor:pointer;text-decoration:underline;margin-bottom:var(--intergalactic-spacing-2x,8px);display:block}.___SPlotA11yView_m4mq4_gg_ table,.___SPlotA11yView_m4mq4_gg_ td,.___SPlotA11yView_m4mq4_gg_ th{border:1px solid var(--intergalactic-border-primary,#c4c7cf)}"
|
|
31
31
|
/*__inner_css_end__*/
|
|
32
|
-
, "
|
|
32
|
+
, "m4mq4_gg_")
|
|
33
33
|
/*__reshadow_css_end__*/
|
|
34
34
|
, {
|
|
35
|
-
"__SPlotA11yView": "
|
|
36
|
-
"_focus-within": "__focus-
|
|
35
|
+
"__SPlotA11yView": "___SPlotA11yView_m4mq4_gg_",
|
|
36
|
+
"_focus-within": "__focus-within_m4mq4_gg_"
|
|
37
37
|
});
|
|
38
38
|
import { Box } from '@semcore/flex-box';
|
|
39
|
+
import { useAsyncI18nMessages } from '@semcore/utils/lib/enhances/i18nEnhance';
|
|
40
|
+
import { localizedMessages } from './translations/view/__intergalactic-dynamic-locales';
|
|
39
41
|
export var PlotA11yView = function PlotA11yView(_ref3) {
|
|
40
42
|
var _ref = arguments[0],
|
|
41
43
|
_ref2;
|
|
@@ -48,8 +50,9 @@ export var PlotA11yView = function PlotA11yView(_ref3) {
|
|
|
48
50
|
providedConfig = _ref3.config,
|
|
49
51
|
locale = _ref3.locale;
|
|
50
52
|
var SPlotA11yView = Box;
|
|
53
|
+
var translations = useAsyncI18nMessages(localizedMessages, locale);
|
|
51
54
|
var intl = React.useMemo(function () {
|
|
52
|
-
return getIntl(locale);
|
|
55
|
+
return getIntl(locale, translations);
|
|
53
56
|
}, [locale]);
|
|
54
57
|
var config = React.useMemo(function () {
|
|
55
58
|
return makeDataSummarizationConfig(providedConfig);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"PlotA11yView.js","names":["React","heavyFindNextFocusableElement","makeDataSummarizationConfig","formatValue","getIntl","summarize","Root","sstyled","Box","PlotA11yView","id","providedData","data","hints","plotLabel","plotRef","providedConfig","config","locale","SPlotA11yView","intl","useMemo","Array","isArray","keys","fromHints","push","fields","verticalAxes","horizontalAxes","valueAxes","Object","values","Set","filter","key","length","forEach","row","duplicatedBaseKeys","baseKeys","titles","valuesAxes","map","has","axesTitle","vertical","horizontal","entry","undefined","doublicated","handled","label","renderTitle","useCallback","dataKey","useState","summary","setSummary","generatingSummary","setGeneratingSummary","useEffect","disable","override","setTimeout","handleSkip","current","focus","handleSkipKeyboard","event","code","handleGoToTable","dataTableRef","handleGoToTableKeyboard","texts","formatMessage","close","skipPlot","goToTable","summaryPlaceholder","table","useRef","styles","index","join"],"sources":["../../../src/a11y/PlotA11yView.tsx"],"sourcesContent":["import React from 'react';\nimport { heavyFindNextFocusableElement } from './focus';\nimport { makeDataSummarizationConfig } from './hints';\nimport type { A11yViewProps } from './PlotA11yModule';\nimport { formatValue } from './serialize';\nimport { getIntl } from './intl';\nimport { summarize } from './summarize';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yView.shadow.css';\nimport { Box } from '@semcore/flex-box';\n\nexport const PlotA11yView: React.FC<A11yViewProps> = ({\n id,\n data: providedData,\n hints,\n plotLabel,\n plotRef,\n config: providedConfig,\n locale,\n}) => {\n const SPlotA11yView = Root;\n const intl = React.useMemo(() => getIntl(locale), [locale]);\n const config = React.useMemo(() => makeDataSummarizationConfig(providedConfig), [providedConfig]);\n const data = React.useMemo(\n () => (Array.isArray(providedData) ? providedData : [providedData]),\n [providedData],\n );\n const keys = React.useMemo(() => {\n let fromHints: (string | number)[] = [];\n fromHints.push(...hints.fields.verticalAxes);\n fromHints.push(...hints.fields.horizontalAxes);\n fromHints.push(...hints.fields.valueAxes);\n fromHints.push(...Object.keys(hints.fields.values));\n\n fromHints = [...new Set(fromHints)].filter((key) => key in data[0]);\n\n if (fromHints.length === 0) {\n data.forEach((row) => fromHints.push(...Object.keys(row)));\n }\n\n return [...new Set(fromHints)];\n }, [data, hints]);\n const duplicatedBaseKeys = React.useMemo(() => {\n const baseKeys = keys\n .filter((key) => !hints.titles.valuesAxes[key])\n .map((key) => {\n if (hints.fields.verticalAxes.has(key) && hints.axesTitle.vertical)\n return [key, hints.axesTitle.vertical];\n if (hints.fields.horizontalAxes.has(key) && hints.axesTitle.horizontal)\n return [key, hints.axesTitle.horizontal];\n })\n .filter((entry) => entry !== undefined)\n .map((entry) => entry!);\n const doublicated: Record<string, true> = {};\n const handled: Record<string, string | number> = {};\n for (const [key, label] of baseKeys) {\n if (handled[label]) {\n doublicated[key] = true;\n doublicated[handled[label]] = true;\n }\n handled[label] = key;\n }\n return doublicated;\n }, [keys, hints]);\n const renderTitle = React.useCallback(\n (dataKey: string | number) => {\n if (hints.titles.valuesAxes[dataKey]) return hints.titles.valuesAxes[dataKey];\n if (!duplicatedBaseKeys[dataKey]) {\n if (hints.fields.verticalAxes.has(dataKey) && hints.axesTitle.vertical)\n return hints.axesTitle.vertical;\n if (hints.fields.horizontalAxes.has(dataKey) && hints.axesTitle.horizontal)\n return hints.axesTitle.horizontal;\n }\n\n return dataKey;\n },\n [data, hints, duplicatedBaseKeys],\n );\n\n const [summary, setSummary] = React.useState<string | null>(null);\n const [generatingSummary, setGeneratingSummary] = React.useState(true);\n\n React.useEffect(() => {\n if (config.disable) {\n setSummary('');\n setGeneratingSummary(false);\n return;\n }\n if (config.override) {\n setSummary(config.override);\n setGeneratingSummary(false);\n return;\n }\n setTimeout(() => {\n setSummary(summarize(providedData, hints, config, locale));\n setGeneratingSummary(false);\n }, 0);\n }, [providedData, hints, config, locale]);\n\n const handleSkip = React.useCallback(() => {\n if (!plotRef.current) return;\n\n heavyFindNextFocusableElement(plotRef.current)?.focus();\n }, []);\n const handleSkipKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.code !== 'Enter') return;\n\n handleSkip();\n },\n [handleSkip],\n );\n const handleGoToTable = React.useCallback(() => {\n dataTableRef.current?.focus();\n }, []);\n const handleGoToTableKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.code !== 'Enter') return;\n\n handleGoToTable();\n },\n [handleGoToTable],\n );\n\n const texts = React.useMemo(\n () => ({\n label: intl.formatMessage(\n { id: 'view-label' },\n { plotLabel: plotLabel ?? intl.formatMessage({ id: 'view-default-plot-label' }) },\n ),\n close: intl.formatMessage({ id: 'view-close' }),\n skipPlot: intl.formatMessage({ id: 'view-skip-plot' }),\n goToTable: intl.formatMessage({ id: 'view-go-to-table' }),\n summary: intl.formatMessage({ id: 'view-data-summary' }),\n summaryPlaceholder: intl.formatMessage({ id: 'view-summary-placeholder' }),\n table: intl.formatMessage({ id: 'view-table' }),\n }),\n [intl, plotLabel],\n );\n\n const dataTableRef = React.useRef<HTMLTableElement>(null);\n\n return sstyled(styles)(\n <SPlotA11yView render={Box} tabIndex={0} aria-label={texts.label}>\n <a aria-hidden onClick={handleSkip}>\n {texts.close}\n </a>\n <a role=\"link\" tabIndex={0} onKeyDown={handleSkipKeyboard} onClick={handleSkip}>\n {texts.skipPlot}\n </a>\n <a role=\"link\" tabIndex={0} onKeyDown={handleGoToTableKeyboard} onClick={handleGoToTable}>\n {texts.goToTable}\n </a>\n <strong>\n <label htmlFor={`${id}-data-summary`}>{texts.summary}</label>\n </strong>\n <div id={`${id}-data-summary`} aria-busy={generatingSummary} tabIndex={0}>\n {generatingSummary ? texts.summaryPlaceholder : summary}\n </div>\n <strong>\n <label htmlFor={`${id}-data-table`}>{texts.table}</label>\n </strong>\n <table id={`${id}-data-table`} tabIndex={0} ref={dataTableRef}>\n <thead>\n <tr>\n {keys.map((key, index) => (\n <th key={`${key}-${index}`}>{renderTitle(key)}</th>\n ))}\n </tr>\n </thead>\n <tbody>\n {data.map((row, index) => (\n <tr key={Object.values(row).join('-') + '-' + index}>\n {keys.map((key, index) => (\n <td key={`${key}-${index}`}>{formatValue(intl, row[key])}</td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n </SPlotA11yView>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"PlotA11yView.js","names":["React","heavyFindNextFocusableElement","makeDataSummarizationConfig","formatValue","getIntl","summarize","Root","sstyled","Box","useAsyncI18nMessages","localizedMessages","PlotA11yView","id","providedData","data","hints","plotLabel","plotRef","providedConfig","config","locale","SPlotA11yView","translations","intl","useMemo","Array","isArray","keys","fromHints","push","fields","verticalAxes","horizontalAxes","valueAxes","Object","values","Set","filter","key","length","forEach","row","duplicatedBaseKeys","baseKeys","titles","valuesAxes","map","has","axesTitle","vertical","horizontal","entry","undefined","doublicated","handled","label","renderTitle","useCallback","dataKey","useState","summary","setSummary","generatingSummary","setGeneratingSummary","useEffect","disable","override","setTimeout","handleSkip","current","focus","handleSkipKeyboard","event","code","handleGoToTable","dataTableRef","handleGoToTableKeyboard","texts","formatMessage","close","skipPlot","goToTable","summaryPlaceholder","table","useRef","styles","index","join"],"sources":["../../../src/a11y/PlotA11yView.tsx"],"sourcesContent":["import React from 'react';\nimport { heavyFindNextFocusableElement } from './focus';\nimport { makeDataSummarizationConfig } from './hints';\nimport type { A11yViewProps } from './PlotA11yModule';\nimport { formatValue } from './serialize';\nimport { getIntl } from './intl';\nimport { summarize } from './summarize';\nimport { Root, sstyled } from '@semcore/core';\nimport styles from '../style/plotA11yView.shadow.css';\nimport { Box } from '@semcore/flex-box';\nimport { useAsyncI18nMessages } from '@semcore/utils/lib/enhances/i18nEnhance';\nimport { localizedMessages } from './translations/view/__intergalactic-dynamic-locales';\n\nexport const PlotA11yView: React.FC<A11yViewProps> = ({\n id,\n data: providedData,\n hints,\n plotLabel,\n plotRef,\n config: providedConfig,\n locale,\n}) => {\n const SPlotA11yView = Root;\n const translations = useAsyncI18nMessages(localizedMessages, locale);\n const intl = React.useMemo(() => getIntl(locale, translations), [locale]);\n const config = React.useMemo(() => makeDataSummarizationConfig(providedConfig), [providedConfig]);\n const data = React.useMemo(\n () => (Array.isArray(providedData) ? providedData : [providedData]),\n [providedData],\n );\n const keys = React.useMemo(() => {\n let fromHints: (string | number)[] = [];\n fromHints.push(...hints.fields.verticalAxes);\n fromHints.push(...hints.fields.horizontalAxes);\n fromHints.push(...hints.fields.valueAxes);\n fromHints.push(...Object.keys(hints.fields.values));\n\n fromHints = [...new Set(fromHints)].filter((key) => key in data[0]);\n\n if (fromHints.length === 0) {\n data.forEach((row) => fromHints.push(...Object.keys(row)));\n }\n\n return [...new Set(fromHints)];\n }, [data, hints]);\n const duplicatedBaseKeys = React.useMemo(() => {\n const baseKeys = keys\n .filter((key) => !hints.titles.valuesAxes[key])\n .map((key) => {\n if (hints.fields.verticalAxes.has(key) && hints.axesTitle.vertical)\n return [key, hints.axesTitle.vertical];\n if (hints.fields.horizontalAxes.has(key) && hints.axesTitle.horizontal)\n return [key, hints.axesTitle.horizontal];\n })\n .filter((entry) => entry !== undefined)\n .map((entry) => entry!);\n const doublicated: Record<string, true> = {};\n const handled: Record<string, string | number> = {};\n for (const [key, label] of baseKeys) {\n if (handled[label]) {\n doublicated[key] = true;\n doublicated[handled[label]] = true;\n }\n handled[label] = key;\n }\n return doublicated;\n }, [keys, hints]);\n const renderTitle = React.useCallback(\n (dataKey: string | number) => {\n if (hints.titles.valuesAxes[dataKey]) return hints.titles.valuesAxes[dataKey];\n if (!duplicatedBaseKeys[dataKey]) {\n if (hints.fields.verticalAxes.has(dataKey) && hints.axesTitle.vertical)\n return hints.axesTitle.vertical;\n if (hints.fields.horizontalAxes.has(dataKey) && hints.axesTitle.horizontal)\n return hints.axesTitle.horizontal;\n }\n\n return dataKey;\n },\n [data, hints, duplicatedBaseKeys],\n );\n\n const [summary, setSummary] = React.useState<string | null>(null);\n const [generatingSummary, setGeneratingSummary] = React.useState(true);\n\n React.useEffect(() => {\n if (config.disable) {\n setSummary('');\n setGeneratingSummary(false);\n return;\n }\n if (config.override) {\n setSummary(config.override);\n setGeneratingSummary(false);\n return;\n }\n setTimeout(() => {\n setSummary(summarize(providedData, hints, config, locale));\n setGeneratingSummary(false);\n }, 0);\n }, [providedData, hints, config, locale]);\n\n const handleSkip = React.useCallback(() => {\n if (!plotRef.current) return;\n\n heavyFindNextFocusableElement(plotRef.current)?.focus();\n }, []);\n const handleSkipKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.code !== 'Enter') return;\n\n handleSkip();\n },\n [handleSkip],\n );\n const handleGoToTable = React.useCallback(() => {\n dataTableRef.current?.focus();\n }, []);\n const handleGoToTableKeyboard = React.useCallback(\n (event: React.KeyboardEvent) => {\n if (event.code !== 'Enter') return;\n\n handleGoToTable();\n },\n [handleGoToTable],\n );\n\n const texts = React.useMemo(\n () => ({\n label: intl.formatMessage(\n { id: 'view-label' },\n { plotLabel: plotLabel ?? intl.formatMessage({ id: 'view-default-plot-label' }) },\n ),\n close: intl.formatMessage({ id: 'view-close' }),\n skipPlot: intl.formatMessage({ id: 'view-skip-plot' }),\n goToTable: intl.formatMessage({ id: 'view-go-to-table' }),\n summary: intl.formatMessage({ id: 'view-data-summary' }),\n summaryPlaceholder: intl.formatMessage({ id: 'view-summary-placeholder' }),\n table: intl.formatMessage({ id: 'view-table' }),\n }),\n [intl, plotLabel],\n );\n\n const dataTableRef = React.useRef<HTMLTableElement>(null);\n\n return sstyled(styles)(\n <SPlotA11yView render={Box} tabIndex={0} aria-label={texts.label}>\n <a aria-hidden onClick={handleSkip}>\n {texts.close}\n </a>\n <a role=\"link\" tabIndex={0} onKeyDown={handleSkipKeyboard} onClick={handleSkip}>\n {texts.skipPlot}\n </a>\n <a role=\"link\" tabIndex={0} onKeyDown={handleGoToTableKeyboard} onClick={handleGoToTable}>\n {texts.goToTable}\n </a>\n <strong>\n <label htmlFor={`${id}-data-summary`}>{texts.summary}</label>\n </strong>\n <div id={`${id}-data-summary`} aria-busy={generatingSummary} tabIndex={0}>\n {generatingSummary ? texts.summaryPlaceholder : summary}\n </div>\n <strong>\n <label htmlFor={`${id}-data-table`}>{texts.table}</label>\n </strong>\n <table id={`${id}-data-table`} tabIndex={0} ref={dataTableRef}>\n <thead>\n <tr>\n {keys.map((key, index) => (\n <th key={`${key}-${index}`}>{renderTitle(key)}</th>\n ))}\n </tr>\n </thead>\n <tbody>\n {data.map((row, index) => (\n <tr key={Object.values(row).join('-') + '-' + index}>\n {keys.map((key, index) => (\n <td key={`${key}-${index}`}>{formatValue(intl, row[key])}</td>\n ))}\n </tr>\n ))}\n </tbody>\n </table>\n </SPlotA11yView>,\n ) as React.ReactElement;\n};\n"],"mappings":"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"}
|
package/lib/es6/a11y/intl.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
import { createIntl, createIntlCache } from '@formatjs/intl';
|
|
2
2
|
import { normalizeLocale } from './locale';
|
|
3
|
-
import { translations as defaultTranslations } from './translations/view/translations';
|
|
4
3
|
var messagesCache = createIntlCache();
|
|
5
4
|
var intlCache = {};
|
|
6
5
|
export var getIntl = function getIntl(locale) {
|
|
7
6
|
var _normalizeLocale;
|
|
8
7
|
|
|
9
|
-
var translations = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] :
|
|
8
|
+
var translations = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
10
9
|
locale = (_normalizeLocale = normalizeLocale(locale, translations)) !== null && _normalizeLocale !== void 0 ? _normalizeLocale : 'en';
|
|
11
10
|
intlCache[locale] = createIntl({
|
|
12
11
|
locale: locale,
|
package/lib/es6/a11y/intl.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"intl.js","names":["createIntl","createIntlCache","normalizeLocale","
|
|
1
|
+
{"version":3,"file":"intl.js","names":["createIntl","createIntlCache","normalizeLocale","messagesCache","intlCache","getIntl","locale","translations","defaultLocale","messages"],"sources":["../../../src/a11y/intl.ts"],"sourcesContent":["import { createIntl, createIntlCache, IntlShape } from '@formatjs/intl';\nimport { normalizeLocale } from './locale';\nimport type { localizedMessages as localizedMessagesTypeBase } from './translations/view/__intergalactic-dynamic-locales';\n\nexport type Intl = IntlShape<typeof localizedMessagesTypeBase['en']>;\nconst messagesCache = createIntlCache();\nconst intlCache: { [locale: string]: ReturnType<typeof createIntl> } = {};\nexport const getIntl = (locale: string, translations = {}) => {\n locale = normalizeLocale(locale, translations) ?? 'en';\n intlCache[locale] = createIntl(\n {\n locale: locale,\n defaultLocale: 'en',\n messages: translations[locale],\n },\n messagesCache,\n );\n return intlCache[locale] as Intl;\n};\n"],"mappings":"AAAA,SAASA,UAAT,EAAqBC,eAArB,QAAuD,gBAAvD;AACA,SAASC,eAAT,QAAgC,UAAhC;AAIA,IAAMC,aAAa,GAAGF,eAAe,EAArC;AACA,IAAMG,SAA8D,GAAG,EAAvE;AACA,OAAO,IAAMC,OAAO,GAAG,SAAVA,OAAU,CAACC,MAAD,EAAuC;EAAA;;EAAA,IAAtBC,YAAsB,uEAAP,EAAO;EAC5DD,MAAM,uBAAGJ,eAAe,CAACI,MAAD,EAASC,YAAT,CAAlB,+DAA4C,IAAlD;EACAH,SAAS,CAACE,MAAD,CAAT,GAAoBN,UAAU,CAC5B;IACEM,MAAM,EAAEA,MADV;IAEEE,aAAa,EAAE,IAFjB;IAGEC,QAAQ,EAAEF,YAAY,CAACD,MAAD;EAHxB,CAD4B,EAM5BH,aAN4B,CAA9B;EAQA,OAAOC,SAAS,CAACE,MAAD,CAAhB;AACD,CAXM"}
|
package/lib/es6/a11y/translations/module/{translations.js → __intergalactic-dynamic-locales.js}
RENAMED
|
@@ -9,7 +9,7 @@ import pt from './pt.json';
|
|
|
9
9
|
import tr from './tr.json';
|
|
10
10
|
import vi from './vi.json';
|
|
11
11
|
import zh from './zh.json';
|
|
12
|
-
export var
|
|
12
|
+
export var localizedMessages = {
|
|
13
13
|
de: de,
|
|
14
14
|
en: en,
|
|
15
15
|
es: es,
|
|
@@ -22,4 +22,4 @@ export var translations = {
|
|
|
22
22
|
vi: vi,
|
|
23
23
|
zh: zh
|
|
24
24
|
};
|
|
25
|
-
//# sourceMappingURL=
|
|
25
|
+
//# sourceMappingURL=__intergalactic-dynamic-locales.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"__intergalactic-dynamic-locales.js","names":["de","en","es","fr","it","ja","ko","pt","tr","vi","zh","localizedMessages"],"sources":["../../../../../src/a11y/translations/module/__intergalactic-dynamic-locales.ts"],"sourcesContent":["import de from './de.json';\nimport en from './en.json';\nimport es from './es.json';\nimport fr from './fr.json';\nimport it from './it.json';\nimport ja from './ja.json';\nimport ko from './ko.json';\nimport pt from './pt.json';\nimport tr from './tr.json';\nimport vi from './vi.json';\nimport zh from './zh.json';\n\nexport const localizedMessages = {\n de,\n en,\n es,\n fr,\n it,\n ja,\n ko,\n pt,\n tr,\n vi,\n zh,\n};\n"],"mappings":"AAAA,OAAOA,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AAEA,OAAO,IAAMC,iBAAiB,GAAG;EAC/BX,EAAE,EAAFA,EAD+B;EAE/BC,EAAE,EAAFA,EAF+B;EAG/BC,EAAE,EAAFA,EAH+B;EAI/BC,EAAE,EAAFA,EAJ+B;EAK/BC,EAAE,EAAFA,EAL+B;EAM/BC,EAAE,EAAFA,EAN+B;EAO/BC,EAAE,EAAFA,EAP+B;EAQ/BC,EAAE,EAAFA,EAR+B;EAS/BC,EAAE,EAAFA,EAT+B;EAU/BC,EAAE,EAAFA,EAV+B;EAW/BC,EAAE,EAAFA;AAX+B,CAA1B"}
|
package/lib/es6/a11y/translations/view/{translations.js → __intergalactic-dynamic-locales.js}
RENAMED
|
@@ -9,7 +9,7 @@ import pt from './pt.json';
|
|
|
9
9
|
import tr from './tr.json';
|
|
10
10
|
import vi from './vi.json';
|
|
11
11
|
import zh from './zh.json';
|
|
12
|
-
export var
|
|
12
|
+
export var localizedMessages = {
|
|
13
13
|
de: de,
|
|
14
14
|
en: en,
|
|
15
15
|
es: es,
|
|
@@ -22,4 +22,4 @@ export var translations = {
|
|
|
22
22
|
vi: vi,
|
|
23
23
|
zh: zh
|
|
24
24
|
};
|
|
25
|
-
//# sourceMappingURL=
|
|
25
|
+
//# sourceMappingURL=__intergalactic-dynamic-locales.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"__intergalactic-dynamic-locales.js","names":["de","en","es","fr","it","ja","ko","pt","tr","vi","zh","localizedMessages"],"sources":["../../../../../src/a11y/translations/view/__intergalactic-dynamic-locales.ts"],"sourcesContent":["import de from './de.json';\nimport en from './en.json';\nimport es from './es.json';\nimport fr from './fr.json';\nimport it from './it.json';\nimport ja from './ja.json';\nimport ko from './ko.json';\nimport pt from './pt.json';\nimport tr from './tr.json';\nimport vi from './vi.json';\nimport zh from './zh.json';\n\nexport const localizedMessages = {\n de,\n en,\n es,\n fr,\n it,\n ja,\n ko,\n pt,\n tr,\n vi,\n zh,\n};\n"],"mappings":"AAAA,OAAOA,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AACA,OAAOC,EAAP,MAAe,WAAf;AAEA,OAAO,IAAMC,iBAAiB,GAAG;EAC/BX,EAAE,EAAFA,EAD+B;EAE/BC,EAAE,EAAFA,EAF+B;EAG/BC,EAAE,EAAFA,EAH+B;EAI/BC,EAAE,EAAFA,EAJ+B;EAK/BC,EAAE,EAAFA,EAL+B;EAM/BC,EAAE,EAAFA,EAN+B;EAO/BC,EAAE,EAAFA,EAP+B;EAQ/BC,EAAE,EAAFA,EAR+B;EAS/BC,EAAE,EAAFA,EAT+B;EAU/BC,EAAE,EAAFA,EAV+B;EAW/BC,EAAE,EAAFA;AAX+B,CAA1B"}
|
package/lib/types/a11y/intl.d.ts
CHANGED
|
@@ -1,8 +1,4 @@
|
|
|
1
1
|
import { IntlShape } from '@formatjs/intl';
|
|
2
|
-
import {
|
|
3
|
-
export declare type Intl = IntlShape<typeof
|
|
4
|
-
export declare const getIntl: (locale: string, translations?: {
|
|
5
|
-
[locale: string]: {
|
|
6
|
-
[message: string]: string;
|
|
7
|
-
};
|
|
8
|
-
}) => Intl;
|
|
2
|
+
import type { localizedMessages as localizedMessagesTypeBase } from './translations/view/__intergalactic-dynamic-locales';
|
|
3
|
+
export declare type Intl = IntlShape<typeof localizedMessagesTypeBase['en']>;
|
|
4
|
+
export declare const getIntl: (locale: string, translations?: {}) => Intl;
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
export declare const localizedMessages: {
|
|
2
|
+
de: {
|
|
3
|
+
disabled: string;
|
|
4
|
+
loading: string;
|
|
5
|
+
failed: string;
|
|
6
|
+
};
|
|
7
|
+
en: {
|
|
8
|
+
disabled: string;
|
|
9
|
+
loading: string;
|
|
10
|
+
failed: string;
|
|
11
|
+
};
|
|
12
|
+
es: {
|
|
13
|
+
disabled: string;
|
|
14
|
+
loading: string;
|
|
15
|
+
failed: string;
|
|
16
|
+
};
|
|
17
|
+
fr: {
|
|
18
|
+
disabled: string;
|
|
19
|
+
loading: string;
|
|
20
|
+
failed: string;
|
|
21
|
+
};
|
|
22
|
+
it: {
|
|
23
|
+
disabled: string;
|
|
24
|
+
loading: string;
|
|
25
|
+
failed: string;
|
|
26
|
+
};
|
|
27
|
+
ja: {
|
|
28
|
+
disabled: string;
|
|
29
|
+
loading: string;
|
|
30
|
+
failed: string;
|
|
31
|
+
};
|
|
32
|
+
ko: {
|
|
33
|
+
disabled: string;
|
|
34
|
+
loading: string;
|
|
35
|
+
failed: string;
|
|
36
|
+
};
|
|
37
|
+
pt: {
|
|
38
|
+
disabled: string;
|
|
39
|
+
loading: string;
|
|
40
|
+
failed: string;
|
|
41
|
+
};
|
|
42
|
+
tr: {
|
|
43
|
+
disabled: string;
|
|
44
|
+
loading: string;
|
|
45
|
+
failed: string;
|
|
46
|
+
};
|
|
47
|
+
vi: {
|
|
48
|
+
disabled: string;
|
|
49
|
+
loading: string;
|
|
50
|
+
failed: string;
|
|
51
|
+
};
|
|
52
|
+
zh: {
|
|
53
|
+
disabled: string;
|
|
54
|
+
loading: string;
|
|
55
|
+
failed: string;
|
|
56
|
+
};
|
|
57
|
+
};
|