@inzombieland/core 1.18.3 → 1.18.5

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/api-client.mjs CHANGED
@@ -1,7 +1,5 @@
1
1
  import bus from "./bus.mjs";
2
- import { useApiActions } from "./composables/use-api-actions.mjs";
3
- import { useUser } from "./composables/use-user.mjs";
4
- import { getVisitor } from "./get-visitor.mjs";
2
+ import { useApiActions, useUser, useVisitor } from "./composables/index.mjs";
5
3
  import { apiHelper, once } from "./helpers/index.mjs";
6
4
  let token = null;
7
5
  export const setUser = (newUser) => {
@@ -93,9 +91,9 @@ const optionsHandler = (options = {}, config) => {
93
91
  visitor.hostname = location.hostname;
94
92
  }
95
93
  const { platform, hostname } = visitor;
96
- const visitorIdentifier = getVisitor();
97
- if (visitorIdentifier) {
98
- const { id, ip, device, appName } = visitorIdentifier;
94
+ const visitorIdentifier = useVisitor();
95
+ if (visitorIdentifier.value) {
96
+ const { id, ip, device, appName } = visitorIdentifier.value;
99
97
  headers.visitor = btoa(`${platform}|:|${hostname}|:|${id}|:|${ip}|:|${device}|:|${appName}`);
100
98
  } else {
101
99
  headers.visitor = btoa(`${platform}|:|${hostname}`);
package/comet-client.mjs CHANGED
@@ -1,7 +1,7 @@
1
1
  import { Centrifuge } from "centrifuge";
2
2
  import { getToken } from "./api-client.mjs";
3
3
  import bus from "./bus.mjs";
4
- import { useApiActions } from "./composables/use-api-actions.mjs";
4
+ import { useApiActions } from "./composables/index.mjs";
5
5
  import { apiHelper } from "./helpers/index.mjs";
6
6
  if (typeof window !== "undefined" && import.meta.env.MODE !== "production") {
7
7
  window.wsPublish = (eventName, data) => {
@@ -0,0 +1,8 @@
1
+ export * from "../helpers/composables";
2
+ export { useActiveSessions } from "./use-active-sessions";
3
+ export { useApiActions } from "./use-api-actions";
4
+ export { useAppLocale } from "./use-app-locale";
5
+ export { useSubscribe } from "./use-subscribe";
6
+ export { useThemeMode } from "./use-theme-mode";
7
+ export { useUser } from "./use-user";
8
+ export { useVisitor } from "./use-visitor";
@@ -0,0 +1,8 @@
1
+ export * from "../helpers/composables.mjs";
2
+ export { useActiveSessions } from "./use-active-sessions.mjs";
3
+ export { useApiActions } from "./use-api-actions.mjs";
4
+ export { useAppLocale } from "./use-app-locale.mjs";
5
+ export { useSubscribe } from "./use-subscribe.mjs";
6
+ export { useThemeMode } from "./use-theme-mode.mjs";
7
+ export { useUser } from "./use-user.mjs";
8
+ export { useVisitor } from "./use-visitor.mjs";
@@ -0,0 +1,12 @@
1
+ import type { Visitor } from "../types";
2
+ export declare function useVisitor(): import("vue").Ref<{
3
+ id?: string | undefined;
4
+ ip?: string | undefined;
5
+ device?: string | undefined;
6
+ appName?: string | undefined;
7
+ } | null | undefined, Visitor | {
8
+ id?: string | undefined;
9
+ ip?: string | undefined;
10
+ device?: string | undefined;
11
+ appName?: string | undefined;
12
+ } | null | undefined>;
@@ -0,0 +1,5 @@
1
+ import { ref } from "vue";
2
+ const visitor = ref(null);
3
+ export function useVisitor() {
4
+ return visitor;
5
+ }
package/get-user.mjs CHANGED
@@ -1,7 +1,6 @@
1
1
  import { useLocalStorage } from "@vueuse/core";
2
2
  import { flush, getToken, setUser } from "./api-client.mjs";
3
- import { useApiActions } from "./composables/use-api-actions.mjs";
4
- import { useUser } from "./composables/use-user.mjs";
3
+ import { useApiActions, useUser } from "./composables/index.mjs";
5
4
  import { createSingletonAsync, once } from "./helpers/index.mjs";
6
5
  async function getUserRequest(fetch, config) {
7
6
  const token = getToken();
package/get-visitor.d.ts CHANGED
@@ -1,4 +1,2 @@
1
- import type { FetchConfig, Visitor } from "./types";
2
- export declare const getVisitorId: () => string | undefined;
3
- export declare const getVisitor: () => Visitor | null;
1
+ import type { FetchConfig } from "./types";
4
2
  export declare const createApiGetVisitorIdentifier: (config: FetchConfig) => () => Promise<void>;
package/get-visitor.mjs CHANGED
@@ -1,18 +1,14 @@
1
1
  import { hashComponents, load } from "@fingerprintjs/fingerprintjs";
2
2
  import { ofetch } from "ofetch";
3
+ import { useVisitor } from "./composables/index.mjs";
3
4
  import { createSingletonAsync, once } from "./helpers/index.mjs";
4
- let visitor = null;
5
- export const getVisitorId = () => {
6
- return visitor?.id;
7
- };
8
- export const getVisitor = () => {
9
- return visitor;
10
- };
11
5
  const setVisitor = (newVisitor) => {
12
- visitor = !visitor ? newVisitor : { ...visitor, ...newVisitor };
6
+ const visitor = useVisitor();
7
+ visitor.value = !visitor.value ? newVisitor : { ...visitor.value, ...newVisitor };
13
8
  };
14
9
  const getVisitorRequest = async (config) => {
15
- if (typeof window === "undefined" || visitor) {
10
+ const visitor = useVisitor();
11
+ if (typeof window === "undefined" || visitor.value) {
16
12
  return;
17
13
  }
18
14
  const fp = await load();
@@ -4,3 +4,7 @@ export declare const apiHelper: {
4
4
  convertToClient: typeof convertToClient;
5
5
  convertToServer: typeof convertToServer;
6
6
  };
7
+ export declare const useApiHelper: () => {
8
+ convertToClient: typeof convertToClient;
9
+ convertToServer: typeof convertToServer;
10
+ };
@@ -97,3 +97,6 @@ function parseData(data) {
97
97
  }
98
98
  }
99
99
  export const apiHelper = { convertToClient, convertToServer };
100
+ export const useApiHelper = () => {
101
+ return apiHelper;
102
+ };
@@ -0,0 +1,5 @@
1
+ export { useApiHelper } from "./api-helper";
2
+ export { useDateHelper } from "./date-helper";
3
+ export { useDevice } from "./device-helper";
4
+ export { usePhoneHelper } from "./phone-helper";
5
+ export { useStringHelper } from "./string-helper";
@@ -0,0 +1,5 @@
1
+ export { useApiHelper } from "./api-helper.mjs";
2
+ export { useDateHelper } from "./date-helper.mjs";
3
+ export { useDevice } from "./device-helper.mjs";
4
+ export { usePhoneHelper } from "./phone-helper.mjs";
5
+ export { useStringHelper } from "./string-helper.mjs";
@@ -13,3 +13,7 @@ export declare const dateHelper: {
13
13
  stringToDate: typeof stringToDate;
14
14
  dateFormat: typeof dateFormat;
15
15
  };
16
+ export declare const useDateHelper: () => {
17
+ stringToDate: typeof stringToDate;
18
+ dateFormat: typeof dateFormat;
19
+ };
@@ -228,3 +228,6 @@ export function dateFormat(date = /* @__PURE__ */ new Date(), format = "default"
228
228
  return parsedDate.trim();
229
229
  }
230
230
  export const dateHelper = { stringToDate, dateFormat };
231
+ export const useDateHelper = () => {
232
+ return dateHelper;
233
+ };
@@ -41,3 +41,4 @@ export type DeviceType = "mobile" | "tablet" | "desktop" | "unknown";
41
41
  export type DeviceOrientation = "landscape" | "portrait" | "unknown";
42
42
  export type DeviceOs = "ios" | "macos" | "iphone" | "ipad" | "ipod" | "android" | "blackberry" | "windows" | "fxos" | "meego" | "television" | "unknown";
43
43
  export declare const deviceHelper: () => Device;
44
+ export declare const useDevice: () => Device;
@@ -13,3 +13,6 @@ export const deviceHelper = () => {
13
13
  androidTabletApp: () => isMobileApp && device.androidTablet()
14
14
  };
15
15
  };
16
+ export const useDevice = () => {
17
+ return deviceHelper();
18
+ };
@@ -1,7 +1,8 @@
1
1
  export { apiHelper } from "./api-helper";
2
2
  export { dateHelper } from "./date-helper";
3
+ export { deviceHelper, type Device } from "./device-helper";
3
4
  export { phoneHelper } from "./phone-helper";
4
5
  export { stringHelper } from "./string-helper";
5
- export { deviceHelper, type Device } from "./device-helper";
6
+ export * from "./composables";
6
7
  export declare function once<T extends (...args: any[]) => any>(fn: T): T;
7
8
  export declare function createSingletonAsync<T, Args extends unknown[]>(fn: (...args: Args) => Promise<T>): (...args: Args) => Promise<T>;
package/helpers/index.mjs CHANGED
@@ -1,8 +1,9 @@
1
1
  export { apiHelper } from "./api-helper.mjs";
2
2
  export { dateHelper } from "./date-helper.mjs";
3
+ export { deviceHelper } from "./device-helper.mjs";
3
4
  export { phoneHelper } from "./phone-helper.mjs";
4
5
  export { stringHelper } from "./string-helper.mjs";
5
- export { deviceHelper } from "./device-helper.mjs";
6
+ export * from "./composables.mjs";
6
7
  export function once(fn) {
7
8
  let executed = false;
8
9
  let result;
@@ -11,3 +11,8 @@ export declare const phoneHelper: {
11
11
  convertToPhone: typeof convertToPhone;
12
12
  maskPhone: typeof maskPhone;
13
13
  };
14
+ export declare const usePhoneHelper: () => {
15
+ getPlainPhoneNumber: typeof getPlainPhoneNumber;
16
+ convertToPhone: typeof convertToPhone;
17
+ maskPhone: typeof maskPhone;
18
+ };
@@ -56,3 +56,6 @@ export function maskPhone(phone = "") {
56
56
  return `+${phone.slice(0, 1)} *****${phone.slice(-4)}`;
57
57
  }
58
58
  export const phoneHelper = { getPlainPhoneNumber, convertToPhone, maskPhone };
59
+ export const usePhoneHelper = () => {
60
+ return phoneHelper;
61
+ };
@@ -2,3 +2,6 @@ export declare function maskEmail(email?: string): string;
2
2
  export declare const stringHelper: {
3
3
  maskEmail: typeof maskEmail;
4
4
  };
5
+ export declare const useStringHelper: () => {
6
+ maskEmail: typeof maskEmail;
7
+ };
@@ -6,3 +6,6 @@ export function maskEmail(email = "") {
6
6
  export const stringHelper = {
7
7
  maskEmail
8
8
  };
9
+ export const useStringHelper = () => {
10
+ return stringHelper;
11
+ };
package/index.d.ts CHANGED
@@ -1,13 +1,8 @@
1
1
  import { type Ref } from "vue";
2
- import type { ActiveSession, Fetch, FetchConfig, User, Visitor } from "./types";
3
- export type { ActiveSession, Fetch, FetchConfig, User, Visitor };
2
+ import type { Fetch, FetchConfig } from "./types";
4
3
  export { default as AppProvider } from "./AppProvider.vue";
5
- export { useUser } from "./composables/use-user";
6
- export { useSubscribe } from "./composables/use-subscribe";
7
- export { useActiveSessions } from "./composables/use-active-sessions";
8
- export { useThemeMode } from "./composables/use-theme-mode";
9
- export { useAppLocale } from "./composables/use-app-locale";
10
- export { getVisitor, getVisitorId } from "./get-visitor";
4
+ export * from "./composables";
5
+ export * from "./types";
11
6
  export declare function initApiFetch($fetch: Fetch, config: FetchConfig): {
12
7
  fetch: Fetch;
13
8
  getUser: () => Promise<import("./types").GetUserResponse>;
@@ -22,7 +17,7 @@ export declare function initApiFetch($fetch: Fetch, config: FetchConfig): {
22
17
  }>;
23
18
  logout: () => Promise<void>;
24
19
  fetchActiveSessions: () => Promise<{
25
- sessions: ActiveSession[];
20
+ sessions: import("./types").ActiveSession[];
26
21
  }>;
27
22
  };
28
23
  };
@@ -36,7 +31,7 @@ export declare const useUserActions: () => Ref<{
36
31
  }>;
37
32
  logout: () => Promise<void>;
38
33
  fetchActiveSessions: () => Promise<{
39
- sessions: ActiveSession[];
34
+ sessions: import("./types").ActiveSession[];
40
35
  }>;
41
36
  }, {
42
37
  signIn: (body: {
@@ -48,6 +43,6 @@ export declare const useUserActions: () => Ref<{
48
43
  }>;
49
44
  logout: () => Promise<void>;
50
45
  fetchActiveSessions: () => Promise<{
51
- sessions: ActiveSession[];
46
+ sessions: import("./types").ActiveSession[];
52
47
  }>;
53
48
  }> | undefined;
package/index.mjs CHANGED
@@ -3,19 +3,15 @@ import { ref } from "vue";
3
3
  import { createApiFetch } from "./api-client.mjs";
4
4
  import bus from "./bus.mjs";
5
5
  import { newCometClient } from "./comet-client.mjs";
6
- import { useApiActions } from "./composables/use-api-actions.mjs";
6
+ import { useApiActions } from "./composables/index.mjs";
7
7
  import { createApiGetUser } from "./get-user.mjs";
8
8
  import { createApiGetVisitorIdentifier } from "./get-visitor.mjs";
9
9
  import { createInitApplication } from "./init-application.mjs";
10
10
  import { createApiRefreshToken } from "./refresh-token.mjs";
11
11
  import { createApiUserActions } from "./user-actions.mjs";
12
12
  export { default as AppProvider } from "./AppProvider.vue";
13
- export { useUser } from "./composables/use-user.mjs";
14
- export { useSubscribe } from "./composables/use-subscribe.mjs";
15
- export { useActiveSessions } from "./composables/use-active-sessions.mjs";
16
- export { useThemeMode } from "./composables/use-theme-mode.mjs";
17
- export { useAppLocale } from "./composables/use-app-locale.mjs";
18
- export { getVisitor, getVisitorId } from "./get-visitor.mjs";
13
+ export * from "./composables/index.mjs";
14
+ export * from "./types.mjs";
19
15
  const apiActions = useApiActions();
20
16
  let userActions;
21
17
  export function initApiFetch($fetch, config) {
@@ -5,11 +5,9 @@ import ruRU from "vant/es/locale/lang/ru-RU";
5
5
  import { watch } from "vue";
6
6
  import { useI18n } from "vue-i18n";
7
7
  import { useRouter } from "vue-router";
8
- import { useActiveSessions } from "./composables/use-active-sessions.mjs";
9
- import { useSubscribe } from "./composables/use-subscribe.mjs";
10
- import { useUser } from "./composables/use-user.mjs";
8
+ import { useActiveSessions, useSubscribe, useUser } from "./composables/index.mjs";
11
9
  import { once } from "./helpers/index.mjs";
12
- import { getVisitorId, useAppLocale, useThemeMode, useUserActions } from "./index.mjs";
10
+ import { useAppLocale, useThemeMode, useUserActions, useVisitor } from "./index.mjs";
13
11
  function initApplication() {
14
12
  const router = useRouter();
15
13
  const user = useUser();
@@ -73,7 +71,8 @@ function initApplication() {
73
71
  return activeSession;
74
72
  });
75
73
  }
76
- if (session?.status === "SignedOut" && session?.visitorId === getVisitorId()) {
74
+ const visitor = useVisitor();
75
+ if (session?.status === "SignedOut" && session?.visitorId === visitor.value?.id) {
77
76
  const userActions = useUserActions();
78
77
  const data = await userActions?.value.fetchActiveSessions();
79
78
  const isCurrentSession = data?.sessions.some((s) => s.isCurrentSession && s.id === session?.sessionId);
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@inzombieland/core",
3
- "version": "1.18.3",
3
+ "version": "1.18.5",
4
4
  "type": "module",
5
5
  "license": "ISC",
6
6
  "main": "./index.mjs",
package/user-actions.mjs CHANGED
@@ -1,5 +1,5 @@
1
1
  import { flush, setToken } from "./api-client.mjs";
2
- import { useUser } from "./composables/use-user.mjs";
2
+ import { useUser } from "./composables/index.mjs";
3
3
  import { once } from "./helpers/index.mjs";
4
4
  export const createApiUserActions = once(
5
5
  (fetch, config, getUser) => {