@beinformed/ui 1.20.0 → 1.20.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -2
- package/esm/hooks/useContent.js +2 -6
- package/esm/hooks/useContent.js.map +1 -1
- package/esm/hooks/useI18n.js +10 -11
- package/esm/hooks/useI18n.js.map +1 -1
- package/esm/hooks/useModularUI.js +2 -3
- package/esm/hooks/useModularUI.js.map +1 -1
- package/esm/hooks/useModularUIRequest.js +2 -5
- package/esm/hooks/useModularUIRequest.js.map +1 -1
- package/esm/i18n/Message.js.map +1 -1
- package/esm/i18n/withMessage.js +2 -10
- package/esm/i18n/withMessage.js.map +1 -1
- package/esm/redux/_modularui/connector.js +3 -4
- package/esm/redux/_modularui/connector.js.map +1 -1
- package/esm/redux/_modularui/selectors.js +22 -5
- package/esm/redux/_modularui/selectors.js.map +1 -1
- package/esm/redux/_modularui/withModularUI.js +2 -10
- package/esm/redux/_modularui/withModularUI.js.map +1 -1
- package/esm/redux/actions/Application.js +26 -7
- package/esm/redux/actions/Application.js.map +1 -1
- package/esm/redux/selectors/i18n.js +16 -0
- package/esm/redux/selectors/i18n.js.map +1 -0
- package/esm/utils/datetime/DateTimeUtil.js +3 -1
- package/esm/utils/datetime/DateTimeUtil.js.map +1 -1
- package/lib/hooks/__tests__/useAuthentication.spec.js.flow +0 -8
- package/lib/hooks/useContent.js +3 -7
- package/lib/hooks/useContent.js.flow +2 -2
- package/lib/hooks/useContent.js.map +1 -1
- package/lib/hooks/useI18n.js +12 -9
- package/lib/hooks/useI18n.js.flow +10 -11
- package/lib/hooks/useI18n.js.map +1 -1
- package/lib/hooks/useModularUI.js +3 -3
- package/lib/hooks/useModularUI.js.flow +3 -2
- package/lib/hooks/useModularUI.js.map +1 -1
- package/lib/hooks/useModularUIRequest.js +2 -4
- package/lib/hooks/useModularUIRequest.js.flow +8 -10
- package/lib/hooks/useModularUIRequest.js.map +1 -1
- package/lib/i18n/Message.js.flow +1 -1
- package/lib/i18n/Message.js.map +1 -1
- package/lib/i18n/withMessage.js +2 -8
- package/lib/i18n/withMessage.js.flow +3 -4
- package/lib/i18n/withMessage.js.map +1 -1
- package/lib/redux/_modularui/connector.js +3 -3
- package/lib/redux/_modularui/connector.js.flow +3 -2
- package/lib/redux/_modularui/connector.js.map +1 -1
- package/lib/redux/_modularui/selectors.js +26 -6
- package/lib/redux/_modularui/selectors.js.flow +19 -1
- package/lib/redux/_modularui/selectors.js.map +1 -1
- package/lib/redux/_modularui/withModularUI.js +3 -9
- package/lib/redux/_modularui/withModularUI.js.flow +3 -5
- package/lib/redux/_modularui/withModularUI.js.map +1 -1
- package/lib/redux/actions/Application.js +31 -8
- package/lib/redux/actions/Application.js.flow +6 -8
- package/lib/redux/actions/Application.js.map +1 -1
- package/lib/redux/actions/__tests__/Application.spec.js.flow +1 -5
- package/lib/redux/actions/__tests__/Authorization.spec.js.flow +1 -1
- package/lib/redux/selectors/i18n.js +28 -0
- package/lib/redux/selectors/i18n.js.flow +15 -0
- package/lib/redux/selectors/i18n.js.map +1 -0
- package/lib/utils/datetime/DateTimeUtil.js +3 -1
- package/lib/utils/datetime/DateTimeUtil.js.flow +1 -1
- package/lib/utils/datetime/DateTimeUtil.js.map +1 -1
- package/package.json +1 -1
- package/src/hooks/__tests__/useAuthentication.spec.js +0 -8
- package/src/hooks/useContent.js +2 -2
- package/src/hooks/useI18n.js +10 -11
- package/src/hooks/useModularUI.js +3 -2
- package/src/hooks/useModularUIRequest.js +8 -10
- package/src/i18n/Message.js +1 -1
- package/src/i18n/withMessage.js +3 -4
- package/src/redux/_modularui/connector.js +3 -2
- package/src/redux/_modularui/selectors.js +19 -1
- package/src/redux/_modularui/withModularUI.js +3 -5
- package/src/redux/actions/Application.js +6 -8
- package/src/redux/actions/__tests__/Application.spec.js +1 -5
- package/src/redux/actions/__tests__/Authorization.spec.js +1 -1
- package/src/redux/selectors/i18n.js +15 -0
- package/src/utils/datetime/DateTimeUtil.js +1 -1
|
@@ -15,7 +15,7 @@ var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequ
|
|
|
15
15
|
Object.defineProperty(exports, "__esModule", {
|
|
16
16
|
value: true
|
|
17
17
|
});
|
|
18
|
-
exports.modelByHref = exports.keyByHref = exports.getTab = exports.getPreference = exports.getModelsByType = exports.getForm = exports.getFirstModelByInstance = exports.getCaseView = exports.getApplication = exports.getAllModelsByInstance = exports.getActiveModels = exports.getActiveModelByInstance = void 0;
|
|
18
|
+
exports.modelByHref = exports.keyByHref = exports.getTab = exports.getPreference = exports.getModelsByType = exports.getForm = exports.getFirstModelByInstance = exports.getCaseView = exports.getApplication = exports.getAllModelsByInstance = exports.getActiveModels = exports.getActiveModelByInstance = exports.allKeysByHref = void 0;
|
|
19
19
|
|
|
20
20
|
var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
|
|
21
21
|
|
|
@@ -221,11 +221,31 @@ var keyByHref = function keyByHref(state, href) {
|
|
|
221
221
|
return null;
|
|
222
222
|
};
|
|
223
223
|
/**
|
|
224
|
+
* Returns all model keys found in the store, restrict on href
|
|
224
225
|
*/
|
|
225
226
|
|
|
226
227
|
|
|
227
228
|
exports.keyByHref = keyByHref;
|
|
228
229
|
|
|
230
|
+
var allKeysByHref = function allKeysByHref(state, href) {
|
|
231
|
+
if (state && state.modularui) {
|
|
232
|
+
var _context7;
|
|
233
|
+
|
|
234
|
+
var findHref = href instanceof _Href.default ? href : new _Href.default(href);
|
|
235
|
+
return (0, _filter.default)(_context7 = (0, _keys.default)(state.modularui)).call(_context7, function (key) {
|
|
236
|
+
var model = state.modularui[key].model;
|
|
237
|
+
return model && model.selfhref && model.selfhref.equals(findHref);
|
|
238
|
+
});
|
|
239
|
+
}
|
|
240
|
+
|
|
241
|
+
return [];
|
|
242
|
+
};
|
|
243
|
+
/**
|
|
244
|
+
*/
|
|
245
|
+
|
|
246
|
+
|
|
247
|
+
exports.allKeysByHref = allKeysByHref;
|
|
248
|
+
|
|
229
249
|
var getLocation = function getLocation(state) {
|
|
230
250
|
var _state$router;
|
|
231
251
|
|
|
@@ -274,9 +294,9 @@ var getActiveModels = (0, _reselect.createSelectorCreator)(_reselect.defaultMemo
|
|
|
274
294
|
if (location) {
|
|
275
295
|
var locationParts = location.split("/");
|
|
276
296
|
locationParts.reduce(function (accumulator, current) {
|
|
277
|
-
var
|
|
297
|
+
var _context8;
|
|
278
298
|
|
|
279
|
-
var path = (0, _concat.default)(
|
|
299
|
+
var path = (0, _concat.default)(_context8 = "".concat(accumulator, "/")).call(_context8, current); // Remove modelcatalog part to match breadcrumb parts
|
|
280
300
|
|
|
281
301
|
var comparePath = decodeURIComponent(path).replace("/modelcatalog/", "/");
|
|
282
302
|
var foundEntry = (0, _find.default)(models).call(models, function (model) {
|
|
@@ -325,11 +345,11 @@ exports.getPreference = getPreference;
|
|
|
325
345
|
|
|
326
346
|
var getModelsByType = function getModelsByType(state, type) {
|
|
327
347
|
if (state && state.modularui) {
|
|
328
|
-
var
|
|
348
|
+
var _context9, _context10;
|
|
329
349
|
|
|
330
|
-
return (0, _map.default)(
|
|
350
|
+
return (0, _map.default)(_context9 = (0, _filter.default)(_context10 = (0, _keys.default)(state.modularui)).call(_context10, function (key) {
|
|
331
351
|
return state.modularui[key] && state.modularui[key].model && state.modularui[key].model.type === type;
|
|
332
|
-
})).call(
|
|
352
|
+
})).call(_context9, function (key) {
|
|
333
353
|
return state.modularui[key].model;
|
|
334
354
|
});
|
|
335
355
|
}
|
|
@@ -150,7 +150,6 @@ export const keyByHref = (state: ReduxState, href: Href | string): ?string => {
|
|
|
150
150
|
|
|
151
151
|
return Object.keys(state.modularui).find((key) => {
|
|
152
152
|
const { model } = state.modularui[key];
|
|
153
|
-
|
|
154
153
|
return model && model.selfhref && model.selfhref.equals(findHref);
|
|
155
154
|
});
|
|
156
155
|
}
|
|
@@ -158,6 +157,25 @@ export const keyByHref = (state: ReduxState, href: Href | string): ?string => {
|
|
|
158
157
|
return null;
|
|
159
158
|
};
|
|
160
159
|
|
|
160
|
+
/**
|
|
161
|
+
* Returns all model keys found in the store, restrict on href
|
|
162
|
+
*/
|
|
163
|
+
export const allKeysByHref = (
|
|
164
|
+
state: ReduxState,
|
|
165
|
+
href: Href | string
|
|
166
|
+
): Array<string> => {
|
|
167
|
+
if (state && state.modularui) {
|
|
168
|
+
const findHref = href instanceof Href ? href : new Href(href);
|
|
169
|
+
|
|
170
|
+
return Object.keys(state.modularui).filter((key) => {
|
|
171
|
+
const { model } = state.modularui[key];
|
|
172
|
+
return model && model.selfhref && model.selfhref.equals(findHref);
|
|
173
|
+
});
|
|
174
|
+
}
|
|
175
|
+
|
|
176
|
+
return [];
|
|
177
|
+
};
|
|
178
|
+
|
|
161
179
|
/**
|
|
162
180
|
*/
|
|
163
181
|
const getLocation = (state): string => state?.router?.location.pathname;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"selectors.js","names":["getAllModelsByInstance","state","instance","locale","i18n","modularui","key","model","getFirstModelByInstance","getActiveModelByInstance","location","getLocation","selfhref","path","getApplication","ApplicationModel","getTab","TabModel","getCaseView","CaseViewModel","getForm","FormModel","modelByHref","href","findHref","Href","modelConfigKey","equals","keyByHref","router","pathname","getModels","models","forEach","modelKey","modelEntry","has","label","type","modelInfo","selfContentLink","ContentModel","ContentTOCModel","push","getActiveModels","createSelectorCreator","defaultMemoize","value","other","contextModels","locationParts","split","reduce","accumulator","current","comparePath","decodeURIComponent","replace","foundEntry","encodedHref","toString","getPreference","preferenceName","preferences","getModelsByType"],"sources":["../../../src/redux/_modularui/selectors.js"],"sourcesContent":["// @flow\nimport { createSelectorCreator, defaultMemoize } from \"reselect\";\nimport { has } from \"../../utils/helpers/objects\";\n\nimport Href from \"../../models/href/Href\";\nimport ContentModel from \"../../models/content/ContentModel\";\nimport ContentTOCModel from \"../../models/content/ContentTOCModel\";\nimport ApplicationModel from \"../../models/application/ApplicationModel\";\nimport TabModel from \"../../models/tab/TabModel\";\nimport CaseViewModel from \"../../models/caseview/CaseViewModel\";\nimport FormModel from \"../../models/form/FormModel\";\n\nimport type { ReduxState, PreferenceValue } from \"../types\";\nimport type { ModularUIModel } from \"../../models/types\";\n\n/**\n */\nexport const getAllModelsByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): Array<ModularUIModel> => {\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n return Object.keys(modularui)\n .filter((key) => {\n const { model } = modularui[key];\n return model instanceof instance && model.locale === locale;\n })\n .map((key) => modularui[key].model);\n }\n\n return [];\n};\n\n/**\n */\nexport const getFirstModelByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): T | null => {\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n const key = Object.keys(modularui).find((key) => {\n const { model } = modularui[key];\n return model instanceof instance && model.locale === locale;\n });\n\n if (key) {\n const { model } = modularui[key];\n if (model instanceof instance) {\n return model;\n }\n }\n }\n\n return null;\n};\n\n/**\n */\nexport const getActiveModelByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): T | null => {\n const location = getLocation(state);\n\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n const key = Object.keys(modularui).find((key) => {\n const { model } = modularui[key];\n return (\n model instanceof instance &&\n model.locale === locale &&\n location.startsWith(model.selfhref.path)\n );\n });\n\n if (key) {\n const { model } = modularui[key];\n if (model instanceof instance) {\n return model;\n }\n }\n }\n\n return null;\n};\n\n/**\n * Get the application model, which is the model with selfhref '/'\n */\nexport const getApplication = (state: ReduxState): null | ApplicationModel =>\n getFirstModelByInstance(state, ApplicationModel);\n\n/**\n */\nexport const getTab = (state: ReduxState): null | TabModel =>\n getFirstModelByInstance(state, TabModel);\n\n/**\n */\nexport const getCaseView = (state: ReduxState): null | CaseViewModel =>\n getFirstModelByInstance(state, CaseViewModel);\n\n/**\n */\nexport const getForm = (state: ReduxState): null | FormModel =>\n getFirstModelByInstance(state, FormModel);\n\n/**\n * Get the model by it's href\n */\nexport const modelByHref = (\n state: ReduxState,\n href: Href | string\n): null | ModularUIModel => {\n if (state && state.modularui) {\n const findHref = href instanceof Href ? href : new Href(href);\n\n const modelConfigKey = Object.keys(state.modularui).find((key) => {\n const model = state.modularui[key];\n\n return (\n model.model &&\n model.model.selfhref &&\n model.model.selfhref.equals(findHref)\n );\n });\n\n if (modelConfigKey) {\n return state.modularui[modelConfigKey].model;\n }\n }\n\n return null;\n};\n\n/**\n * Return the key of a model by the selfhref the model is saved in the reducer\n */\nexport const keyByHref = (state: ReduxState, href: Href | string): ?string => {\n if (state && state.modularui) {\n const findHref = href instanceof Href ? href : new Href(href);\n\n return Object.keys(state.modularui).find((key) => {\n const { model } = state.modularui[key];\n\n return model && model.selfhref && model.selfhref.equals(findHref);\n });\n }\n\n return null;\n};\n\n/**\n */\nconst getLocation = (state): string => state?.router?.location.pathname;\n\n/**\n */\nconst getModels = (state) => {\n const models = [];\n\n Object.keys(state.modularui).forEach((modelKey: string) => {\n const modelEntry = state.modularui[modelKey];\n\n if (has(modelEntry, \"model\")) {\n const { key, selfhref, label, type } = modelEntry.model;\n\n const modelInfo = {\n key,\n selfhref,\n label,\n type,\n selfContentLink: null,\n };\n\n if (\n modelEntry.model instanceof ContentModel ||\n modelEntry.model instanceof ContentTOCModel\n ) {\n models.push({\n ...modelInfo,\n selfContentLink: modelEntry.model.selfContentLink,\n });\n } else {\n models.push(modelInfo);\n }\n }\n });\n\n return models;\n};\n\nexport const getActiveModels: (state: ReduxState) => Array<{\n key: string,\n href: Href,\n label: string,\n type: string,\n}> = createSelectorCreator(\n defaultMemoize,\n (value, other) => JSON.stringify(value) === JSON.stringify(other)\n)([getLocation, getModels], (location, models) => {\n const contextModels = [];\n\n if (location) {\n const locationParts = location.split(\"/\");\n\n locationParts.reduce((accumulator, current) => {\n const path = `${accumulator}/${current}`;\n\n // Remove modelcatalog part to match breadcrumb parts\n const comparePath = decodeURIComponent(path).replace(\n \"/modelcatalog/\",\n \"/\"\n );\n\n const foundEntry = models.find(\n (model) => model.selfhref && model.selfhref.equals(comparePath)\n );\n\n if (foundEntry) {\n const { key, label, type, selfhref, selfContentLink } = foundEntry;\n\n const href =\n path.startsWith(\"/modelcatalog/\") && selfContentLink\n ? new Href(`/modelcatalog${selfContentLink.encodedHref.toString()}`)\n : selfhref;\n\n contextModels.push({ key, href, label, type });\n }\n\n return path;\n });\n }\n\n return contextModels;\n});\n\n/**\n */\nexport const getPreference = (\n state: ReduxState,\n preferenceName: string\n): null | PreferenceValue => {\n if (state && state.preferences) {\n return state.preferences[preferenceName];\n }\n\n return null;\n};\n\n/**\n * @deprecated - Use getFirstModelByInstance or the appropriate getter for the model type: getApplication, getTab, etc\n */\nexport const getModelsByType = (\n state: ReduxState,\n type: string\n): Array<ModularUIModel> => {\n if (state && state.modularui) {\n return Object.keys(state.modularui)\n .filter(\n (key) =>\n state.modularui[key] &&\n state.modularui[key].model &&\n state.modularui[key].model.type === type\n )\n .map((key) => state.modularui[key].model);\n }\n\n return [];\n};\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"selectors.js","names":["getAllModelsByInstance","state","instance","locale","i18n","modularui","key","model","getFirstModelByInstance","getActiveModelByInstance","location","getLocation","selfhref","path","getApplication","ApplicationModel","getTab","TabModel","getCaseView","CaseViewModel","getForm","FormModel","modelByHref","href","findHref","Href","modelConfigKey","equals","keyByHref","allKeysByHref","router","pathname","getModels","models","forEach","modelKey","modelEntry","has","label","type","modelInfo","selfContentLink","ContentModel","ContentTOCModel","push","getActiveModels","createSelectorCreator","defaultMemoize","value","other","contextModels","locationParts","split","reduce","accumulator","current","comparePath","decodeURIComponent","replace","foundEntry","encodedHref","toString","getPreference","preferenceName","preferences","getModelsByType"],"sources":["../../../src/redux/_modularui/selectors.js"],"sourcesContent":["// @flow\nimport { createSelectorCreator, defaultMemoize } from \"reselect\";\nimport { has } from \"../../utils/helpers/objects\";\n\nimport Href from \"../../models/href/Href\";\nimport ContentModel from \"../../models/content/ContentModel\";\nimport ContentTOCModel from \"../../models/content/ContentTOCModel\";\nimport ApplicationModel from \"../../models/application/ApplicationModel\";\nimport TabModel from \"../../models/tab/TabModel\";\nimport CaseViewModel from \"../../models/caseview/CaseViewModel\";\nimport FormModel from \"../../models/form/FormModel\";\n\nimport type { ReduxState, PreferenceValue } from \"../types\";\nimport type { ModularUIModel } from \"../../models/types\";\n\n/**\n */\nexport const getAllModelsByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): Array<ModularUIModel> => {\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n return Object.keys(modularui)\n .filter((key) => {\n const { model } = modularui[key];\n return model instanceof instance && model.locale === locale;\n })\n .map((key) => modularui[key].model);\n }\n\n return [];\n};\n\n/**\n */\nexport const getFirstModelByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): T | null => {\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n const key = Object.keys(modularui).find((key) => {\n const { model } = modularui[key];\n return model instanceof instance && model.locale === locale;\n });\n\n if (key) {\n const { model } = modularui[key];\n if (model instanceof instance) {\n return model;\n }\n }\n }\n\n return null;\n};\n\n/**\n */\nexport const getActiveModelByInstance = <T>(\n state: ReduxState,\n instance: Class<T>\n): T | null => {\n const location = getLocation(state);\n\n const locale = state?.i18n?.locale || \"en\";\n const modularui = state?.modularui;\n\n if (modularui) {\n const key = Object.keys(modularui).find((key) => {\n const { model } = modularui[key];\n return (\n model instanceof instance &&\n model.locale === locale &&\n location.startsWith(model.selfhref.path)\n );\n });\n\n if (key) {\n const { model } = modularui[key];\n if (model instanceof instance) {\n return model;\n }\n }\n }\n\n return null;\n};\n\n/**\n * Get the application model, which is the model with selfhref '/'\n */\nexport const getApplication = (state: ReduxState): null | ApplicationModel =>\n getFirstModelByInstance(state, ApplicationModel);\n\n/**\n */\nexport const getTab = (state: ReduxState): null | TabModel =>\n getFirstModelByInstance(state, TabModel);\n\n/**\n */\nexport const getCaseView = (state: ReduxState): null | CaseViewModel =>\n getFirstModelByInstance(state, CaseViewModel);\n\n/**\n */\nexport const getForm = (state: ReduxState): null | FormModel =>\n getFirstModelByInstance(state, FormModel);\n\n/**\n * Get the model by it's href\n */\nexport const modelByHref = (\n state: ReduxState,\n href: Href | string\n): null | ModularUIModel => {\n if (state && state.modularui) {\n const findHref = href instanceof Href ? href : new Href(href);\n\n const modelConfigKey = Object.keys(state.modularui).find((key) => {\n const model = state.modularui[key];\n\n return (\n model.model &&\n model.model.selfhref &&\n model.model.selfhref.equals(findHref)\n );\n });\n\n if (modelConfigKey) {\n return state.modularui[modelConfigKey].model;\n }\n }\n\n return null;\n};\n\n/**\n * Return the key of a model by the selfhref the model is saved in the reducer\n */\nexport const keyByHref = (state: ReduxState, href: Href | string): ?string => {\n if (state && state.modularui) {\n const findHref = href instanceof Href ? href : new Href(href);\n\n return Object.keys(state.modularui).find((key) => {\n const { model } = state.modularui[key];\n return model && model.selfhref && model.selfhref.equals(findHref);\n });\n }\n\n return null;\n};\n\n/**\n * Returns all model keys found in the store, restrict on href\n */\nexport const allKeysByHref = (\n state: ReduxState,\n href: Href | string\n): Array<string> => {\n if (state && state.modularui) {\n const findHref = href instanceof Href ? href : new Href(href);\n\n return Object.keys(state.modularui).filter((key) => {\n const { model } = state.modularui[key];\n return model && model.selfhref && model.selfhref.equals(findHref);\n });\n }\n\n return [];\n};\n\n/**\n */\nconst getLocation = (state): string => state?.router?.location.pathname;\n\n/**\n */\nconst getModels = (state) => {\n const models = [];\n\n Object.keys(state.modularui).forEach((modelKey: string) => {\n const modelEntry = state.modularui[modelKey];\n\n if (has(modelEntry, \"model\")) {\n const { key, selfhref, label, type } = modelEntry.model;\n\n const modelInfo = {\n key,\n selfhref,\n label,\n type,\n selfContentLink: null,\n };\n\n if (\n modelEntry.model instanceof ContentModel ||\n modelEntry.model instanceof ContentTOCModel\n ) {\n models.push({\n ...modelInfo,\n selfContentLink: modelEntry.model.selfContentLink,\n });\n } else {\n models.push(modelInfo);\n }\n }\n });\n\n return models;\n};\n\nexport const getActiveModels: (state: ReduxState) => Array<{\n key: string,\n href: Href,\n label: string,\n type: string,\n}> = createSelectorCreator(\n defaultMemoize,\n (value, other) => JSON.stringify(value) === JSON.stringify(other)\n)([getLocation, getModels], (location, models) => {\n const contextModels = [];\n\n if (location) {\n const locationParts = location.split(\"/\");\n\n locationParts.reduce((accumulator, current) => {\n const path = `${accumulator}/${current}`;\n\n // Remove modelcatalog part to match breadcrumb parts\n const comparePath = decodeURIComponent(path).replace(\n \"/modelcatalog/\",\n \"/\"\n );\n\n const foundEntry = models.find(\n (model) => model.selfhref && model.selfhref.equals(comparePath)\n );\n\n if (foundEntry) {\n const { key, label, type, selfhref, selfContentLink } = foundEntry;\n\n const href =\n path.startsWith(\"/modelcatalog/\") && selfContentLink\n ? new Href(`/modelcatalog${selfContentLink.encodedHref.toString()}`)\n : selfhref;\n\n contextModels.push({ key, href, label, type });\n }\n\n return path;\n });\n }\n\n return contextModels;\n});\n\n/**\n */\nexport const getPreference = (\n state: ReduxState,\n preferenceName: string\n): null | PreferenceValue => {\n if (state && state.preferences) {\n return state.preferences[preferenceName];\n }\n\n return null;\n};\n\n/**\n * @deprecated - Use getFirstModelByInstance or the appropriate getter for the model type: getApplication, getTab, etc\n */\nexport const getModelsByType = (\n state: ReduxState,\n type: string\n): Array<ModularUIModel> => {\n if (state && state.modularui) {\n return Object.keys(state.modularui)\n .filter(\n (key) =>\n state.modularui[key] &&\n state.modularui[key].model &&\n state.modularui[key].model.type === type\n )\n .map((key) => state.modularui[key].model);\n }\n\n return [];\n};\n"],"mappings":"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"}
|
|
@@ -17,17 +17,11 @@ var _ProgressIndicator = require("../actions/ProgressIndicator");
|
|
|
17
17
|
|
|
18
18
|
var _Error = require("../actions/Error");
|
|
19
19
|
|
|
20
|
-
var
|
|
21
|
-
|
|
22
|
-
/**
|
|
23
|
-
*/
|
|
24
|
-
var getLocaleCode = function getLocaleCode(state) {
|
|
25
|
-
var _state$i18n$locale;
|
|
20
|
+
var _i18n = require("../selectors/i18n");
|
|
26
21
|
|
|
27
|
-
|
|
28
|
-
};
|
|
22
|
+
var _actions = require("./actions");
|
|
29
23
|
|
|
30
|
-
var modularui = (0, _reselect.createSelector)([
|
|
24
|
+
var modularui = (0, _reselect.createSelector)([_i18n.getLocale], function (localeCode) {
|
|
31
25
|
return function (href) {
|
|
32
26
|
var options = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};
|
|
33
27
|
var modularuiRequest = new _ModularUIRequest.default(href, options);
|
|
@@ -9,6 +9,8 @@ import { startProgress, finishProgress } from "../actions/ProgressIndicator";
|
|
|
9
9
|
|
|
10
10
|
import { handleError } from "../actions/Error";
|
|
11
11
|
|
|
12
|
+
import { getLocale } from "../selectors/i18n";
|
|
13
|
+
|
|
12
14
|
import { reloadModel } from "./actions";
|
|
13
15
|
|
|
14
16
|
import type {
|
|
@@ -43,12 +45,8 @@ type Props = {
|
|
|
43
45
|
...DispatchProps,
|
|
44
46
|
};
|
|
45
47
|
|
|
46
|
-
/**
|
|
47
|
-
*/
|
|
48
|
-
const getLocaleCode = (state) => state.i18n.locale ?? "en";
|
|
49
|
-
|
|
50
48
|
const modularui = createSelector(
|
|
51
|
-
[
|
|
49
|
+
[getLocale],
|
|
52
50
|
(localeCode) =>
|
|
53
51
|
(href, options = {}) => {
|
|
54
52
|
const modularuiRequest = new ModularUIRequest(href, options);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"withModularUI.js","names":["
|
|
1
|
+
{"version":3,"file":"withModularUI.js","names":["modularui","createSelector","getLocale","localeCode","href","options","modularuiRequest","ModularUIRequest","locale","mapStateToProps","state","i18n","mapDispatchToProps","startProgress","finishProgress","reloadModel","handleError","withModularui","connect"],"sources":["../../../src/redux/_modularui/withModularUI.js"],"sourcesContent":["// @flow\nimport { connect } from \"react-redux\";\n\nimport { createSelector } from \"reselect\";\n\nimport ModularUIRequest from \"../../modularui/ModularUIRequest\";\n\nimport { startProgress, finishProgress } from \"../actions/ProgressIndicator\";\n\nimport { handleError } from \"../actions/Error\";\n\nimport { getLocale } from \"../selectors/i18n\";\n\nimport { reloadModel } from \"./actions\";\n\nimport type {\n ReduxState,\n StartProgressAction,\n FinishProgressAction,\n ThunkAction,\n} from \"../types\";\nimport type Href from \"../../models/href/Href\";\nimport type { ModularUIModel } from \"../../models/types\";\nimport type { RequestBaseOptions } from \"../../utils/fetch/types\";\nimport type FetchException from \"../../exceptions/FetchException\";\nimport type { ComponentType } from \"react\";\n\ntype StateProps = {\n modularui: (href: Href, options: any) => ModularUIRequest,\n locale: string,\n};\n\ntype DispatchProps = {\n startProgress: () => StartProgressAction,\n finishProgress: () => FinishProgressAction,\n reloadModel: (\n model: ModularUIModel,\n options?: RequestBaseOptions\n ) => ThunkAction,\n handleError: (error: Error | FetchException) => ThunkAction,\n};\n\ntype Props = {\n ...StateProps,\n ...DispatchProps,\n};\n\nconst modularui = createSelector(\n [getLocale],\n (localeCode) =>\n (href, options = {}) => {\n const modularuiRequest = new ModularUIRequest(href, options);\n modularuiRequest.locale = localeCode;\n return modularuiRequest;\n }\n);\n\n/**\n */\nconst mapStateToProps = (state: ReduxState): StateProps => ({\n modularui: modularui(state),\n locale: state.i18n.locale,\n});\n\nconst mapDispatchToProps: DispatchProps = {\n startProgress,\n finishProgress,\n reloadModel,\n handleError,\n};\n\n/**\n * Injects the modular ui service and the progress start and finish actions\n * This can be used to request modular ui services inside react view components\n */\nconst withModularui: ComponentType<any> = connect<\n Props,\n {},\n StateProps,\n _,\n _,\n _\n>(mapStateToProps, mapDispatchToProps);\n\nexport default withModularui;\n"],"mappings":";;;;;;;;;AACA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAEA;;AAkCA,IAAMA,SAAS,GAAG,IAAAC,wBAAA,EAChB,CAACC,eAAD,CADgB,EAEhB,UAACC,UAAD;EAAA,OACE,UAACC,IAAD,EAAwB;IAAA,IAAjBC,OAAiB,uEAAP,EAAO;IACtB,IAAMC,gBAAgB,GAAG,IAAIC,yBAAJ,CAAqBH,IAArB,EAA2BC,OAA3B,CAAzB;IACAC,gBAAgB,CAACE,MAAjB,GAA0BL,UAA1B;IACA,OAAOG,gBAAP;EACD,CALH;AAAA,CAFgB,CAAlB;AAUA;AACA;;AACA,IAAMG,eAAe,GAAG,SAAlBA,eAAkB,CAACC,KAAD;EAAA,OAAoC;IAC1DV,SAAS,EAAEA,SAAS,CAACU,KAAD,CADsC;IAE1DF,MAAM,EAAEE,KAAK,CAACC,IAAN,CAAWH;EAFuC,CAApC;AAAA,CAAxB;;AAKA,IAAMI,kBAAiC,GAAG;EACxCC,aAAa,EAAbA,gCADwC;EAExCC,cAAc,EAAdA,iCAFwC;EAGxCC,WAAW,EAAXA,oBAHwC;EAIxCC,WAAW,EAAXA;AAJwC,CAA1C;AAOA;AACA;AACA;AACA;;AACA,IAAMC,aAAiC,GAAG,IAAAC,mBAAA,EAOxCT,eAPwC,EAOvBG,kBAPuB,CAA1C;eASeK,a"}
|
|
@@ -1,5 +1,13 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
|
+
var _sliceInstanceProperty = require("@babel/runtime-corejs3/core-js-stable/instance/slice");
|
|
4
|
+
|
|
5
|
+
var _Array$from = require("@babel/runtime-corejs3/core-js-stable/array/from");
|
|
6
|
+
|
|
7
|
+
var _Symbol = require("@babel/runtime-corejs3/core-js-stable/symbol");
|
|
8
|
+
|
|
9
|
+
var _getIteratorMethod = require("@babel/runtime-corejs3/core-js/get-iterator-method");
|
|
10
|
+
|
|
3
11
|
Object.defineProperty(exports, "__esModule", {
|
|
4
12
|
value: true
|
|
5
13
|
});
|
|
@@ -11,20 +19,35 @@ var _selectors = require("../_modularui/selectors");
|
|
|
11
19
|
|
|
12
20
|
var _models = require("../../models");
|
|
13
21
|
|
|
22
|
+
var _i18n = require("../selectors/i18n");
|
|
23
|
+
|
|
24
|
+
function _createForOfIteratorHelper(o, allowArrayLike) { var it = typeof _Symbol !== "undefined" && _getIteratorMethod(o) || o["@@iterator"]; if (!it) { if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === "number") { if (it) o = it; var i = 0; var F = function F() {}; return { s: F, n: function n() { if (i >= o.length) return { done: true }; return { done: false, value: o[i++] }; }, e: function e(_e) { throw _e; }, f: F }; } throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); } var normalCompletion = true, didErr = false, err; return { s: function s() { it = it.call(o); }, n: function n() { var step = it.next(); normalCompletion = step.done; return step; }, e: function e(_e2) { didErr = true; err = _e2; }, f: function f() { try { if (!normalCompletion && it.return != null) it.return(); } finally { if (didErr) throw err; } } }; }
|
|
25
|
+
|
|
26
|
+
function _unsupportedIterableToArray(o, minLen) { var _context; if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = _sliceInstanceProperty(_context = Object.prototype.toString.call(o)).call(_context, 8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return _Array$from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
27
|
+
|
|
28
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }
|
|
29
|
+
|
|
14
30
|
/**
|
|
15
31
|
*/
|
|
16
32
|
var reloadApplication = function reloadApplication() {
|
|
17
33
|
return function (dispatch, getState) {
|
|
18
|
-
var
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
34
|
+
var allKeys = (0, _selectors.allKeysByHref)(getState(), "/");
|
|
35
|
+
|
|
36
|
+
var _iterator = _createForOfIteratorHelper(allKeys),
|
|
37
|
+
_step;
|
|
38
|
+
|
|
39
|
+
try {
|
|
40
|
+
for (_iterator.s(); !(_step = _iterator.n()).done;) {
|
|
41
|
+
var key = _step.value;
|
|
42
|
+
dispatch((0, _actions.removeModelByKey)(key));
|
|
43
|
+
}
|
|
44
|
+
} catch (err) {
|
|
45
|
+
_iterator.e(err);
|
|
46
|
+
} finally {
|
|
47
|
+
_iterator.f();
|
|
25
48
|
}
|
|
26
49
|
|
|
27
|
-
|
|
50
|
+
var modelKey = "application(/)(".concat((0, _i18n.getLocale)(getState()), ")");
|
|
28
51
|
return dispatch((0, _actions.loadModularUI)(modelKey, new _models.Href("/", "Application"), {
|
|
29
52
|
targetModel: _models.ApplicationModel
|
|
30
53
|
}));
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
// @flow
|
|
2
2
|
import { loadModularUI, removeModelByKey } from "../_modularui/actions";
|
|
3
|
-
import {
|
|
3
|
+
import { allKeysByHref } from "../_modularui/selectors";
|
|
4
4
|
import { ApplicationModel, Href } from "../../models";
|
|
5
|
+
import { getLocale } from "../selectors/i18n";
|
|
5
6
|
|
|
6
7
|
import type { Dispatch, GetState, ThunkAction } from "../types";
|
|
7
8
|
|
|
@@ -9,15 +10,12 @@ import type { Dispatch, GetState, ThunkAction } from "../types";
|
|
|
9
10
|
*/
|
|
10
11
|
export const reloadApplication =
|
|
11
12
|
(): ThunkAction => (dispatch: Dispatch, getState: GetState) => {
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
const locale = getState().i18n?.locale;
|
|
16
|
-
modelKey = `application(/)(${locale})`;
|
|
13
|
+
const allKeys = allKeysByHref(getState(), "/");
|
|
14
|
+
for (const key of allKeys) {
|
|
15
|
+
dispatch(removeModelByKey(key));
|
|
17
16
|
}
|
|
18
17
|
|
|
19
|
-
|
|
20
|
-
|
|
18
|
+
const modelKey = `application(/)(${getLocale(getState())})`;
|
|
21
19
|
return dispatch(
|
|
22
20
|
loadModularUI(modelKey, new Href("/", "Application"), {
|
|
23
21
|
targetModel: ApplicationModel,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Application.js","names":["reloadApplication","dispatch","getState","
|
|
1
|
+
{"version":3,"file":"Application.js","names":["reloadApplication","dispatch","getState","allKeys","allKeysByHref","key","removeModelByKey","modelKey","getLocale","loadModularUI","Href","targetModel","ApplicationModel"],"sources":["../../../src/redux/actions/Application.js"],"sourcesContent":["// @flow\nimport { loadModularUI, removeModelByKey } from \"../_modularui/actions\";\nimport { allKeysByHref } from \"../_modularui/selectors\";\nimport { ApplicationModel, Href } from \"../../models\";\nimport { getLocale } from \"../selectors/i18n\";\n\nimport type { Dispatch, GetState, ThunkAction } from \"../types\";\n\n/**\n */\nexport const reloadApplication =\n (): ThunkAction => (dispatch: Dispatch, getState: GetState) => {\n const allKeys = allKeysByHref(getState(), \"/\");\n for (const key of allKeys) {\n dispatch(removeModelByKey(key));\n }\n\n const modelKey = `application(/)(${getLocale(getState())})`;\n return dispatch(\n loadModularUI(modelKey, new Href(\"/\", \"Application\"), {\n targetModel: ApplicationModel,\n })\n );\n };\n"],"mappings":";;;;;;;;;;;;;;;AACA;;AACA;;AACA;;AACA;;;;;;;;AAIA;AACA;AACO,IAAMA,iBAAiB,GAC5B,SADWA,iBACX;EAAA,OAAmB,UAACC,QAAD,EAAqBC,QAArB,EAA4C;IAC7D,IAAMC,OAAO,GAAG,IAAAC,wBAAA,EAAcF,QAAQ,EAAtB,EAA0B,GAA1B,CAAhB;;IAD6D,2CAE3CC,OAF2C;IAAA;;IAAA;MAE7D,oDAA2B;QAAA,IAAhBE,GAAgB;QACzBJ,QAAQ,CAAC,IAAAK,yBAAA,EAAiBD,GAAjB,CAAD,CAAR;MACD;IAJ4D;MAAA;IAAA;MAAA;IAAA;;IAM7D,IAAME,QAAQ,4BAAqB,IAAAC,eAAA,EAAUN,QAAQ,EAAlB,CAArB,MAAd;IACA,OAAOD,QAAQ,CACb,IAAAQ,sBAAA,EAAcF,QAAd,EAAwB,IAAIG,YAAJ,CAAS,GAAT,EAAc,aAAd,CAAxB,EAAsD;MACpDC,WAAW,EAAEC;IADuC,CAAtD,CADa,CAAf;EAKD,CAZD;AAAA,CADK"}
|
|
@@ -16,10 +16,6 @@ describe("application actions", () => {
|
|
|
16
16
|
await store.dispatch(reloadApplication());
|
|
17
17
|
|
|
18
18
|
expect(store.getActions()).toStrictEqual([
|
|
19
|
-
{
|
|
20
|
-
type: "MODULARUI/REMOVE_KEY",
|
|
21
|
-
payload: "application(/)(en)",
|
|
22
|
-
},
|
|
23
19
|
{
|
|
24
20
|
type: "MODULARUI/STATUS",
|
|
25
21
|
payload: { key: "application(/)(en)", status: "LOADING" },
|
|
@@ -49,7 +45,7 @@ describe("application actions", () => {
|
|
|
49
45
|
},
|
|
50
46
|
{
|
|
51
47
|
type: "MODULARUI/STATUS",
|
|
52
|
-
payload: { key: "/", status: "LOADING" },
|
|
48
|
+
payload: { key: "application(/)(en)", status: "LOADING" },
|
|
53
49
|
},
|
|
54
50
|
{ type: "START_PROGRESS" },
|
|
55
51
|
expect.objectContaining({
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports.getLocales = exports.getLocale = void 0;
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* Retrieve the locale from state
|
|
10
|
+
*/
|
|
11
|
+
var getLocale = function getLocale(state) {
|
|
12
|
+
var _state$i18n$locale, _state$i18n;
|
|
13
|
+
|
|
14
|
+
return (_state$i18n$locale = (_state$i18n = state.i18n) === null || _state$i18n === void 0 ? void 0 : _state$i18n.locale) !== null && _state$i18n$locale !== void 0 ? _state$i18n$locale : "en";
|
|
15
|
+
};
|
|
16
|
+
/**
|
|
17
|
+
* Retrieve all available locales in the store
|
|
18
|
+
*/
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
exports.getLocale = getLocale;
|
|
22
|
+
|
|
23
|
+
var getLocales = function getLocales(state) {
|
|
24
|
+
return state.i18n.locales;
|
|
25
|
+
};
|
|
26
|
+
|
|
27
|
+
exports.getLocales = getLocales;
|
|
28
|
+
//# sourceMappingURL=i18n.js.map
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
// @flow
|
|
2
|
+
import type Locales from "../../i18n/Locales";
|
|
3
|
+
import type { ReduxState } from "../types";
|
|
4
|
+
|
|
5
|
+
/**
|
|
6
|
+
* Retrieve the locale from state
|
|
7
|
+
*/
|
|
8
|
+
export const getLocale = (state: ReduxState): string => {
|
|
9
|
+
return state.i18n?.locale ?? "en";
|
|
10
|
+
};
|
|
11
|
+
|
|
12
|
+
/**
|
|
13
|
+
* Retrieve all available locales in the store
|
|
14
|
+
*/
|
|
15
|
+
export const getLocales = (state: ReduxState): Locales => state.i18n.locales;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"i18n.js","names":["getLocale","state","i18n","locale","getLocales","locales"],"sources":["../../../src/redux/selectors/i18n.js"],"sourcesContent":["// @flow\nimport type Locales from \"../../i18n/Locales\";\nimport type { ReduxState } from \"../types\";\n\n/**\n * Retrieve the locale from state\n */\nexport const getLocale = (state: ReduxState): string => {\n return state.i18n?.locale ?? \"en\";\n};\n\n/**\n * Retrieve all available locales in the store\n */\nexport const getLocales = (state: ReduxState): Locales => state.i18n.locales;\n"],"mappings":";;;;;;;AAIA;AACA;AACA;AACO,IAAMA,SAAS,GAAG,SAAZA,SAAY,CAACC,KAAD,EAA+B;EAAA;;EACtD,4CAAOA,KAAK,CAACC,IAAb,gDAAO,YAAYC,MAAnB,mEAA6B,IAA7B;AACD,CAFM;AAIP;AACA;AACA;;;;;AACO,IAAMC,UAAU,GAAG,SAAbA,UAAa,CAACH,KAAD;EAAA,OAAgCA,KAAK,CAACC,IAAN,CAAWG,OAA3C;AAAA,CAAnB"}
|
|
@@ -39,7 +39,9 @@ var BaseDateTimeUtil = /*#__PURE__*/function () {
|
|
|
39
39
|
(0, _createClass2.default)(BaseDateTimeUtil, [{
|
|
40
40
|
key: "getLocale",
|
|
41
41
|
value: function getLocale() {
|
|
42
|
-
var
|
|
42
|
+
var _getCookie;
|
|
43
|
+
|
|
44
|
+
var locale = (_getCookie = (0, _Cookies.getCookie)("locale")) !== null && _getCookie !== void 0 ? _getCookie : "en";
|
|
43
45
|
|
|
44
46
|
if (locale === "nl") {
|
|
45
47
|
return _locale.nl;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DateTimeUtil.js","names":["BaseDateTimeUtil","isoFormat","_isoFormat","locale","getCookie","nl","enGB","weekStartsOn","getSetting","DEFAULT_WEEK_STARTS_ON","firstWeekContainsDate","DEFAULT_FIRST_WEEK_CONTAINS_DATE","date","inputFormat","getOptions","parse","Date","targetFormat","parsedDate","toDate","isValid","format","getLocale","sourceFormat","toISO","realDate","formattedValue","isOutsideRange","isBefore","isAfter","replace","toUpperCase","inputDate","afterISODate","isSame","beforeISODate","compareDate","getTime","isSameDay","SATURDAY_NUMBER","SUNDAY_NUMBER","weekDay","getDay","amount","addSeconds","addMinutes","addHours","addDays","addWeeks","addMonths","addYears","subSeconds","subMinutes","subHours","subDays","subWeeks","subMonths","subYears","startOfMonth","endOfMonth","startOfWeek","getHours","getMinutes","getWeek","year","setYear","month","setMonth","hour","setHours","minute","setMinutes","second","setSeconds","milliseconds","setMilliseconds","hours","minutes","seconds","set","DateUtil","ISO_DATE_FORMAT","DateTimeUtil","ISO_DATETIME_FORMAT","TimeUtil","ISO_TIME_FORMAT","TimestampUtil","ISO_TIMESTAMP_FORMAT"],"sources":["../../../src/utils/datetime/DateTimeUtil.js"],"sourcesContent":["// @flow\nimport {\n parse,\n format,\n isValid,\n isAfter,\n isBefore,\n isSameDay,\n addSeconds,\n addMinutes,\n addHours,\n addDays,\n addWeeks,\n addMonths,\n addYears,\n subSeconds,\n subMinutes,\n subHours,\n subDays,\n subWeeks,\n subMonths,\n subYears,\n startOfMonth,\n endOfMonth,\n startOfWeek,\n getHours,\n getMinutes,\n getDay,\n getWeek,\n setMilliseconds,\n setSeconds,\n setMinutes,\n setHours,\n setMonth,\n setYear,\n set,\n} from \"date-fns\";\nimport { nl, enGB } from \"date-fns/locale\";\n\nimport { getCookie } from \"../browser/Cookies\";\n\nimport { getSetting } from \"../../constants/Settings\";\n\nimport {\n ISO_DATE_FORMAT,\n ISO_DATETIME_FORMAT,\n ISO_TIME_FORMAT,\n ISO_TIMESTAMP_FORMAT,\n DEFAULT_WEEK_STARTS_ON,\n DEFAULT_FIRST_WEEK_CONTAINS_DATE,\n} from \"../../constants\";\n\n/**\n * @hideconstructor\n */\nclass BaseDateTimeUtil {\n _isoFormat: string;\n\n constructor(isoFormat: string) {\n this._isoFormat = isoFormat;\n }\n\n /**\n */\n getLocale(): typeof nl | typeof enGB {\n const locale = getCookie(\"locale\") || \"en\";\n\n if (locale === \"nl\") {\n return nl;\n }\n\n return enGB;\n }\n\n // returns the options defined in settings\n getOptions(): {\n weekStartsOn: 0 | 1 | 2 | 3 | 4 | 5 | 6,\n firstWeekContainsDate: 1 | 2 | 3 | 4 | 5 | 6 | 7,\n } {\n // indicates on what day the week starts\n const weekStartsOn = getSetting(\n \"CALENDAR_WEEK_STARTS_ON\",\n DEFAULT_WEEK_STARTS_ON\n );\n\n // indicates which date indicates the first week of the year\n const firstWeekContainsDate = getSetting(\n \"CALENDAR_FIRST_WEEK_CONTAINS_DATE\",\n DEFAULT_FIRST_WEEK_CONTAINS_DATE\n );\n\n return { weekStartsOn, firstWeekContainsDate };\n }\n\n /**\n */\n toDate(date: string, inputFormat: string = this._isoFormat): Date {\n const { weekStartsOn, firstWeekContainsDate } = this.getOptions();\n\n return parse(date, inputFormat, new Date(), {\n weekStartsOn,\n firstWeekContainsDate,\n });\n }\n\n /**\n */\n toFormat(date: string | Date, targetFormat: string): string {\n const { weekStartsOn } = this.getOptions();\n\n const parsedDate = typeof date === \"string\" ? this.toDate(date) : date;\n\n if (isValid(parsedDate)) {\n return format(parsedDate, targetFormat, {\n weekStartsOn,\n locale: this.getLocale(),\n });\n }\n\n return \"Invalid Date\";\n }\n\n /**\n */\n toISO(date: string | Date, sourceFormat: string = this._isoFormat): string {\n const { weekStartsOn } = this.getOptions();\n\n const parsedDate =\n typeof date === \"string\" ? this.toDate(date, sourceFormat) : date;\n\n if (isValid(parsedDate)) {\n return format(parsedDate, this._isoFormat, {\n weekStartsOn,\n });\n }\n\n return \"Invalid Date\";\n }\n\n /**\n */\n now(): string {\n return this.toISO(new Date());\n }\n\n /**\n */\n convertFormat(sourceFormat: string): string {\n return sourceFormat ? sourceFormat : this._isoFormat;\n }\n\n /**\n * VALIDATION\n */\n hasFormat(date: string, sourceFormat: string): boolean {\n const { weekStartsOn } = this.getOptions();\n\n const realDate = this.toDate(date, sourceFormat);\n if (isValid(realDate)) {\n const formattedValue = format(realDate, sourceFormat, {\n weekStartsOn,\n });\n\n const isOutsideRange =\n isBefore(realDate, new Date(1000, 1, 1)) ||\n isAfter(realDate, new Date(9999, 11, 31));\n if (isOutsideRange) {\n return false;\n }\n\n return (\n formattedValue.replace(/0/gu, \"\").toUpperCase() ===\n date.replace(/0/gu, \"\").toUpperCase()\n );\n }\n\n return false;\n }\n\n /**\n */\n isValid(date: string, inputFormat: string = this._isoFormat): boolean {\n return isValid(this.toDate(date, inputFormat));\n }\n\n /**\n */\n isAfter(\n inputDate: string,\n afterISODate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n afterISODate != null &&\n isAfter(this.toDate(inputDate, inputFormat), this.toDate(afterISODate))\n );\n }\n\n /**\n */\n isSameOrAfter(\n inputDate: string,\n afterISODate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n afterISODate != null &&\n (this.isAfter(inputDate, afterISODate, inputFormat) ||\n this.isSame(inputDate, afterISODate, inputFormat))\n );\n }\n\n /**\n */\n isBefore(\n inputDate: string,\n beforeISODate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n beforeISODate != null &&\n isBefore(this.toDate(inputDate, inputFormat), this.toDate(beforeISODate))\n );\n }\n\n /**\n */\n isSameOrBefore(\n inputDate: string,\n beforeISODate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n beforeISODate != null &&\n (this.isBefore(inputDate, beforeISODate, inputFormat) ||\n this.isSame(inputDate, beforeISODate, inputFormat))\n );\n }\n\n /**\n */\n isSame(\n inputDate: string,\n compareDate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n compareDate != null &&\n this.toDate(inputDate, inputFormat).getTime() ===\n this.toDate(compareDate).getTime()\n );\n }\n\n /**\n */\n isSameDay(\n inputDate: string,\n compareDate: string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n compareDate != null &&\n isSameDay(\n this.toDate(inputDate, inputFormat),\n this.toDate(compareDate, inputFormat)\n )\n );\n }\n\n /**\n */\n isOther(\n inputDate: string,\n compareDate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return !this.isSame(inputDate, compareDate, inputFormat);\n }\n\n /**\n */\n isWeekend(inputDate: string): boolean {\n const SATURDAY_NUMBER = 6;\n const SUNDAY_NUMBER = 0;\n const weekDay = getDay(this.toDate(inputDate));\n\n return weekDay === SATURDAY_NUMBER || weekDay === SUNDAY_NUMBER;\n }\n\n /**\n * CALCULATIONS\n */\n addSeconds(date: string, amount: number): string {\n return this.toISO(addSeconds(this.toDate(date), amount));\n }\n\n /**\n */\n addMinutes(date: string, amount: number): string {\n return this.toISO(addMinutes(this.toDate(date), amount));\n }\n\n /**\n */\n addHours(date: string, amount: number): string {\n return this.toISO(addHours(this.toDate(date), amount));\n }\n\n /**\n */\n addDays(date: string, amount: number): string {\n return this.toISO(addDays(this.toDate(date), amount));\n }\n\n /**\n */\n addWeeks(date: string, amount: number): string {\n return this.toISO(addWeeks(this.toDate(date), amount));\n }\n\n /**\n */\n addMonths(date: string, amount: number): string {\n return this.toISO(addMonths(this.toDate(date), amount));\n }\n\n /**\n */\n addYears(date: string, amount: number): string {\n return this.toISO(addYears(this.toDate(date), amount));\n }\n\n /**\n */\n subtractSeconds(date: string, amount: number): string {\n return this.toISO(subSeconds(this.toDate(date), amount));\n }\n\n /**\n */\n subtractMinutes(date: string, amount: number): string {\n return this.toISO(subMinutes(this.toDate(date), amount));\n }\n\n /**\n */\n subtractHours(date: string, amount: number): string {\n return this.toISO(subHours(this.toDate(date), amount));\n }\n\n /**\n */\n subtractDays(date: string, amount: number): string {\n return this.toISO(subDays(this.toDate(date), amount));\n }\n\n /**\n */\n subtractWeeks(date: string, amount: number): string {\n return this.toISO(subWeeks(this.toDate(date), amount));\n }\n\n /**\n */\n subtractMonths(date: string, amount: number): string {\n return this.toISO(subMonths(this.toDate(date), amount));\n }\n\n /**\n */\n subtractYears(date: string, amount: number): string {\n return this.toISO(subYears(this.toDate(date), amount));\n }\n\n /**\n * GETTERS\n */\n startOfMonth(date: string, inputFormat: string = this._isoFormat): string {\n return this.toISO(startOfMonth(this.toDate(date, inputFormat)));\n }\n\n /**\n */\n endOfMonth(date: string, inputFormat: string = this._isoFormat): string {\n return this.toISO(endOfMonth(this.toDate(date, inputFormat)));\n }\n\n /**\n */\n startOfWeek(date: string, inputFormat: string = this._isoFormat): string {\n const { weekStartsOn } = this.getOptions();\n\n return this.toISO(\n startOfWeek(this.toDate(date, inputFormat), {\n weekStartsOn,\n })\n );\n }\n\n /**\n */\n getHours(date: string | Date): number {\n const parsedDate = typeof date === \"string\" ? this.toDate(date) : date;\n return getHours(parsedDate);\n }\n\n /**\n */\n getMinutes(date: string | Date): number {\n const parsedDate = typeof date === \"string\" ? this.toDate(date) : date;\n return getMinutes(parsedDate);\n }\n\n /**\n */\n getWeek(date: string): number {\n const { weekStartsOn, firstWeekContainsDate } = this.getOptions();\n\n return getWeek(this.toDate(date), {\n weekStartsOn,\n firstWeekContainsDate,\n });\n }\n\n /**\n * SETTERS\n */\n setYear(date: string, year: number): string {\n return this.toISO(setYear(this.toDate(date), year));\n }\n\n /**\n */\n setMonth(date: string, month: number): string {\n return this.toISO(setMonth(this.toDate(date), month));\n }\n\n /**\n */\n setHour(date: string, hour: number): string {\n return this.toISO(setHours(this.toDate(date), hour));\n }\n\n /**\n */\n setMinute(date: string, minute: number): string {\n return this.toISO(setMinutes(this.toDate(date), minute));\n }\n\n /**\n */\n setSecond(date: string, second: number): string {\n return this.toISO(setSeconds(this.toDate(date), second));\n }\n\n /**\n */\n setMilliseconds(date: string, milliseconds: number): string {\n return this.toISO(setMilliseconds(this.toDate(date), milliseconds));\n }\n\n /**\n */\n setTime(\n date: string,\n hours: number,\n minutes: number,\n seconds: number,\n milliseconds: number\n ): string {\n return this.toISO(\n set(this.toDate(date), {\n hours,\n minutes,\n seconds,\n milliseconds,\n })\n );\n }\n}\n\n/**\n * DateUtil\n */\nconst DateUtil: BaseDateTimeUtil = new BaseDateTimeUtil(ISO_DATE_FORMAT);\n\n/**\n * DateTimeUtil\n */\nconst DateTimeUtil: BaseDateTimeUtil = new BaseDateTimeUtil(\n ISO_DATETIME_FORMAT\n);\n\n/**\n * TimeUtil\n */\nconst TimeUtil: BaseDateTimeUtil = new BaseDateTimeUtil(ISO_TIME_FORMAT);\n\n/**\n * TimestampUtil\n */\nconst TimestampUtil: BaseDateTimeUtil = new BaseDateTimeUtil(\n ISO_TIMESTAMP_FORMAT\n);\n\nexport { DateUtil, DateTimeUtil, TimeUtil, TimestampUtil };\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"DateTimeUtil.js","names":["BaseDateTimeUtil","isoFormat","_isoFormat","locale","getCookie","nl","enGB","weekStartsOn","getSetting","DEFAULT_WEEK_STARTS_ON","firstWeekContainsDate","DEFAULT_FIRST_WEEK_CONTAINS_DATE","date","inputFormat","getOptions","parse","Date","targetFormat","parsedDate","toDate","isValid","format","getLocale","sourceFormat","toISO","realDate","formattedValue","isOutsideRange","isBefore","isAfter","replace","toUpperCase","inputDate","afterISODate","isSame","beforeISODate","compareDate","getTime","isSameDay","SATURDAY_NUMBER","SUNDAY_NUMBER","weekDay","getDay","amount","addSeconds","addMinutes","addHours","addDays","addWeeks","addMonths","addYears","subSeconds","subMinutes","subHours","subDays","subWeeks","subMonths","subYears","startOfMonth","endOfMonth","startOfWeek","getHours","getMinutes","getWeek","year","setYear","month","setMonth","hour","setHours","minute","setMinutes","second","setSeconds","milliseconds","setMilliseconds","hours","minutes","seconds","set","DateUtil","ISO_DATE_FORMAT","DateTimeUtil","ISO_DATETIME_FORMAT","TimeUtil","ISO_TIME_FORMAT","TimestampUtil","ISO_TIMESTAMP_FORMAT"],"sources":["../../../src/utils/datetime/DateTimeUtil.js"],"sourcesContent":["// @flow\nimport {\n parse,\n format,\n isValid,\n isAfter,\n isBefore,\n isSameDay,\n addSeconds,\n addMinutes,\n addHours,\n addDays,\n addWeeks,\n addMonths,\n addYears,\n subSeconds,\n subMinutes,\n subHours,\n subDays,\n subWeeks,\n subMonths,\n subYears,\n startOfMonth,\n endOfMonth,\n startOfWeek,\n getHours,\n getMinutes,\n getDay,\n getWeek,\n setMilliseconds,\n setSeconds,\n setMinutes,\n setHours,\n setMonth,\n setYear,\n set,\n} from \"date-fns\";\nimport { nl, enGB } from \"date-fns/locale\";\n\nimport { getCookie } from \"../browser/Cookies\";\n\nimport { getSetting } from \"../../constants/Settings\";\n\nimport {\n ISO_DATE_FORMAT,\n ISO_DATETIME_FORMAT,\n ISO_TIME_FORMAT,\n ISO_TIMESTAMP_FORMAT,\n DEFAULT_WEEK_STARTS_ON,\n DEFAULT_FIRST_WEEK_CONTAINS_DATE,\n} from \"../../constants\";\n\n/**\n * @hideconstructor\n */\nclass BaseDateTimeUtil {\n _isoFormat: string;\n\n constructor(isoFormat: string) {\n this._isoFormat = isoFormat;\n }\n\n /**\n */\n getLocale(): typeof nl | typeof enGB {\n const locale = getCookie(\"locale\") ?? \"en\";\n\n if (locale === \"nl\") {\n return nl;\n }\n\n return enGB;\n }\n\n // returns the options defined in settings\n getOptions(): {\n weekStartsOn: 0 | 1 | 2 | 3 | 4 | 5 | 6,\n firstWeekContainsDate: 1 | 2 | 3 | 4 | 5 | 6 | 7,\n } {\n // indicates on what day the week starts\n const weekStartsOn = getSetting(\n \"CALENDAR_WEEK_STARTS_ON\",\n DEFAULT_WEEK_STARTS_ON\n );\n\n // indicates which date indicates the first week of the year\n const firstWeekContainsDate = getSetting(\n \"CALENDAR_FIRST_WEEK_CONTAINS_DATE\",\n DEFAULT_FIRST_WEEK_CONTAINS_DATE\n );\n\n return { weekStartsOn, firstWeekContainsDate };\n }\n\n /**\n */\n toDate(date: string, inputFormat: string = this._isoFormat): Date {\n const { weekStartsOn, firstWeekContainsDate } = this.getOptions();\n\n return parse(date, inputFormat, new Date(), {\n weekStartsOn,\n firstWeekContainsDate,\n });\n }\n\n /**\n */\n toFormat(date: string | Date, targetFormat: string): string {\n const { weekStartsOn } = this.getOptions();\n\n const parsedDate = typeof date === \"string\" ? this.toDate(date) : date;\n\n if (isValid(parsedDate)) {\n return format(parsedDate, targetFormat, {\n weekStartsOn,\n locale: this.getLocale(),\n });\n }\n\n return \"Invalid Date\";\n }\n\n /**\n */\n toISO(date: string | Date, sourceFormat: string = this._isoFormat): string {\n const { weekStartsOn } = this.getOptions();\n\n const parsedDate =\n typeof date === \"string\" ? this.toDate(date, sourceFormat) : date;\n\n if (isValid(parsedDate)) {\n return format(parsedDate, this._isoFormat, {\n weekStartsOn,\n });\n }\n\n return \"Invalid Date\";\n }\n\n /**\n */\n now(): string {\n return this.toISO(new Date());\n }\n\n /**\n */\n convertFormat(sourceFormat: string): string {\n return sourceFormat ? sourceFormat : this._isoFormat;\n }\n\n /**\n * VALIDATION\n */\n hasFormat(date: string, sourceFormat: string): boolean {\n const { weekStartsOn } = this.getOptions();\n\n const realDate = this.toDate(date, sourceFormat);\n if (isValid(realDate)) {\n const formattedValue = format(realDate, sourceFormat, {\n weekStartsOn,\n });\n\n const isOutsideRange =\n isBefore(realDate, new Date(1000, 1, 1)) ||\n isAfter(realDate, new Date(9999, 11, 31));\n if (isOutsideRange) {\n return false;\n }\n\n return (\n formattedValue.replace(/0/gu, \"\").toUpperCase() ===\n date.replace(/0/gu, \"\").toUpperCase()\n );\n }\n\n return false;\n }\n\n /**\n */\n isValid(date: string, inputFormat: string = this._isoFormat): boolean {\n return isValid(this.toDate(date, inputFormat));\n }\n\n /**\n */\n isAfter(\n inputDate: string,\n afterISODate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n afterISODate != null &&\n isAfter(this.toDate(inputDate, inputFormat), this.toDate(afterISODate))\n );\n }\n\n /**\n */\n isSameOrAfter(\n inputDate: string,\n afterISODate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n afterISODate != null &&\n (this.isAfter(inputDate, afterISODate, inputFormat) ||\n this.isSame(inputDate, afterISODate, inputFormat))\n );\n }\n\n /**\n */\n isBefore(\n inputDate: string,\n beforeISODate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n beforeISODate != null &&\n isBefore(this.toDate(inputDate, inputFormat), this.toDate(beforeISODate))\n );\n }\n\n /**\n */\n isSameOrBefore(\n inputDate: string,\n beforeISODate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n beforeISODate != null &&\n (this.isBefore(inputDate, beforeISODate, inputFormat) ||\n this.isSame(inputDate, beforeISODate, inputFormat))\n );\n }\n\n /**\n */\n isSame(\n inputDate: string,\n compareDate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n compareDate != null &&\n this.toDate(inputDate, inputFormat).getTime() ===\n this.toDate(compareDate).getTime()\n );\n }\n\n /**\n */\n isSameDay(\n inputDate: string,\n compareDate: string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return (\n compareDate != null &&\n isSameDay(\n this.toDate(inputDate, inputFormat),\n this.toDate(compareDate, inputFormat)\n )\n );\n }\n\n /**\n */\n isOther(\n inputDate: string,\n compareDate: ?string,\n inputFormat: string = this._isoFormat\n ): boolean {\n return !this.isSame(inputDate, compareDate, inputFormat);\n }\n\n /**\n */\n isWeekend(inputDate: string): boolean {\n const SATURDAY_NUMBER = 6;\n const SUNDAY_NUMBER = 0;\n const weekDay = getDay(this.toDate(inputDate));\n\n return weekDay === SATURDAY_NUMBER || weekDay === SUNDAY_NUMBER;\n }\n\n /**\n * CALCULATIONS\n */\n addSeconds(date: string, amount: number): string {\n return this.toISO(addSeconds(this.toDate(date), amount));\n }\n\n /**\n */\n addMinutes(date: string, amount: number): string {\n return this.toISO(addMinutes(this.toDate(date), amount));\n }\n\n /**\n */\n addHours(date: string, amount: number): string {\n return this.toISO(addHours(this.toDate(date), amount));\n }\n\n /**\n */\n addDays(date: string, amount: number): string {\n return this.toISO(addDays(this.toDate(date), amount));\n }\n\n /**\n */\n addWeeks(date: string, amount: number): string {\n return this.toISO(addWeeks(this.toDate(date), amount));\n }\n\n /**\n */\n addMonths(date: string, amount: number): string {\n return this.toISO(addMonths(this.toDate(date), amount));\n }\n\n /**\n */\n addYears(date: string, amount: number): string {\n return this.toISO(addYears(this.toDate(date), amount));\n }\n\n /**\n */\n subtractSeconds(date: string, amount: number): string {\n return this.toISO(subSeconds(this.toDate(date), amount));\n }\n\n /**\n */\n subtractMinutes(date: string, amount: number): string {\n return this.toISO(subMinutes(this.toDate(date), amount));\n }\n\n /**\n */\n subtractHours(date: string, amount: number): string {\n return this.toISO(subHours(this.toDate(date), amount));\n }\n\n /**\n */\n subtractDays(date: string, amount: number): string {\n return this.toISO(subDays(this.toDate(date), amount));\n }\n\n /**\n */\n subtractWeeks(date: string, amount: number): string {\n return this.toISO(subWeeks(this.toDate(date), amount));\n }\n\n /**\n */\n subtractMonths(date: string, amount: number): string {\n return this.toISO(subMonths(this.toDate(date), amount));\n }\n\n /**\n */\n subtractYears(date: string, amount: number): string {\n return this.toISO(subYears(this.toDate(date), amount));\n }\n\n /**\n * GETTERS\n */\n startOfMonth(date: string, inputFormat: string = this._isoFormat): string {\n return this.toISO(startOfMonth(this.toDate(date, inputFormat)));\n }\n\n /**\n */\n endOfMonth(date: string, inputFormat: string = this._isoFormat): string {\n return this.toISO(endOfMonth(this.toDate(date, inputFormat)));\n }\n\n /**\n */\n startOfWeek(date: string, inputFormat: string = this._isoFormat): string {\n const { weekStartsOn } = this.getOptions();\n\n return this.toISO(\n startOfWeek(this.toDate(date, inputFormat), {\n weekStartsOn,\n })\n );\n }\n\n /**\n */\n getHours(date: string | Date): number {\n const parsedDate = typeof date === \"string\" ? this.toDate(date) : date;\n return getHours(parsedDate);\n }\n\n /**\n */\n getMinutes(date: string | Date): number {\n const parsedDate = typeof date === \"string\" ? this.toDate(date) : date;\n return getMinutes(parsedDate);\n }\n\n /**\n */\n getWeek(date: string): number {\n const { weekStartsOn, firstWeekContainsDate } = this.getOptions();\n\n return getWeek(this.toDate(date), {\n weekStartsOn,\n firstWeekContainsDate,\n });\n }\n\n /**\n * SETTERS\n */\n setYear(date: string, year: number): string {\n return this.toISO(setYear(this.toDate(date), year));\n }\n\n /**\n */\n setMonth(date: string, month: number): string {\n return this.toISO(setMonth(this.toDate(date), month));\n }\n\n /**\n */\n setHour(date: string, hour: number): string {\n return this.toISO(setHours(this.toDate(date), hour));\n }\n\n /**\n */\n setMinute(date: string, minute: number): string {\n return this.toISO(setMinutes(this.toDate(date), minute));\n }\n\n /**\n */\n setSecond(date: string, second: number): string {\n return this.toISO(setSeconds(this.toDate(date), second));\n }\n\n /**\n */\n setMilliseconds(date: string, milliseconds: number): string {\n return this.toISO(setMilliseconds(this.toDate(date), milliseconds));\n }\n\n /**\n */\n setTime(\n date: string,\n hours: number,\n minutes: number,\n seconds: number,\n milliseconds: number\n ): string {\n return this.toISO(\n set(this.toDate(date), {\n hours,\n minutes,\n seconds,\n milliseconds,\n })\n );\n }\n}\n\n/**\n * DateUtil\n */\nconst DateUtil: BaseDateTimeUtil = new BaseDateTimeUtil(ISO_DATE_FORMAT);\n\n/**\n * DateTimeUtil\n */\nconst DateTimeUtil: BaseDateTimeUtil = new BaseDateTimeUtil(\n ISO_DATETIME_FORMAT\n);\n\n/**\n * TimeUtil\n */\nconst TimeUtil: BaseDateTimeUtil = new BaseDateTimeUtil(ISO_TIME_FORMAT);\n\n/**\n * TimestampUtil\n */\nconst TimestampUtil: BaseDateTimeUtil = new BaseDateTimeUtil(\n ISO_TIMESTAMP_FORMAT\n);\n\nexport { DateUtil, DateTimeUtil, TimeUtil, TimestampUtil };\n"],"mappings":";;;;;;;;;;;;;;;AACA;;AAoCA;;AAEA;;AAEA;;AAEA;;AASA;AACA;AACA;IACMA,gB;EAGJ,0BAAYC,SAAZ,EAA+B;IAAA;IAAA;IAC7B,KAAKC,UAAL,GAAkBD,SAAlB;EACD;EAED;AACF;;;;;WACE,qBAAqC;MAAA;;MACnC,IAAME,MAAM,iBAAG,IAAAC,kBAAA,EAAU,QAAV,CAAH,mDAA0B,IAAtC;;MAEA,IAAID,MAAM,KAAK,IAAf,EAAqB;QACnB,OAAOE,UAAP;MACD;;MAED,OAAOC,YAAP;IACD,C,CAED;;;;WACA,sBAGE;MACA;MACA,IAAMC,YAAY,GAAG,IAAAC,oBAAA,EACnB,yBADmB,EAEnBC,iCAFmB,CAArB,CAFA,CAOA;;MACA,IAAMC,qBAAqB,GAAG,IAAAF,oBAAA,EAC5B,mCAD4B,EAE5BG,2CAF4B,CAA9B;MAKA,OAAO;QAAEJ,YAAY,EAAZA,YAAF;QAAgBG,qBAAqB,EAArBA;MAAhB,CAAP;IACD;IAED;AACF;;;;WACE,gBAAOE,IAAP,EAAkE;MAAA,IAA7CC,WAA6C,uEAAvB,KAAKX,UAAkB;;MAChE,uBAAgD,KAAKY,UAAL,EAAhD;MAAA,IAAQP,YAAR,oBAAQA,YAAR;MAAA,IAAsBG,qBAAtB,oBAAsBA,qBAAtB;;MAEA,OAAO,IAAAK,cAAA,EAAMH,IAAN,EAAYC,WAAZ,EAAyB,IAAIG,IAAJ,EAAzB,EAAqC;QAC1CT,YAAY,EAAZA,YAD0C;QAE1CG,qBAAqB,EAArBA;MAF0C,CAArC,CAAP;IAID;IAED;AACF;;;;WACE,kBAASE,IAAT,EAA8BK,YAA9B,EAA4D;MAC1D,wBAAyB,KAAKH,UAAL,EAAzB;MAAA,IAAQP,YAAR,qBAAQA,YAAR;;MAEA,IAAMW,UAAU,GAAG,OAAON,IAAP,KAAgB,QAAhB,GAA2B,KAAKO,MAAL,CAAYP,IAAZ,CAA3B,GAA+CA,IAAlE;;MAEA,IAAI,IAAAQ,gBAAA,EAAQF,UAAR,CAAJ,EAAyB;QACvB,OAAO,IAAAG,eAAA,EAAOH,UAAP,EAAmBD,YAAnB,EAAiC;UACtCV,YAAY,EAAZA,YADsC;UAEtCJ,MAAM,EAAE,KAAKmB,SAAL;QAF8B,CAAjC,CAAP;MAID;;MAED,OAAO,cAAP;IACD;IAED;AACF;;;;WACE,eAAMV,IAAN,EAA2E;MAAA,IAAhDW,YAAgD,uEAAzB,KAAKrB,UAAoB;;MACzE,wBAAyB,KAAKY,UAAL,EAAzB;MAAA,IAAQP,YAAR,qBAAQA,YAAR;;MAEA,IAAMW,UAAU,GACd,OAAON,IAAP,KAAgB,QAAhB,GAA2B,KAAKO,MAAL,CAAYP,IAAZ,EAAkBW,YAAlB,CAA3B,GAA6DX,IAD/D;;MAGA,IAAI,IAAAQ,gBAAA,EAAQF,UAAR,CAAJ,EAAyB;QACvB,OAAO,IAAAG,eAAA,EAAOH,UAAP,EAAmB,KAAKhB,UAAxB,EAAoC;UACzCK,YAAY,EAAZA;QADyC,CAApC,CAAP;MAGD;;MAED,OAAO,cAAP;IACD;IAED;AACF;;;;WACE,eAAc;MACZ,OAAO,KAAKiB,KAAL,CAAW,IAAIR,IAAJ,EAAX,CAAP;IACD;IAED;AACF;;;;WACE,uBAAcO,YAAd,EAA4C;MAC1C,OAAOA,YAAY,GAAGA,YAAH,GAAkB,KAAKrB,UAA1C;IACD;IAED;AACF;AACA;;;;WACE,mBAAUU,IAAV,EAAwBW,YAAxB,EAAuD;MACrD,wBAAyB,KAAKT,UAAL,EAAzB;MAAA,IAAQP,YAAR,qBAAQA,YAAR;;MAEA,IAAMkB,QAAQ,GAAG,KAAKN,MAAL,CAAYP,IAAZ,EAAkBW,YAAlB,CAAjB;;MACA,IAAI,IAAAH,gBAAA,EAAQK,QAAR,CAAJ,EAAuB;QACrB,IAAMC,cAAc,GAAG,IAAAL,eAAA,EAAOI,QAAP,EAAiBF,YAAjB,EAA+B;UACpDhB,YAAY,EAAZA;QADoD,CAA/B,CAAvB;QAIA,IAAMoB,cAAc,GAClB,IAAAC,iBAAA,EAASH,QAAT,EAAmB,IAAIT,IAAJ,CAAS,IAAT,EAAe,CAAf,EAAkB,CAAlB,CAAnB,KACA,IAAAa,gBAAA,EAAQJ,QAAR,EAAkB,IAAIT,IAAJ,CAAS,IAAT,EAAe,EAAf,EAAmB,EAAnB,CAAlB,CAFF;;QAGA,IAAIW,cAAJ,EAAoB;UAClB,OAAO,KAAP;QACD;;QAED,OACED,cAAc,CAACI,OAAf,CAAuB,IAAvB,EAA8B,EAA9B,EAAkCC,WAAlC,OACAnB,IAAI,CAACkB,OAAL,CAAa,IAAb,EAAoB,EAApB,EAAwBC,WAAxB,EAFF;MAID;;MAED,OAAO,KAAP;IACD;IAED;AACF;;;;WACE,iBAAQnB,IAAR,EAAsE;MAAA,IAAhDC,WAAgD,uEAA1B,KAAKX,UAAqB;MACpE,OAAO,IAAAkB,gBAAA,EAAQ,KAAKD,MAAL,CAAYP,IAAZ,EAAkBC,WAAlB,CAAR,CAAP;IACD;IAED;AACF;;;;WACE,iBACEmB,SADF,EAEEC,YAFF,EAIW;MAAA,IADTpB,WACS,uEADa,KAAKX,UAClB;MACT,OACE+B,YAAY,IAAI,IAAhB,IACA,IAAAJ,gBAAA,EAAQ,KAAKV,MAAL,CAAYa,SAAZ,EAAuBnB,WAAvB,CAAR,EAA6C,KAAKM,MAAL,CAAYc,YAAZ,CAA7C,CAFF;IAID;IAED;AACF;;;;WACE,uBACED,SADF,EAEEC,YAFF,EAIW;MAAA,IADTpB,WACS,uEADa,KAAKX,UAClB;MACT,OACE+B,YAAY,IAAI,IAAhB,KACC,KAAKJ,OAAL,CAAaG,SAAb,EAAwBC,YAAxB,EAAsCpB,WAAtC,KACC,KAAKqB,MAAL,CAAYF,SAAZ,EAAuBC,YAAvB,EAAqCpB,WAArC,CAFF,CADF;IAKD;IAED;AACF;;;;WACE,kBACEmB,SADF,EAEEG,aAFF,EAIW;MAAA,IADTtB,WACS,uEADa,KAAKX,UAClB;MACT,OACEiC,aAAa,IAAI,IAAjB,IACA,IAAAP,iBAAA,EAAS,KAAKT,MAAL,CAAYa,SAAZ,EAAuBnB,WAAvB,CAAT,EAA8C,KAAKM,MAAL,CAAYgB,aAAZ,CAA9C,CAFF;IAID;IAED;AACF;;;;WACE,wBACEH,SADF,EAEEG,aAFF,EAIW;MAAA,IADTtB,WACS,uEADa,KAAKX,UAClB;MACT,OACEiC,aAAa,IAAI,IAAjB,KACC,KAAKP,QAAL,CAAcI,SAAd,EAAyBG,aAAzB,EAAwCtB,WAAxC,KACC,KAAKqB,MAAL,CAAYF,SAAZ,EAAuBG,aAAvB,EAAsCtB,WAAtC,CAFF,CADF;IAKD;IAED;AACF;;;;WACE,gBACEmB,SADF,EAEEI,WAFF,EAIW;MAAA,IADTvB,WACS,uEADa,KAAKX,UAClB;MACT,OACEkC,WAAW,IAAI,IAAf,IACA,KAAKjB,MAAL,CAAYa,SAAZ,EAAuBnB,WAAvB,EAAoCwB,OAApC,OACE,KAAKlB,MAAL,CAAYiB,WAAZ,EAAyBC,OAAzB,EAHJ;IAKD;IAED;AACF;;;;WACE,mBACEL,SADF,EAEEI,WAFF,EAIW;MAAA,IADTvB,WACS,uEADa,KAAKX,UAClB;MACT,OACEkC,WAAW,IAAI,IAAf,IACA,IAAAE,kBAAA,EACE,KAAKnB,MAAL,CAAYa,SAAZ,EAAuBnB,WAAvB,CADF,EAEE,KAAKM,MAAL,CAAYiB,WAAZ,EAAyBvB,WAAzB,CAFF,CAFF;IAOD;IAED;AACF;;;;WACE,iBACEmB,SADF,EAEEI,WAFF,EAIW;MAAA,IADTvB,WACS,uEADa,KAAKX,UAClB;MACT,OAAO,CAAC,KAAKgC,MAAL,CAAYF,SAAZ,EAAuBI,WAAvB,EAAoCvB,WAApC,CAAR;IACD;IAED;AACF;;;;WACE,mBAAUmB,SAAV,EAAsC;MACpC,IAAMO,eAAe,GAAG,CAAxB;MACA,IAAMC,aAAa,GAAG,CAAtB;MACA,IAAMC,OAAO,GAAG,IAAAC,eAAA,EAAO,KAAKvB,MAAL,CAAYa,SAAZ,CAAP,CAAhB;MAEA,OAAOS,OAAO,KAAKF,eAAZ,IAA+BE,OAAO,KAAKD,aAAlD;IACD;IAED;AACF;AACA;;;;WACE,oBAAW5B,IAAX,EAAyB+B,MAAzB,EAAiD;MAC/C,OAAO,KAAKnB,KAAL,CAAW,IAAAoB,mBAAA,EAAW,KAAKzB,MAAL,CAAYP,IAAZ,CAAX,EAA8B+B,MAA9B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,oBAAW/B,IAAX,EAAyB+B,MAAzB,EAAiD;MAC/C,OAAO,KAAKnB,KAAL,CAAW,IAAAqB,mBAAA,EAAW,KAAK1B,MAAL,CAAYP,IAAZ,CAAX,EAA8B+B,MAA9B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,kBAAS/B,IAAT,EAAuB+B,MAAvB,EAA+C;MAC7C,OAAO,KAAKnB,KAAL,CAAW,IAAAsB,iBAAA,EAAS,KAAK3B,MAAL,CAAYP,IAAZ,CAAT,EAA4B+B,MAA5B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,iBAAQ/B,IAAR,EAAsB+B,MAAtB,EAA8C;MAC5C,OAAO,KAAKnB,KAAL,CAAW,IAAAuB,gBAAA,EAAQ,KAAK5B,MAAL,CAAYP,IAAZ,CAAR,EAA2B+B,MAA3B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,kBAAS/B,IAAT,EAAuB+B,MAAvB,EAA+C;MAC7C,OAAO,KAAKnB,KAAL,CAAW,IAAAwB,iBAAA,EAAS,KAAK7B,MAAL,CAAYP,IAAZ,CAAT,EAA4B+B,MAA5B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,mBAAU/B,IAAV,EAAwB+B,MAAxB,EAAgD;MAC9C,OAAO,KAAKnB,KAAL,CAAW,IAAAyB,kBAAA,EAAU,KAAK9B,MAAL,CAAYP,IAAZ,CAAV,EAA6B+B,MAA7B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,kBAAS/B,IAAT,EAAuB+B,MAAvB,EAA+C;MAC7C,OAAO,KAAKnB,KAAL,CAAW,IAAA0B,iBAAA,EAAS,KAAK/B,MAAL,CAAYP,IAAZ,CAAT,EAA4B+B,MAA5B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,yBAAgB/B,IAAhB,EAA8B+B,MAA9B,EAAsD;MACpD,OAAO,KAAKnB,KAAL,CAAW,IAAA2B,mBAAA,EAAW,KAAKhC,MAAL,CAAYP,IAAZ,CAAX,EAA8B+B,MAA9B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,yBAAgB/B,IAAhB,EAA8B+B,MAA9B,EAAsD;MACpD,OAAO,KAAKnB,KAAL,CAAW,IAAA4B,mBAAA,EAAW,KAAKjC,MAAL,CAAYP,IAAZ,CAAX,EAA8B+B,MAA9B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,uBAAc/B,IAAd,EAA4B+B,MAA5B,EAAoD;MAClD,OAAO,KAAKnB,KAAL,CAAW,IAAA6B,iBAAA,EAAS,KAAKlC,MAAL,CAAYP,IAAZ,CAAT,EAA4B+B,MAA5B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,sBAAa/B,IAAb,EAA2B+B,MAA3B,EAAmD;MACjD,OAAO,KAAKnB,KAAL,CAAW,IAAA8B,gBAAA,EAAQ,KAAKnC,MAAL,CAAYP,IAAZ,CAAR,EAA2B+B,MAA3B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,uBAAc/B,IAAd,EAA4B+B,MAA5B,EAAoD;MAClD,OAAO,KAAKnB,KAAL,CAAW,IAAA+B,iBAAA,EAAS,KAAKpC,MAAL,CAAYP,IAAZ,CAAT,EAA4B+B,MAA5B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,wBAAe/B,IAAf,EAA6B+B,MAA7B,EAAqD;MACnD,OAAO,KAAKnB,KAAL,CAAW,IAAAgC,kBAAA,EAAU,KAAKrC,MAAL,CAAYP,IAAZ,CAAV,EAA6B+B,MAA7B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,uBAAc/B,IAAd,EAA4B+B,MAA5B,EAAoD;MAClD,OAAO,KAAKnB,KAAL,CAAW,IAAAiC,iBAAA,EAAS,KAAKtC,MAAL,CAAYP,IAAZ,CAAT,EAA4B+B,MAA5B,CAAX,CAAP;IACD;IAED;AACF;AACA;;;;WACE,sBAAa/B,IAAb,EAA0E;MAAA,IAA/CC,WAA+C,uEAAzB,KAAKX,UAAoB;MACxE,OAAO,KAAKsB,KAAL,CAAW,IAAAkC,qBAAA,EAAa,KAAKvC,MAAL,CAAYP,IAAZ,EAAkBC,WAAlB,CAAb,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,oBAAWD,IAAX,EAAwE;MAAA,IAA/CC,WAA+C,uEAAzB,KAAKX,UAAoB;MACtE,OAAO,KAAKsB,KAAL,CAAW,IAAAmC,mBAAA,EAAW,KAAKxC,MAAL,CAAYP,IAAZ,EAAkBC,WAAlB,CAAX,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,qBAAYD,IAAZ,EAAyE;MAAA,IAA/CC,WAA+C,uEAAzB,KAAKX,UAAoB;;MACvE,wBAAyB,KAAKY,UAAL,EAAzB;MAAA,IAAQP,YAAR,qBAAQA,YAAR;;MAEA,OAAO,KAAKiB,KAAL,CACL,IAAAoC,oBAAA,EAAY,KAAKzC,MAAL,CAAYP,IAAZ,EAAkBC,WAAlB,CAAZ,EAA4C;QAC1CN,YAAY,EAAZA;MAD0C,CAA5C,CADK,CAAP;IAKD;IAED;AACF;;;;WACE,kBAASK,IAAT,EAAsC;MACpC,IAAMM,UAAU,GAAG,OAAON,IAAP,KAAgB,QAAhB,GAA2B,KAAKO,MAAL,CAAYP,IAAZ,CAA3B,GAA+CA,IAAlE;MACA,OAAO,IAAAiD,iBAAA,EAAS3C,UAAT,CAAP;IACD;IAED;AACF;;;;WACE,oBAAWN,IAAX,EAAwC;MACtC,IAAMM,UAAU,GAAG,OAAON,IAAP,KAAgB,QAAhB,GAA2B,KAAKO,MAAL,CAAYP,IAAZ,CAA3B,GAA+CA,IAAlE;MACA,OAAO,IAAAkD,mBAAA,EAAW5C,UAAX,CAAP;IACD;IAED;AACF;;;;WACE,iBAAQN,IAAR,EAA8B;MAC5B,wBAAgD,KAAKE,UAAL,EAAhD;MAAA,IAAQP,YAAR,qBAAQA,YAAR;MAAA,IAAsBG,qBAAtB,qBAAsBA,qBAAtB;;MAEA,OAAO,IAAAqD,gBAAA,EAAQ,KAAK5C,MAAL,CAAYP,IAAZ,CAAR,EAA2B;QAChCL,YAAY,EAAZA,YADgC;QAEhCG,qBAAqB,EAArBA;MAFgC,CAA3B,CAAP;IAID;IAED;AACF;AACA;;;;WACE,iBAAQE,IAAR,EAAsBoD,IAAtB,EAA4C;MAC1C,OAAO,KAAKxC,KAAL,CAAW,IAAAyC,gBAAA,EAAQ,KAAK9C,MAAL,CAAYP,IAAZ,CAAR,EAA2BoD,IAA3B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,kBAASpD,IAAT,EAAuBsD,KAAvB,EAA8C;MAC5C,OAAO,KAAK1C,KAAL,CAAW,IAAA2C,iBAAA,EAAS,KAAKhD,MAAL,CAAYP,IAAZ,CAAT,EAA4BsD,KAA5B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,iBAAQtD,IAAR,EAAsBwD,IAAtB,EAA4C;MAC1C,OAAO,KAAK5C,KAAL,CAAW,IAAA6C,iBAAA,EAAS,KAAKlD,MAAL,CAAYP,IAAZ,CAAT,EAA4BwD,IAA5B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,mBAAUxD,IAAV,EAAwB0D,MAAxB,EAAgD;MAC9C,OAAO,KAAK9C,KAAL,CAAW,IAAA+C,mBAAA,EAAW,KAAKpD,MAAL,CAAYP,IAAZ,CAAX,EAA8B0D,MAA9B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,mBAAU1D,IAAV,EAAwB4D,MAAxB,EAAgD;MAC9C,OAAO,KAAKhD,KAAL,CAAW,IAAAiD,mBAAA,EAAW,KAAKtD,MAAL,CAAYP,IAAZ,CAAX,EAA8B4D,MAA9B,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,yBAAgB5D,IAAhB,EAA8B8D,YAA9B,EAA4D;MAC1D,OAAO,KAAKlD,KAAL,CAAW,IAAAmD,wBAAA,EAAgB,KAAKxD,MAAL,CAAYP,IAAZ,CAAhB,EAAmC8D,YAAnC,CAAX,CAAP;IACD;IAED;AACF;;;;WACE,iBACE9D,IADF,EAEEgE,KAFF,EAGEC,OAHF,EAIEC,OAJF,EAKEJ,YALF,EAMU;MACR,OAAO,KAAKlD,KAAL,CACL,IAAAuD,YAAA,EAAI,KAAK5D,MAAL,CAAYP,IAAZ,CAAJ,EAAuB;QACrBgE,KAAK,EAALA,KADqB;QAErBC,OAAO,EAAPA,OAFqB;QAGrBC,OAAO,EAAPA,OAHqB;QAIrBJ,YAAY,EAAZA;MAJqB,CAAvB,CADK,CAAP;IAQD;;;;AAGH;AACA;AACA;;;AACA,IAAMM,QAA0B,GAAG,IAAIhF,gBAAJ,CAAqBiF,0BAArB,CAAnC;AAEA;AACA;AACA;;;AACA,IAAMC,YAA8B,GAAG,IAAIlF,gBAAJ,CACrCmF,8BADqC,CAAvC;AAIA;AACA;AACA;;;AACA,IAAMC,QAA0B,GAAG,IAAIpF,gBAAJ,CAAqBqF,0BAArB,CAAnC;AAEA;AACA;AACA;;;AACA,IAAMC,aAA+B,GAAG,IAAItF,gBAAJ,CACtCuF,+BADsC,CAAxC"}
|
package/package.json
CHANGED
|
@@ -61,10 +61,6 @@ describe("authentication hooks", () => {
|
|
|
61
61
|
|
|
62
62
|
expect(store.getActions()).toStrictEqual([
|
|
63
63
|
{ type: "START_PROGRESS" },
|
|
64
|
-
{
|
|
65
|
-
type: "MODULARUI/REMOVE_KEY",
|
|
66
|
-
payload: "application(/)(en)",
|
|
67
|
-
},
|
|
68
64
|
{
|
|
69
65
|
type: "MODULARUI/STATUS",
|
|
70
66
|
payload: { key: "application(/)(en)", status: "LOADING" },
|
|
@@ -112,10 +108,6 @@ describe("authentication hooks", () => {
|
|
|
112
108
|
expect(store.getActions()).toStrictEqual([
|
|
113
109
|
{ type: "START_PROGRESS" },
|
|
114
110
|
{ type: "MODULARUI/RESET" },
|
|
115
|
-
{
|
|
116
|
-
type: "MODULARUI/REMOVE_KEY",
|
|
117
|
-
payload: "application(/)(en)",
|
|
118
|
-
},
|
|
119
111
|
{
|
|
120
112
|
type: "MODULARUI/STATUS",
|
|
121
113
|
payload: { key: "application(/)(en)", status: "LOADING" },
|
package/src/hooks/useContent.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
// @flow
|
|
2
2
|
import { useState, useEffect } from "react";
|
|
3
|
-
import { useSelector } from "react-redux";
|
|
4
3
|
|
|
5
4
|
import SourceReferenceCollection from "../models/concepts/SourceReferenceCollection";
|
|
6
5
|
import ModularUIRequest from "../modularui/ModularUIRequest";
|
|
7
6
|
|
|
8
7
|
import { useProgressIndicator } from "../hooks/useProgressIndicator";
|
|
8
|
+
import { useLocale } from "../hooks/useI18n";
|
|
9
9
|
|
|
10
10
|
import type ContentModel from "../models/content/ContentModel";
|
|
11
11
|
|
|
@@ -17,7 +17,7 @@ export const useContentFromSourceReferences = (
|
|
|
17
17
|
renderChildSections: boolean
|
|
18
18
|
): Array<ContentModel> => {
|
|
19
19
|
const [content, setContent] = useState([]);
|
|
20
|
-
const localeCode =
|
|
20
|
+
const localeCode = useLocale();
|
|
21
21
|
|
|
22
22
|
const { start, finish } = useProgressIndicator();
|
|
23
23
|
|