@antscorp/antsomi-ui 1.3.5-beta.844 → 1.3.5-beta.846

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.
Binary file
@@ -5,6 +5,7 @@ import _ from 'lodash';
5
5
  import htmlEntities from 'he';
6
6
  // Assets
7
7
  import iconWarning from '@antscorp/antsomi-ui/es/assets/images/warning-icon.png';
8
+ import iconError from '@antscorp/antsomi-ui/es/assets/images/error-icon.png';
8
9
  // Hooks
9
10
  import { useDeepCompareMemo } from '@antscorp/antsomi-ui/es/hooks/useDeepCompareMemo';
10
11
  import { useDeepCompareEffect } from '@antscorp/antsomi-ui/es/hooks/useDeepCompareEffect';
@@ -18,10 +19,10 @@ import { TagTextArea, TagifyWrapper, WrapperPlaceHolder } from './styled';
18
19
  import { parseTagStringToTagify, convertInputStringToOriginal, emojiManufacturer, getEmojiTag, isPersonalizeTagType, generateTagContent, unescapeString, hasLineBreak, selectRange, isTagClickable, findURLInTextNodes, } from './utils';
19
20
  import { acceptablePatternChecking, detectURLRegex, getCachedRegex, getPersonalizeTagInfo, patternHandlers, } from './patternHandlers';
20
21
  // Constants
21
- import { DETECT_LINK, EMOJI, INVALID_TAG, PERSONALIZE_PTN, PROMOTION_CODE, READONLY_TAG, SHORT_LINK, SHORT_LINK_PTN, defaultCssVariables, tagifyDefaultProps, } from './constants';
22
+ import { DETECT_LINK, EMOJI, INVALID_TAG, MESSAGE_TAG, NO_VIEW_TAG, PERSONALIZE_PTN, PROMOTION_CODE, READONLY_TAG, REMOVED_TAG, SHORT_LINK, SHORT_LINK_PTN, defaultCssVariables, tagifyDefaultProps, } from './constants';
22
23
  const TagifyInput = forwardRef((props, ref) => {
23
24
  // Props
24
- const { initialValue, escapeHTML, status, readonly, readonlyTag, disabled, maxLength, maxHeight, minWidth, placeholder, isSingleLineText, acceptableTagPattern, mapAttributes, maxPersonalizeTags, name, children, cssTagifyVariables, onTagClick, onChange, } = props;
25
+ const { initialValue, escapeHTML, status, readonly, readonlyTag, disabled, maxLength, maxHeight, minWidth, placeholder, isSingleLineText, acceptableTagPattern, mapAttributes, mapErrorAttributes, maxPersonalizeTags, name, children, cssTagifyVariables, onTagClick, onChange, } = props;
25
26
  // States
26
27
  const [isLineBreak, setIsLineBreak] = useState(hasLineBreak(initialValue));
27
28
  // Refs
@@ -492,7 +493,7 @@ const TagifyInput = forwardRef((props, ref) => {
492
493
  /*
493
494
  * Any map attribute change will sync label of the tags
494
495
  */
495
- const makeValidLabelTags = useCallback((attributes) => {
496
+ const makeValidLabelTags = useCallback((attributes, errorAttributes) => {
496
497
  if (tagifyRef.current) {
497
498
  const tagElements = tagifyRef.current.getTagElms();
498
499
  const { pattern, name: cachePatternName, acceptablePattern: acceptableType, } = patternHandlers[PERSONALIZE_PTN];
@@ -514,7 +515,7 @@ const TagifyInput = forwardRef((props, ref) => {
514
515
  while ((match = regex.exec(value)) !== null) {
515
516
  const [, personalizeContent] = match;
516
517
  const [tagCode] = personalizeContent.split('||');
517
- const { label: tagLabel, isValid, message, type, } = getPersonalizeTagInfo(tagCode, attributes);
518
+ const { label: tagLabel, isValid, message, type, isRemoved, hasViewPermission, } = getPersonalizeTagInfo(tagCode, attributes, errorAttributes);
518
519
  const isPromotionCode = type === PROMOTION_CODE;
519
520
  const tagTextNode = tagifyRef.current?.getTagTextNode(tagElement);
520
521
  /*
@@ -522,16 +523,45 @@ const TagifyInput = forwardRef((props, ref) => {
522
523
  * NOTE: Do not actually affect raw data
523
524
  */
524
525
  if (tagTextNode) {
525
- if (isPromotionCode && !isValid && message) {
526
- // Disabled click event to avoid click event handler conflict
527
- tagElement.setAttribute(READONLY_TAG, 'true');
528
- tagElement.setAttribute(INVALID_TAG, 'true');
529
- tagTextNode.textContent = tagLabel;
530
- tagTextNode.setAttribute('title', message);
531
- }
532
- else {
533
- tagTextNode.textContent = tagLabel;
534
- tagTextNode.setAttribute('title', tagLabel);
526
+ tagTextNode.textContent = tagLabel;
527
+ tagTextNode.setAttribute('title', tagLabel);
528
+ tagElement.removeAttribute(REMOVED_TAG);
529
+ tagElement.removeAttribute(NO_VIEW_TAG);
530
+ tagElement.removeAttribute(INVALID_TAG);
531
+ tagElement.removeAttribute(READONLY_TAG);
532
+ tagElement.removeAttribute(MESSAGE_TAG);
533
+ if (isPromotionCode && message) {
534
+ if (isRemoved) {
535
+ tagElement.setAttribute(REMOVED_TAG, 'true');
536
+ tagElement.setAttribute(MESSAGE_TAG, message);
537
+ // tagTextNode.setAttribute('title', message);
538
+ tagifyRef.current?.getSetTagData(tagElement, {
539
+ ...tagData,
540
+ status: 'error',
541
+ statusMsg: message,
542
+ });
543
+ }
544
+ else if (!hasViewPermission) {
545
+ tagElement.setAttribute(NO_VIEW_TAG, 'true');
546
+ tagElement.setAttribute(MESSAGE_TAG, message);
547
+ // tagTextNode.setAttribute('title', message);
548
+ tagifyRef.current?.getSetTagData(tagElement, {
549
+ ...tagData,
550
+ status: 'warning',
551
+ statusMsg: message,
552
+ });
553
+ }
554
+ else if (!isValid) {
555
+ tagElement.setAttribute(READONLY_TAG, 'true');
556
+ tagElement.setAttribute(INVALID_TAG, 'true');
557
+ tagElement.setAttribute(MESSAGE_TAG, message);
558
+ // tagTextNode.setAttribute('title', message);
559
+ tagifyRef.current?.getSetTagData(tagElement, {
560
+ ...tagData,
561
+ status: 'warning',
562
+ statusMsg: message,
563
+ });
564
+ }
535
565
  }
536
566
  }
537
567
  }
@@ -669,9 +699,9 @@ const TagifyInput = forwardRef((props, ref) => {
669
699
  * */
670
700
  useDeepCompareEffect(() => {
671
701
  if (!_.isEmpty(mapAttributes)) {
672
- makeValidLabelTags(mapAttributes);
702
+ makeValidLabelTags(mapAttributes, mapErrorAttributes);
673
703
  }
674
- }, [mapAttributes, makeValidLabelTags]);
704
+ }, [mapAttributes, mapErrorAttributes, makeValidLabelTags]);
675
705
  // Listen to Tagify events
676
706
  useEffect(() => {
677
707
  const { current: tagifyInstance } = tagifyRef || {};
@@ -718,7 +748,7 @@ const TagifyInput = forwardRef((props, ref) => {
718
748
  tagifyRef.current.loadOriginalValues(content);
719
749
  // Need to sync label of the tags if any map attribute is changed to make correct label
720
750
  if (!_.isEmpty(mapAttributes)) {
721
- makeValidLabelTags(mapAttributes);
751
+ makeValidLabelTags(mapAttributes, mapErrorAttributes);
722
752
  }
723
753
  }
724
754
  else if (!classList.contains(empty) && initialValue === '') {
@@ -726,8 +756,105 @@ const TagifyInput = forwardRef((props, ref) => {
726
756
  tagifyRef.current.removeAllTags();
727
757
  }
728
758
  }
729
- }, [initialValue, mapAttributes, escapeHTML, acceptableTagPattern, makeValidLabelTags]);
730
- return (_jsxs(TagifyWrapper, { ref: tagifyWrapperRef, "$cssTagifyVariables": cssVariablesMemoized, className: "tagify-container", id: "tagify-container", "data-test": "tagify-wrapper", "$status": status, "$maxHeight": maxHeight, "$minWidth": minWidth, "$tagifyFullWidth": isLineBreak, "$placeholder": placeholder, "$isSingleLineText": isSingleLineText, "$tagInvalidIcon": iconWarning, onClick: onTagifyWrapperClick, children: [_jsx(TagTextArea, { id: "tagify-textarea", ref: inputRef, name: name, defaultValue: parsedDefaultValue, "data-test": "tagify-input" }), _jsx(WrapperPlaceHolder, { "data-test": "wrapper-placeholder", ref: placeholderRef, "$isShow": !!children, children: children })] }));
759
+ }, [
760
+ initialValue,
761
+ mapAttributes,
762
+ mapErrorAttributes,
763
+ escapeHTML,
764
+ acceptableTagPattern,
765
+ makeValidLabelTags,
766
+ ]);
767
+ useEffect(() => {
768
+ const tagifyTooltip = document.querySelector('.tagify__tooltip');
769
+ if (!tagifyTooltip) {
770
+ const style = document.createElement('style');
771
+ style.type = 'text/css';
772
+ style.appendChild(document.createTextNode(`
773
+ .tagify__tooltip {
774
+ display: none;
775
+ position: fixed;
776
+ background-color: #595959;
777
+ border-radius: 10px;
778
+ color: #ffffff;
779
+ padding: 5px;
780
+ z-index: 10000
781
+ }
782
+ .tagify__tooltip_content {
783
+ width: 100%;
784
+ height: 100%;
785
+ position: relative;
786
+ transition: 0s;
787
+ }
788
+ .tagify__tooltip_content:before {
789
+ content: '';
790
+ position: absolute;
791
+ top: 100%;
792
+ right: 50%;
793
+ left: auto;
794
+ background-color: #595959;
795
+ width: 10px;
796
+ height: 10px;
797
+ transform: rotate(45deg) translate(50%,-50%);
798
+ border-radius: 1px;
799
+ }
800
+ `));
801
+ document.head.appendChild(style);
802
+ const tooltipWrapper = document.createElement('div');
803
+ tooltipWrapper.classList.add('tagify__tooltip');
804
+ const tooltipContent = document.createElement('div');
805
+ tooltipContent.classList.add('tagify__tooltip_content');
806
+ tooltipContent.innerText = 'This pool is removed';
807
+ tooltipWrapper.appendChild(tooltipContent);
808
+ document.body.appendChild(tooltipWrapper);
809
+ }
810
+ }, []);
811
+ useEffect(() => {
812
+ const showTooltip = (tagElement) => {
813
+ const tagRect = tagElement.getBoundingClientRect();
814
+ const removeTag = tagElement.getAttribute(REMOVED_TAG);
815
+ const noViewTag = tagElement.getAttribute(NO_VIEW_TAG);
816
+ const invalidTag = tagElement.getAttribute(INVALID_TAG);
817
+ const messageTag = tagElement.getAttribute(MESSAGE_TAG);
818
+ if (messageTag) {
819
+ const tooltipContent = document.querySelector('.tagify__tooltip_content');
820
+ if (tooltipContent) {
821
+ tooltipContent.innerHTML = messageTag;
822
+ }
823
+ }
824
+ const tooltip = document.querySelector('.tagify__tooltip');
825
+ tooltip?.setAttribute('style', 'display: block !important;visibility: hidden !important;');
826
+ const tooltipRect = tooltip?.getBoundingClientRect();
827
+ if (tooltipRect && (removeTag === 'true' || noViewTag === 'true' || invalidTag === 'true')) {
828
+ if (tooltipRect?.width > tagRect.width) {
829
+ tooltip?.setAttribute('style', `visibility: visible !important;display: block !important;top:${tagRect.y - tagRect.height - 10}px;left:${tagRect.x - (tooltipRect?.width - tagRect.width) / 2}px;`);
830
+ }
831
+ else {
832
+ tooltip?.setAttribute('style', `visibility: visible !important;display: block !important;top:${tagRect.y - tagRect.height - 10}px;left:${tagRect.x + (tagRect?.width - tooltipRect.width) / 2}px;`);
833
+ }
834
+ }
835
+ };
836
+ const hideTooltip = () => {
837
+ const tooltip = document.querySelector('.tagify__tooltip');
838
+ tooltip?.setAttribute('style', `display: none !important;visibility: hidden !important;`);
839
+ };
840
+ if (tagifyRef.current) {
841
+ const tagElements = tagifyRef.current.getTagElms();
842
+ tagElements.forEach(tagElement => {
843
+ tagElement.addEventListener('mouseenter', () => showTooltip(tagElement));
844
+ tagElement.addEventListener('mouseleave', () => hideTooltip());
845
+ });
846
+ }
847
+ return () => {
848
+ if (tagifyRef.current) {
849
+ const tagElements = tagifyRef.current.getTagElms();
850
+ tagElements.forEach(tagElement => {
851
+ tagElement.removeEventListener('mouseenter', () => showTooltip(tagElement));
852
+ tagElement.removeEventListener('mouseleave', () => hideTooltip());
853
+ });
854
+ }
855
+ };
856
+ }, []);
857
+ return (_jsxs(TagifyWrapper, { ref: tagifyWrapperRef, "$cssTagifyVariables": cssVariablesMemoized, className: "tagify-container", id: "tagify-container", "data-test": "tagify-wrapper", "$status": status, "$maxHeight": maxHeight, "$minWidth": minWidth, "$tagifyFullWidth": isLineBreak, "$placeholder": placeholder, "$isSingleLineText": isSingleLineText, "$tagInvalidIcon": iconWarning, "$tagErrorIcon": iconError, onClick: onTagifyWrapperClick, children: [_jsx(TagTextArea, { id: "tagify-textarea", ref: inputRef, name: name, defaultValue: parsedDefaultValue, "data-test": "tagify-input" }), _jsx(WrapperPlaceHolder, { "data-test": "wrapper-placeholder", ref: placeholderRef, "$isShow": !!children, children: children })] }));
731
858
  });
732
859
  TagifyInput.defaultProps = tagifyDefaultProps;
733
860
  export default memo(TagifyInput);
@@ -7,8 +7,11 @@ export declare const MIN_H_WRAPPER: 34, TAG_H: 24;
7
7
  export declare const TAG_CUSTOM_ATTRIBUTES: {
8
8
  readonly READONLY_TAG: "readonly-tag";
9
9
  readonly INVALID_TAG: "invalid-tag";
10
+ readonly REMOVED_TAG: "removed-tag";
11
+ readonly NO_VIEW_TAG: "no-view-tag";
12
+ readonly MESSAGE_TAG: "message-tag";
10
13
  };
11
- export declare const READONLY_TAG: "readonly-tag", INVALID_TAG: "invalid-tag";
14
+ export declare const READONLY_TAG: "readonly-tag", INVALID_TAG: "invalid-tag", REMOVED_TAG: "removed-tag", NO_VIEW_TAG: "no-view-tag", MESSAGE_TAG: "message-tag";
12
15
  export declare const defaultCssVariables: {
13
16
  '--input-color': string | undefined;
14
17
  '--input-font-size': string;
@@ -80,3 +83,12 @@ export declare const EMOJI_COLLECTIONS: {
80
83
  readonly LINE: "line";
81
84
  };
82
85
  export declare const PREFIX_PATTERN_LINE_MESSAGE = "line";
86
+ export declare const DATA_ACCESS_OBJECT: {
87
+ DASHBOARD: number;
88
+ JOURNEY_OVERVIEW: number;
89
+ SEGMENT: number;
90
+ BO: number;
91
+ VIEW: number;
92
+ DESTINATION: number;
93
+ PROMOTION_POOL: number;
94
+ };
@@ -8,8 +8,11 @@ export const { MIN_H_WRAPPER, TAG_H } = DIMENSIONS;
8
8
  export const TAG_CUSTOM_ATTRIBUTES = {
9
9
  READONLY_TAG: 'readonly-tag',
10
10
  INVALID_TAG: 'invalid-tag',
11
+ REMOVED_TAG: 'removed-tag',
12
+ NO_VIEW_TAG: 'no-view-tag',
13
+ MESSAGE_TAG: 'message-tag',
11
14
  };
12
- export const { READONLY_TAG, INVALID_TAG } = TAG_CUSTOM_ATTRIBUTES;
15
+ export const { READONLY_TAG, INVALID_TAG, REMOVED_TAG, NO_VIEW_TAG, MESSAGE_TAG } = TAG_CUSTOM_ATTRIBUTES;
13
16
  export const defaultCssVariables = {
14
17
  '--input-color': globalToken?.colorText,
15
18
  '--input-font-size': `${globalToken?.fontSize}px`,
@@ -93,3 +96,12 @@ export const EMOJI_COLLECTIONS = {
93
96
  LINE: 'line',
94
97
  };
95
98
  export const PREFIX_PATTERN_LINE_MESSAGE = 'line';
99
+ export const DATA_ACCESS_OBJECT = {
100
+ DASHBOARD: 1,
101
+ JOURNEY_OVERVIEW: 2,
102
+ SEGMENT: 3,
103
+ BO: 4,
104
+ VIEW: 5,
105
+ DESTINATION: 6,
106
+ PROMOTION_POOL: 14,
107
+ };
@@ -4,6 +4,8 @@ interface TagInfo {
4
4
  type: string;
5
5
  isValid: boolean;
6
6
  message?: string;
7
+ isRemoved?: boolean;
8
+ hasViewPermission?: boolean;
7
9
  }
8
10
  /**
9
11
  * Retrieves a cached regular expression or compiles and caches it if not found.
@@ -16,6 +18,6 @@ export declare function getCachedRegex(pattern: string, flags?: string, cacheKey
16
18
  export declare const detectURLRegex: RegExp;
17
19
  export declare const tagRegexStringPattern = "\\[\\[({.*?})\\]\\]";
18
20
  export declare function acceptablePatternChecking(pattern: AcceptablePattern, acceptablePattern: Array<AcceptablePattern>): boolean;
19
- export declare const getPersonalizeTagInfo: (originalTag: string, mapAttributes?: MapAttributesProps) => TagInfo;
21
+ export declare const getPersonalizeTagInfo: (originalTag: string, mapAttributes?: MapAttributesProps, mapErrorAttributes?: MapAttributesProps) => TagInfo;
20
22
  export declare const patternHandlers: Record<PatterTagName, PatternHandlerWrapper>;
21
23
  export {};
@@ -225,20 +225,20 @@ const getLabelAttribute = (type, attributeName, subAttributeName, mapAttributes)
225
225
  mapping[combineAttribute]?.template_name ||
226
226
  combineAttribute);
227
227
  };
228
- export const getPersonalizeTagInfo = (originalTag, mapAttributes) => {
228
+ export const getPersonalizeTagInfo = (originalTag, mapAttributes, mapErrorAttributes) => {
229
229
  try {
230
230
  const [type, attributeName, subAttributeName] = originalTag.split('.');
231
231
  const isCsGroup = type === CONTENT_SOURCE_GROUP;
232
232
  if (!mapAttributes || (!mapAttributes[type] && !isCsGroup)) {
233
233
  // return fallback if no mapping
234
- return { type, label: attributeName || type, isValid: false };
234
+ return { type, label: attributeName || type, isValid: false, isRemoved: false };
235
235
  }
236
236
  // Get label based on mapping
237
237
  const label = isCsGroup
238
238
  ? getContentSourceLabel(attributeName, subAttributeName, mapAttributes)
239
239
  : getLabelAttribute(type, attributeName, subAttributeName, mapAttributes);
240
240
  // Check additional case for each tag type
241
- let [isValid, message] = [true, ''];
241
+ let [isValid, message, isRemoved, hasViewPermission] = [true, '', false, true];
242
242
  switch (type) {
243
243
  case PROMOTION_CODE: {
244
244
  // Check if the code is exist in the map
@@ -247,6 +247,21 @@ export const getPersonalizeTagInfo = (originalTag, mapAttributes) => {
247
247
  if (!isExistPromotionPool) {
248
248
  isValid = false;
249
249
  message = 'This pool does not exist anymore';
250
+ if (mapErrorAttributes &&
251
+ mapErrorAttributes[type] &&
252
+ mapErrorAttributes[type][attributeName]) {
253
+ const { isEdit = false, isView = false, isExist = true, } = mapErrorAttributes[type][attributeName] || {};
254
+ // Case Pool removed
255
+ if (!isExist) {
256
+ isRemoved = !isExist;
257
+ message = 'This pool is removed';
258
+ }
259
+ else if (!isView) {
260
+ // Case No permission
261
+ hasViewPermission = isView;
262
+ message = 'You do not have permission on this pool';
263
+ }
264
+ }
250
265
  }
251
266
  }
252
267
  break;
@@ -260,11 +275,13 @@ export const getPersonalizeTagInfo = (originalTag, mapAttributes) => {
260
275
  message,
261
276
  isValid,
262
277
  label: label || type,
278
+ isRemoved,
279
+ hasViewPermission,
263
280
  };
264
281
  }
265
282
  catch (error) {
266
283
  console.error('Error in getTagLabel', error);
267
- return { label: originalTag, type: originalTag, isValid: false };
284
+ return { label: originalTag, type: originalTag, isValid: false, isRemoved: false };
268
285
  }
269
286
  };
270
287
  const createTagPattern = (tagInfo) => `[[${JSON.stringify(tagInfo)}]]`;
@@ -411,6 +428,7 @@ const handlePersonalizeTagPattern = match => {
411
428
  label,
412
429
  type: type,
413
430
  value: personalizeTag,
431
+ attributeName,
414
432
  };
415
433
  const tag = createTagPattern(tagData);
416
434
  return { isValid: true, tag, tagData };
@@ -25,6 +25,7 @@ export interface TagifyInputProps {
25
25
  * Defines how tag attributes are mapped and processed internally.
26
26
  */
27
27
  mapAttributes?: MapAttributesProps;
28
+ mapErrorAttributes?: MapAttributesProps;
28
29
  /**
29
30
  * Optional name attribute for the Tagify input field, useful for integration with forms.
30
31
  * Helps link the input with form submissions and data management.
@@ -175,6 +176,7 @@ export interface TagifyWrapperProps {
175
176
  $minWidth?: CSSProperties['minWidth'];
176
177
  $tagifyFullWidth?: boolean;
177
178
  $tagInvalidIcon?: any;
179
+ $tagErrorIcon?: any;
178
180
  $placeholder?: string;
179
181
  $isSingleLineText?: TagifyInputProps['isSingleLineText'];
180
182
  }
@@ -3,7 +3,7 @@ import { css } from 'styled-components';
3
3
  import { isString } from 'lodash';
4
4
  // Constants
5
5
  import { globalToken } from '@antscorp/antsomi-ui/es/constants';
6
- import { DETECT_LINK, EMOJI, INVALID_TAG, MIN_H_WRAPPER, READONLY_TAG, SHORT_LINK, SHORT_LINK_TYPE, TAG_COLOR, TAG_H, TAG_TYPE, } from './constants';
6
+ import { DETECT_LINK, EMOJI, INVALID_TAG, MIN_H_WRAPPER, NO_VIEW_TAG, READONLY_TAG, REMOVED_TAG, SHORT_LINK, SHORT_LINK_TYPE, TAG_COLOR, TAG_H, TAG_TYPE, } from './constants';
7
7
  export const getTagifyStyled = ({ $maxHeight, $tagifyFullWidth }) => css `
8
8
  ${$maxHeight &&
9
9
  css `
@@ -129,6 +129,65 @@ export const getTagifyTagStyled = (_wrapperProps) => css `
129
129
  cursor: not-allowed;
130
130
  }
131
131
 
132
+ &[${REMOVED_TAG}='true'] {
133
+ ${({ $tagErrorIcon }) => $tagErrorIcon &&
134
+ css `
135
+ > div {
136
+ padding-right: 22px;
137
+ position: relative;
138
+
139
+ > span {
140
+ &::after {
141
+ content: '';
142
+ position: absolute;
143
+ top: 50%;
144
+ right: 5px;
145
+ transform: translateY(calc(-50%));
146
+ width: 14px;
147
+ height: 14px;
148
+ display: inline-block;
149
+ background-image: url(${$tagErrorIcon});
150
+ background-size: contain;
151
+ background-repeat: no-repeat;
152
+ }
153
+ }
154
+ }
155
+ > div[data-tag-type='promotion_code'] {
156
+ background-color: white;
157
+ border: 1px solid red;
158
+ }
159
+ `}
160
+ }
161
+ &[${NO_VIEW_TAG}='true'] {
162
+ ${({ $tagInvalidIcon }) => $tagInvalidIcon &&
163
+ css `
164
+ > div {
165
+ padding-right: 22px;
166
+ position: relative;
167
+
168
+ > span {
169
+ &::after {
170
+ content: '';
171
+ position: absolute;
172
+ top: 50%;
173
+ right: 5px;
174
+ transform: translateY(calc(-50%));
175
+ width: 14px;
176
+ height: 14px;
177
+ display: inline-block;
178
+ background-image: url(${$tagInvalidIcon});
179
+ background-size: contain;
180
+ background-repeat: no-repeat;
181
+ }
182
+ }
183
+ }
184
+ > div[data-tag-type='promotion_code'] {
185
+ background-color: white;
186
+ border: 1px solid red;
187
+ }
188
+ `}
189
+ }
190
+
132
191
  &[${INVALID_TAG}='true'] {
133
192
  ${({ $tagInvalidIcon }) => $tagInvalidIcon &&
134
193
  css `
@@ -152,6 +211,10 @@ export const getTagifyTagStyled = (_wrapperProps) => css `
152
211
  }
153
212
  }
154
213
  }
214
+ > div[data-tag-type='promotion_code'] {
215
+ background-color: white;
216
+ border: 1px solid red;
217
+ }
155
218
  `}
156
219
  }
157
220
 
@@ -1930,6 +1930,7 @@
1930
1930
  "_ACT_VIEW_CALENDAR": "View Calendar",
1931
1931
  "_WARN_TITLE_SEG_COMPUTATIONAL_LIMIT": "Warning Segment Computational Limit",
1932
1932
  "_WARN_SEG_COMPUTATIONAL_LIMIT": "Currently, the computation limit has been reached, the system will compute this segment in the next valid time.",
1933
+ "_WARN_SEG_CHANGE_DATA_ACCESS": "Adjusting data access will clear your current condition settings.",
1933
1934
  "_WARN_TITLE_ATTR_WARN_TOTAL": "Warning Total Attribute Limit",
1934
1935
  "_WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_CUSTOM": "The number of custom attribute has reached the limit.\nIf you want to create new attribute, please archived unused attributes.",
1935
1936
  "_WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_COMPUTED": "The number of computed attribute has reached the limit.\nIf you want to create new attributes, please archived unused attributes.",
@@ -1932,6 +1932,7 @@ export declare const translationsJson: {
1932
1932
  _ACT_VIEW_CALENDAR: string;
1933
1933
  _WARN_TITLE_SEG_COMPUTATIONAL_LIMIT: string;
1934
1934
  _WARN_SEG_COMPUTATIONAL_LIMIT: string;
1935
+ _WARN_SEG_CHANGE_DATA_ACCESS: string;
1935
1936
  _WARN_TITLE_ATTR_WARN_TOTAL: string;
1936
1937
  _WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_CUSTOM: string;
1937
1938
  _WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_COMPUTED: string;
@@ -5306,6 +5307,7 @@ export declare const translationsJson: {
5306
5307
  _ACT_VIEW_CALENDAR: string;
5307
5308
  _WARN_TITLE_SEG_COMPUTATIONAL_LIMIT: string;
5308
5309
  _WARN_SEG_COMPUTATIONAL_LIMIT: string;
5310
+ _WARN_SEG_CHANGE_DATA_ACCESS: string;
5309
5311
  _WARN_TITLE_ATTR_WARN_TOTAL: string;
5310
5312
  _WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_CUSTOM: string;
5311
5313
  _WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_COMPUTED: string;
@@ -8226,6 +8228,7 @@ export declare const translationsJson: {
8226
8228
  _ACT_VIEW_CALENDAR: string;
8227
8229
  _WARN_TITLE_SEG_COMPUTATIONAL_LIMIT: string;
8228
8230
  _WARN_SEG_COMPUTATIONAL_LIMIT: string;
8231
+ _WARN_SEG_CHANGE_DATA_ACCESS: string;
8229
8232
  _WARN_TITLE_ATTR_WARN_TOTAL: string;
8230
8233
  _WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_CUSTOM: string;
8231
8234
  _WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_COMPUTED: string;
@@ -33,7 +33,7 @@
33
33
  "_ACT_CHANGE": "変化",
34
34
  "_ACT_CHANGE_ASSIGN_GROUP": "割り当てグループの変更",
35
35
  "_ACT_CHANGE_FORMAT": "フォーマットを変更する",
36
- "_ACT_CHANGE_PORTAL": "ポータルの変更",
36
+ "_ACT_CHANGE_PORTAL": "変更ポータル",
37
37
  "_ACT_CHANGE_TEMPLATE": "テンプレートの変更",
38
38
  "_ACT_CHART_TYPE": "グラフの種類",
39
39
  "_ACT_CHOOSE_FILE_UPLOAD": "アップロードする画像を選択してください",
@@ -66,7 +66,7 @@
66
66
  "_ACT_EXPORT": "輸出",
67
67
  "_ACT_FORECAST": "予報",
68
68
  "_TILT_FORECAST": "の予測結果",
69
- "_SEG_RESULT_MESS_1": "選択した時間範囲が有効期間外であるため、データが不十分です",
69
+ "_SEG_RESULT_MESS_1": "選択した時間範囲が Time to Live の範囲外であるため、データが不十分です",
70
70
  "_BTN_CREATE_SEG": "セグメントの作成",
71
71
  "_ACT_GO_BACK": "戻る",
72
72
  "_ACT_HAVE_ATTRIBUTE": "属性を持つ",
@@ -420,7 +420,7 @@
420
420
  "_EVENT_DES_CAILL_IN_CALL": "{{customer_name}} がカスタマー サービスに電話しました",
421
421
  "_EVENT_DES_CALL_OUT_CALL": "{{customer_name}} がカスタマー サービスから電話を受けました",
422
422
  "_EVENT_DES_CANCEL_ORDER": "{{customer_name}} が注文 {{order_id}} をキャンセルしました",
423
- "_EVENT_DES_CHAT_CONVERSATION": "{{customer_name}} {{channel_name}} 経由でカスタマー サービスとチャットしました",
423
+ "_EVENT_DES_CHAT_CONVERSATION": "{{customer_name}} さんが {{channel_name}} 経由でカスタマー サービスとチャットしました",
424
424
  "_EVENT_DES_CHECKOUT_CART_PRODUCT": "{{customer_name}} が注文プロセスを開始しました (トランザクションが作成されました)",
425
425
  "_EVENT_DES_CLICK_ADVERTISING": "{{customer_name}} さんがキャンペーン {{campaign_name}} をクリックしました",
426
426
  "_EVENT_DES_CLICK_EMAIL_ADVERTISING": "{{customer_name}} が広告 {{advertising_name}} のメールをクリックしました",
@@ -616,7 +616,7 @@
616
616
  "_INFO_STORY_SELECT_END_DATE": "締め日を選択してください",
617
617
  "_INFO_STORY_SELECT_WEEK_DAY": "曜日にトリガー",
618
618
  "_INFO_STORY_SETTING": "一般設定",
619
- "_INFO_STORY_SETTING_FREQ": "観客はこの旅に何回参加する必要があるでしょうか?",
619
+ "_INFO_STORY_SETTING_FREQ": "観客はこの旅に何回参加すべきでしょうか?",
620
620
  "_INFO_STORY_START_DATE": "開始日",
621
621
  "_INFO_STORY_START_TIME": "開始時間",
622
622
  "_INFO_STORY_STATUS_ABORTED": "中止されました",
@@ -805,7 +805,7 @@
805
805
  "_NOTI_UPLOAD_ICON_SUCCESS": "成功!ファイルがアップロードされました。",
806
806
  "_NOTI_VALIDATE_END_DATE_GREATER_CURRENT": "終了日は現在の日付より後の日付にする必要があります",
807
807
  "_NOTI_VALIDATE_END_TIME_GREATER": "終了時間は開始時間よりも長くする必要があります",
808
- "_NOTI_VALIDATE_FILE_FORMAT": "ファイルの形式が正しくありません。もう一度お試しください。",
808
+ "_NOTI_VALIDATE_FILE_FORMAT": "ファイルの形式が正しくありません。もう一度試してください。",
809
809
  "_NOTI_VALIDATE_FORMAT_CSS_SELECTOR": "CSS セレクターは接頭辞 で始まる必要があります。または #",
810
810
  "_NOTI_VALIDATE_ICON_FORMAT": "画像の形式が正しくありません。もう一度お試しください。",
811
811
  "_NOTI_VALIDATE_ONE_DAY": "少なくとも 1 日を選択してください",
@@ -1054,7 +1054,7 @@
1054
1054
  "_TITL_DELIVERY_ALGORITHM": "配信アルゴリズム",
1055
1055
  "_TITL_DELIVERY_DETAIL": "納品詳細",
1056
1056
  "_TITL_DELIVERY_PERFORMANCE": "配信パフォーマンス",
1057
- "_TITL_DELIVERY_RATE": "配送料",
1057
+ "_TITL_DELIVERY_RATE": "配送率",
1058
1058
  "_TITL_DELIVERY_RESULT": "納品実績",
1059
1059
  "_TITL_DELIVERY_STATUS": "配送状況",
1060
1060
  "_TITL_DESCENDING": "降順",
@@ -1088,7 +1088,7 @@
1088
1088
  "_TITL_EVENT_ACTION_NAME": "イベントアクション名",
1089
1089
  "_TITL_EVENT_ATTRIBUTE": "イベント属性",
1090
1090
  "_TITL_EVENT_CATEGORY": "イベントカテゴリー",
1091
- "_TITL_EVENT_CATEGORY_CODE": "イベントカテゴリーコード",
1091
+ "_TITL_EVENT_CATEGORY_CODE": "イベントカテゴリコード",
1092
1092
  "_TITL_EVENT_CATEGORY_NAME": "イベントカテゴリ名",
1093
1093
  "_TITL_EVENT_INFO": "イベント情報",
1094
1094
  "_TITL_EVENT_INTERNAL_NAME": "イベントの内部名",
@@ -1119,7 +1119,7 @@
1119
1119
  "_TITL_GENERAL_SETTING": "一般設定",
1120
1120
  "_TITL_GET_ALL_VALUE": "全要素取得(最大100要素)",
1121
1121
  "_TITL_GET_THE_TOP_VALUE": "トップを獲得する",
1122
- "_TITL_GET_TRACKING_CODE": "{{zone_name}} の広告ゾーン スクリプトを取得",
1122
+ "_TITL_GET_TRACKING_CODE": "{{zone_name}} の広告ゾーン スクリプトを取得する",
1123
1123
  "_TITL_GROUP_ATTRIBUTE": "グループ属性",
1124
1124
  "_TITL_GROUP_NAME": "グループ名",
1125
1125
  "_TITL_HARD_BOUNCE": "ハードバウンス",
@@ -1217,7 +1217,7 @@
1217
1217
  "_TITL_ORIGINAL_NAME": "オリジナル",
1218
1218
  "_TITL_PAGE_DOWNLOAD": "ページのダウンロード",
1219
1219
  "_TITL_PERCENTAGE": "パーセンテージ",
1220
- "_TITL_PERCENTAGE_SETTING": "パーセンテージ設定",
1220
+ "_TITL_PERCENTAGE_SETTING": "パーセント設定",
1221
1221
  "_TITL_PERFORM_EVENT": "イベントを行う",
1222
1222
  "_TITL_PERSONALIZATION_CODE": "コードをマージ",
1223
1223
  "_TITL_PERSONALIZATION_TAG": "タグを結合",
@@ -1404,7 +1404,7 @@
1404
1404
  "_USER_GUIDE_SEE_SAMPLE_ITEM": "このコレクションのアイテムのサンプルを見る",
1405
1405
  "_USER_GUIDE_SEE_SAMPLE_USER": "この対象ユーザーのサンプルを見る",
1406
1406
  "_USER_GUIDE_SEGMENT_CREATE_CRITERIA": "ファイルの情報を使用して、このセグメントに適した視聴者を見つけるための基準を作成します",
1407
- "_USER_GUIDE_SEGMENT_CREATE_CRITERIA_INTRO": "システムは基準を満たす視聴者を探し、このセグメントに追加します。",
1407
+ "_USER_GUIDE_SEGMENT_CREATE_CRITERIA_INTRO": "システムは条件を満たす視聴者を探して、このセグメントに追加します。",
1408
1408
  "_USER_GUIDE_SEGMENT_CREATE_CRITERIA_NOTE": "<b>注:</b> アップロードされたファイルからは、このシステムに存在する ID を持つ視聴者のみを作成するセグメントに追加できます。アップロードされたファイルは最後に使用されてから 6 か月間保存され、その後は使用できなくなります。",
1409
1409
  "_USER_GUIDE_SELECT_A_ATTRIBUTE": "属性を選択してください",
1410
1410
  "_USER_GUIDE_SELECT_A_CATALOG": "カタログを選択してください",
@@ -1424,7 +1424,7 @@
1424
1424
  "_USER_GUIDE_TOTAL_ATTR_MEASURE": "合計 {{num_attr}} 個の属性と {{num_measure}} 個のメジャーが選択されました",
1425
1425
  "_USER_GUIDE_TOTAL_BRANCH": "注: 合計 100%",
1426
1426
  "_USER_GUIDE_TOTAL_FIELD": "{{x}} 個の選択されたフィールド",
1427
- "_USER_GUIDE_UPLOAD_FILE": "- サポートされているファイル形式は次のとおりです: .csv、.xls、.xlsx <br />\n- .xlsx ファイルの最初の行はヘッダー行とみなされます<br />\n- デフォルトのデータエンコーディングはUTF-8です",
1427
+ "_USER_GUIDE_UPLOAD_FILE": "- サポートされているファイル形式は次のとおりです: .csv、.xls、.xlsx <br />\n- .xlsx ファイルの最初の行はヘッダー行とみなされます<br />\n- デフォルトのデータエンコーディングはUTF-8です。",
1428
1428
  "_USER_GUIDE_UPLOAD_FILE_BEFORE_MAPPING": "属性をマッピングする前にファイルをアップロードする必要があります",
1429
1429
  "_USER_GUIDE_UPLOAD_WAITING": "システムの処理が完了するまで 10 分間お待ちください。<br />\nページを更新してデータを確認します",
1430
1430
  "_USER_GUIDE_USER_NOT_FOUND": "ユーザーが見つかりません",
@@ -1454,7 +1454,7 @@
1454
1454
  "_WARN_NOT_DELETE_ITEMS": "これらの {{module}} は、他の機能の入力として使用されているため、削除できません。",
1455
1455
  "_WARN_NOTE_APPLY_CHANGE_FIELD": "現在のフィールドに変更をまだ適用していません。これらの変更を保存しますか?",
1456
1456
  "_WARN_ONLY_ACTION_STORY_PAUSED": "「{{list_paused_story_name}}」は正常に一時停止されました。<br /> 一時停止できるのはアクションベースのトリガー ジャーニーのみであり、スケジュール トリガー ジャーニーには適用されないことに注意してください。",
1457
- "_WARN_ONLY_VALID_ALL_STORY_ACTIVATED": "「{{list_story_name}}」を有効にしました",
1457
+ "_WARN_ONLY_VALID_ALL_STORY_ACTIVATED": "「{{list_story_name}}」を有効化しました",
1458
1458
  "_WARN_ONLY_VALID_STORY_ACTIVATED": "「{{list_story_name}}」を有効にしました<br />\n選択した他の旅程は有効化のための検証ステップを通過していません。各旅程のデザインで詳細を確認してください。",
1459
1459
  "_WARN_REMOVE_ASSOCIATED_CONDITION": "ソース「{{source_name}}」を削除すると、このソースにのみ存在する関連する属性条件も削除されます。",
1460
1460
  "_WARN_REMOVE_BRANCH": "既存の一連のアクションの途中にあるブランチを削除しています。続行するには、次のことができます",
@@ -1520,7 +1520,7 @@
1520
1520
  "_TITL_USED_INFO": "使用されているコード情報 ",
1521
1521
  "_TITL_PROMOTION_CODE": "プロモーションコード:",
1522
1522
  "_TITL_ALLOCATED_TO_JOURNEY": "ジャーニーに割り当てられている:",
1523
- "_TITL_ALLOCATED_TO_AUDIENCE": "聴衆に割り当てられる:",
1523
+ "_TITL_ALLOCATED_TO_AUDIENCE": "視聴者に割り当てられる:",
1524
1524
  "_ACT_MOVE_TO": "に移動します",
1525
1525
  "_BOX_TITL_MOVE_CODE": "{{x}} 個のコードを別のプールに移動します ",
1526
1526
  "_TITL_MOVE_TO_POOL": "プールに移動",
@@ -1536,7 +1536,7 @@
1536
1536
  "_CODE_RULE_EMPTY": "無効なコードです!コードを空にすることはできません。",
1537
1537
  "_CODE_RULE_INVALID_FORMAT": "aud_*、number_*、および sgmt_* 形式のコードはシステム用に予約されています。",
1538
1538
  "_CODE_RULE_INVALID_FORMAT_EVT": "*_id 、 aud_* 、number_* および sgmt_* 形式のコードはシステム用に予約されています。",
1539
- "_NAME_RULE_INVALID_CHARACTER": "名前が無効です!名前は文字 a ~ Z またはアンダースコアで始まる必要があります。",
1539
+ "_NAME_RULE_INVALID_CHARACTER": "名前が無効です!名前は文字 a ~ Z またはアンダースコアで始める必要があります。",
1540
1540
  "_NAME_RULE_INVALID_MAX_LENGTH": "名前が無効です!名前は 255 文字以内です。",
1541
1541
  "_NAME_RULE_EMPTY": "名前が無効です!名前を空にすることはできません。",
1542
1542
  "_DELIVERY_STATUS_SENT": "送信済み",
@@ -1579,7 +1579,7 @@
1579
1579
  "_TITL_ADD_FIELD": "フィールドの追加",
1580
1580
  "_ITEM_NAME_LINE_ITEM_ATTRIBUTE": "ラインアイテム属性",
1581
1581
  "_CHK_IGNORE_DUPLICATE": "予定された旅行の重複メッセージを無視する",
1582
- "_CHK_LIMITED_FREQ_JOURNEY": "旅行の頻度を制限する(期間は 3 か月)",
1582
+ "_CHK_LIMITED_FREQ_JOURNEY": "旅行の頻度を制限します(期間は 3 か月)",
1583
1583
  "_CHK_LIMITED_FREQ_DESTINATION": "宛先の頻度を制限する",
1584
1584
  "_TITL_TIME_PER_PERSON": "1人あたりの時間",
1585
1585
  "_TITL_MEMBER_INPUT_METHOD": "メンバー入力方法",
@@ -1762,7 +1762,7 @@
1762
1762
  "_USER_GUIDE_JOURNEY_STATUS_ACTIVE": "旅は進行中です",
1763
1763
  "_USER_GUIDE_JOURNEY_STATUS_CLOSED": "ジャーニーの処理時間が近づいています",
1764
1764
  "_USER_GUIDE_JOURNEY_STATUS_PAUSED": "キャンペーンは一時的に停止されていますが、新規視聴者の参加は引き続き許可されています",
1765
- "_USER_GUIDE_JOURNEY_STATUS_FROZEN": "キャンペーンは保留されており、新しい視聴者の参加は許可されていません",
1765
+ "_USER_GUIDE_JOURNEY_STATUS_FROZEN": "キャンペーンは保留されており、新しい視聴者が参加することはできません",
1766
1766
  "_USER_GUIDE_JOURNEY_STATUS_ERROR": "旅行処理中にエラーが発生しました",
1767
1767
  "_USER_GUIDE_JOURNEY_STATUS_ABORTED": "旅は完全停止を余儀なくされる",
1768
1768
  "_USER_GUIDE_JOURNEY_STATUS_REMOVED": "旅が削除されました",
@@ -1774,7 +1774,7 @@
1774
1774
  "_PORTAL_LIMITATION_DES_COL_ARCHIVED": "コレクションは、使用されない場合はアーカイブされます。",
1775
1775
  "_PORTAL_LIMITATION_DES_COL_DELETE": "までに回復しない場合、コレクションは完全に削除されます",
1776
1776
  "_PORTAL_LIMITATION_DES_BO_DISABLED": "データ オブジェクトは、次の場所で使用されない場合は無効になります。",
1777
- "_PORTAL_LIMITATION_DES_BO_ARCHIVED": "データ オブジェクトは、使用されない場合はアーカイブされます。",
1777
+ "_PORTAL_LIMITATION_DES_BO_ARCHIVED": "データオブジェクトは、使用されない場合はアーカイブされます。",
1778
1778
  "_PORTAL_LIMITATION_DES_BO_DELETE": "次の期間に回復しない場合、データ オブジェクトは完全に削除されます",
1779
1779
  "_PORTAL_LIMITATION_DES_ATTR_DISABLED": "で使用されない場合、属性は無効になります。 ",
1780
1780
  "_PORTAL_LIMITATION_DES_ATTR_ARCHIVED": "属性が使用されない場合はアーカイブされます。",
@@ -1786,7 +1786,7 @@
1786
1786
  "_COMPUTATION_SEGMENT_PROPERTY_DELETED": "セグメントのプロパティで使用されているオブジェクトが存在しません",
1787
1787
  "_COMPUTATION_ATTRIBUTE_PROPERTY_ARCHIVED": "属性のプロパティで使用されるオブジェクトはアーカイブされています",
1788
1788
  "_COMPUTATION_ATTRIBUTE_PROPERTY_DELETED": "属性のプロパティで使用されているオブジェクトが存在しません",
1789
- "_MEASURE_TYPE_UC_APPROXIMATE_DATASKETCHES": "一意のおおよその数 (データスケッチ)",
1789
+ "_MEASURE_TYPE_UC_APPROXIMATE_DATASKETCHES": "一意の数の概算 (データスケッチ)",
1790
1790
  "_TITL_ASSOCIATE_UTM": "UTMと連携する",
1791
1791
  "_TITL_PLANNING": "企画",
1792
1792
  "_TITLE_PLAN_ALL_PLANS": "すべてのプラン",
@@ -1805,7 +1805,7 @@
1805
1805
  "_USER_GUIDE_PLAN_REMOVE_GROUP_CONTENT": "このグループを削除してもよろしいですか?",
1806
1806
  "_ACT_PLAN_SAVE_AS_NEW_SEG": "新しいセグメントとして保存",
1807
1807
  "_ACT_PLAN_SAVE_AS_EXIST_SEG": "または、既存のセグメントにロードします",
1808
- "_TITLE_SELECT_SEGMENT": "セグメントを選択",
1808
+ "_TITLE_SELECT_SEGMENT": "セグメントの選択",
1809
1809
  "_DES_LAST_BUILD_TIME": "前回のビルド時間",
1810
1810
  "_ACT_PLAN_SAVE_AS": "名前を付けて保存",
1811
1811
  "_ACT_PLAN_PRIVATE_TEMPLATE": "プライベートテンプレート",
@@ -1816,7 +1816,7 @@
1816
1816
  "_USER_GUIDE_PLAN_PROCESSING": "処理...",
1817
1817
  "_USER_GUIDE_MOVE_GROUP_INCLUDE": "人を含めるためにグループをここに移動します",
1818
1818
  "_USER_GUIDE_MOVE_GROUP_EXCLUDE": "ユーザーを除外するにはグループをここに移動します",
1819
- "_USER_GUIDE_NOTIFY_PROCESSING_SUCCESS": "{{セグメント名}} セグメントのデータ処理が完了しました",
1819
+ "_USER_GUIDE_NOTIFY_PROCESSING_SUCCESS": "{{セグメント名}}セグメントのデータ処理が完了しました",
1820
1820
  "_USER_GUIDE_NOTIFY_PROCESSING_FAILT": "{{セグメント名}} セグメントのデータ処理に失敗しました",
1821
1821
  "_TITLE_NOTIFY_HIDE": "隠れる",
1822
1822
  "_TITLE_BTN_RECOMPUTED": "再計算された",
@@ -1874,7 +1874,7 @@
1874
1874
  "_EVENT_SETTING_RECORD_IN_PROFILE": "訪問者/顧客プロファイルにイベント データを記録する",
1875
1875
  "_WARN_SMS_DYNAMIC_CONTENT": "(文字数は、コンテンツに動的コンテンツまたはショートリンクが含まれる場合のみ参考用です)",
1876
1876
  "_TITLE_CATALOG_DESTINATION_CHANNEL": "宛先チャンネル",
1877
- "_TITLE_CATALOG_DESTINATION_CATALOGS": "目的地カタログ",
1877
+ "_TITLE_CATALOG_DESTINATION_CATALOGS": "宛先カタログ",
1878
1878
  "_TITLE_CATALOG_ALL_CATALOGS": "すべてのカタログ",
1879
1879
  "_TITLE_CATALOG_CATALOG_NAME": "カタログ名",
1880
1880
  "_TITLE_CATALOG_DEFAULT_CATALOG": "デフォルトのカタログ",
@@ -1926,6 +1926,7 @@
1926
1926
  "_ACT_VIEW_CALENDAR": "カレンダーを見る",
1927
1927
  "_WARN_TITLE_SEG_COMPUTATIONAL_LIMIT": "警告セグメントの計算制限",
1928
1928
  "_WARN_SEG_COMPUTATIONAL_LIMIT": "現在、計算制限に達しているため、システムは次の有効な時間でこのセグメントを計算します。",
1929
+ "_WARN_SEG_CHANGE_DATA_ACCESS": "データ アクセスを調整すると、現在の条件設定がクリアされます。",
1929
1930
  "_WARN_TITLE_ATTR_WARN_TOTAL": "警告合計属性制限",
1930
1931
  "_WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_CUSTOM": "カスタム属性の数が制限に達しました。\n新しい属性を作成する場合は、未使用の属性をアーカイブしてください。",
1931
1932
  "_WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_COMPUTED": "計算された属性の数が制限に達しました。\n新しい属性を作成する場合は、未使用の属性をアーカイブしてください。",
@@ -1941,14 +1942,14 @@
1941
1942
  "_WARN_ATTR_COMPUTATIONAL_LIMIT": "現在、計算制限に達しているため、システムは次の有効な時間にこの属性を計算します。",
1942
1943
  "_WARN_TITLE_AM_WARN_TOTAL": "警告 分析モデルの合計制限数",
1943
1944
  "_WARN_AM_WARN_TOTAL_CONTENT_CREATE": "分析モデルの数が制限に達しました。\n新しい分析モデルを作成する場合は、使用されていない分析モデルを削除してください。",
1944
- "_ACT_WARN_AM_GO_TO_LIST": "解析モデルリストに移動",
1945
+ "_ACT_WARN_AM_GO_TO_LIST": "分析モデルのリストに移動",
1945
1946
  "_TITLE_SELECTED_AM": "選択した分析モデル",
1946
1947
  "_WARN_TITLE_AM_NAME": "解析モデル名",
1947
1948
  "_WARN_TITLE_AM_STATUS": "状態",
1948
1949
  "_WARN_TITLE_AM_CREATED_BY": "作成者",
1949
1950
  "_ERROR_MESS_AM_COMPUTED_LIMIT": "この時間内に構築される分析モデルの数の制限に達しました。",
1950
1951
  "_WARN_TITLE_AM_COMPUTATIONAL_LIMIT": "警告 分析モデルの計算制限",
1951
- "_WARN_AM_COMPUTATIONAL_LIMIT": "現在、計算制限に達しているため、システムは次の有効な時間にこの分析モデルを計算します。",
1952
+ "_WARN_AM_COMPUTATIONAL_LIMIT": "現在、計算制限に達しているため、システムは次の有効な時間内にこの分析モデルを計算します。",
1952
1953
  "_WARN_TITLE_BO_WARN_TOTAL": "警告 ビジネス オブジェクトの合計制限",
1953
1954
  "_WARN_BO_WARN_TOTAL_CONTENT_CREATE": "ビジネス オブジェクトの数が制限に達しました。\n新しいビジネス オブジェクトを作成する場合は、未使用のビジネス オブジェクトをアーカイブしてください。",
1954
1955
  "_ACT_WARN_BO_GO_TO_LIST": "ビジネスオブジェクトリストに移動",
@@ -1983,7 +1984,7 @@
1983
1984
  "_WARN_COLL_WARN_TOTAL_CONTENT_RECOVER": "{{dynamic_collections}} {{static_collections}} の数が制限に達しました。\nコレクションを回復したい場合は、未使用のコレクションをアーカイブしてください。",
1984
1985
  "_ERROR_MESS_COLL_COMPUTED_LIMIT": "この時間内に構築されるコレクションの数の制限に達しました。",
1985
1986
  "_WARN_TITLE_COLL_COMPUTATIONAL_LIMIT": "警告収集の計算制限",
1986
- "_WARN_COLL_COMPUTATIONAL_LIMIT": "現在、計算制限に達しているため、システムは次の有効な時間にこのコレクションを計算します。",
1987
+ "_WARN_COLL_COMPUTATIONAL_LIMIT": "現在、計算制限に達しているため、システムは次の有効な時間内にこのコレクションを計算します。",
1987
1988
  "_OPTION_SEGMENT_SCHEDULE_DETAILS_HOUR_AM": "{{x}} 時間ごとに {{HH:MM}} 時",
1988
1989
  "_OPTION_SEGMENT_SCHEDULE_DETAILS_HOUR_PM": "{{x}} 時間ごとに 午後{{HH:MM}} 時",
1989
1990
  "_OPTION_SEGMENT_SCHEDULE_DETAILS_DAY_AM": "{{x}}日ごとの {{HH:MM}} 時",
@@ -2101,7 +2102,7 @@
2101
2102
  "_PREDICT_MODEL_UPDATE_INTO_EXISTING_SEGMENT": "既存のセグメントへの更新",
2102
2103
  "_PREDICT_MODEL_CREATE_NEW_ATTRIBUTE": "新しい属性を作成する",
2103
2104
  "_PREDICT_MODEL_UPDATE_INTO_EXISTING_ATTRIBUTE": "既存の属性に更新する",
2104
- "_PREDICT_MODEL_SELECT_SEGMENT": "セグメントを選択",
2105
+ "_PREDICT_MODEL_SELECT_SEGMENT": "セグメントの選択",
2105
2106
  "_PREDICT_MODEL_SELECT_ATTRIBUTE": "属性の選択",
2106
2107
  "_PREDICT_MODEL_CANNOT_LOSE_THEM": "それらを失うことはできません",
2107
2108
  "_PREDICT_MODEL_AT_RISK": "危険にさらされています",
@@ -2114,7 +2115,7 @@
2114
2115
  "_PREDICT_MODEL_NEW_CUSTOMERS": "新規のお客様",
2115
2116
  "_PREDICT_MODEL_POTENTIAL_LOYALISTS": "潜在的なロイヤリスト",
2116
2117
  "_PREDICT_MODEL_NEED_ATTENTION": "注意が必要です ",
2117
- "_PREDICT_MODEL_VISUALIZATION_ERROR": "データを視覚化できない",
2118
+ "_PREDICT_MODEL_VISUALIZATION_ERROR": "データは視覚化できない",
2118
2119
  "_PREDICT_MODEL_VISUALIZATION_TIP": "購入金額の価値 ",
2119
2120
  "_PREDICT_MODEL_LIMIT_EQUAL_TO": "に等しい",
2120
2121
  "_PREDICT_MODEL_LIMIT_GREATER_THAN_OR_EQUAL_TO": "以上 ",
@@ -2171,7 +2172,7 @@
2171
2172
  "_EVENT_CLICK_VIBER": "{{customer_name}} さんが Journey {{journey_name}} からの Viber メッセージをクリックしました",
2172
2173
  "_EVENT_CLICK_SMS": "{{customer_name}} さんが Journey {{journey_name}} からの SMS メッセージをクリックしました",
2173
2174
  "_EVENT_SENT_WEB_PERSONALIZA": "ジャーニー {{journey_name}} が {{customer_name}} に送信されました",
2174
- "_EVENT_SENT_WEB_PUSH": "ジャーニー {{journey_name}} がウェブ プッシュ通知経由で {{customer_name}} に送信されました",
2175
+ "_EVENT_SENT_WEB_PUSH": "ジャーニー {{journey_name}} がウェブプッシュ通知経由で {{customer_name}} に送信されました",
2175
2176
  "_EVENT_SENT_APP PUSH": "ジャーニー {{journey_name}} がアプリのプッシュ通知経由で {{customer_name}} に送信されました",
2176
2177
  "_EVENT_SENT_EMAIL": "Journey {{journey_name}} からのメールが {{customer_name}} に送信されました",
2177
2178
  "_EVENT_SENT_FB": "Journey {{journey_name}} からの Facebook メッセージが {{customer_name}} に送信されました",
@@ -2211,7 +2212,7 @@
2211
2212
  "_LINE_ACT_DT_PICKER_DATE_RANGE": "日付範囲",
2212
2213
  "_LINE_ACT_DT_PICKER_DEFAULT_DATE": "デフォルトの日付",
2213
2214
  "_LINE_ACT_DT_PICKER_TIME_RANGE": "時間範囲",
2214
- "_LINE_ACT_DT_PICKER_DEFAULT_TIME": "デフォルトの時間",
2215
+ "_LINE_ACT_DT_PICKER_DEFAULT_TIME": "デフォルト時間",
2215
2216
  "_LINE_ACT_DT_PICKER_DEFAULT_DATETIME": "デフォルトの日付と時刻",
2216
2217
  "_LINE_ACT_TYPE": "アクションの種類",
2217
2218
  "_LINE_BUTTON_LABEL": "ボタンラベル",
@@ -2278,7 +2279,7 @@
2278
2279
  "_BLCK_OTP_BUTTN_ACTION": "ボタンアクション",
2279
2280
  "_MED_TEMP_SETTING_MESS": "メッセージ",
2280
2281
  "_BLCK_OTP_MESS_FAILED_VERI": "検証に失敗しました",
2281
- "_BLCK_OTP_MESS_RESENT": "再送信されたOTP",
2282
+ "_BLCK_OTP_MESS_RESENT": "再送信された OTP",
2282
2283
  "_MED_TEMP_SETTING_POSITION": "位置",
2283
2284
  "_BLCK_OTP_EVENT_TRIGGER": "イベントトリガー",
2284
2285
  "_BLCK_OTP_EVENT": "イベント",
@@ -2290,7 +2291,7 @@
2290
2291
  "_CHANNEL_DES_EMAIL": "パーソナライズされたメッセージをユーザーの受信箱に直接配信し、ターゲットを絞ったコンテンツでのエンゲージメントとコンバージョンを促進します。",
2291
2292
  "_CHANNEL_DES_SMS": "直接的かつ即時のコミュニケーションを提供し、ユーザーのモバイル デバイスに到達して即時のエンゲージメントとインタラクションを実現します。",
2292
2293
  "_CHANNEL_DES_SMART_INB": "プッシュ通知のコンテンツを一元管理して管理とエンゲージメントを合理化",
2293
- "_CHANNEL_DES_FB_MESS": "直接的な会話型のコミュニケーションを提供し、使い慣れたソーシャル メディア プラットフォームでユーザーを惹きつけます",
2294
+ "_CHANNEL_DES_FB_MESS": "直接的で会話的なコミュニケーションを提供し、使い慣れたソーシャル メディア プラットフォームでユーザーを引き付ける",
2294
2295
  "_CHANNEL_DES_VIBER": "ダイレクト メッセージング機能を提供し、安全で使い慣れたソーシャル メディア プラットフォームでユーザーを魅了します。",
2295
2296
  "_CHANNEL_DES_ZALO": "OA や ZNS などのサービス用のさまざまなテンプレートを使用したダイレクト メッセージング機能を提供します",
2296
2297
  "_CHANNEL_DES_WHATSAPP": "関連性のあるメッセージを顧客の WhatsApp アカウントに直接配信し、より強力な関係を促進し、エンゲージメントを高めます",
@@ -2432,10 +2433,10 @@
2432
2433
  "_OBJ_DES_WEB_1": "没入型のブラウジング体験に合わせてコンテンツを調整することで、セッションが長くなり、エンゲージメント指標が向上します",
2433
2434
  "_OBJ_DES_WEB_2": "より多くのコンバージョンと売上を促進するために、ユーザーの興味やニーズに合った製品やコンテンツをユーザーに提示します。",
2434
2435
  "_OBJ_DES_WEB_3": "視聴者とのより深いつながりを育み、ロイヤルティと維持率を高めます",
2435
- "_OBJ_DES_WEB_4": "それぞれの訪問者のインタラクションの価値を最大化するために、ユニークでパーソナライズされたオファーを提供します",
2436
+ "_OBJ_DES_WEB_4": "それぞれの訪問者のインタラクションの価値を最大化するために、独自のパーソナライズされたオファーを提供します",
2436
2437
  "_OBJ_DES_WEB_5": "ユーザーインタラクションを分析してコンテンツを洗練し、戦略をセグメント化し、Web サイトのレイアウトを最適化します。",
2437
2438
  "_OBJ_DES_WEB_NOTI_1": "タイムリーな更新、プロモーション、アラートでユーザーに即座に連絡します",
2438
- "_OBJ_DES_WEB_NOTI_2": "新しいコンテンツ、製品リリース、または期間限定オファーをユーザーに通知することで、Web サイトへのトラフィックを促進します。",
2439
+ "_OBJ_DES_WEB_NOTI_2": "新しいコンテンツ、製品リリース、または期間限定オファーをユーザーに通知することで、Web サイトへのトラフィックを促進します",
2439
2440
  "_OBJ_DES_WEB_NOTI_3": "パーソナライズされたオファーやリマインダーを配信してユーザーの行動を促す",
2440
2441
  "_OBJ_DES_WEB_NOTI_4": "ユーザーの興味や好みに合わせた関連性の高い有益な通知を送信することで、ユーザーの関心とリピートを維持します。",
2441
2442
  "_OBJ_DES_WEB_NOTI_5": "アカウント、トランザクション更新などの関連情報をユーザーのブラウザに直接配信します。",
@@ -2445,7 +2446,7 @@
2445
2446
  "_OBJ_DES_APP_NOTI_4": "ユーザーの興味や好みに合わせた関連性の高い有益な通知を送信することで、ユーザーの関心を維持し、さらに戻ってくるようにします。",
2446
2447
  "_OBJ_DES_APP_NOTI_5": "アカウント、トランザクション更新などの関連情報をユーザーのブラウザに直接配信します。",
2447
2448
  "_OBJ_DES_EMAIL_1": "魅力的なコンテンツと電子メールの行動喚起 (CTA) でユーザーを Web サイトに誘導します",
2448
- "_OBJ_DES_EMAIL_2": "貴重なコンテンツやインセンティブを提供してサインアップや問い合わせを促進することで見込み顧客を獲得します。",
2449
+ "_OBJ_DES_EMAIL_2": "貴重なコンテンツとインセンティブを提供してサインアップや問い合わせを促進することで見込み顧客を獲得します。",
2449
2450
  "_OBJ_DES_EMAIL_3": "ターゲットを絞ったコンテンツと自動化された電子メール シーケンスを使用して、セールス ファネルを通じてリードを誘導します。",
2450
2451
  "_OBJ_DES_EMAIL_4": "関連するアップデート、オファー、限定コンテンツで顧客の関心とロイヤルティを維持します",
2451
2452
  "_OBJ_DES_EMAIL_5": "製品やサービスを紹介して売上とコンバージョンを促進する",
@@ -2456,12 +2457,12 @@
2456
2457
  "_OBJ_DES_SMS_4": "予定や予約のリマインダーや確認を送信してノーショーを減らします",
2457
2458
  "_OBJ_DES_SMS_5": "注文確認、出荷通知、アカウント更新をリアルタイムで提供します",
2458
2459
  "_OBJ_DES_SMART_INB_1": "通知を集約し、ユーザーがメッセージを 1 か所で簡単に表示および管理できるようにします。",
2459
- "_OBJ_DES_SMART_INB_2": "プラットフォーム間で通知にアクセスし、通知を操作するためのシームレスで直感的なインターフェイスを提供します。",
2460
+ "_OBJ_DES_SMART_INB_2": "プラットフォーム間で通知にアクセスし、操作するためのシームレスで直感的なインターフェイスを提供します。",
2460
2461
  "_OBJ_DES_SMART_INB_3": "通知によるタイムリーな応答と対話を促進し、ユーザー エンゲージメントと満足度を最大化します",
2461
2462
  "_OBJ_DES_SMART_INB_4": "Web プッシュやアプリ プッシュなどのさまざまなチャネルからの通知を統合し、ユーザーとの一貫性のある一貫したコミュニケーションを確保します。",
2462
2463
  "_OBJ_DES_FB_MESS_1": "ターゲットを絞ったプロモーションやオファーをブロードキャストして、エンゲージメントと販売を促進します",
2463
2464
  "_OBJ_DES_FB_MESS_2": "鮮やかなメッセージ テンプレートを使用してタイムリーで関連性のある更新を提供します",
2464
- "_OBJ_DES_FB_MESS_3": "タイムリーで効率的な顧客サポートを提供し、メッセンジャー内で直接問い合わせに対応し、問題を解決します。",
2465
+ "_OBJ_DES_FB_MESS_3": "タイムリーかつ効率的な顧客サポートを提供し、メッセンジャー内で直接問い合わせに対応し、問題を解決します。",
2465
2466
  "_OBJ_DES_FB_MESS_4": "予定や予約のリマインダーや確認を送信してノーショーを減らします",
2466
2467
  "_OBJ_DES_FB_MESS_5": "アンケートやインタラクティブなテンプレートを通じて、ユーザーから貴重な洞察とフィードバックを直接収集します",
2467
2468
  "_OBJ_DES_VIBER_1": "ターゲットを絞ったプロモーションやオファーをブロードキャストして、エンゲージメントと販売を促進します",
@@ -2470,39 +2471,39 @@
2470
2471
  "_OBJ_DES_VIBER_4": "注文確認、配送の最新情報、または予約のリマインダーを送信する",
2471
2472
  "_OBJ_DES_VIBER_5": "アンケートやインタラクティブなテンプレートを通じて、ユーザーから貴重な洞察とフィードバックを直接収集します",
2472
2473
  "_OBJ_DES_ZALO_1": "ターゲットを絞ったプロモーションやオファーをブロードキャストして、エンゲージメントと販売を促進します",
2473
- "_OBJ_DES_ZALO_2": "インタラクティブな要素を使用して販売目標到達プロセスをガイドし、リードと見込み顧客を育成します。",
2474
+ "_OBJ_DES_ZALO_2": "インタラクティブな要素を使用してセールスファネルを通じてリードと見込み顧客を育成する",
2474
2475
  "_OBJ_DES_ZALO_3": "タイムリーなコミュニケーションを確保するために、注文確認、配送の最新情報、または予約のリマインダーを送信します。",
2475
- "_OBJ_DES_ZALO_4": "重要なお知らせ、アップデート、ニュースをユーザーと共有して常に最新情報を入手します。",
2476
+ "_OBJ_DES_ZALO_4": "重要なお知らせ、アップデート、ニュースをユーザーと共有して最新情報を入手します。",
2476
2477
  "_OBJ_DES_ZALO_5": "一貫性があり、有益で魅力的なコンテンツを通じてブランド アイデンティティと価値を強化する",
2477
2478
  "_OBJ_DES_WHATSAPP_1": "ターゲットを絞ったプロモーションやオファーをブロードキャストして、エンゲージメントと販売を促進します",
2478
2479
  "_OBJ_DES_WHATSAPP_2": "鮮やかなメッセージ テンプレートを使用してタイムリーで関連性のある更新を提供します",
2479
- "_OBJ_DES_WHATSAPP_3": "インタラクティブな要素を使用して販売目標到達プロセスをガイドし、リードと見込み顧客を育成します。",
2480
+ "_OBJ_DES_WHATSAPP_3": "インタラクティブな要素を使用してセールスファネルを通じてリードと見込み顧客を育成する",
2480
2481
  "_OBJ_DES_WHATSAPP_4": "予定や予約のリマインダーや確認を送信してノーショーを減らします",
2481
- "_OBJ_DES_WHATSAPP_5": "重要なお知らせ、アップデート、ニュースをユーザーと共有して常に最新情報を入手します。",
2482
+ "_OBJ_DES_WHATSAPP_5": "重要なお知らせ、アップデート、ニュースをユーザーと共有して最新情報を入手します。",
2482
2483
  "_OBJ_DES_TELEGRAM_1": "ターゲットを絞ったプロモーションやオファーをブロードキャストして、エンゲージメントと販売を促進します",
2483
2484
  "_OBJ_DES_TELEGRAM_2": "鮮やかなメッセージ テンプレートを使用してタイムリーで関連性のある更新を提供します",
2484
2485
  "_OBJ_DES_TELEGRAM_3": "インタラクティブなテンプレート要素を使用してセールスファネルを誘導し、リードと見込み顧客を育成します。",
2485
2486
  "_OBJ_DES_TELEGRAM_4": "予定や予約のリマインダーや確認を送信してノーショーを減らします",
2486
- "_OBJ_DES_TELEGRAM_5": "重要なお知らせ、アップデート、ニュースをユーザーと共有して常に最新情報を入手します。",
2487
+ "_OBJ_DES_TELEGRAM_5": "重要なお知らせ、アップデート、ニュースをユーザーと共有して最新情報を入手します。",
2487
2488
  "_OBJ_DES_LINE_1": "ターゲットを絞ったプロモーションやオファーをブロードキャストして、エンゲージメントと販売を促進します",
2488
2489
  "_OBJ_DES_LINE_2": "Line のリッチ メニューを利用して、メッセージ内のインタラクティブなオプションとナビゲーションをユーザーに提供します",
2489
2490
  "_OBJ_DES_LINE_3": "インタラクティブなテンプレート要素を使用してセールスファネルを誘導し、リードと見込み顧客を育成します。",
2490
2491
  "_OBJ_DES_LINE_4": "予定や予約のリマインダーや確認を送信してノーショーを減らします",
2491
- "_OBJ_DES_LINE_5": "重要なお知らせ、アップデート、ニュースをユーザーと共有して常に最新情報を入手します。",
2492
+ "_OBJ_DES_LINE_5": "重要なお知らせ、アップデート、ニュースをユーザーと共有して最新情報を入手します。",
2492
2493
  "_OBJ_DES_FILE_TRANSFER_1": "さまざまなシステム間での大規模なデータセットの共有を自動化し、より迅速かつ正確なデータ処理を実現します。",
2493
2494
  "_OBJ_DES_FILE_TRANSFER_2": "マーケティング資料やキャンペーン資産をチームメンバーや外部関係者に簡単に配布し、より良いコラボレーションとコミュニケーションを促進します。",
2494
2495
  "_OBJ_DES_FILE_TRANSFER_3": "ファイル転送をマーケティングオートメーションに統合して時間と人的リソースを節約する",
2495
2496
  "_OBJ_DES_ORCHES_1": "さまざまなチャネルを通じて顧客にリーチし、ブランドの認知度を高め、市場への浸透を高めることで、ブランドの認知度を高めます。",
2496
- "_OBJ_DES_ORCHES_2": "好みのプラットフォームで顧客を引き込み、ロイヤルティと支持を促進するシームレスで記憶に残るインタラクションを生み出します。",
2497
- "_OBJ_DES_ORCHES_3": "チャネル全体でターゲットを絞ったメッセージを送信して購入者の購買行動をガイドし、コンバージョンを促進し、販売機会を最大化します。",
2497
+ "_OBJ_DES_ORCHES_2": "顧客を好みのプラットフォームでエンゲージし、ロイヤルティと支持を促進するシームレスで記憶に残るインタラクションを生み出します。",
2498
+ "_OBJ_DES_ORCHES_3": "チャネル全体でターゲットを絞ったメッセージを送信することで、購入者のジャーニーを見込み顧客に導き、コンバージョンを促進し、販売機会を最大化します。",
2498
2499
  "_OBJ_DES_ORCHES_4": "チャネルの好みや行動に基づいて特定の視聴者セグメントに合わせてキャンペーンを調整し、共感を呼び、コンバージョンにつながるパーソナライズされたエクスペリエンスを提供します。",
2499
2500
  "_OBJ_DES_ORCHES_5": "すべてのチャネルにわたって包括的な分析を取得し、データ主導の意思決定と継続的なキャンペーンの改善を強化して、最適な結果と ROI を実現します。",
2500
- "_WEBPER_TEMP_OBJ_DES_POP_1": "潜在的な顧客からの情報、または既存の顧客からのレビューやフィードバックを収集してデータを充実させます",
2501
+ "_WEBPER_TEMP_OBJ_DES_POP_1": "潜在顧客からの情報、または既存顧客からのレビューやフィードバックを収集してデータを充実させます",
2501
2502
  "_WEBPER_TEMP_OBJ_DES_POP_2": "限定セール、期間限定プロモーション、見逃せないおすすめ商品を紹介することで、収益を飛躍的に高めます。",
2502
2503
  "_WEBPER_TEMP_OBJ_DES_POP_3": "追加購入を促すために補完的な製品やアップグレードを提案する",
2503
- "_WEBPER_TEMP_OBJ_DES_POP_4": "ためらう訪問者をさらに滞在させ、さらに探索したくなる魅力的なオファーで出口をチャンスに変えます。",
2504
+ "_WEBPER_TEMP_OBJ_DES_POP_4": "躊躇する訪問者をさらに滞在させ、さらに探索したくなる魅力的なオファーで出口をチャンスに変えます。",
2504
2505
  "_WEBPER_TEMP_OBJ_DES_POP_5": "重要なニュースやイベントを視聴者に直接ブロードキャストして最新情報を提供します",
2505
- "_WEBPER_TEMP_OBJ_DES_POP_6": "Cookie の使用についてユーザーの同意を得ることで、視聴者の安心とプライバシー規制の遵守を確保します。",
2506
+ "_WEBPER_TEMP_OBJ_DES_POP_6": "Cookie の使用についてユーザーの同意を得ることで、視聴者の安心感とプライバシー規制の遵守を確保します。",
2506
2507
  "_WEBPER_TEMP_OBJ_DES_POP_7": "CDP 365 からのデータを利用して、パーソナライズされた製品の推奨事項を表示し、各訪問者の興味や過去のやり取りに合わせて調整できます。",
2507
2508
  "_WEBPER_TEMP_OBJ_DES_POP_8": "ターゲットを絞ったオファー、インセンティブ、またはリマインダーを使用して、躊躇している買い物客に購入を完了させるよう促します。",
2508
2509
  "_WEBPER_TEMP_OBJ_DES_POP_9": "ソーシャル メディア プラットフォームでコミュニティを拡大し、ブランドの存在感を高めます",
@@ -2510,7 +2511,7 @@
2510
2511
  "_WEBPER_TEMP_OBJ_DES_POP_11": "魅力的な運ゲーやインタラクティブなコンテンツで興奮を呼び起こし、エンゲージメントを高め、ユーザーを何度もリピートさせ続ける",
2511
2512
  "_WEBPER_TEMP_OBJ_DES_POP_12": "新規ユーザーを支援し、提供された回答に基づいてパーソナライズされた推奨事項を提供します",
2512
2513
  "_WEBPER_TEMP_OBJ_DES_POP_13": "直接リンクまたは QR コードを介してモバイル アプリをダウンロードしてスキャンするようユーザーに奨励します。",
2513
- "_WEBPER_TEMP_OBJ_DES_FLOAT_1": "リード獲得フォームを含めて、訪問者にニュースレター、プロモーション、またはその他のマーケティング資料への登録を促します。",
2514
+ "_WEBPER_TEMP_OBJ_DES_FLOAT_1": "リード獲得フォームを含めて、訪問者にニュースレター、プロモーション、その他のマーケティング資料への登録を促します。",
2514
2515
  "_WEBPER_TEMP_OBJ_DES_FLOAT_2": "カウントダウンタイマー付きの特別セールや限定プロモーションで視聴者の目を引き、さらに探索するよう促します。",
2515
2516
  "_WEBPER_TEMP_OBJ_DES_FLOAT_3": "訪問者がスクロールしても表示され続けるバナーを使用して、重要なニュースが確実に注目されるようにし、最新情報を前面と中央に保ちます。",
2516
2517
  "_WEBPER_TEMP_OBJ_DES_FLOAT_4": "あなたのブランドに対するフレンドリーな意見を確立するために、初めて Web サイトを閲覧する訪問者を歓迎します。",
@@ -2534,10 +2535,10 @@
2534
2535
  "_WEBPER_TEMP_OBJ_DES_SLIDEIN_3": "今後のコンテンツ、製品の発売、イベントを予告して、視聴者の期待と興奮を高め、Web サイトへのトラフィックを促進します。",
2535
2536
  "_WEBPER_TEMP_OBJ_DES_SLIDEIN_4": "アンケート、投票、フィードバック フォームを組み込んで貴重な洞察を収集し、交流を促進します。",
2536
2537
  "_WEBPER_TEMP_OBJ_DES_SLIDEIN_5": "顧客のレビュー、評価、お客様の声などの社会的証明要素を紹介して、購入の意思決定に影響を与える信頼と信用を構築します。",
2537
- "_WEBPER_TEMP_OBJ_DES_SLIDEIN_6": "期間限定のオファー、カウントダウンタイマー、またはフラッシュセール通知を提示することで、緊迫感を醸成し、即時行動を促します。",
2538
+ "_WEBPER_TEMP_OBJ_DES_SLIDEIN_6": "期間限定のオファー、カウントダウンタイマー、フラッシュセール通知を提示することで、緊迫感を醸成し、即時行動を促します。",
2538
2539
  "_WEBPER_TEMP_OBJ_DES_SLIDEIN_7": "ターゲットを絞ったオファー、インセンティブ、またはリマインダーを使用して、躊躇している買い物客に購入を完了させるよう促します。",
2539
- "_WEBPER_TEMP_OBJ_DES_SLIDEIN_8": "顧客からの問い合わせの必要性を減らし、ショッピング体験の全体的な満足度を向上させるために、顧客が遭遇する可能性のある一般的な懸念事項や問題のトラブルシューティングに対処する",
2540
- "_WEBPER_TEMP_OBJ_DES_SLIDEIN_9": "登録や出欠確認のオプションを提供して、ウェビナー、ワークショップ、イベントにユーザーを招待し、参加とエンゲージメントを促進します。",
2540
+ "_WEBPER_TEMP_OBJ_DES_SLIDEIN_8": "顧客からの問い合わせの必要性を減らし、ショッピング体験の全体的な満足度を向上させるために、顧客が遭遇する可能性のある一般的な懸念事項や問題のトラブルシューティングに対処します。",
2541
+ "_WEBPER_TEMP_OBJ_DES_SLIDEIN_9": "登録や出欠確認のオプションを提供して、ウェビナー、ワークショップ、イベントに参加するようユーザーを招待し、参加とエンゲージメントを促進します。",
2541
2542
  "_LINE_MESS_OBJ_DES_1": "各ユーザーの好み、行動、過去のやり取りに基づいてメッセージをカスタマイズする",
2542
2543
  "_LINE_MESS_OBJ_DES_2": "画像、ビデオ、ステッカーなどのマルチメディア コンテンツでメッセージを充実させます",
2543
2544
  "_LINE_MESS_OBJ_DES_3": "ユーザーの参加を促すために、クリック可能なボタンなどのインタラクティブな要素を組み込む",
@@ -2545,12 +2546,12 @@
2545
2546
  "_LINE_MESS_OBJ_DES_5": "プロモーション キャンペーンの開始、新製品の発表、限定割引の提供、売上の促進",
2546
2547
  "_LINE_MESS_OBJ_DES_6": "メッセージ テンプレートのインタラクティブな要素を通じて、応答性の高いカスタマー サポートを提供します",
2547
2548
  "_LINE_MESS_OBJ_DES_7": "組み込みのメッセージ テンプレートを使用して回答を求め、アンケートからユーザー情報を収集します",
2548
- "_LINE_RM_DEFAULT_OBJ_DES_1": "よくある質問、連絡先情報、ライブ チャット サポートなどのカスタマー サポート オプションへの素早いアクセスを提供することで、新規フォロワーをサポートします。",
2549
+ "_LINE_RM_DEFAULT_OBJ_DES_1": "よくある質問、連絡先情報、ライブ チャット サポートなどのカスタマー サポート オプションへの素早いアクセスを提供して、新規フォロワーを支援します。",
2549
2550
  "_LINE_RM_DEFAULT_OBJ_DES_2": "特別オファー、割引、プロモーションを強調表示する",
2550
2551
  "_LINE_RM_DEFAULT_OBJ_DES_3": "今後のイベント、ウェビナー、またはワークショップを宣伝する",
2551
2552
  "_LINE_RM_DEFAULT_OBJ_DES_4": "ユーザーを注目の記事、ビデオ、またはブログ投稿に誘導するオプションを提供します",
2552
2553
  "_LINE_RM_DEFAULT_OBJ_DES_5": "他のソーシャル メディア プラットフォームでコミュニティを拡大することで、ブランドの存在感を高めます。",
2553
- "_LINE_RM_DEFAULT_OBJ_DES_6": "メニューの選択に基づいて、さまざまな操作を通じてユーザーをガイドします。\n\n たとえば、「カスタマー サポート」のメニュー項目を選択すると、「技術サポート」や「請求に関する問い合わせ」など、必要なサポートの種類を選択するオプションがユーザーに表示される場合があります。",
2554
+ "_LINE_RM_DEFAULT_OBJ_DES_6": "メニューの選択に基づいて、さまざまなインタラクションを通じてユーザーをガイドします。\n\n たとえば、「カスタマー サポート」のメニュー項目を選択すると、「技術サポート」や「請求に関する問い合わせ」など、必要なサポートの種類を選択するオプションがユーザーに表示される場合があります。",
2554
2555
  "_LINE_RM_DEFAULT_OBJ_DES_7": "購読フォームや登録プロンプトを備えたLDPにユーザーを誘導して、ユーザー情報を取得します。",
2555
2556
  "_LINE_RM_SINGLE_OBJ_DES_1": "各ユーザーの好み、行動、Line チャネルとの過去のやり取りに基づいて、各ユーザーに表示されるメニュー オプションとコンテンツをカスタマイズします。",
2556
2557
  "_LINE_RM_SINGLE_OBJ_DES_2": "各ユーザーの興味、閲覧履歴、人口統計に合わせたパーソナライズされた推奨事項や提案を提供し、関連性とエンゲージメントを強化します。",
@@ -2582,7 +2583,7 @@
2582
2583
  "_EVENT_TEMPLATE_ECOMMERCE_DES_6": "ユーザー インタラクションに関するデータを使用して、より優れた顧客サポートを提供し、一般的な問題に効果的に対処します。",
2583
2584
  "_REALTIME_FACEBOOK_LEAD": "「Facebook Lead」テンプレートを使用すると、Facebook 広告キャンペーンを通じて配布されたフォームに記入したユーザーからリアルタイムで簡単に情報を収集し、この情報を CDP 365 で管理できます。この機能により、顧客データを迅速に一元化し、マーケティングを最適化できます。戦略を立て、コンバージョン率を向上させます。",
2584
2585
  "_REALTIME_FACEBOOK_LEAD_OBJ_1": "リードを顧客に変える",
2585
- "_REALTIME_FACEBOOK_LEAD_DES_1": "収集した情報を使用して潜在的な見込み客と直接連絡を取り、相談し、彼らを実際の顧客に変えます。",
2586
+ "_REALTIME_FACEBOOK_LEAD_DES_1": "収集した情報を使用して、潜在的な見込み客と直接連絡を取ったり相談したりして、彼らを実際の顧客に変えます。",
2586
2587
  "_REALTIME_FACEBOOK_LEAD_OBJ_2": "マーケティング戦略の強化",
2587
2588
  "_REALTIME_FACEBOOK_LEAD_DES_2": "フォームからのデータを分析して顧客のニーズと好みをより深く理解し、マーケティング戦略を調整して最適化できるようにします。",
2588
2589
  "_REALTIME_FACEBOOK_LEAD_OBJ_3": "マーケティングプロセスを自動化する",
@@ -2668,7 +2669,7 @@
2668
2669
  "_COOKIE_DM_INSTRUCTION_1_DES_2": "これは、追跡するすべてのサブドメインのベース ドメインです。例: {{x}}",
2669
2670
  "_COOKIE_DM_INSTRUCTION_2_SUM": "Cookie ドメインを構成します。",
2670
2671
  "_COOKIE_DM_INSTRUCTION_2_DES_1": "すべてのサブドメインにわたってデータを追跡するには、「{{x}}」と入力します (例: {{y}} または {{z}})",
2671
- "_ZALO_TEMP_SELECT_1": "Zalo公式アカウントによる様々なスタイル",
2672
+ "_ZALO_TEMP_SELECT_1": "Zalo公式アカウントによる多彩なスタイル",
2672
2673
  "_ZALO_TEMP_SELECT_2": "これらのテンプレートは、Zalo 公式アカウント専用です。クリック ",
2673
2674
  "_ZALO_TEMP_SELECT_3": "ここ",
2674
2675
  "_ZALO_TEMP_SELECT_4": "目的地を作成します。"
@@ -1930,6 +1930,7 @@
1930
1930
  "_ACT_VIEW_CALENDAR": "Xem Lịch",
1931
1931
  "_WARN_TITLE_SEG_COMPUTATIONAL_LIMIT": "Cảnh báo giới hạn số lượng phân khúc có thể tính toán",
1932
1932
  "_WARN_SEG_COMPUTATIONAL_LIMIT": "Hiện tại đã đạt giới hạn tính toán, hệ thống sẽ tính toán phân khúc này vào thời điểm thích hợp tiếp theo",
1933
+ "_WARN_SEG_CHANGE_DATA_ACCESS": "Việc điều chỉnh quyền truy cập dữ liệu sẽ xóa các cài đặt điều kiện hiện tại của bạn.",
1933
1934
  "_WARN_TITLE_ATTR_WARN_TOTAL": "Cảnh báo giới hạn số lượng thuộc tính",
1934
1935
  "_WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_CUSTOM": "Số lượng thuộc tính tùy chỉnh đã đạt giới hạn.\nNếu bạn muốn tạo thuộc tính mới, vui lòng lưu trữ thuộc tính không sử dụng",
1935
1936
  "_WARN_ATTR_WARN_TOTAL_CONTENT_CREATE_COMPUTED": "Số lượng thuộc tính động đã đạt giới hạn.\nNếu bạn muốn tạo thuộc tính mới, vui lòng lưu trữ thuộc tính không sử dụng",
@@ -2055,7 +2056,7 @@
2055
2056
  "_PREDICT_MODEL_ALL_PREDICTIVE_MODELS": "Tất cả các mô hình dự đoán",
2056
2057
  "_PREDICT_MODEL_CREATE_NEW_MODEL": "Tạo mới",
2057
2058
  "_PREDICT_MODEL_RFM_MODEL": "Mô hình RFM",
2058
- "_PREDICT_MODEL_RFM_DESCRIPTION": "Xếp hạng và phân nhóm khách hàng một cách định lượng dựa trên mức độ gần đây, tần suất và tổng số tiền trong hành vi chi tiêu của họ",
2059
+ "_PREDICT_MODEL_RFM_DESCRIPTION": "Xếp hạng và nhóm khách hàng một cách định lượng dựa trên mức độ gần đây, tần suất và tổng số tiền trong hành vi chi tiêu của họ",
2059
2060
  "_PREDICT_MODEL_ERFM_MODEL": "Mô hình eRFM",
2060
2061
  "_PREDICT_MODEL_ERFM_DESCRIPTION": "Mô hình eRFM là mô hình RFM rộng hơn, phân tích khách hàng dựa trên hành vi chi tiêu và mức độ tương tác qua email của họ",
2061
2062
  "_PREDICT_MODEL_PROPENSITY_TO_BUY_MODEL": "Xu hướng mua mô hình",
@@ -2066,7 +2067,7 @@
2066
2067
  "_PREDICT_MODEL_PREPARE_DATA": "Chuẩn bị dữ liệu",
2067
2068
  "_PREDICT_MODEL_TRAIN_MODEL": "Mô hình tàu hỏa",
2068
2069
  "_PREDICT_MODEL_SCHEDULE_AND_UPDATE": "Lên lịch & Cập nhật",
2069
- "_PREDICT_MODEL_DATA_INPUTS": "Đầu vào dữ liệu",
2070
+ "_PREDICT_MODEL_DATA_INPUTS": "Dữ liệu đầu vào",
2070
2071
  "_PREDICT_MODEL_RFM_NAME": "Tên RFM",
2071
2072
  "_PREDICT_MODEL_RFM_DATA_SOURCE": "Nguồn dữ liệu RFM",
2072
2073
  "_PREDICT_MODEL_CUSTOMER_IDENTIFY": "Nhận dạng khách hàng",
@@ -2107,7 +2108,7 @@
2107
2108
  "_PREDICT_MODEL_UPDATE_INTO_EXISTING_ATTRIBUTE": "Cập nhật vào các thuộc tính hiện có",
2108
2109
  "_PREDICT_MODEL_SELECT_SEGMENT": "Chọn đoạn",
2109
2110
  "_PREDICT_MODEL_SELECT_ATTRIBUTE": "Chọn thuộc tính",
2110
- "_PREDICT_MODEL_CANNOT_LOSE_THEM": "Không thể đánh mất chúng",
2111
+ "_PREDICT_MODEL_CANNOT_LOSE_THEM": "Không thể mất chúng",
2111
2112
  "_PREDICT_MODEL_AT_RISK": "Có nguy cơ",
2112
2113
  "_PREDICT_MODEL_LOST_CUSTOMER": "Khách hàng bị mất",
2113
2114
  "_PREDICT_MODEL_LOYAL": "Trung thành",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@antscorp/antsomi-ui",
3
- "version": "1.3.5-beta.844",
3
+ "version": "1.3.5-beta.846",
4
4
  "description": "An enterprise-class UI design language and React UI library.",
5
5
  "sideEffects": [
6
6
  "dist/*",