@k-int/stripes-kint-components 2.1.2 → 2.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (207) hide show
  1. package/CHANGELOG.md +26 -4
  2. package/es/index.js +150 -4
  3. package/es/lib/ActionList/ActionList.js +10 -2
  4. package/es/lib/ActionList/ActionListFieldArray.js +53 -11
  5. package/es/lib/CustomProperties/Config/CustomPropertiesSettings.js +3 -2
  6. package/es/lib/CustomProperties/Config/CustomPropertyForm.js +88 -44
  7. package/es/lib/CustomProperties/Config/{CustomPropertiesView.js → CustomPropertyView.js} +27 -14
  8. package/es/lib/CustomProperties/Config/index.js +6 -4
  9. package/es/lib/CustomProperties/Edit/CustomPropertiesEdit.js +72 -0
  10. package/es/lib/CustomProperties/Edit/CustomPropertiesEditCtx.js +133 -0
  11. package/es/lib/CustomProperties/Edit/CustomPropertiesListField.js +279 -0
  12. package/es/lib/CustomProperties/Edit/CustomPropertyField.js +370 -0
  13. package/es/lib/CustomProperties/Edit/CustomPropertyFormCard.js +156 -0
  14. package/es/lib/CustomProperties/Edit/index.js +51 -0
  15. package/es/lib/CustomProperties/Filter/CustomPropertiesFilter.js +216 -0
  16. package/es/lib/CustomProperties/Filter/CustomPropertiesFilterField.js +236 -0
  17. package/es/lib/CustomProperties/Filter/CustomPropertiesFilterFieldArray.js +159 -0
  18. package/es/lib/CustomProperties/Filter/CustomPropertiesFilterForm.js +119 -0
  19. package/es/lib/CustomProperties/Filter/CustomPropertiesRule.js +173 -0
  20. package/es/lib/CustomProperties/Filter/index.js +59 -0
  21. package/es/lib/CustomProperties/Filter/useOperators.js +138 -0
  22. package/es/lib/CustomProperties/Filter/useParseActiveFilterStrings.js +97 -0
  23. package/es/lib/CustomProperties/Filter/useValueProps.js +101 -0
  24. package/es/lib/CustomProperties/View/CustomPropertiesView.js +73 -0
  25. package/es/lib/CustomProperties/View/CustomPropertiesViewCtx.js +187 -0
  26. package/es/lib/CustomProperties/View/CustomPropertyCard.js +204 -0
  27. package/es/lib/CustomProperties/View/index.js +35 -0
  28. package/es/lib/CustomProperties/index.js +125 -0
  29. package/es/lib/EditableRefdataList/EditableRefdataList.js +12 -16
  30. package/es/lib/FormModal/FormModal.js +20 -11
  31. package/es/lib/QueryTypedown/QueryTypedown.js +9 -4
  32. package/es/lib/constants/customProperties.js +4 -1
  33. package/es/lib/hooks/index.js +16 -0
  34. package/es/lib/hooks/typedownHooks/useTypedownData.js +9 -2
  35. package/es/lib/hooks/useAvailableCustomProperties.js +106 -0
  36. package/es/lib/hooks/useInvalidateRefdata.js +53 -0
  37. package/es/lib/hooks/useMutateRefdataValue.js +11 -6
  38. package/es/lib/hooks/useRefdata.js +1 -3
  39. package/es/lib/utils/groupCustomPropertiesByCtx.js +69 -0
  40. package/es/lib/utils/index.js +24 -0
  41. package/es/lib/utils/refdataQueryKey.js +48 -0
  42. package/es/lib/utils/typedownQueryKey.js +48 -0
  43. package/es/lib/utils/validators.js +160 -0
  44. package/git_translate.sh +8 -0
  45. package/junit.xml +38 -38
  46. package/package.json +1 -1
  47. package/src/artifacts/coverage-jest/lcov-report/ActionList/ActionList.js.html +11 -2
  48. package/src/artifacts/coverage-jest/lcov-report/ActionList/ActionListFieldArray.js.html +25 -13
  49. package/src/artifacts/coverage-jest/lcov-report/ActionList/index.html +3 -3
  50. package/src/artifacts/coverage-jest/lcov-report/ActionList/index.js.html +1 -1
  51. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertiesLookup.js.html +1 -1
  52. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertiesSettings.js.html +5 -2
  53. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertiesView.js.html +75 -9
  54. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/CustomPropertyForm.js.html +195 -33
  55. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/index.html +10 -10
  56. package/src/artifacts/coverage-jest/lcov-report/CustomProperties/Config/index.js.html +1 -1
  57. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/EditableRefdataList.js.html +1 -1
  58. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/index.html +1 -1
  59. package/src/artifacts/coverage-jest/lcov-report/EditableRefdataList/index.js.html +1 -1
  60. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/EditableSettingsList.js.html +1 -1
  61. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/EditableSettingsListFieldArray.js.html +1 -1
  62. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/EditSettingValue.js.html +1 -1
  63. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/RenderSettingValue.js.html +1 -1
  64. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/SettingField.js.html +1 -1
  65. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/index.html +1 -1
  66. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/SettingField/index.js.html +1 -1
  67. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/index.html +1 -1
  68. package/src/artifacts/coverage-jest/lcov-report/EditableSettingsList/index.js.html +1 -1
  69. package/src/artifacts/coverage-jest/lcov-report/FormModal/FormModal.js.html +7 -22
  70. package/src/artifacts/coverage-jest/lcov-report/FormModal/index.html +7 -7
  71. package/src/artifacts/coverage-jest/lcov-report/FormModal/index.js.html +1 -1
  72. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/NoResultsMessage.js.html +1 -1
  73. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/index.html +1 -1
  74. package/src/artifacts/coverage-jest/lcov-report/NoResultsMessage/index.js.html +1 -1
  75. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/QueryTypedown.js.html +1 -1
  76. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/index.html +1 -1
  77. package/src/artifacts/coverage-jest/lcov-report/QueryTypedown/index.js.html +1 -1
  78. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/RefdataButtons.js.html +1 -1
  79. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/index.html +1 -1
  80. package/src/artifacts/coverage-jest/lcov-report/RefdataButtons/index.js.html +1 -1
  81. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/SASQLookupComponent.js.html +1 -1
  82. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/index.html +1 -1
  83. package/src/artifacts/coverage-jest/lcov-report/SASQLookupComponent/index.js.html +1 -1
  84. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/SASQRoute.js.html +1 -1
  85. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/index.html +1 -1
  86. package/src/artifacts/coverage-jest/lcov-report/SASQRoute/index.js.html +1 -1
  87. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/SASQViewComponent.js.html +1 -1
  88. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/index.html +1 -1
  89. package/src/artifacts/coverage-jest/lcov-report/SASQViewComponent/index.js.html +1 -1
  90. package/src/artifacts/coverage-jest/lcov-report/SearchField/SearchField.js.html +1 -1
  91. package/src/artifacts/coverage-jest/lcov-report/SearchField/index.html +1 -1
  92. package/src/artifacts/coverage-jest/lcov-report/SearchField/index.js.html +1 -1
  93. package/src/artifacts/coverage-jest/lcov-report/SettingPage/SettingPage.js.html +1 -1
  94. package/src/artifacts/coverage-jest/lcov-report/SettingPage/SettingPagePane.js.html +1 -1
  95. package/src/artifacts/coverage-jest/lcov-report/SettingPage/index.html +1 -1
  96. package/src/artifacts/coverage-jest/lcov-report/SettingPage/index.js.html +1 -1
  97. package/src/artifacts/coverage-jest/lcov-report/Typedown/Typedown.js.html +1 -1
  98. package/src/artifacts/coverage-jest/lcov-report/Typedown/index.html +1 -1
  99. package/src/artifacts/coverage-jest/lcov-report/Typedown/index.js.html +1 -1
  100. package/src/artifacts/coverage-jest/lcov-report/constants/customProperties.js.html +1 -1
  101. package/src/artifacts/coverage-jest/lcov-report/constants/eventCodes.js.html +1 -1
  102. package/src/artifacts/coverage-jest/lcov-report/constants/index.html +1 -1
  103. package/src/artifacts/coverage-jest/lcov-report/contexts/SettingsContext.js.html +1 -1
  104. package/src/artifacts/coverage-jest/lcov-report/contexts/index.html +1 -1
  105. package/src/artifacts/coverage-jest/lcov-report/contexts/index.js.html +1 -1
  106. package/src/artifacts/coverage-jest/lcov-report/hooks/index.html +1 -1
  107. package/src/artifacts/coverage-jest/lcov-report/hooks/index.js.html +1 -1
  108. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/index.html +1 -1
  109. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/index.js.html +1 -1
  110. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/useSettingSection.js.html +1 -1
  111. package/src/artifacts/coverage-jest/lcov-report/hooks/settingsHooks/useSettings.js.html +1 -1
  112. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/index.html +1 -1
  113. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/index.js.html +1 -1
  114. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedown.js.html +1 -1
  115. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedownData.js.html +1 -1
  116. package/src/artifacts/coverage-jest/lcov-report/hooks/typedownHooks/useTypedownToggle.js.html +1 -1
  117. package/src/artifacts/coverage-jest/lcov-report/hooks/useActiveElement.js.html +1 -1
  118. package/src/artifacts/coverage-jest/lcov-report/hooks/useCustomProperties.js.html +1 -1
  119. package/src/artifacts/coverage-jest/lcov-report/hooks/useHelperApp.js.html +1 -1
  120. package/src/artifacts/coverage-jest/lcov-report/hooks/useKiwtFieldArray.js.html +1 -1
  121. package/src/artifacts/coverage-jest/lcov-report/hooks/useKiwtSASQuery.js.html +1 -1
  122. package/src/artifacts/coverage-jest/lcov-report/hooks/useLocalStorageState.js.html +1 -1
  123. package/src/artifacts/coverage-jest/lcov-report/hooks/useMutateCustomProperties.js.html +1 -1
  124. package/src/artifacts/coverage-jest/lcov-report/hooks/useMutateRefdataValue.js.html +1 -1
  125. package/src/artifacts/coverage-jest/lcov-report/hooks/useQIndex.js.html +1 -1
  126. package/src/artifacts/coverage-jest/lcov-report/hooks/useRefdata.js.html +1 -1
  127. package/src/artifacts/coverage-jest/lcov-report/hooks/useTemplates.js.html +1 -1
  128. package/src/artifacts/coverage-jest/lcov-report/index.html +27 -27
  129. package/src/artifacts/coverage-jest/lcov-report/utils/buildUrl.js.html +1 -1
  130. package/src/artifacts/coverage-jest/lcov-report/utils/generateKiwtQuery.js.html +1 -1
  131. package/src/artifacts/coverage-jest/lcov-report/utils/generateKiwtQueryParams.js.html +16 -10
  132. package/src/artifacts/coverage-jest/lcov-report/utils/index.html +24 -9
  133. package/src/artifacts/coverage-jest/lcov-report/utils/index.js.html +1 -1
  134. package/src/artifacts/coverage-jest/lcov-report/utils/refdataOptions.js.html +1 -1
  135. package/src/artifacts/coverage-jest/lcov-report/utils/renderHelpText.js.html +1 -1
  136. package/src/artifacts/coverage-jest/lcov-report/utils/selectorSafe.js.html +1 -1
  137. package/src/artifacts/coverage-jest/lcov-report/utils/sortByLabel.js.html +1 -1
  138. package/src/artifacts/coverage-jest/lcov-report/utils/toCamelCase.js.html +1 -1
  139. package/src/artifacts/coverage-jest/lcov-report/utils/validators.js.html +202 -0
  140. package/src/artifacts/coverage-jest/lcov.info +366 -296
  141. package/src/index.js +35 -3
  142. package/src/lib/ActionList/ActionList.js +8 -2
  143. package/src/lib/ActionList/ActionListFieldArray.js +44 -17
  144. package/src/lib/ActionList/README.md +24 -20
  145. package/src/lib/CustomProperties/Config/CustomPropertiesSettings.js +3 -2
  146. package/src/lib/CustomProperties/Config/CustomPropertyForm.js +77 -23
  147. package/src/lib/CustomProperties/Config/{CustomPropertiesView.js → CustomPropertyView.js} +31 -9
  148. package/src/lib/CustomProperties/Config/index.js +1 -1
  149. package/src/lib/CustomProperties/Edit/CustomPropertiesEdit.js +35 -0
  150. package/src/lib/CustomProperties/Edit/CustomPropertiesEditCtx.js +85 -0
  151. package/src/lib/CustomProperties/Edit/CustomPropertiesListField.js +194 -0
  152. package/src/lib/CustomProperties/Edit/CustomPropertyField.js +299 -0
  153. package/src/lib/CustomProperties/Edit/CustomPropertyFormCard.js +131 -0
  154. package/src/lib/CustomProperties/Edit/index.js +5 -0
  155. package/src/lib/CustomProperties/Filter/CustomPropertiesFilter.js +125 -0
  156. package/src/lib/CustomProperties/Filter/CustomPropertiesFilterField.js +148 -0
  157. package/src/lib/CustomProperties/Filter/CustomPropertiesFilterFieldArray.js +113 -0
  158. package/src/lib/CustomProperties/Filter/CustomPropertiesFilterForm.js +74 -0
  159. package/src/lib/CustomProperties/Filter/CustomPropertiesRule.js +122 -0
  160. package/src/lib/CustomProperties/Filter/index.js +6 -0
  161. package/src/lib/CustomProperties/Filter/useOperators.js +55 -0
  162. package/src/lib/CustomProperties/Filter/useParseActiveFilterStrings.js +35 -0
  163. package/src/lib/CustomProperties/Filter/useValueProps.js +45 -0
  164. package/src/lib/CustomProperties/View/CustomPropertiesView.js +36 -0
  165. package/src/lib/CustomProperties/View/CustomPropertiesViewCtx.js +112 -0
  166. package/src/lib/CustomProperties/View/CustomPropertyCard.js +177 -0
  167. package/src/lib/CustomProperties/View/index.js +3 -0
  168. package/src/lib/CustomProperties/index.js +30 -0
  169. package/src/lib/EditableRefdataList/EditableRefdataList.js +13 -10
  170. package/src/lib/FormModal/FormModal.js +37 -22
  171. package/src/lib/QueryTypedown/QueryTypedown.js +3 -1
  172. package/src/lib/constants/customProperties.js +1 -0
  173. package/src/lib/hooks/index.js +2 -0
  174. package/src/lib/hooks/typedownHooks/useTypedownData.js +9 -3
  175. package/src/lib/hooks/useAvailableCustomProperties.js +40 -0
  176. package/src/lib/hooks/useInvalidateRefdata.js +11 -0
  177. package/src/lib/hooks/useMutateRefdataValue.js +7 -3
  178. package/src/lib/hooks/useRefdata.js +2 -3
  179. package/src/lib/utils/generateKiwtQueryParams.js +2 -2
  180. package/src/lib/utils/groupCustomPropertiesByCtx.js +13 -0
  181. package/src/lib/utils/index.js +5 -0
  182. package/src/lib/utils/refdataQueryKey.js +9 -0
  183. package/src/lib/utils/typedownQueryKey.js +9 -0
  184. package/src/lib/utils/validators.js +79 -0
  185. package/translate.sh +63 -0
  186. package/translations/stripes-kint-components/ar.json +105 -0
  187. package/translations/stripes-kint-components/ca.json +1 -0
  188. package/translations/stripes-kint-components/cs_CZ.json +105 -0
  189. package/translations/stripes-kint-components/da.json +1 -0
  190. package/translations/stripes-kint-components/de.json +105 -0
  191. package/translations/stripes-kint-components/en.json +59 -2
  192. package/translations/stripes-kint-components/es.json +105 -0
  193. package/translations/stripes-kint-components/fr.json +105 -0
  194. package/translations/stripes-kint-components/he.json +1 -0
  195. package/translations/stripes-kint-components/hi_IN.json +105 -0
  196. package/translations/stripes-kint-components/hu.json +105 -0
  197. package/translations/stripes-kint-components/it_IT.json +105 -0
  198. package/translations/stripes-kint-components/ja.json +105 -0
  199. package/translations/stripes-kint-components/ko.json +105 -0
  200. package/translations/stripes-kint-components/nb.json +1 -0
  201. package/translations/stripes-kint-components/nn.json +1 -0
  202. package/translations/stripes-kint-components/pl.json +105 -0
  203. package/translations/stripes-kint-components/pt_PT.json +105 -0
  204. package/translations/stripes-kint-components/ru.json +105 -0
  205. package/translations/stripes-kint-components/sv.json +105 -0
  206. package/translations/stripes-kint-components/ur.json +1 -0
  207. package/translations/stripes-kint-components/zh_CN.json +105 -0
@@ -1,8 +1,9 @@
1
- import React from 'react';
2
1
  import { useMutation } from 'react-query';
3
2
 
4
3
  import { useOkapiKy } from '@folio/stripes/core';
5
4
 
5
+ import useInvalidateRefdata from './useInvalidateRefdata';
6
+
6
7
  const useMutateRefdataValue = ({
7
8
  afterQueryCalls,
8
9
  endpoint,
@@ -16,6 +17,7 @@ const useMutateRefdataValue = ({
16
17
  const returnObj = {};
17
18
 
18
19
  const ky = useOkapiKy();
20
+ const invalidateRefdata = useInvalidateRefdata();
19
21
 
20
22
  const deleteQueryObject = useMutation(
21
23
  ['stripes-kint-components', 'useMutateRefdataValue', 'delete', id],
@@ -33,7 +35,8 @@ const useMutateRefdataValue = ({
33
35
  }
34
36
  }
35
37
  ).json()
36
- .then(afterQueryCalls?.delete),
38
+ .then(afterQueryCalls?.delete)
39
+ .then(() => invalidateRefdata()),
37
40
  queryParams?.delete
38
41
  );
39
42
 
@@ -50,7 +53,8 @@ const useMutateRefdataValue = ({
50
53
  }
51
54
  }
52
55
  ).json()
53
- .then(afterQueryCalls?.put),
56
+ .then(afterQueryCalls?.put)
57
+ .then(() => invalidateRefdata()),
54
58
  queryParams?.put
55
59
  );
56
60
 
@@ -1,10 +1,9 @@
1
- import React from 'react';
2
1
  import PropTypes from 'prop-types';
3
2
 
4
3
  import { useQuery } from 'react-query';
5
4
  import { useOkapiKy } from '@folio/stripes/core';
6
5
 
7
- import { generateKiwtQuery, refdataOptions } from '../utils';
6
+ import { generateKiwtQuery, refdataOptions, refdataQueryKey } from '../utils';
8
7
 
9
8
  const useRefdata = ({
10
9
  endpoint,
@@ -35,7 +34,7 @@ const useRefdata = ({
35
34
  const path = `${endpoint}${query}`;
36
35
 
37
36
  const queryObject = useQuery(
38
- ['stripes-kint-components', 'useRefdata', 'refdata', desc ?? ''],
37
+ refdataQueryKey(desc),
39
38
  () => ky(path).json(),
40
39
  queryParams
41
40
  );
@@ -61,7 +61,7 @@ const generateKiwtQueryParams = (options, nsValues) => {
61
61
  }
62
62
  });
63
63
  }
64
-
64
+
65
65
  if (filters) {
66
66
  const filterMap = {};
67
67
  filters.split(',').forEach(filter => {
@@ -95,7 +95,7 @@ const generateKiwtQueryParams = (options, nsValues) => {
95
95
  }
96
96
  });
97
97
  }
98
-
98
+
99
99
  if (sort) {
100
100
  paramsArray.push(...sort.trim()?.split(',').map(sortKey => {
101
101
  const descending = sortKey.startsWith('-');
@@ -0,0 +1,13 @@
1
+ const groupCustomPropertiesByCtx = (customProperties) => (
2
+ customProperties.reduce((acc, curr) => {
3
+ const ctx = curr.ctx ?? 'isNull';
4
+ const returnObj = {
5
+ ...acc
6
+ };
7
+
8
+ returnObj[ctx] = [...(acc?.[ctx] ?? []), curr];
9
+ return returnObj;
10
+ }, {})
11
+ );
12
+
13
+ export default groupCustomPropertiesByCtx;
@@ -5,6 +5,11 @@ export { default as selectorSafe } from './selectorSafe';
5
5
  export { default as buildUrl } from './buildUrl';
6
6
 
7
7
  export { default as refdataOptions } from './refdataOptions';
8
+ export { default as refdataQueryKey } from './refdataQueryKey';
9
+
10
+ export { default as typedownQueryKey } from './typedownQueryKey';
11
+
12
+ export { default as groupCustomPropertiesByCtx } from './groupCustomPropertiesByCtx';
8
13
 
9
14
  // Settings utils
10
15
  export { default as renderHelpText } from './renderHelpText';
@@ -0,0 +1,9 @@
1
+ const refdataQueryKey = (desc) => {
2
+ const keyArray = ['stripes-kint-components', 'refdata'];
3
+ if (desc) {
4
+ keyArray.push(desc);
5
+ }
6
+ return keyArray;
7
+ };
8
+
9
+ export default refdataQueryKey;
@@ -0,0 +1,9 @@
1
+ const typedownQueryKey = (path) => {
2
+ const keyArray = ['stripes-kint-components', 'typedown'];
3
+ if (path) {
4
+ keyArray.push(path);
5
+ }
6
+ return keyArray;
7
+ };
8
+
9
+ export default typedownQueryKey;
@@ -0,0 +1,79 @@
1
+ // This is a copy of stripes-erm-components, to avoid necessitating that as a dependency
2
+ import { FormattedMessage } from 'react-intl';
3
+
4
+ import * as CUSTOM_PROPERTY_TYPES from '../constants/customProperties';
5
+
6
+ const invalidNumber = value => (
7
+ (value || value === 0) ? undefined : <FormattedMessage id="stripes-kint-components.errors.invalidNumber" />
8
+ );
9
+
10
+ const required = value => {
11
+ const blankString = /^\s+$/;
12
+ if ((value && !blankString.test(value)) || value === false || value === 0) {
13
+ return undefined;
14
+ }
15
+ return <FormattedMessage id="stripes-core.label.missingRequiredField" />;
16
+ };
17
+
18
+ const requiredObject = (formValue = {}) => {
19
+ // withKiwtFieldArray sets the _delete property on new objects by default
20
+ // eslint-disable-next-line no-unused-vars
21
+ const { _delete, ...value } = formValue;
22
+ if (Object.keys(value).length === 0) {
23
+ return <FormattedMessage id="stripes-core.label.missingRequiredField" />;
24
+ }
25
+ return undefined;
26
+ };
27
+
28
+ const customPropertyValidator = (fieldValue, allValues, customProperty) => {
29
+ const { note, publicNote, value: currentValue } = allValues?.customProperties?.[customProperty?.value]?.[0] ?? {};
30
+
31
+ if ((note && !currentValue) || (publicNote && !currentValue)) {
32
+ if (
33
+ customProperty.type === CUSTOM_PROPERTY_TYPES.DECIMAL_CLASS_NAME ||
34
+ customProperty.type === CUSTOM_PROPERTY_TYPES.INTEGER_CLASS_NAME
35
+ ) {
36
+ return <FormattedMessage id="stripes-kint-components.errors.customPropertyNoteInvalidNumber" />;
37
+ } else {
38
+ return <FormattedMessage id="stripes-kint-components.errors.customPropertyNoteWithoutValue" />;
39
+ }
40
+ }
41
+
42
+ if (customProperty.type === CUSTOM_PROPERTY_TYPES.DECIMAL_CLASS_NAME) {
43
+ const regexp = /^-?[\d]*(\.[\d]{0,2})?$/;
44
+ return (fieldValue && !regexp.test(fieldValue)) ?
45
+ <FormattedMessage id="stripes-kint-components.errors.customPropertyMaxTwoDecimals" /> : undefined;
46
+ }
47
+
48
+ if (customProperty.type === CUSTOM_PROPERTY_TYPES.INTEGER_CLASS_NAME) {
49
+ const min = Number.MIN_SAFE_INTEGER;
50
+ const max = Number.MAX_SAFE_INTEGER;
51
+
52
+ return (fieldValue && !Number.isInteger(+fieldValue)) ?
53
+ <FormattedMessage id="stripes-kint-components.errors.customPropertyValueNotInRange" values={{ min, max }} /> :
54
+ undefined;
55
+ }
56
+
57
+ if (!customProperty.primary && !currentValue) {
58
+ return <FormattedMessage id="stripes-core.label.missingRequiredField" />;
59
+ }
60
+
61
+ return undefined;
62
+ };
63
+
64
+
65
+ const composeValidators = (...validators) => (
66
+ (value, allValues, meta) => (
67
+ validators.reduce((error, validator) => (
68
+ error || validator(value, allValues, meta)
69
+ ), undefined)
70
+ )
71
+ );
72
+
73
+ export {
74
+ composeValidators,
75
+ customPropertyValidator,
76
+ invalidNumber,
77
+ required,
78
+ requiredObject,
79
+ };
package/translate.sh ADDED
@@ -0,0 +1,63 @@
1
+ #!/bin/bash
2
+ translate() {
3
+ if [ -z "$2" ];
4
+ then
5
+ cat en.json | docker run -i translate $1 > $1.json;
6
+ else
7
+ cat en.json | docker run -i translate $1 > $2.json;
8
+ fi
9
+ }
10
+
11
+ translateLanguages=(
12
+ 'ar'
13
+ 'ca'
14
+ 'cs:cs_CZ'
15
+ 'da'
16
+ 'de'
17
+ 'es'
18
+ 'fr'
19
+ 'he'
20
+ 'hi:hi_IN'
21
+ 'hu'
22
+ 'it:it_IT'
23
+ 'ja'
24
+ 'ko'
25
+ 'nb'
26
+ 'nn'
27
+ 'pl'
28
+ 'pt:pt_PT'
29
+ 'ru'
30
+ 'sv'
31
+ 'ur'
32
+ 'zh:zh_CN'
33
+ )
34
+
35
+ cd "./translations/stripes-kint-components"
36
+
37
+ for i in "${translateLanguages[@]}"
38
+ do
39
+ # delete previous array/list (this is crucial!)
40
+ unset fileName
41
+ # split sub-list if available
42
+ if [[ $i == *":"* ]];
43
+ then
44
+ # split server name from sub-list
45
+ tmpLangArr=(${i//:/ })
46
+ i=${tmpLangArr[0]}
47
+ fileName=${tmpLangArr[1]}
48
+ fi
49
+ if [ -z "$fileName" ];
50
+ then
51
+ translate $i
52
+ if [ $? -ne 0 ];
53
+ then
54
+ echo "{}" > $i.json;
55
+ fi;
56
+ else
57
+ translate $i $fileName
58
+ if [ $? -ne 0 ];
59
+ then
60
+ echo "{}" > $fileName.json;
61
+ fi;
62
+ fi
63
+ done
@@ -0,0 +1,105 @@
1
+ {
2
+ "AND": "و",
3
+ "OR": "أو",
4
+ "create": "الإبداع",
5
+ "edit": "Edit",
6
+ "save": "أنقذ",
7
+ "cancel": "إلغاء",
8
+ "delete": "تحذف",
9
+ "apply": "التطبيق",
10
+ "notSet": "غير محدد",
11
+ "errors.hasNonAlphaName": "ولا يمكن أن يحتوي الاسم إلا على شخصيات أبجدية لاتينية (أ-ض) وشخصيات رقمية غير محررة.",
12
+ "settings.noCurrentValue": "لا قيمة جارية",
13
+ "settings.default": "العجز",
14
+ "settings.edit": "Edit",
15
+ "settings.settingLoading": "Loading",
16
+ "settings.finishEditing": "التحرير النهائي",
17
+ "settings.valueFor": "Value for setting {name}",
18
+ "actionList.save": "أنقذ",
19
+ "actionList.cancel": "إلغاء",
20
+ "actionList.create": "الإبداع",
21
+ "actionList.actions": "الإجراءات",
22
+ "editableRefdataList.edit": "Edit",
23
+ "editableRefdataList.delete": "تحذف",
24
+ "editableRefdataList.label": "Label",
25
+ "editableRefdataList.value": "القيمة",
26
+ "sasqLookupComponent.mainPane.found": "السجلات وجدت",
27
+ "noResultsMessage.showFilters": "مرشحات العرض",
28
+ "customProperties": "الممتلكات العرفية",
29
+ "customProperties.all": "كل شيء",
30
+ "customProperties.none": "لا",
31
+ "customProperties.label": "Label",
32
+ "customProperties.primary": "الابتدائي",
33
+ "customProperties.retired": "المتقاعدين",
34
+ "customProperties.ctx": "السياق",
35
+ "customProperties.ctx.addContext": "Add context {value}",
36
+ "customProperties.weight": "وزن النظام",
37
+ "customProperties.type": "النوع",
38
+ "customProperties.internalFalse": "الجمهور",
39
+ "customProperties.internalNote": "المذكرة الداخلية",
40
+ "customProperties.internalTrue": "داخلي",
41
+ "customProperties.publicNote": "ملاحظة عامة",
42
+ "customProperties.name": "الاسم",
43
+ "customProperties.description": "الوصف",
44
+ "customProperties.category": "المخلفات",
45
+ "customProperties.defaultVisibility": "الرؤية غير المباشرة",
46
+ "customProperties.noCtxFound": "لا يوجد سياق مطابق",
47
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyBlob": "Blob",
48
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyBoolean": "Polean",
49
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyContainer": "الحاويات",
50
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyDecimal": "Decimal",
51
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyInteger": "Integer",
52
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyRefdata": "Refdata",
53
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyRefdataDefinition": "تعريف البيانات",
54
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyText": "النص",
55
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyLocalDate": "التاريخ",
56
+ "customProperties.delete.confirmLabel": "تحذف",
57
+ "customProperties.delete.confirmHeading": "الممتلكات العرفية",
58
+ "customProperties.delete.confirmMessage": "Custom property TRIstrong.{name} /strong. will be strong.deleted/strong..",
59
+ "customProperties.primaryProperties": "الممتلكات الأولية",
60
+ "customProperties.optionalProperties": "الممتلكات الاختيارية",
61
+ "customProperties.addProperty": "الممتلكات",
62
+ "customProperties.ctx.title": "الممتلكات العرفية ({ctx})",
63
+ "customProperty.optionalPropertyHeader": "الممتلكات {العدد}",
64
+ "customProperty.remove": "Remove property {number}",
65
+ "search": "البحث",
66
+ "yes": "نعم",
67
+ "no": "لا",
68
+ "errors.invalidNumber": "يرجى الدخول إلى رقم صالح للاستمرار",
69
+ "errors.primaryRetired": "لا يمكن أن تكون الممتلكات العرفية ملكية أولية ومتقاعدة",
70
+ "errors.customPropertyNoteInvalidNumber": "يجب إدخال رقم صحيح من أجل توفير مذكرة",
71
+ "errors.customPropertyInvalidNumber": "يرجى الدخول إلى رقم صالح للاستمرار",
72
+ "errors.customPropertyNoteWithoutValue": "يجب تحديد قيمة من أجل توفير ملاحظة",
73
+ "errors.customPropertyValueNotInRange": "يرجى إدخال رقم كامل في النطاق {م}إلى {ماكس} لمواصلة",
74
+ "errors.customPropertyDecimalValueNotInRange": "يرجى إدخال رقم في النطاق {م}إلى {ماكس} لمواصلة",
75
+ "errors.customPropertyMaxTwoDecimals": "من فضلك أدخل رقماً بحد أقصى لـ 2 عشريات",
76
+ "customProperty": "الممتلكات العرفية",
77
+ "customProperty.name": "الاسم",
78
+ "customProperty.value": "القيمة",
79
+ "customProperty.internalNote": "المذكرة الداخلية",
80
+ "customProperty.visibility": "الرؤية",
81
+ "customProperty.publicNote": "ملاحظة عامة",
82
+ "customProperty.internalTrue": "داخلي",
83
+ "customProperty.internalFalse": "الجمهور",
84
+ "customProperty.filtersApplied": "{حساب }مرشحات الممتلكات العرفية مطبقة",
85
+ "customProperty.editCustomPropertyFilters": "تصفية ممتلكات شركة إديت",
86
+ "customProperty.filterBuilder": "تصفية الممتلكات العرفية",
87
+ "customProperty.filterIndex": "تصفية الممتلكات العرفية",
88
+ "customProperty.removeFilter": "Remove custom property filter {number}",
89
+ "customProperty.removeRule": "Remove rule {number}",
90
+ "customProperty.addFilter": "يضاف تصفية الممتلكات العرفية",
91
+ "customProperty.retiredName": "RETIRED: {name}",
92
+ "customProperty.notSet": "غير محدد",
93
+ "operator.isSet": "جاهز",
94
+ "operator.isNotSet": "ليست جاهزة",
95
+ "operator.equals": "المساواة",
96
+ "operator.doesNotEqual": "لا تساوي",
97
+ "operator.isGreaterThanOrEqual": "أكبر من أو يساوي",
98
+ "operator.isLessThanOrEqual": "أقل من أو يساوي",
99
+ "operator.isOnOrAfter": "أو بعد",
100
+ "operator.isOnOrBefore": "أو قبل",
101
+ "operator.is": "هو",
102
+ "operator.isNot": "ليس",
103
+ "operator.contains": "الحاويات",
104
+ "operator.doesNotContain": "لا تحتوي"
105
+ }
@@ -0,0 +1,105 @@
1
+ {
2
+ "AND": "A",
3
+ "OR": "Nebo",
4
+ "create": "Čeština",
5
+ "edit": "Editace",
6
+ "save": "Čeština",
7
+ "cancel": "Hledat",
8
+ "delete": "Čeština",
9
+ "apply": "Hledat",
10
+ "notSet": "Není nastaveno",
11
+ "errors.hasNonAlphaName": "Jméno může obsahovat pouze latinské abecední znaky (a-z) a nevýrazné numerické znaky.",
12
+ "settings.noCurrentValue": "Žádné aktuální hodnoty",
13
+ "settings.default": "výchozí",
14
+ "settings.edit": "Editace",
15
+ "settings.settingLoading": "Čeština",
16
+ "settings.finishEditing": "Úprava povrchové úpravy",
17
+ "settings.valueFor": "Hodnota pro nastavení {name}",
18
+ "actionList.save": "Čeština",
19
+ "actionList.cancel": "Hledat",
20
+ "actionList.create": "Čeština",
21
+ "actionList.actions": "Akce",
22
+ "editableRefdataList.edit": "Editace",
23
+ "editableRefdataList.delete": "Čeština",
24
+ "editableRefdataList.label": "Čeština",
25
+ "editableRefdataList.value": "Hodnota",
26
+ "sasqLookupComponent.mainPane.found": "{total} záznamy nalezeno",
27
+ "noResultsMessage.showFilters": "Zobrazit filtry",
28
+ "customProperties": "Vlastní vlastnosti",
29
+ "customProperties.all": "Vše",
30
+ "customProperties.none": "Čeština",
31
+ "customProperties.label": "Čeština",
32
+ "customProperties.primary": "Základní",
33
+ "customProperties.retired": "Čeština",
34
+ "customProperties.ctx": "Čeština",
35
+ "customProperties.ctx.addContext": "Přidat kontextovou hodnotu {}",
36
+ "customProperties.weight": "Hmotnost objednávky",
37
+ "customProperties.type": "Typ",
38
+ "customProperties.internalFalse": "Na Veřejnosti",
39
+ "customProperties.internalNote": "Vnitřní poznámka",
40
+ "customProperties.internalTrue": "Čeština",
41
+ "customProperties.publicNote": "Veřejná poznámka",
42
+ "customProperties.name": "Jméno",
43
+ "customProperties.description": "Čeština",
44
+ "customProperties.category": "Čeština",
45
+ "customProperties.defaultVisibility": "Výchozí viditelnost",
46
+ "customProperties.noCtxFound": "Nebyly nalezeny žádné odpovídající kontext",
47
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyBlob": "Čeština",
48
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyBoolean": "Čeština",
49
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyContainer": "Čeština",
50
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyDecimal": "Čeština",
51
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyInteger": "Čeština",
52
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyRefdata": "Čeština",
53
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyRefdataDefinition": "Definice dat",
54
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyText": "Čeština",
55
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyLocalDate": "Datum",
56
+ "customProperties.delete.confirmLabel": "Čeština",
57
+ "customProperties.delete.confirmHeading": "Odstranit vlastní nemovitosti",
58
+ "customProperties.delete.confirmMessage": "Vlastní vlastnost <strong>{name}</strong> bude <strong>deleted</strong>.",
59
+ "customProperties.primaryProperties": "Základní vlastnosti",
60
+ "customProperties.optionalProperties": "Volitelné vlastnosti",
61
+ "customProperties.addProperty": "Přidat nemovitost",
62
+ "customProperties.ctx.title": "Vlastní vlastnosti ({ctx})",
63
+ "customProperty.optionalPropertyHeader": "Nemovitosti {číslo}",
64
+ "customProperty.remove": "Odebrat nemovitost {číslo}",
65
+ "search": "Hledat",
66
+ "yes": "Čeština",
67
+ "no": "Ne",
68
+ "errors.invalidNumber": "Zadejte platný číslo",
69
+ "errors.primaryRetired": "Vlastní vlastnictví nelze být jak primární, tak i v zahraničí",
70
+ "errors.customPropertyNoteInvalidNumber": "platný počet musí být zadán za účelem uložení poznámky",
71
+ "errors.customPropertyInvalidNumber": "Zadejte platný číslo",
72
+ "errors.customPropertyNoteWithoutValue": "Hodnota musí být nastavena pro uložení poznámky",
73
+ "errors.customPropertyValueNotInRange": "Zadejte číslo v rozsahu {min} na {max} a pokračujte",
74
+ "errors.customPropertyDecimalValueNotInRange": "Zadejte číslo v rozsahu {min} na {max} a pokračujte",
75
+ "errors.customPropertyMaxTwoDecimals": "Zadejte číslo maximálně 2 decimals místy",
76
+ "customProperty": "Vlastní nemovitosti",
77
+ "customProperty.name": "Jméno",
78
+ "customProperty.value": "Hodnota",
79
+ "customProperty.internalNote": "Vnitřní poznámka",
80
+ "customProperty.visibility": "Viditelnost",
81
+ "customProperty.publicNote": "Veřejná poznámka",
82
+ "customProperty.internalTrue": "Čeština",
83
+ "customProperty.internalFalse": "Na Veřejnosti",
84
+ "customProperty.filtersApplied": "{count} Použité filtry na zakázku",
85
+ "customProperty.editCustomPropertyFilters": "Upravit vlastní filtry nemovitostí",
86
+ "customProperty.filterBuilder": "Vlastní objektový filtr stavitel",
87
+ "customProperty.filterIndex": "Vlastní filtr vlastností {index}",
88
+ "customProperty.removeFilter": "Odebrat vlastní filtr vlastností {čísl}",
89
+ "customProperty.removeRule": "Odebrat pravidlo {čísl}",
90
+ "customProperty.addFilter": "Přidat vlastní filtr vlastností",
91
+ "customProperty.retiredName": "RETIRED: {name}",
92
+ "customProperty.notSet": "Není nastaveno",
93
+ "operator.isSet": "Je sada",
94
+ "operator.isNotSet": "Není nastaveno",
95
+ "operator.equals": "Čeština",
96
+ "operator.doesNotEqual": "Nerovnatelné",
97
+ "operator.isGreaterThanOrEqual": "Je větší než nebo rovno",
98
+ "operator.isLessThanOrEqual": "Je méně než nebo rovno",
99
+ "operator.isOnOrAfter": "Je na nebo po",
100
+ "operator.isOnOrBefore": "Je na nebo před",
101
+ "operator.is": "Čeština",
102
+ "operator.isNot": "Ne",
103
+ "operator.contains": "Obsahuje",
104
+ "operator.doesNotContain": "Neobsahuje"
105
+ }
@@ -0,0 +1,105 @@
1
+ {
2
+ "AND": "UND",
3
+ "OR": "ANHANG",
4
+ "create": "Erstellung",
5
+ "edit": "Bearbeiten",
6
+ "save": "Speichern",
7
+ "cancel": "Abbrechen",
8
+ "delete": "Löschen",
9
+ "apply": "Anwendung",
10
+ "notSet": "Nicht gesetzt",
11
+ "errors.hasNonAlphaName": "Der Name kann nur lateinische alphabetische Zeichen (a-z) und nicht-führende numerische Zeichen enthalten.",
12
+ "settings.noCurrentValue": "Kein aktueller Wert",
13
+ "settings.default": "Standard",
14
+ "settings.edit": "Bearbeiten",
15
+ "settings.settingLoading": "Belastung",
16
+ "settings.finishEditing": "Fertigbearbeitung",
17
+ "settings.valueFor": "Wert für die Einstellung {name}",
18
+ "actionList.save": "Speichern",
19
+ "actionList.cancel": "Abbrechen",
20
+ "actionList.create": "Erstellung",
21
+ "actionList.actions": "Maßnahmen",
22
+ "editableRefdataList.edit": "Bearbeiten",
23
+ "editableRefdataList.delete": "Löschen",
24
+ "editableRefdataList.label": "Bezeichnung",
25
+ "editableRefdataList.value": "Wert",
26
+ "sasqLookupComponent.mainPane.found": "{total} Einträge gefunden",
27
+ "noResultsMessage.showFilters": "Filter anzeigen",
28
+ "customProperties": "Eigene Eigenschaften",
29
+ "customProperties.all": "Alle",
30
+ "customProperties.none": "Keine",
31
+ "customProperties.label": "Bezeichnung",
32
+ "customProperties.primary": "Primäre",
33
+ "customProperties.retired": "Ruhestand",
34
+ "customProperties.ctx": "Kontext",
35
+ "customProperties.ctx.addContext": "Kontext hinzufügen {value}",
36
+ "customProperties.weight": "Bestellgewicht",
37
+ "customProperties.type": "Art",
38
+ "customProperties.internalFalse": "Öffentliche",
39
+ "customProperties.internalNote": "Interne Anmerkung",
40
+ "customProperties.internalTrue": "Intern",
41
+ "customProperties.publicNote": "Anmerkung",
42
+ "customProperties.name": "Name",
43
+ "customProperties.description": "Warenbezeichnung",
44
+ "customProperties.category": "Wählen",
45
+ "customProperties.defaultVisibility": "Standardsichtbarkeit",
46
+ "customProperties.noCtxFound": "Kein übereinstimmender Kontext gefunden",
47
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyBlob": "Blob",
48
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyBoolean": "Boolen",
49
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyContainer": "Container",
50
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyDecimal": "Deko",
51
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyInteger": "Integer",
52
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyRefdata": "Referenzen",
53
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyRefdataDefinition": "Definition der Referenzwerte",
54
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyText": "Text",
55
+ "customProperties.type.com.k_int.web.toolkit.custprops.types.CustomPropertyLocalDate": "Datum",
56
+ "customProperties.delete.confirmLabel": "Löschen",
57
+ "customProperties.delete.confirmHeading": "Benutzerdefinierte Eigenschaft löschen",
58
+ "customProperties.delete.confirmMessage": "Zollgebiet <strong>{name}</strong> wird <strong>deleted</strong> sein.",
59
+ "customProperties.primaryProperties": "Primäre Eigenschaften",
60
+ "customProperties.optionalProperties": "Optionale Eigenschaften",
61
+ "customProperties.addProperty": "Objekt hinzufügen",
62
+ "customProperties.ctx.title": "Benutzerdefinierte Eigenschaften ({ctx})",
63
+ "customProperty.optionalPropertyHeader": "Immobilien {number}",
64
+ "customProperty.remove": "Objekt entfernen {number}",
65
+ "search": "Suche",
66
+ "yes": "Ja.",
67
+ "no": "Nein",
68
+ "errors.invalidNumber": "Bitte geben Sie eine gültige Nummer ein, um fortzufahren",
69
+ "errors.primaryRetired": "Eine benutzerdefinierte Eigenschaft kann nicht primär und pensioniert werden",
70
+ "errors.customPropertyNoteInvalidNumber": "Eine gültige Nummer muss eingegeben werden, um eine Notiz zu speichern",
71
+ "errors.customPropertyInvalidNumber": "Bitte geben Sie eine gültige Nummer ein, um fortzufahren",
72
+ "errors.customPropertyNoteWithoutValue": "Ein Wert muss gesetzt werden, um eine Notiz zu speichern",
73
+ "errors.customPropertyValueNotInRange": "Bitte geben Sie eine ganze Zahl im Bereich {min} bis {max} ein, um weiter zu gehen",
74
+ "errors.customPropertyDecimalValueNotInRange": "Bitte geben Sie eine Nummer im Bereich {min} bis {max} ein, um weiterzumachen",
75
+ "errors.customPropertyMaxTwoDecimals": "Bitte geben Sie eine Nummer mit maximal 2 Dezimalsstellen ein",
76
+ "customProperty": "Eigenes Eigentum",
77
+ "customProperty.name": "Name",
78
+ "customProperty.value": "Wert",
79
+ "customProperty.internalNote": "Interne Anmerkung",
80
+ "customProperty.visibility": "Sichtbarkeit",
81
+ "customProperty.publicNote": "Anmerkung",
82
+ "customProperty.internalTrue": "Intern",
83
+ "customProperty.internalFalse": "Öffentliche",
84
+ "customProperty.filtersApplied": "{count} benutzerdefinierte Eigenschaften Filter angewandt",
85
+ "customProperty.editCustomPropertyFilters": "Benutzerdefinierte Immobilienfilter bearbeiten",
86
+ "customProperty.filterBuilder": "Benutzerdefinierte Eigenschaft Filter Builder",
87
+ "customProperty.filterIndex": "Benutzerdefinierte Immobilienfilter {index}",
88
+ "customProperty.removeFilter": "Entfernen Sie benutzerdefinierte Eigenschaft filter {number}",
89
+ "customProperty.removeRule": "Regel entfernen {number}",
90
+ "customProperty.addFilter": "Benutzerdefinierte Eigenschaft filter hinzufügen",
91
+ "customProperty.retiredName": "RETIRED: {name}",
92
+ "customProperty.notSet": "Nicht gesetzt",
93
+ "operator.isSet": "Ist eingestellt",
94
+ "operator.isNotSet": "Wird nicht gesetzt",
95
+ "operator.equals": "Gleiche",
96
+ "operator.doesNotEqual": "Nicht gleich",
97
+ "operator.isGreaterThanOrEqual": "Ist größer oder gleich",
98
+ "operator.isLessThanOrEqual": "Ist kleiner oder gleich",
99
+ "operator.isOnOrAfter": "Ist an oder nach",
100
+ "operator.isOnOrBefore": "Ist auf oder vor",
101
+ "operator.is": "I",
102
+ "operator.isNot": "nicht",
103
+ "operator.contains": "Enthält",
104
+ "operator.doesNotContain": "nicht enthalten"
105
+ }