@dative-gpi/foundation-shared-services 0.0.11 → 0.0.13
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/composables/index.ts +1 -2
- package/composables/services/useApplications.ts +13 -13
- package/composables/services/useAuthTokens.ts +1 -1
- package/composables/services/useFrequentlyAskedQuestions.ts +1 -1
- package/composables/services/useImages.ts +22 -24
- package/composables/services/useLandingPages.ts +13 -13
- package/composables/services/useLayoutPages.ts +13 -13
- package/composables/services/useLegalInformations.ts +13 -13
- package/composables/services/useOrganisations.ts +1 -1
- package/composables/services/useSecuritySettings.ts +13 -13
- package/composables/services/useTimeZones.ts +1 -1
- package/composables/services/useTranslations.ts +9 -10
- package/composables/services/useUserLegalInformations.ts +13 -13
- package/composables/services/useUsers.ts +17 -17
- package/composables/useShared.ts +28 -20
- package/composables/useTimeZone.ts +1 -1
- package/config/urls/accounts.ts +15 -0
- package/config/urls/index.ts +1 -0
- package/package.json +5 -4
- package/composables/useTranslationsProvider.ts +0 -28
- package/index.ts +0 -1
- package/tools/datesTools.ts +0 -15
- package/tools/index.ts +0 -1
package/composables/index.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { onUnmounted, ref } from "vue";
|
|
2
2
|
|
|
3
|
-
import { ApplicationDetails, ApplicationDetailsDTO } from "@dative-gpi/foundation-shared-domain";
|
|
3
|
+
import { ApplicationDetails, ApplicationDetailsDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
4
4
|
import { onEntityChanged, ServiceFactory } from "@dative-gpi/bones-ui";
|
|
5
5
|
|
|
6
6
|
import { APPLICATION_CURRENT_URL } from "../../config/urls";
|
|
@@ -22,29 +22,29 @@ export const useCurrentApplication = () => {
|
|
|
22
22
|
const service = ApplicationServiceFactory();
|
|
23
23
|
const subscribersIds: number[] = [];
|
|
24
24
|
|
|
25
|
-
const
|
|
26
|
-
const
|
|
25
|
+
const getting = ref(false);
|
|
26
|
+
const entity = ref<ApplicationDetails | null>(null);
|
|
27
27
|
|
|
28
28
|
onUnmounted(() => {
|
|
29
29
|
subscribersIds.forEach(id => service.unsubscribe(id));
|
|
30
30
|
subscribersIds.length = 0;
|
|
31
31
|
});
|
|
32
32
|
|
|
33
|
-
const
|
|
34
|
-
|
|
33
|
+
const get = async () => {
|
|
34
|
+
getting.value = true;
|
|
35
35
|
try {
|
|
36
|
-
|
|
36
|
+
entity.value = await service.getCurrent();
|
|
37
37
|
}
|
|
38
38
|
finally {
|
|
39
|
-
|
|
39
|
+
getting.value = false;
|
|
40
40
|
}
|
|
41
|
-
subscribersIds.push(service.subscribe("all", onEntityChanged(
|
|
42
|
-
return
|
|
41
|
+
subscribersIds.push(service.subscribe("all", onEntityChanged(entity)));
|
|
42
|
+
return entity;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
return {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
getting,
|
|
47
|
+
get,
|
|
48
|
+
entity
|
|
49
49
|
}
|
|
50
50
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { AuthTokenDetails, AuthTokenDetailsDTO, CreateAuthTokenDTO } from "@dative-gpi/foundation-shared-domain";
|
|
1
|
+
import { AuthTokenDetails, AuthTokenDetailsDTO, CreateAuthTokenDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
2
2
|
import { ComposableFactory, ServiceFactory } from "@dative-gpi/bones-ui";
|
|
3
3
|
|
|
4
4
|
import { AUTH_TOKENS_URL } from "../../config/urls";
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { FrequentlyAskedQuestionDetails, FrequentlyAskedQuestionDetailsDTO, FrequentlyAskedQuestionFilters, FrequentlyAskedQuestionInfos, FrequentlyAskedQuestionInfosDTO } from "@dative-gpi/foundation-shared-domain";
|
|
1
|
+
import { FrequentlyAskedQuestionDetails, FrequentlyAskedQuestionDetailsDTO, FrequentlyAskedQuestionFilters, FrequentlyAskedQuestionInfos, FrequentlyAskedQuestionInfosDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
2
2
|
import { ComposableFactory, ServiceFactory } from "@dative-gpi/bones-ui";
|
|
3
3
|
|
|
4
4
|
import { FREQUENTLY_ASKED_QUESTIONS_URL } from "../../config/urls";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ref } from "vue";
|
|
2
2
|
|
|
3
|
-
import { BlurHash } from "@dative-gpi/foundation-shared-domain";
|
|
3
|
+
import { BlurHash } from "@dative-gpi/foundation-shared-domain/models";
|
|
4
4
|
import { ServiceFactory } from "@dative-gpi/bones-ui";
|
|
5
5
|
|
|
6
6
|
import { IMAGE_RAW_URL, IMAGE_BLURHASH_URL } from "../../config/urls";
|
|
@@ -24,48 +24,46 @@ const ImageServiceFactory = new ServiceFactory("image", BlurHash).create(factory
|
|
|
24
24
|
export const useImageRaw = () => {
|
|
25
25
|
const service = ImageServiceFactory();
|
|
26
26
|
|
|
27
|
-
const
|
|
28
|
-
const
|
|
27
|
+
const getting = ref(false);
|
|
28
|
+
const entity = ref<string | null>(null);
|
|
29
29
|
|
|
30
|
-
const
|
|
31
|
-
|
|
30
|
+
const get = async (imageId: string) => {
|
|
31
|
+
getting.value = true;
|
|
32
32
|
try {
|
|
33
|
-
|
|
33
|
+
entity.value = await service.getRaw(imageId);
|
|
34
34
|
}
|
|
35
35
|
finally {
|
|
36
|
-
|
|
36
|
+
getting.value = false;
|
|
37
37
|
}
|
|
38
|
-
|
|
39
|
-
return readonly(fetched as Ref<string>);
|
|
38
|
+
return entity;
|
|
40
39
|
}
|
|
41
40
|
|
|
42
41
|
return {
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
42
|
+
getting,
|
|
43
|
+
get,
|
|
44
|
+
entity
|
|
46
45
|
}
|
|
47
46
|
}
|
|
48
47
|
export const useImageBlurHash = () => {
|
|
49
48
|
const service = ImageServiceFactory();
|
|
50
49
|
|
|
51
|
-
const
|
|
52
|
-
const
|
|
50
|
+
const getting = ref(false);
|
|
51
|
+
const entity = ref<BlurHash | null>(null);
|
|
53
52
|
|
|
54
|
-
const
|
|
55
|
-
|
|
53
|
+
const get = async (imageId: string) => {
|
|
54
|
+
getting.value = true;
|
|
56
55
|
try {
|
|
57
|
-
|
|
56
|
+
entity.value = await service.getBlurHash(imageId);
|
|
58
57
|
}
|
|
59
58
|
finally {
|
|
60
|
-
|
|
59
|
+
getting.value = false;
|
|
61
60
|
}
|
|
62
|
-
|
|
63
|
-
return readonly(fetched as Ref<BlurHash>);
|
|
61
|
+
return entity;
|
|
64
62
|
}
|
|
65
63
|
|
|
66
64
|
return {
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
65
|
+
getting,
|
|
66
|
+
get,
|
|
67
|
+
entity
|
|
70
68
|
}
|
|
71
69
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { onUnmounted, ref } from "vue";
|
|
2
2
|
|
|
3
|
-
import { LandingPageDetails, LandingPageDetailsDTO } from "@dative-gpi/foundation-shared-domain";
|
|
3
|
+
import { LandingPageDetails, LandingPageDetailsDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
4
4
|
import { onEntityChanged, ServiceFactory } from "@dative-gpi/bones-ui";
|
|
5
5
|
|
|
6
6
|
import { LANDING_PAGE_CURRENT_URL } from "../../config/urls";
|
|
@@ -22,29 +22,29 @@ export const useCurrentLandingPage = () => {
|
|
|
22
22
|
const service = LandingPageServiceFactory();
|
|
23
23
|
const subscribersIds: number[] = [];
|
|
24
24
|
|
|
25
|
-
const
|
|
26
|
-
const
|
|
25
|
+
const getting = ref(false);
|
|
26
|
+
const entity = ref<LandingPageDetails | null>(null);
|
|
27
27
|
|
|
28
28
|
onUnmounted(() => {
|
|
29
29
|
subscribersIds.forEach(id => service.unsubscribe(id));
|
|
30
30
|
subscribersIds.length = 0;
|
|
31
31
|
});
|
|
32
32
|
|
|
33
|
-
const
|
|
34
|
-
|
|
33
|
+
const get = async () => {
|
|
34
|
+
getting.value = true;
|
|
35
35
|
try {
|
|
36
|
-
|
|
36
|
+
entity.value = await service.getCurrent();
|
|
37
37
|
}
|
|
38
38
|
finally {
|
|
39
|
-
|
|
39
|
+
getting.value = false;
|
|
40
40
|
}
|
|
41
|
-
subscribersIds.push(service.subscribe("all", onEntityChanged(
|
|
42
|
-
return
|
|
41
|
+
subscribersIds.push(service.subscribe("all", onEntityChanged(entity)));
|
|
42
|
+
return entity;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
return {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
getting,
|
|
47
|
+
get,
|
|
48
|
+
entity
|
|
49
49
|
}
|
|
50
50
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { onUnmounted, ref } from "vue";
|
|
2
2
|
|
|
3
|
-
import { LayoutPageDetails, LayoutPageDetailsDTO } from "@dative-gpi/foundation-shared-domain";
|
|
3
|
+
import { LayoutPageDetails, LayoutPageDetailsDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
4
4
|
import { onEntityChanged, ServiceFactory } from "@dative-gpi/bones-ui";
|
|
5
5
|
|
|
6
6
|
import { LAYOUT_PAGE_CURRENT_URL } from "../../config/urls";
|
|
@@ -22,29 +22,29 @@ export const useCurrentLayoutPage = () => {
|
|
|
22
22
|
const service = LayoutPageServiceFactory();
|
|
23
23
|
const subscribersIds: number[] = [];
|
|
24
24
|
|
|
25
|
-
const
|
|
26
|
-
const
|
|
25
|
+
const getting = ref(false);
|
|
26
|
+
const entity = ref<LayoutPageDetails | null>(null);
|
|
27
27
|
|
|
28
28
|
onUnmounted(() => {
|
|
29
29
|
subscribersIds.forEach(id => service.unsubscribe(id));
|
|
30
30
|
subscribersIds.length = 0;
|
|
31
31
|
});
|
|
32
32
|
|
|
33
|
-
const
|
|
34
|
-
|
|
33
|
+
const get = async () => {
|
|
34
|
+
getting.value = true;
|
|
35
35
|
try {
|
|
36
|
-
|
|
36
|
+
entity.value = await service.getCurrent();
|
|
37
37
|
}
|
|
38
38
|
finally {
|
|
39
|
-
|
|
39
|
+
getting.value = false;
|
|
40
40
|
}
|
|
41
|
-
subscribersIds.push(service.subscribe("all", onEntityChanged(
|
|
42
|
-
return
|
|
41
|
+
subscribersIds.push(service.subscribe("all", onEntityChanged(entity)));
|
|
42
|
+
return entity;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
return {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
getting,
|
|
47
|
+
get,
|
|
48
|
+
entity
|
|
49
49
|
}
|
|
50
50
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { onUnmounted, ref } from "vue";
|
|
2
2
|
|
|
3
|
-
import { LegalInformationDetails, LegalInformationDetailsDTO } from "@dative-gpi/foundation-shared-domain";
|
|
3
|
+
import { LegalInformationDetails, LegalInformationDetailsDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
4
4
|
import { onEntityChanged, ServiceFactory } from "@dative-gpi/bones-ui";
|
|
5
5
|
|
|
6
6
|
import { LEGAL_INFORMATION_CURRENT_URL } from "../../config/urls";
|
|
@@ -22,29 +22,29 @@ export const useCurrentLegalInformation = () => {
|
|
|
22
22
|
const service = LegalInformationServiceFactory();
|
|
23
23
|
const subscribersIds: number[] = [];
|
|
24
24
|
|
|
25
|
-
const
|
|
26
|
-
const
|
|
25
|
+
const getting = ref(false);
|
|
26
|
+
const entity = ref<LegalInformationDetails | null>(null);
|
|
27
27
|
|
|
28
28
|
onUnmounted(() => {
|
|
29
29
|
subscribersIds.forEach(id => service.unsubscribe(id));
|
|
30
30
|
subscribersIds.length = 0;
|
|
31
31
|
});
|
|
32
32
|
|
|
33
|
-
const
|
|
34
|
-
|
|
33
|
+
const get = async () => {
|
|
34
|
+
getting.value = true;
|
|
35
35
|
try {
|
|
36
|
-
|
|
36
|
+
entity.value = await service.getCurrent();
|
|
37
37
|
}
|
|
38
38
|
finally {
|
|
39
|
-
|
|
39
|
+
getting.value = false;
|
|
40
40
|
}
|
|
41
|
-
subscribersIds.push(service.subscribe("all", onEntityChanged(
|
|
42
|
-
return
|
|
41
|
+
subscribersIds.push(service.subscribe("all", onEntityChanged(entity)));
|
|
42
|
+
return entity;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
return {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
getting,
|
|
47
|
+
get,
|
|
48
|
+
entity
|
|
49
49
|
}
|
|
50
50
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { CreateOrganisationDTO, OrganisationDetails, OrganisationDetailsDTO, OrganisationFilters, OrganisationInfos, OrganisationInfosDTO, UpdateOrganisationDTO } from "@dative-gpi/foundation-shared-domain";
|
|
1
|
+
import { CreateOrganisationDTO, OrganisationDetails, OrganisationDetailsDTO, OrganisationFilters, OrganisationInfos, OrganisationInfosDTO, UpdateOrganisationDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
2
2
|
import { ComposableFactory , ServiceFactory } from "@dative-gpi/bones-ui";
|
|
3
3
|
|
|
4
4
|
import { ORGANISATIONS_URL, ORGANISATION_URL } from "../../config/urls";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { onUnmounted, ref } from "vue";
|
|
2
2
|
|
|
3
|
-
import { SecuritySettingDetails, SecuritySettingDetailsDTO } from "@dative-gpi/foundation-shared-domain";
|
|
3
|
+
import { SecuritySettingDetails, SecuritySettingDetailsDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
4
4
|
import { onEntityChanged, ServiceFactory } from "@dative-gpi/bones-ui";
|
|
5
5
|
|
|
6
6
|
import { SECURITY_SETTING_CURRENT_URL } from "../../config/urls";
|
|
@@ -22,29 +22,29 @@ export const useCurrentSecuritySettings = () => {
|
|
|
22
22
|
const service = SecuritySettingServiceFactory();
|
|
23
23
|
const subscribersIds: number[] = [];
|
|
24
24
|
|
|
25
|
-
const
|
|
26
|
-
const
|
|
25
|
+
const getting = ref(false);
|
|
26
|
+
const entity = ref<SecuritySettingDetails | null>(null);
|
|
27
27
|
|
|
28
28
|
onUnmounted(() => {
|
|
29
29
|
subscribersIds.forEach(id => service.unsubscribe(id));
|
|
30
30
|
subscribersIds.length = 0;
|
|
31
31
|
});
|
|
32
32
|
|
|
33
|
-
const
|
|
34
|
-
|
|
33
|
+
const get = async () => {
|
|
34
|
+
getting.value = true;
|
|
35
35
|
try {
|
|
36
|
-
|
|
36
|
+
entity.value = await service.getCurrent();
|
|
37
37
|
}
|
|
38
38
|
finally {
|
|
39
|
-
|
|
39
|
+
getting.value = false;
|
|
40
40
|
}
|
|
41
|
-
subscribersIds.push(service.subscribe("all", onEntityChanged(
|
|
42
|
-
return
|
|
41
|
+
subscribersIds.push(service.subscribe("all", onEntityChanged(entity)));
|
|
42
|
+
return entity;
|
|
43
43
|
}
|
|
44
44
|
|
|
45
45
|
return {
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
getting,
|
|
47
|
+
get,
|
|
48
|
+
entity
|
|
49
49
|
}
|
|
50
50
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { TimeZoneFilters, TimeZoneInfos, TimeZoneInfosDTO } from "@dative-gpi/foundation-shared-domain";
|
|
1
|
+
import { TimeZoneFilters, TimeZoneInfos, TimeZoneInfosDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
2
2
|
import { ComposableFactory, ServiceFactory } from "@dative-gpi/bones-ui";
|
|
3
3
|
|
|
4
4
|
import { TIME_ZONES_URL } from "../../config/urls";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { ref } from "vue";
|
|
2
2
|
|
|
3
|
-
import { TranslationInfos, TranslationInfosDTO, TranslationDetails, TranslationDetailsDTO } from "@dative-gpi/foundation-shared-domain";
|
|
3
|
+
import { TranslationInfos, TranslationInfosDTO, TranslationDetails, TranslationDetailsDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
4
4
|
import { ServiceFactory } from "@dative-gpi/bones-ui";
|
|
5
5
|
|
|
6
6
|
import { TRANSLATIONS_LANGUAGE_URL } from "../../config/urls";
|
|
@@ -20,23 +20,22 @@ export const useTranslations = () => {
|
|
|
20
20
|
const service = TranslationServiceFactory();
|
|
21
21
|
|
|
22
22
|
const fetching = ref(false);
|
|
23
|
-
const
|
|
23
|
+
const entities = ref<TranslationInfos[]>([]);
|
|
24
24
|
|
|
25
|
-
const
|
|
25
|
+
const getMany = async (languageCode: string) => {
|
|
26
26
|
fetching.value = true;
|
|
27
27
|
try {
|
|
28
|
-
|
|
28
|
+
entities.value = await service.getMany(languageCode);
|
|
29
29
|
}
|
|
30
30
|
finally {
|
|
31
31
|
fetching.value = false;
|
|
32
32
|
}
|
|
33
|
-
|
|
34
|
-
return readonly(fetched as Ref<TranslationInfos[]>);
|
|
33
|
+
return entities;
|
|
35
34
|
}
|
|
36
35
|
|
|
37
36
|
return {
|
|
38
|
-
fetching
|
|
39
|
-
|
|
40
|
-
|
|
37
|
+
fetching,
|
|
38
|
+
getMany,
|
|
39
|
+
entities
|
|
41
40
|
}
|
|
42
41
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { onUnmounted, ref } from "vue";
|
|
2
2
|
|
|
3
|
-
import { CreateUserLegalInformationDTO, UserLegalInformationDetails, UserLegalInformationDetailsDTO } from "@dative-gpi/foundation-shared-domain";
|
|
3
|
+
import { CreateUserLegalInformationDTO, UserLegalInformationDetails, UserLegalInformationDetailsDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
4
4
|
import { ComposableFactory, onEntityChanged, ServiceFactory } from "@dative-gpi/bones-ui";
|
|
5
5
|
|
|
6
6
|
import { USER_LEGAL_INFORMATIONS_URL, USER_LEGAL_INFORMATION_CURRENT_URL } from "../../config/urls";
|
|
@@ -24,29 +24,29 @@ export const useCurrentUserLegalInformation = () => {
|
|
|
24
24
|
const service = UserLegalInformationServiceFactory();
|
|
25
25
|
const subscribersIds: number[] = [];
|
|
26
26
|
|
|
27
|
-
const
|
|
28
|
-
const
|
|
27
|
+
const getting = ref(false);
|
|
28
|
+
const entity = ref<UserLegalInformationDetails | null>(null);
|
|
29
29
|
|
|
30
30
|
onUnmounted(() => {
|
|
31
31
|
subscribersIds.forEach(id => service.unsubscribe(id));
|
|
32
32
|
subscribersIds.length = 0;
|
|
33
33
|
});
|
|
34
34
|
|
|
35
|
-
const
|
|
36
|
-
|
|
35
|
+
const get = async () => {
|
|
36
|
+
getting.value = true;
|
|
37
37
|
try {
|
|
38
|
-
|
|
38
|
+
entity.value = await service.getCurrent();
|
|
39
39
|
}
|
|
40
40
|
finally {
|
|
41
|
-
|
|
41
|
+
getting.value = false;
|
|
42
42
|
}
|
|
43
|
-
subscribersIds.push(service.subscribe("all", onEntityChanged(
|
|
44
|
-
return
|
|
43
|
+
subscribersIds.push(service.subscribe("all", onEntityChanged(entity)));
|
|
44
|
+
return entity;
|
|
45
45
|
}
|
|
46
46
|
|
|
47
47
|
return {
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
48
|
+
getting,
|
|
49
|
+
get,
|
|
50
|
+
entity
|
|
51
51
|
}
|
|
52
52
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { onUnmounted, ref } from "vue";
|
|
2
2
|
|
|
3
|
-
import { UpdateUserDTO, UserDetails, UserDetailsDTO } from "@dative-gpi/foundation-shared-domain";
|
|
3
|
+
import { UpdateUserDTO, UserDetails, UserDetailsDTO } from "@dative-gpi/foundation-shared-domain/models";
|
|
4
4
|
import { onEntityChanged, ServiceFactory } from "@dative-gpi/bones-ui";
|
|
5
5
|
|
|
6
6
|
import { USER_CURRENT_URL } from "../../config/urls";
|
|
@@ -30,30 +30,30 @@ export const useCurrentUser = () => {
|
|
|
30
30
|
const service = UserServiceFactory();
|
|
31
31
|
const subscribersIds: number[] = [];
|
|
32
32
|
|
|
33
|
-
const
|
|
34
|
-
const
|
|
33
|
+
const getting = ref(false);
|
|
34
|
+
const entity = ref<UserDetails | null>(null);
|
|
35
35
|
|
|
36
36
|
onUnmounted(() => {
|
|
37
37
|
subscribersIds.forEach(id => service.unsubscribe(id));
|
|
38
38
|
subscribersIds.length = 0;
|
|
39
39
|
});
|
|
40
40
|
|
|
41
|
-
const
|
|
42
|
-
|
|
41
|
+
const get = async () => {
|
|
42
|
+
getting.value = true;
|
|
43
43
|
try {
|
|
44
|
-
|
|
44
|
+
entity.value = await service.getCurrent();
|
|
45
45
|
}
|
|
46
46
|
finally {
|
|
47
|
-
|
|
47
|
+
getting.value = false;
|
|
48
48
|
}
|
|
49
|
-
subscribersIds.push(service.subscribe("all", onEntityChanged(
|
|
50
|
-
return
|
|
49
|
+
subscribersIds.push(service.subscribe("all", onEntityChanged(entity)));
|
|
50
|
+
return entity;
|
|
51
51
|
}
|
|
52
52
|
|
|
53
53
|
return {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
54
|
+
getting,
|
|
55
|
+
get,
|
|
56
|
+
entity
|
|
57
57
|
}
|
|
58
58
|
}
|
|
59
59
|
export const useUpdateCurrentUser = () => {
|
|
@@ -61,7 +61,7 @@ export const useUpdateCurrentUser = () => {
|
|
|
61
61
|
const subscribersIds: number[] = [];
|
|
62
62
|
|
|
63
63
|
const updating = ref(false);
|
|
64
|
-
const updated = ref<UserDetails | null>(null)
|
|
64
|
+
const updated = ref<UserDetails | null>(null);
|
|
65
65
|
|
|
66
66
|
onUnmounted(() => {
|
|
67
67
|
subscribersIds.forEach(id => service.unsubscribe(id));
|
|
@@ -77,12 +77,12 @@ export const useUpdateCurrentUser = () => {
|
|
|
77
77
|
updating.value = false;
|
|
78
78
|
}
|
|
79
79
|
subscribersIds.push(service.subscribe("all", onEntityChanged(updated)));
|
|
80
|
-
return
|
|
80
|
+
return updated;
|
|
81
81
|
}
|
|
82
82
|
|
|
83
83
|
return {
|
|
84
|
-
updating
|
|
84
|
+
updating,
|
|
85
85
|
update,
|
|
86
|
-
updated
|
|
86
|
+
updated
|
|
87
87
|
}
|
|
88
88
|
}
|
package/composables/useShared.ts
CHANGED
|
@@ -1,32 +1,40 @@
|
|
|
1
1
|
import { onMounted, ref } from "vue";
|
|
2
|
-
|
|
2
|
+
|
|
3
|
+
import { useTranslations as useTranslationsProvider } from "@dative-gpi/bones-ui";
|
|
4
|
+
|
|
5
|
+
import { useTranslations } from "./services/useTranslations";
|
|
6
|
+
import { useLanguageCode } from "./useLanguageCode";
|
|
7
|
+
import { useTimeZone } from "./useTimeZone";
|
|
3
8
|
|
|
4
9
|
let called = false;
|
|
5
10
|
|
|
6
11
|
const ready = ref(false);
|
|
7
12
|
|
|
8
13
|
export function useShared() {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
called = true;
|
|
14
|
+
if (called) {
|
|
15
|
+
return {
|
|
16
|
+
ready
|
|
17
|
+
};
|
|
18
|
+
}
|
|
16
19
|
|
|
17
|
-
|
|
18
|
-
const { ready: timeZoneReady } = useTimeZone();
|
|
20
|
+
called = true;
|
|
19
21
|
|
|
20
|
-
|
|
22
|
+
const { ready: languageCodeReady, languageCode } = useLanguageCode();
|
|
23
|
+
const { ready: timeZoneReady } = useTimeZone();
|
|
24
|
+
const { getMany, entities } = useTranslations();
|
|
25
|
+
const { set } = useTranslationsProvider();
|
|
21
26
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
27
|
+
onMounted(async () => {
|
|
28
|
+
await languageCodeReady
|
|
29
|
+
await timeZoneReady;
|
|
30
|
+
if (languageCode.value) {
|
|
31
|
+
await getMany(languageCode.value!);
|
|
32
|
+
set(entities.value.map(t => ({ code: t.code, value: t.value })));
|
|
33
|
+
}
|
|
34
|
+
ready.value = true;
|
|
35
|
+
});
|
|
28
36
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
37
|
+
return {
|
|
38
|
+
ready
|
|
39
|
+
};
|
|
32
40
|
}
|
|
@@ -3,9 +3,9 @@ import { ref, watch } from "vue";
|
|
|
3
3
|
import { enUS, enGB, fr, it, es, de, Locale } from "date-fns/locale";
|
|
4
4
|
import { format, subDays } from "date-fns";
|
|
5
5
|
|
|
6
|
+
import { useTranslations as useTranslationsProvider } from "@dative-gpi/bones-ui/composables";
|
|
6
7
|
import { TimeZoneInfos } from "@dative-gpi/foundation-shared-domain/models";
|
|
7
8
|
|
|
8
|
-
import { useTranslationsProvider } from "./useTranslationsProvider";
|
|
9
9
|
import { useLanguageCode } from "./useLanguageCode";
|
|
10
10
|
|
|
11
11
|
const timeZone = ref<TimeZoneInfos | null>({
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
import { GATEWAY_URL } from "./base";
|
|
2
|
+
|
|
3
|
+
export const LOCAL_ACCOUNT_URL = () => `${GATEWAY_URL}/local-accounts`
|
|
4
|
+
|
|
5
|
+
export const INVITATION_URL = (token: string) => `${LOCAL_ACCOUNT_URL}/invitations/${encodeURIComponent(token)}`;
|
|
6
|
+
export const VALIDATION_URL = () => `${LOCAL_ACCOUNT_URL}/validations`;
|
|
7
|
+
|
|
8
|
+
export const LOGIN_LOCAL_ACCOUNT_URL = () => `${LOCAL_ACCOUNT_URL}/login`;
|
|
9
|
+
export const LOCAL_ACCOUNT_PASSWORD_URL = () => `${LOCAL_ACCOUNT_URL}/password`;
|
|
10
|
+
|
|
11
|
+
export const LOGIN_EXTERNAL_URL = () => `${GATEWAY_URL}/external-accounts/login`;
|
|
12
|
+
export const SIGNUP_EXTERNAL_URL = () => `${GATEWAY_URL}/external-accounts`;
|
|
13
|
+
|
|
14
|
+
export const LOGOUT_URL = () => `${GATEWAY_URL}/accounts/logout`;
|
|
15
|
+
export const GLOBAL_LOGOUT_URL = () => `${GATEWAY_URL}/accounts/global-logout`;
|
package/config/urls/index.ts
CHANGED
package/package.json
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@dative-gpi/foundation-shared-services",
|
|
3
|
-
"
|
|
3
|
+
"sideEffects": false,
|
|
4
|
+
"version": "0.0.13",
|
|
4
5
|
"description": "",
|
|
5
6
|
"publishConfig": {
|
|
6
7
|
"access": "public"
|
|
@@ -9,12 +10,12 @@
|
|
|
9
10
|
"author": "",
|
|
10
11
|
"license": "ISC",
|
|
11
12
|
"dependencies": {
|
|
12
|
-
"@dative-gpi/bones-ui": "^0.0.
|
|
13
|
-
"@dative-gpi/foundation-shared-domain": "0.0.
|
|
13
|
+
"@dative-gpi/bones-ui": "^0.0.61",
|
|
14
|
+
"@dative-gpi/foundation-shared-domain": "0.0.13",
|
|
14
15
|
"@microsoft/signalr": "^8.0.0",
|
|
15
16
|
"date-fns": "^3.2.0",
|
|
16
17
|
"vue": "^3.2.0",
|
|
17
18
|
"vue-router": "^4.2.5"
|
|
18
19
|
},
|
|
19
|
-
"gitHead": "
|
|
20
|
+
"gitHead": "c99a5f4be0427449b3b00ef6d467528bae8b1ada"
|
|
20
21
|
}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { useLanguageCode, useTranslations } from "@dative-gpi/foundation-shared-services";
|
|
2
|
-
|
|
3
|
-
let initialized = false;
|
|
4
|
-
|
|
5
|
-
export const useTranslationsProvider = () => {
|
|
6
|
-
const $tr = (code: string, defaultValue: string, ...parameters: string[]): string => {
|
|
7
|
-
let translation = useTranslations().fetched.value.find(t => t.code === code)?.value ?? defaultValue;
|
|
8
|
-
if (translation && parameters.length) {
|
|
9
|
-
for (let p of parameters) {
|
|
10
|
-
translation = translation.replace(`{${parameters.indexOf(p)}}`, p.toString());
|
|
11
|
-
}
|
|
12
|
-
}
|
|
13
|
-
return translation;
|
|
14
|
-
};
|
|
15
|
-
|
|
16
|
-
const init = async () => {
|
|
17
|
-
if (!initialized) {
|
|
18
|
-
initialized = true;
|
|
19
|
-
await useLanguageCode().ready;
|
|
20
|
-
await useTranslations().fetch(useLanguageCode().languageCode.value!);
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
return {
|
|
25
|
-
$tr,
|
|
26
|
-
init
|
|
27
|
-
}
|
|
28
|
-
}
|
package/index.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./composables";
|
package/tools/datesTools.ts
DELETED
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { parse } from "date-fns";
|
|
2
|
-
|
|
3
|
-
const removeArtifacts = (date: string): string => {
|
|
4
|
-
return date.substring(0, 19) + "Z";
|
|
5
|
-
};
|
|
6
|
-
|
|
7
|
-
const isoTimeFormat = (timeZone: boolean = false): string => {
|
|
8
|
-
return `yyyy-MM-dd'T'HH:mm:ss${timeZone ? "X" : ""}`;
|
|
9
|
-
};
|
|
10
|
-
|
|
11
|
-
export const DatesTools = {
|
|
12
|
-
utcToEpoch: (value: string): number => {
|
|
13
|
-
return parse(removeArtifacts(value), isoTimeFormat(true), new Date()).getTime();
|
|
14
|
-
}
|
|
15
|
-
};
|
package/tools/index.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from "./datesTools";
|