m2m-components 3.3.0 → 3.3.1-alpha-aef9a40.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/MenuBaseElement.d.mts +24 -0
- package/MenuBaseElement.d.ts +12 -8
- package/MenuBaseElement.js +177 -102
- package/MenuBaseElement.js.map +1 -1
- package/MenuBaseElement.mjs +9 -0
- package/MenuBaseElement.mjs.map +1 -0
- package/{cjs/storage/lib/hub.js → chunk-2X6HV5XJ.mjs} +21 -40
- package/chunk-2X6HV5XJ.mjs.map +1 -0
- package/chunk-3YQYBFME.mjs +102 -0
- package/chunk-3YQYBFME.mjs.map +1 -0
- package/chunk-5FHEMJGG.mjs +97 -0
- package/chunk-5FHEMJGG.mjs.map +1 -0
- package/{cjs/domains.js → chunk-B7STDXYN.mjs} +8 -8
- package/chunk-B7STDXYN.mjs.map +1 -0
- package/chunk-BFPL6AIR.mjs +74 -0
- package/chunk-BFPL6AIR.mjs.map +1 -0
- package/chunk-CB56CZRA.mjs +8491 -0
- package/chunk-CB56CZRA.mjs.map +1 -0
- package/chunk-CEBJL6ZD.mjs +22 -0
- package/chunk-CEBJL6ZD.mjs.map +1 -0
- package/{cjs/endpoints/matsuri-forms.v1.js → chunk-DYNNGZMQ.mjs} +94 -185
- package/chunk-DYNNGZMQ.mjs.map +1 -0
- package/chunk-FDRD4YS4.mjs +34 -0
- package/chunk-FDRD4YS4.mjs.map +1 -0
- package/{cjs/endpoints/m2m-users.v1.js → chunk-GMPQV5TL.mjs} +136 -267
- package/chunk-GMPQV5TL.mjs.map +1 -0
- package/chunk-H66U7VZB.mjs +9 -0
- package/chunk-H66U7VZB.mjs.map +1 -0
- package/chunk-IH72EYIB.mjs +9 -0
- package/chunk-IH72EYIB.mjs.map +1 -0
- package/chunk-IOZIVEOV.mjs +2 -0
- package/chunk-IOZIVEOV.mjs.map +1 -0
- package/{cjs/endpoints/m2m-notifications.v1.js → chunk-ISOF65DB.mjs} +42 -63
- package/chunk-ISOF65DB.mjs.map +1 -0
- package/chunk-JUBOAWNR.mjs +61 -0
- package/chunk-JUBOAWNR.mjs.map +1 -0
- package/chunk-LDSJ6KYP.mjs +28 -0
- package/chunk-LDSJ6KYP.mjs.map +1 -0
- package/chunk-LYVJL4T5.mjs +78 -0
- package/chunk-LYVJL4T5.mjs.map +1 -0
- package/chunk-M4ZBTA6A.mjs +19 -0
- package/chunk-M4ZBTA6A.mjs.map +1 -0
- package/chunk-NO6ZGO5P.mjs +17 -0
- package/chunk-NO6ZGO5P.mjs.map +1 -0
- package/chunk-UCJSCAN5.mjs +45 -0
- package/chunk-UCJSCAN5.mjs.map +1 -0
- package/chunk-UM6FAKR4.mjs +152 -0
- package/chunk-UM6FAKR4.mjs.map +1 -0
- package/{cjs/storage/lib/client.js → chunk-UOPEIK22.mjs} +45 -50
- package/chunk-UOPEIK22.mjs.map +1 -0
- package/chunk-V4ROE7DI.mjs +54 -0
- package/chunk-V4ROE7DI.mjs.map +1 -0
- package/chunk-VNCVFELM.mjs +83 -0
- package/chunk-VNCVFELM.mjs.map +1 -0
- package/chunk-YUHXVW6K.mjs +2 -0
- package/chunk-YUHXVW6K.mjs.map +1 -0
- package/domains.d.mts +11 -0
- package/domains.d.ts +3 -2
- package/domains.js +31 -1
- package/domains.js.map +1 -1
- package/domains.mjs +9 -0
- package/domains.mjs.map +1 -0
- package/endpoints/m2m-notifications.d.mts +7 -0
- package/endpoints/m2m-notifications.d.ts +5 -3
- package/endpoints/m2m-notifications.js +129 -4
- package/endpoints/m2m-notifications.js.map +1 -1
- package/endpoints/m2m-notifications.mjs +12 -0
- package/endpoints/m2m-notifications.mjs.map +1 -0
- package/endpoints/m2m-notifications.v1.d.mts +1 -0
- package/endpoints/m2m-notifications.v1.d.ts +1 -51
- package/endpoints/m2m-notifications.v1.js +95 -102
- package/endpoints/m2m-notifications.v1.js.map +1 -1
- package/endpoints/m2m-notifications.v1.mjs +23 -0
- package/endpoints/m2m-notifications.v1.mjs.map +1 -0
- package/endpoints/m2m-users.d.mts +7 -0
- package/endpoints/m2m-users.d.ts +5 -3
- package/endpoints/m2m-users.js +407 -4
- package/endpoints/m2m-users.js.map +1 -1
- package/endpoints/m2m-users.mjs +12 -0
- package/endpoints/m2m-users.mjs.map +1 -0
- package/endpoints/m2m-users.v1.d.mts +1 -0
- package/endpoints/m2m-users.v1.d.ts +1 -221
- package/endpoints/m2m-users.v1.js +327 -475
- package/endpoints/m2m-users.v1.js.map +1 -1
- package/endpoints/m2m-users.v1.mjs +69 -0
- package/endpoints/m2m-users.v1.mjs.map +1 -0
- package/endpoints/matsuri-forms.d.mts +7 -0
- package/endpoints/matsuri-forms.d.ts +5 -3
- package/endpoints/matsuri-forms.js +291 -4
- package/endpoints/matsuri-forms.js.map +1 -1
- package/endpoints/matsuri-forms.mjs +12 -0
- package/endpoints/matsuri-forms.mjs.map +1 -0
- package/endpoints/matsuri-forms.v1.d.mts +1 -0
- package/endpoints/matsuri-forms.v1.d.ts +1 -177
- package/endpoints/matsuri-forms.v1.js +231 -332
- package/endpoints/matsuri-forms.v1.js.map +1 -1
- package/endpoints/matsuri-forms.v1.mjs +49 -0
- package/endpoints/matsuri-forms.v1.mjs.map +1 -0
- package/feedback/MultipleTextQuestion.d.mts +6 -0
- package/feedback/MultipleTextQuestion.d.ts +6 -3
- package/feedback/MultipleTextQuestion.js +43 -10
- package/feedback/MultipleTextQuestion.js.map +1 -1
- package/feedback/MultipleTextQuestion.mjs +9 -0
- package/feedback/MultipleTextQuestion.mjs.map +1 -0
- package/feedback/SelectQuestion.d.mts +6 -0
- package/feedback/SelectQuestion.d.ts +6 -3
- package/feedback/SelectQuestion.js +55 -18
- package/feedback/SelectQuestion.js.map +1 -1
- package/feedback/SelectQuestion.mjs +9 -0
- package/feedback/SelectQuestion.mjs.map +1 -0
- package/feedback/getRandomId.d.mts +6 -0
- package/feedback/getRandomId.d.ts +3 -2
- package/feedback/getRandomId.js +31 -4
- package/feedback/getRandomId.js.map +1 -1
- package/feedback/getRandomId.mjs +9 -0
- package/feedback/getRandomId.mjs.map +1 -0
- package/feedback/index.d.mts +15 -0
- package/feedback/index.d.ts +7 -5
- package/feedback/index.js +8558 -166
- package/feedback/index.js.map +1 -1
- package/feedback/index.mjs +13 -0
- package/feedback/index.mjs.map +1 -0
- package/global.d.d.mts +4 -0
- package/global.d.d.ts +4 -0
- package/global.d.js +20 -0
- package/global.d.js.map +1 -0
- package/global.d.mjs +2 -0
- package/global.d.mjs.map +1 -0
- package/index.d.mts +6 -0
- package/index.d.ts +6 -9
- package/index.js +421 -8
- package/index.js.map +1 -1
- package/index.mjs +23 -0
- package/index.mjs.map +1 -0
- package/initM2mComponents.d.mts +7 -0
- package/initM2mComponents.d.ts +3 -6
- package/initM2mComponents.js +242 -3
- package/initM2mComponents.js.map +1 -1
- package/initM2mComponents.mjs +11 -0
- package/initM2mComponents.mjs.map +1 -0
- package/m2m-apps-menu.d.mts +16 -0
- package/m2m-apps-menu.d.ts +10 -5
- package/m2m-apps-menu.js +265 -43
- package/m2m-apps-menu.js.map +1 -1
- package/m2m-apps-menu.mjs +11 -0
- package/m2m-apps-menu.mjs.map +1 -0
- package/m2m-notifications.v1-0186835d.d.ts +73 -0
- package/m2m-user-menu.d.mts +17 -0
- package/m2m-user-menu.d.ts +10 -5
- package/m2m-user-menu.js +327 -53
- package/m2m-user-menu.js.map +1 -1
- package/m2m-user-menu.mjs +13 -0
- package/m2m-user-menu.mjs.map +1 -0
- package/m2m-users.v1-c78c72cf.d.ts +289 -0
- package/matsuri-forms.v1-0ffee104.d.ts +225 -0
- package/notification/NotificationProvider.d.mts +18 -0
- package/notification/NotificationProvider.d.ts +10 -7
- package/notification/NotificationProvider.js +185 -51
- package/notification/NotificationProvider.js.map +1 -1
- package/notification/NotificationProvider.mjs +15 -0
- package/notification/NotificationProvider.mjs.map +1 -0
- package/notification/ServiceIdProvider.d.mts +10 -0
- package/notification/ServiceIdProvider.d.ts +8 -5
- package/notification/ServiceIdProvider.js +56 -18
- package/notification/ServiceIdProvider.js.map +1 -1
- package/notification/ServiceIdProvider.mjs +11 -0
- package/notification/ServiceIdProvider.mjs.map +1 -0
- package/notification/api.d.mts +7 -0
- package/notification/api.d.ts +7 -5
- package/notification/api.js +157 -59
- package/notification/api.js.map +1 -1
- package/notification/api.mjs +14 -0
- package/notification/api.mjs.map +1 -0
- package/notification/domain.d.mts +24 -0
- package/notification/domain.d.ts +6 -5
- package/notification/domain.js +19 -1
- package/notification/domain.js.map +1 -1
- package/notification/domain.mjs +3 -0
- package/notification/domain.mjs.map +1 -0
- package/notification/index.d.mts +6 -0
- package/notification/index.d.ts +6 -5
- package/notification/index.js +271 -4
- package/notification/index.js.map +1 -1
- package/notification/index.mjs +30 -0
- package/notification/index.mjs.map +1 -0
- package/package.json +43 -103
- package/releases/m2m-releases-link.d.mts +11 -0
- package/releases/m2m-releases-link.d.ts +9 -5
- package/releases/m2m-releases-link.js +97 -54
- package/releases/m2m-releases-link.js.map +1 -1
- package/releases/m2m-releases-link.mjs +69 -0
- package/releases/m2m-releases-link.mjs.map +1 -0
- package/releases/t.d.mts +3 -0
- package/releases/t.d.ts +3 -2
- package/releases/t.js +31 -1
- package/releases/t.js.map +1 -1
- package/releases/t.mjs +9 -0
- package/releases/t.mjs.map +1 -0
- package/storage/client.d.mts +20 -0
- package/storage/client.d.ts +8 -6
- package/storage/client.js +260 -85
- package/storage/client.js.map +1 -1
- package/storage/client.mjs +14 -0
- package/storage/client.mjs.map +1 -0
- package/storage/hub.d.mts +9 -0
- package/storage/hub.d.ts +6 -4
- package/storage/hub.js +120 -7
- package/storage/hub.js.map +1 -1
- package/storage/hub.mjs +10 -0
- package/storage/hub.mjs.map +1 -0
- package/storage/lib/client.d.mts +27 -0
- package/storage/lib/client.d.ts +4 -5
- package/storage/lib/client.js +76 -57
- package/storage/lib/client.js.map +1 -1
- package/storage/lib/client.mjs +9 -0
- package/storage/lib/client.mjs.map +1 -0
- package/storage/lib/hub.d.mts +15 -0
- package/storage/lib/hub.d.ts +4 -4
- package/storage/lib/hub.js +57 -46
- package/storage/lib/hub.js.map +1 -1
- package/storage/lib/hub.mjs +9 -0
- package/storage/lib/hub.mjs.map +1 -0
- package/storage/useM2mAuth.d.mts +25 -0
- package/storage/useM2mAuth.d.ts +10 -8
- package/storage/useM2mAuth.js +184 -74
- package/storage/useM2mAuth.js.map +1 -1
- package/storage/useM2mAuth.mjs +14 -0
- package/storage/useM2mAuth.mjs.map +1 -0
- package/storage/useM2mAuth.test.d.mts +2 -0
- package/storage/useM2mAuth.test.d.ts +2 -0
- package/storage/useM2mAuth.test.js +60906 -0
- package/storage/useM2mAuth.test.js.map +1 -0
- package/storage/useM2mAuth.test.mjs +60682 -0
- package/storage/useM2mAuth.test.mjs.map +1 -0
- package/cjs/MenuBaseElement.js +0 -207
- package/cjs/MenuBaseElement.js.map +0 -1
- package/cjs/domains.js.map +0 -1
- package/cjs/endpoints/m2m-notifications.js +0 -15
- package/cjs/endpoints/m2m-notifications.js.map +0 -1
- package/cjs/endpoints/m2m-notifications.v1.js.map +0 -1
- package/cjs/endpoints/m2m-users.js +0 -15
- package/cjs/endpoints/m2m-users.js.map +0 -1
- package/cjs/endpoints/m2m-users.v1.js.map +0 -1
- package/cjs/endpoints/matsuri-forms.js +0 -15
- package/cjs/endpoints/matsuri-forms.js.map +0 -1
- package/cjs/endpoints/matsuri-forms.v1.js.map +0 -1
- package/cjs/feedback/MultipleTextQuestion.js +0 -19
- package/cjs/feedback/MultipleTextQuestion.js.map +0 -1
- package/cjs/feedback/SelectQuestion.js +0 -27
- package/cjs/feedback/SelectQuestion.js.map +0 -1
- package/cjs/feedback/getRandomId.js +0 -12
- package/cjs/feedback/getRandomId.js.map +0 -1
- package/cjs/feedback/index.js +0 -185
- package/cjs/feedback/index.js.map +0 -1
- package/cjs/index.js +0 -11
- package/cjs/index.js.map +0 -1
- package/cjs/initM2mComponents.js +0 -17
- package/cjs/initM2mComponents.js.map +0 -1
- package/cjs/m2m-apps-menu.js +0 -95
- package/cjs/m2m-apps-menu.js.map +0 -1
- package/cjs/m2m-user-menu.js +0 -91
- package/cjs/m2m-user-menu.js.map +0 -1
- package/cjs/notification/NotificationProvider.js +0 -84
- package/cjs/notification/NotificationProvider.js.map +0 -1
- package/cjs/notification/ServiceIdProvider.js +0 -33
- package/cjs/notification/ServiceIdProvider.js.map +0 -1
- package/cjs/notification/api.js +0 -55
- package/cjs/notification/api.js.map +0 -1
- package/cjs/notification/domain.js +0 -6
- package/cjs/notification/domain.js.map +0 -1
- package/cjs/notification/index.js +0 -50
- package/cjs/notification/index.js.map +0 -1
- package/cjs/releases/m2m-releases-link.js +0 -99
- package/cjs/releases/m2m-releases-link.js.map +0 -1
- package/cjs/releases/t.js +0 -8
- package/cjs/releases/t.js.map +0 -1
- package/cjs/storage/client.js +0 -89
- package/cjs/storage/client.js.map +0 -1
- package/cjs/storage/hub.js +0 -19
- package/cjs/storage/hub.js.map +0 -1
- package/cjs/storage/lib/client.js.map +0 -1
- package/cjs/storage/lib/hub.js.map +0 -1
- package/cjs/storage/useM2mAuth.js +0 -97
- package/cjs/storage/useM2mAuth.js.map +0 -1
- package/endpoints/m2m-notifications.d.ts.map +0 -1
- package/endpoints/m2m-notifications.v1.d.ts.map +0 -1
- package/endpoints/m2m-users.d.ts.map +0 -1
- package/endpoints/m2m-users.v1.d.ts.map +0 -1
- package/endpoints/matsuri-forms.d.ts.map +0 -1
- package/endpoints/matsuri-forms.v1.d.ts.map +0 -1
- package/feedback/MultipleTextQuestion.d.ts.map +0 -1
- package/feedback/SelectQuestion.d.ts.map +0 -1
- package/feedback/getRandomId.d.ts.map +0 -1
- package/feedback/index.d.ts.map +0 -1
- package/notification/NotificationProvider.d.ts.map +0 -1
- package/notification/ServiceIdProvider.d.ts.map +0 -1
- package/notification/api.d.ts.map +0 -1
- package/notification/domain.d.ts.map +0 -1
- package/notification/index.d.ts.map +0 -1
- package/releases/m2m-releases-link.d.ts.map +0 -1
- package/releases/t.d.ts.map +0 -1
- package/storage/client.d.ts.map +0 -1
- package/storage/hub.d.ts.map +0 -1
- package/storage/lib/client.d.ts.map +0 -1
- package/storage/lib/hub.d.ts.map +0 -1
- package/storage/useM2mAuth.d.ts.map +0 -1
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import {
|
|
3
|
+
login
|
|
4
|
+
} from "./chunk-GMPQV5TL.mjs";
|
|
5
|
+
import {
|
|
6
|
+
m2mAuthTokenApi
|
|
7
|
+
} from "./chunk-5FHEMJGG.mjs";
|
|
8
|
+
|
|
9
|
+
// src/storage/useM2mAuth.tsx
|
|
10
|
+
import { fetcher } from "matsuri-hooks";
|
|
11
|
+
import {
|
|
12
|
+
createContext,
|
|
13
|
+
useCallback,
|
|
14
|
+
useContext,
|
|
15
|
+
useEffect,
|
|
16
|
+
useMemo,
|
|
17
|
+
useState
|
|
18
|
+
} from "react";
|
|
19
|
+
import { jsx } from "react/jsx-runtime";
|
|
20
|
+
var AuthenticationContext = createContext(
|
|
21
|
+
void 0
|
|
22
|
+
);
|
|
23
|
+
var checkJwtExpiration = (jwt) => {
|
|
24
|
+
const splitted = jwt.split(".");
|
|
25
|
+
if (splitted.length !== 3)
|
|
26
|
+
return false;
|
|
27
|
+
const [, payload] = splitted;
|
|
28
|
+
const parsedPayload = JSON.parse(atob(payload));
|
|
29
|
+
return /* @__PURE__ */ new Date() < new Date(parsedPayload.exp * 1e3);
|
|
30
|
+
};
|
|
31
|
+
var M2mAuthenticationProvider = ({
|
|
32
|
+
children
|
|
33
|
+
}) => {
|
|
34
|
+
var _a;
|
|
35
|
+
const [token, setToken] = useState((_a = m2mAuthTokenApi.getCache()) != null ? _a : "");
|
|
36
|
+
const authenticated = useMemo(() => !!token, [token]);
|
|
37
|
+
const tryCheckAuth = useCallback(async () => {
|
|
38
|
+
const authToken = await m2mAuthTokenApi.get();
|
|
39
|
+
if (!(authToken && checkJwtExpiration(authToken))) {
|
|
40
|
+
void m2mAuthTokenApi.clear();
|
|
41
|
+
setToken("");
|
|
42
|
+
} else {
|
|
43
|
+
void m2mAuthTokenApi.set(authToken);
|
|
44
|
+
setToken(authToken);
|
|
45
|
+
}
|
|
46
|
+
}, []);
|
|
47
|
+
useEffect(() => {
|
|
48
|
+
void tryCheckAuth();
|
|
49
|
+
}, [tryCheckAuth]);
|
|
50
|
+
const login2 = useCallback(async (input) => {
|
|
51
|
+
const { data, error } = await fetcher(login(), {
|
|
52
|
+
method: "POST",
|
|
53
|
+
body: JSON.stringify(input)
|
|
54
|
+
});
|
|
55
|
+
if (data) {
|
|
56
|
+
const authToken = data.accessToken;
|
|
57
|
+
void m2mAuthTokenApi.set(authToken);
|
|
58
|
+
setToken(authToken);
|
|
59
|
+
}
|
|
60
|
+
return {
|
|
61
|
+
error,
|
|
62
|
+
token: data ? data.accessToken : void 0
|
|
63
|
+
};
|
|
64
|
+
}, []);
|
|
65
|
+
const logout = useCallback(() => {
|
|
66
|
+
void m2mAuthTokenApi.clear();
|
|
67
|
+
window.location.reload();
|
|
68
|
+
}, []);
|
|
69
|
+
const updateToken = useCallback(async (token2) => {
|
|
70
|
+
if (checkJwtExpiration(token2)) {
|
|
71
|
+
return {
|
|
72
|
+
error: new Error("M2MAuthToken is expired")
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
await m2mAuthTokenApi.set(token2);
|
|
76
|
+
setToken(token2);
|
|
77
|
+
return { error: void 0 };
|
|
78
|
+
}, []);
|
|
79
|
+
const state = useMemo(() => {
|
|
80
|
+
return {
|
|
81
|
+
login: login2,
|
|
82
|
+
logout,
|
|
83
|
+
token,
|
|
84
|
+
authenticated,
|
|
85
|
+
updateToken
|
|
86
|
+
};
|
|
87
|
+
}, [authenticated, login2, logout, token, updateToken]);
|
|
88
|
+
return /* @__PURE__ */ jsx(AuthenticationContext.Provider, { value: state, children });
|
|
89
|
+
};
|
|
90
|
+
var useAuth = () => {
|
|
91
|
+
const ctx = useContext(AuthenticationContext);
|
|
92
|
+
if (!ctx) {
|
|
93
|
+
throw new Error("AuthenticationProvider is not found");
|
|
94
|
+
}
|
|
95
|
+
return ctx;
|
|
96
|
+
};
|
|
97
|
+
|
|
98
|
+
export {
|
|
99
|
+
M2mAuthenticationProvider,
|
|
100
|
+
useAuth
|
|
101
|
+
};
|
|
102
|
+
//# sourceMappingURL=chunk-3YQYBFME.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/storage/useM2mAuth.tsx"],"sourcesContent":["import { fetcher } from \"matsuri-hooks\";\nimport { m2mAuthTokenApi } from \"./client\";\nimport { login as m2mUsers_v1_login } from \"../endpoints/m2m-users.v1\";\nimport React, {\n createContext,\n useCallback,\n useContext,\n useEffect,\n useMemo,\n useState,\n} from \"react\";\n\ninterface LoginInput {\n email: string;\n password: string;\n}\n\ninterface AuthenticationState {\n token: string;\n authenticated: boolean;\n login: (input: LoginInput) => Promise<{ token?: string; error?: Error }>;\n logout: () => void;\n updateToken: (token: string) => Promise<{ error?: Error }>;\n}\n\nconst AuthenticationContext = createContext<AuthenticationState | undefined>(\n undefined\n);\n\nconst checkJwtExpiration = (jwt: string): boolean => {\n const splitted = jwt.split(\".\");\n if (splitted.length !== 3) return false;\n\n const [, payload] = splitted;\n const parsedPayload = JSON.parse(atob(payload)) as {\n exp: number;\n };\n return new Date() < new Date(parsedPayload.exp * 1000);\n};\n\nexport const M2mAuthenticationProvider = ({\n children,\n}: {\n children: React.ReactNode;\n}) => {\n const [token, setToken] = useState(m2mAuthTokenApi.getCache() ?? \"\");\n\n const authenticated = useMemo(() => !!token, [token]);\n\n const tryCheckAuth = useCallback(async () => {\n const authToken = await m2mAuthTokenApi.get();\n if (!(authToken && checkJwtExpiration(authToken))) {\n void m2mAuthTokenApi.clear();\n setToken(\"\");\n } else {\n void m2mAuthTokenApi.set(authToken);\n setToken(authToken);\n }\n }, []);\n\n useEffect(() => {\n void tryCheckAuth();\n }, [tryCheckAuth]);\n\n const login = useCallback(async (input: LoginInput) => {\n const { data, error } = await fetcher<{\n accessToken: string;\n }>(m2mUsers_v1_login(), {\n method: \"POST\",\n body: JSON.stringify(input),\n });\n if (data) {\n const authToken = data.accessToken;\n\n void m2mAuthTokenApi.set(authToken);\n setToken(authToken);\n }\n return {\n error,\n token: data ? data.accessToken : undefined,\n };\n }, []);\n\n const logout = useCallback(() => {\n void m2mAuthTokenApi.clear();\n window.location.reload();\n }, []);\n\n const updateToken = useCallback(async (token: string) => {\n if (checkJwtExpiration(token)) {\n return {\n error: new Error(\"M2MAuthToken is expired\"),\n };\n }\n await m2mAuthTokenApi.set(token);\n setToken(token);\n return { error: undefined };\n }, []);\n\n const state = useMemo(() => {\n return {\n login,\n logout,\n token,\n authenticated,\n updateToken,\n };\n }, [authenticated, login, logout, token, updateToken]);\n return (\n <AuthenticationContext.Provider value={state}>\n {children}\n </AuthenticationContext.Provider>\n );\n};\n\nexport const useAuth = () => {\n const ctx = useContext(AuthenticationContext);\n if (!ctx) {\n throw new Error(\"AuthenticationProvider is not found\");\n }\n return ctx;\n};\n"],"mappings":";;;;;;;;;AAAA,SAAS,eAAe;AAGxB;AAAA,EACE;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,OACK;AAmGH;AApFJ,IAAM,wBAAwB;AAAA,EAC5B;AACF;AAEA,IAAM,qBAAqB,CAAC,QAAyB;AACnD,QAAM,WAAW,IAAI,MAAM,GAAG;AAC9B,MAAI,SAAS,WAAW;AAAG,WAAO;AAElC,QAAM,CAAC,EAAE,OAAO,IAAI;AACpB,QAAM,gBAAgB,KAAK,MAAM,KAAK,OAAO,CAAC;AAG9C,SAAO,oBAAI,KAAK,IAAI,IAAI,KAAK,cAAc,MAAM,GAAI;AACvD;AAEO,IAAM,4BAA4B,CAAC;AAAA,EACxC;AACF,MAEM;AA5CN;AA6CE,QAAM,CAAC,OAAO,QAAQ,IAAI,UAAS,qBAAgB,SAAS,MAAzB,YAA8B,EAAE;AAEnE,QAAM,gBAAgB,QAAQ,MAAM,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;AAEpD,QAAM,eAAe,YAAY,YAAY;AAC3C,UAAM,YAAY,MAAM,gBAAgB,IAAI;AAC5C,QAAI,EAAE,aAAa,mBAAmB,SAAS,IAAI;AACjD,WAAK,gBAAgB,MAAM;AAC3B,eAAS,EAAE;AAAA,IACb,OAAO;AACL,WAAK,gBAAgB,IAAI,SAAS;AAClC,eAAS,SAAS;AAAA,IACpB;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,YAAU,MAAM;AACd,SAAK,aAAa;AAAA,EACpB,GAAG,CAAC,YAAY,CAAC;AAEjB,QAAMA,SAAQ,YAAY,OAAO,UAAsB;AACrD,UAAM,EAAE,MAAM,MAAM,IAAI,MAAM,QAE3B,MAAkB,GAAG;AAAA,MACtB,QAAQ;AAAA,MACR,MAAM,KAAK,UAAU,KAAK;AAAA,IAC5B,CAAC;AACD,QAAI,MAAM;AACR,YAAM,YAAY,KAAK;AAEvB,WAAK,gBAAgB,IAAI,SAAS;AAClC,eAAS,SAAS;AAAA,IACpB;AACA,WAAO;AAAA,MACL;AAAA,MACA,OAAO,OAAO,KAAK,cAAc;AAAA,IACnC;AAAA,EACF,GAAG,CAAC,CAAC;AAEL,QAAM,SAAS,YAAY,MAAM;AAC/B,SAAK,gBAAgB,MAAM;AAC3B,WAAO,SAAS,OAAO;AAAA,EACzB,GAAG,CAAC,CAAC;AAEL,QAAM,cAAc,YAAY,OAAOC,WAAkB;AACvD,QAAI,mBAAmBA,MAAK,GAAG;AAC7B,aAAO;AAAA,QACL,OAAO,IAAI,MAAM,yBAAyB;AAAA,MAC5C;AAAA,IACF;AACA,UAAM,gBAAgB,IAAIA,MAAK;AAC/B,aAASA,MAAK;AACd,WAAO,EAAE,OAAO,OAAU;AAAA,EAC5B,GAAG,CAAC,CAAC;AAEL,QAAM,QAAQ,QAAQ,MAAM;AAC1B,WAAO;AAAA,MACL,OAAAD;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,MACA;AAAA,IACF;AAAA,EACF,GAAG,CAAC,eAAeA,QAAO,QAAQ,OAAO,WAAW,CAAC;AACrD,SACE,oBAAC,sBAAsB,UAAtB,EAA+B,OAAO,OACpC,UACH;AAEJ;AAEO,IAAM,UAAU,MAAM;AAC3B,QAAM,MAAM,WAAW,qBAAqB;AAC5C,MAAI,CAAC,KAAK;AACR,UAAM,IAAI,MAAM,qCAAqC;AAAA,EACvD;AACA,SAAO;AACT;","names":["login","token"]}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import {
|
|
3
|
+
StorageClient
|
|
4
|
+
} from "./chunk-UOPEIK22.mjs";
|
|
5
|
+
|
|
6
|
+
// src/storage/client.ts
|
|
7
|
+
var M2mStorageClient = class extends StorageClient {
|
|
8
|
+
};
|
|
9
|
+
var context = {};
|
|
10
|
+
var getStorage = async (timeout = 5e3) => {
|
|
11
|
+
const storage = await new Promise((resolve, reject) => {
|
|
12
|
+
const rejectTimer = window.setTimeout(function() {
|
|
13
|
+
reject(
|
|
14
|
+
new Error(
|
|
15
|
+
"Timeout: M2mStorageClient could not connect. Please call m2mStorageClient.init() before using m2mStorageClient."
|
|
16
|
+
)
|
|
17
|
+
);
|
|
18
|
+
}, timeout);
|
|
19
|
+
const storage2 = context.storage;
|
|
20
|
+
if (storage2) {
|
|
21
|
+
window.clearTimeout(rejectTimer);
|
|
22
|
+
resolve(storage2);
|
|
23
|
+
}
|
|
24
|
+
const timer = window.setInterval(() => {
|
|
25
|
+
const storage3 = context.storage;
|
|
26
|
+
if (storage3) {
|
|
27
|
+
window.clearTimeout(rejectTimer);
|
|
28
|
+
window.clearInterval(timer);
|
|
29
|
+
resolve(storage3);
|
|
30
|
+
}
|
|
31
|
+
}, 200);
|
|
32
|
+
});
|
|
33
|
+
await storage.onConnect();
|
|
34
|
+
return storage;
|
|
35
|
+
};
|
|
36
|
+
var M2M_STORAGE_HUB_URL = "https://hub.m2msystems.cloud/";
|
|
37
|
+
var M2M_STORAGE_HUB_URL_DEV = "https://m2m-components-storage-hub-dev.netlify.app/";
|
|
38
|
+
var initStorageClient = (options) => {
|
|
39
|
+
if (context.storage) {
|
|
40
|
+
throw new Error(
|
|
41
|
+
"M2mStorageClient already initialized. Do not call m2mStorageClient.init multiple times."
|
|
42
|
+
);
|
|
43
|
+
}
|
|
44
|
+
const storage = new M2mStorageClient(
|
|
45
|
+
(options == null ? void 0 : options.env) === "production" ? M2M_STORAGE_HUB_URL : M2M_STORAGE_HUB_URL_DEV
|
|
46
|
+
);
|
|
47
|
+
context.storage = storage;
|
|
48
|
+
};
|
|
49
|
+
var m2mStorageClient = {
|
|
50
|
+
init: initStorageClient,
|
|
51
|
+
getStorage
|
|
52
|
+
};
|
|
53
|
+
var M2M_AUTH_TOKEN_KEY = "M2M_APP_AUTH_TOKEN";
|
|
54
|
+
var getAuthTokenCache = () => {
|
|
55
|
+
return window.localStorage.getItem(M2M_AUTH_TOKEN_KEY);
|
|
56
|
+
};
|
|
57
|
+
var getAuthToken = async () => {
|
|
58
|
+
try {
|
|
59
|
+
const storage = await getStorage();
|
|
60
|
+
const autuToken = await storage.get(M2M_AUTH_TOKEN_KEY);
|
|
61
|
+
return autuToken || getAuthTokenCache();
|
|
62
|
+
} catch (error) {
|
|
63
|
+
console.warn(error);
|
|
64
|
+
return getAuthTokenCache();
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
var setAuthToken = async (token) => {
|
|
68
|
+
window.localStorage.setItem(M2M_AUTH_TOKEN_KEY, token);
|
|
69
|
+
try {
|
|
70
|
+
const storage = await getStorage();
|
|
71
|
+
await storage.set(M2M_AUTH_TOKEN_KEY, token);
|
|
72
|
+
} catch (error) {
|
|
73
|
+
console.warn(error);
|
|
74
|
+
}
|
|
75
|
+
};
|
|
76
|
+
var clearAuthToken = async () => {
|
|
77
|
+
window.localStorage.removeItem(M2M_AUTH_TOKEN_KEY);
|
|
78
|
+
try {
|
|
79
|
+
const storage = await getStorage();
|
|
80
|
+
await storage.del(M2M_AUTH_TOKEN_KEY);
|
|
81
|
+
} catch (error) {
|
|
82
|
+
console.warn(error);
|
|
83
|
+
}
|
|
84
|
+
};
|
|
85
|
+
var m2mAuthTokenApi = {
|
|
86
|
+
get: getAuthToken,
|
|
87
|
+
getCache: getAuthTokenCache,
|
|
88
|
+
set: setAuthToken,
|
|
89
|
+
clear: clearAuthToken
|
|
90
|
+
};
|
|
91
|
+
|
|
92
|
+
export {
|
|
93
|
+
m2mStorageClient,
|
|
94
|
+
M2M_AUTH_TOKEN_KEY,
|
|
95
|
+
m2mAuthTokenApi
|
|
96
|
+
};
|
|
97
|
+
//# sourceMappingURL=chunk-5FHEMJGG.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/storage/client.ts"],"sourcesContent":["import { StorageClient } from \"./lib/client\";\n\nclass M2mStorageClient extends StorageClient {}\n\nexport type { M2mStorageClient };\n\nconst context: {\n storage?: M2mStorageClient;\n} = {};\n\n/**\n * Get the connected storage client.\n * @param timeout\n * @default 5000\n */\nconst getStorage = async (timeout = 5000) => {\n const storage = await new Promise<M2mStorageClient>((resolve, reject) => {\n const rejectTimer = window.setTimeout(function () {\n reject(\n new Error(\n \"Timeout: M2mStorageClient could not connect. Please call m2mStorageClient.init() before using m2mStorageClient.\"\n )\n );\n }, timeout);\n\n const storage = context.storage;\n if (storage) {\n window.clearTimeout(rejectTimer);\n resolve(storage);\n }\n\n const timer = window.setInterval(() => {\n const storage = context.storage;\n if (storage) {\n window.clearTimeout(rejectTimer);\n window.clearInterval(timer);\n resolve(storage);\n }\n }, 200);\n });\n\n await storage.onConnect();\n\n return storage;\n};\n\nconst M2M_STORAGE_HUB_URL = \"https://hub.m2msystems.cloud/\";\n\nconst M2M_STORAGE_HUB_URL_DEV =\n \"https://m2m-components-storage-hub-dev.netlify.app/\";\n\nconst initStorageClient = (options?: {\n env?: \"development\" | \"production\";\n}) => {\n if (context.storage) {\n throw new Error(\n \"M2mStorageClient already initialized. Do not call m2mStorageClient.init multiple times.\"\n );\n }\n const storage = new M2mStorageClient(\n options?.env === \"production\"\n ? M2M_STORAGE_HUB_URL\n : M2M_STORAGE_HUB_URL_DEV\n );\n context.storage = storage;\n};\n\nexport const m2mStorageClient = {\n init: initStorageClient,\n getStorage: getStorage,\n};\n\nexport const M2M_AUTH_TOKEN_KEY = \"M2M_APP_AUTH_TOKEN\";\n\nconst getAuthTokenCache = () => {\n return window.localStorage.getItem(M2M_AUTH_TOKEN_KEY);\n};\n\nconst getAuthToken = async () => {\n try {\n const storage = await getStorage();\n const autuToken = (await storage.get(M2M_AUTH_TOKEN_KEY)) as string;\n return autuToken || getAuthTokenCache();\n } catch (error) {\n console.warn(error);\n return getAuthTokenCache();\n }\n};\n\nconst setAuthToken = async (token: string) => {\n window.localStorage.setItem(M2M_AUTH_TOKEN_KEY, token);\n try {\n const storage = await getStorage();\n await storage.set(M2M_AUTH_TOKEN_KEY, token);\n } catch (error) {\n console.warn(error);\n }\n};\n\nconst clearAuthToken = async () => {\n window.localStorage.removeItem(M2M_AUTH_TOKEN_KEY);\n try {\n const storage = await getStorage();\n await storage.del(M2M_AUTH_TOKEN_KEY);\n } catch (error) {\n console.warn(error);\n }\n};\n\nexport const m2mAuthTokenApi = {\n get: getAuthToken,\n getCache: getAuthTokenCache,\n set: setAuthToken,\n clear: clearAuthToken,\n};\n"],"mappings":";;;;;;AAEA,IAAM,mBAAN,cAA+B,cAAc;AAAC;AAI9C,IAAM,UAEF,CAAC;AAOL,IAAM,aAAa,OAAO,UAAU,QAAS;AAC3C,QAAM,UAAU,MAAM,IAAI,QAA0B,CAAC,SAAS,WAAW;AACvE,UAAM,cAAc,OAAO,WAAW,WAAY;AAChD;AAAA,QACE,IAAI;AAAA,UACF;AAAA,QACF;AAAA,MACF;AAAA,IACF,GAAG,OAAO;AAEV,UAAMA,WAAU,QAAQ;AACxB,QAAIA,UAAS;AACX,aAAO,aAAa,WAAW;AAC/B,cAAQA,QAAO;AAAA,IACjB;AAEA,UAAM,QAAQ,OAAO,YAAY,MAAM;AACrC,YAAMA,WAAU,QAAQ;AACxB,UAAIA,UAAS;AACX,eAAO,aAAa,WAAW;AAC/B,eAAO,cAAc,KAAK;AAC1B,gBAAQA,QAAO;AAAA,MACjB;AAAA,IACF,GAAG,GAAG;AAAA,EACR,CAAC;AAED,QAAM,QAAQ,UAAU;AAExB,SAAO;AACT;AAEA,IAAM,sBAAsB;AAE5B,IAAM,0BACJ;AAEF,IAAM,oBAAoB,CAAC,YAErB;AACJ,MAAI,QAAQ,SAAS;AACnB,UAAM,IAAI;AAAA,MACR;AAAA,IACF;AAAA,EACF;AACA,QAAM,UAAU,IAAI;AAAA,KAClB,mCAAS,SAAQ,eACb,sBACA;AAAA,EACN;AACA,UAAQ,UAAU;AACpB;AAEO,IAAM,mBAAmB;AAAA,EAC9B,MAAM;AAAA,EACN;AACF;AAEO,IAAM,qBAAqB;AAElC,IAAM,oBAAoB,MAAM;AAC9B,SAAO,OAAO,aAAa,QAAQ,kBAAkB;AACvD;AAEA,IAAM,eAAe,YAAY;AAC/B,MAAI;AACF,UAAM,UAAU,MAAM,WAAW;AACjC,UAAM,YAAa,MAAM,QAAQ,IAAI,kBAAkB;AACvD,WAAO,aAAa,kBAAkB;AAAA,EACxC,SAAS,OAAO;AACd,YAAQ,KAAK,KAAK;AAClB,WAAO,kBAAkB;AAAA,EAC3B;AACF;AAEA,IAAM,eAAe,OAAO,UAAkB;AAC5C,SAAO,aAAa,QAAQ,oBAAoB,KAAK;AACrD,MAAI;AACF,UAAM,UAAU,MAAM,WAAW;AACjC,UAAM,QAAQ,IAAI,oBAAoB,KAAK;AAAA,EAC7C,SAAS,OAAO;AACd,YAAQ,KAAK,KAAK;AAAA,EACpB;AACF;AAEA,IAAM,iBAAiB,YAAY;AACjC,SAAO,aAAa,WAAW,kBAAkB;AACjD,MAAI;AACF,UAAM,UAAU,MAAM,WAAW;AACjC,UAAM,QAAQ,IAAI,kBAAkB;AAAA,EACtC,SAAS,OAAO;AACd,YAAQ,KAAK,KAAK;AAAA,EACpB;AACF;AAEO,IAAM,kBAAkB;AAAA,EAC7B,KAAK;AAAA,EACL,UAAU;AAAA,EACV,KAAK;AAAA,EACL,OAAO;AACT;","names":["storage"]}
|
|
@@ -1,10 +1,7 @@
|
|
|
1
|
-
|
|
1
|
+
'use client'
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
});
|
|
6
|
-
exports.getDomains = void 0;
|
|
7
|
-
const getDomains = () => {
|
|
3
|
+
// src/domains.ts
|
|
4
|
+
var getDomains = () => {
|
|
8
5
|
return globalThis.M2M_COMPONENTS_ENV === "production" ? {
|
|
9
6
|
core: "https://core.m2msystems.cloud",
|
|
10
7
|
sumyca: "https://manage.sumyca.com",
|
|
@@ -23,5 +20,8 @@ const getDomains = () => {
|
|
|
23
20
|
systems: "https://dev.m2msystems.cloud"
|
|
24
21
|
};
|
|
25
22
|
};
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
|
|
24
|
+
export {
|
|
25
|
+
getDomains
|
|
26
|
+
};
|
|
27
|
+
//# sourceMappingURL=chunk-B7STDXYN.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/domains.ts"],"sourcesContent":["export const getDomains = () => {\n return globalThis.M2M_COMPONENTS_ENV === \"production\"\n ? {\n core: \"https://core.m2msystems.cloud\",\n sumyca: \"https://manage.sumyca.com\",\n cleaning: \"https://manager-cleaning.m2msystems.cloud\",\n users: \"https://manage-users.m2msystems.cloud\",\n inspection: \"https://inspection.m2msystems.cloud\",\n checkin: \"https://manage.checkin.m2msystems.cloud\",\n systems: \"https://m2msystems.cloud/\",\n }\n : {\n core: \"https://dev--m2m-core-manager-front.netlify.app\",\n sumyca: \"https://dev--sumyca-manager-front.netlify.app\",\n cleaning: \"https://dev--m2m-cleaning-manager-front.netlify.app\",\n users: \"https://dev--manage-users.netlify.app\",\n inspection: \"https://dev--m2m-inspection-manager-front.netlify.app\",\n checkin: \"https://manage.dev.checkin.m2msystems.cloud\",\n systems: \"https://dev.m2msystems.cloud\",\n };\n};\n"],"mappings":";;;AAAO,IAAM,aAAa,MAAM;AAC9B,SAAO,WAAW,uBAAuB,eACrC;AAAA,IACE,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,OAAO;AAAA,IACP,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,SAAS;AAAA,EACX,IACA;AAAA,IACE,MAAM;AAAA,IACN,QAAQ;AAAA,IACR,UAAU;AAAA,IACV,OAAO;AAAA,IACP,YAAY;AAAA,IACZ,SAAS;AAAA,IACT,SAAS;AAAA,EACX;AACN;","names":[]}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
'use client'
|
|
2
|
+
import {
|
|
3
|
+
m2mAuthTokenApi
|
|
4
|
+
} from "./chunk-5FHEMJGG.mjs";
|
|
5
|
+
import {
|
|
6
|
+
MenuBaseElement
|
|
7
|
+
} from "./chunk-UM6FAKR4.mjs";
|
|
8
|
+
import {
|
|
9
|
+
getDomains
|
|
10
|
+
} from "./chunk-B7STDXYN.mjs";
|
|
11
|
+
import {
|
|
12
|
+
__decorateClass
|
|
13
|
+
} from "./chunk-JUBOAWNR.mjs";
|
|
14
|
+
|
|
15
|
+
// src/m2m-user-menu.ts
|
|
16
|
+
import { customElement } from "lit/decorators.js";
|
|
17
|
+
import { html } from "lit";
|
|
18
|
+
import { ref } from "lit/directives/ref.js";
|
|
19
|
+
var M2MUserMenu = class extends MenuBaseElement {
|
|
20
|
+
constructor() {
|
|
21
|
+
super(...arguments);
|
|
22
|
+
this.handleLogout = () => {
|
|
23
|
+
void m2mAuthTokenApi.clear();
|
|
24
|
+
window.location.reload();
|
|
25
|
+
};
|
|
26
|
+
}
|
|
27
|
+
render() {
|
|
28
|
+
var _a;
|
|
29
|
+
const domains = getDomains();
|
|
30
|
+
const additionalItems = (_a = this.additinalItems) == null ? void 0 : _a.map((item) => {
|
|
31
|
+
return html`
|
|
32
|
+
<li>
|
|
33
|
+
<a href="${item.href}">${item.label}</a>
|
|
34
|
+
</li>
|
|
35
|
+
`;
|
|
36
|
+
});
|
|
37
|
+
return html`<nav>
|
|
38
|
+
<button
|
|
39
|
+
type="button"
|
|
40
|
+
class="navigation-drawer-controll-button navigation-drawer-controll-button--icon"
|
|
41
|
+
aria-controls="m2m-user-menu__navigation-drawer"
|
|
42
|
+
aria-expanded=${this.expanded}
|
|
43
|
+
@click=${this.handleToggleDrawer}
|
|
44
|
+
>
|
|
45
|
+
<svg viewBox="0 0 24 24" width="38px" height="38px" fill="#000000">
|
|
46
|
+
<path d="M0 0h24v24H0z" fill="none" />
|
|
47
|
+
<path
|
|
48
|
+
d="M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z"
|
|
49
|
+
/>
|
|
50
|
+
</svg>
|
|
51
|
+
</button>
|
|
52
|
+
<ul
|
|
53
|
+
${ref(this.listRef)}
|
|
54
|
+
id="m2m-user-menu__navigation-drawer"
|
|
55
|
+
aria-hidden=${!this.expanded}
|
|
56
|
+
class="navigation-drawer"
|
|
57
|
+
>
|
|
58
|
+
<li><a href="${domains.users}">アカウント情報</a></li>
|
|
59
|
+
<li @click=${this.handleLogout}>
|
|
60
|
+
<button type="button">ログアウト</button>
|
|
61
|
+
</li>
|
|
62
|
+
${additionalItems}
|
|
63
|
+
</ul>
|
|
64
|
+
</nav>`;
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
M2MUserMenu = __decorateClass([
|
|
68
|
+
customElement("m2m-user-menu")
|
|
69
|
+
], M2MUserMenu);
|
|
70
|
+
|
|
71
|
+
export {
|
|
72
|
+
M2MUserMenu
|
|
73
|
+
};
|
|
74
|
+
//# sourceMappingURL=chunk-BFPL6AIR.mjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"sources":["../src/m2m-user-menu.ts"],"sourcesContent":["import { MenuBaseElement, MenuBaseElementProps } from \"./MenuBaseElement\";\nimport { customElement } from \"lit/decorators.js\";\nimport { getDomains } from \"./domains\";\nimport { html } from \"lit\";\nimport { m2mAuthTokenApi } from \"./storage/client\";\nimport { ref } from \"lit/directives/ref.js\";\n\nexport type M2MUserMenuProps = MenuBaseElementProps;\n\n@customElement(\"m2m-user-menu\")\nexport class M2MUserMenu extends MenuBaseElement {\n handleLogout = () => {\n void m2mAuthTokenApi.clear();\n window.location.reload();\n };\n\n render() {\n const domains = getDomains();\n const additionalItems = this.additinalItems?.map((item) => {\n return html`\n <li>\n <a href=\"${item.href}\">${item.label}</a>\n </li>\n `;\n });\n return html`<nav>\n <button\n type=\"button\"\n class=\"navigation-drawer-controll-button navigation-drawer-controll-button--icon\"\n aria-controls=\"m2m-user-menu__navigation-drawer\"\n aria-expanded=${this.expanded}\n @click=${this.handleToggleDrawer}\n >\n <svg viewBox=\"0 0 24 24\" width=\"38px\" height=\"38px\" fill=\"#000000\">\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path\n d=\"M12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 3c1.66 0 3 1.34 3 3s-1.34 3-3 3-3-1.34-3-3 1.34-3 3-3zm0 14.2c-2.5 0-4.71-1.28-6-3.22.03-1.99 4-3.08 6-3.08 1.99 0 5.97 1.09 6 3.08-1.29 1.94-3.5 3.22-6 3.22z\"\n />\n </svg>\n </button>\n <ul\n ${ref(this.listRef)}\n id=\"m2m-user-menu__navigation-drawer\"\n aria-hidden=${!this.expanded}\n class=\"navigation-drawer\"\n >\n <li><a href=\"${domains.users}\">アカウント情報</a></li>\n <li @click=${this.handleLogout}>\n <button type=\"button\">ログアウト</button>\n </li>\n ${additionalItems}\n </ul>\n </nav>`;\n }\n}\n\ndeclare global {\n interface HTMLElementTagNameMap {\n \"m2m-user-menu\": M2MUserMenu;\n }\n}\n"],"mappings":";;;;;;;;;;;;;;;AACA,SAAS,qBAAqB;AAE9B,SAAS,YAAY;AAErB,SAAS,WAAW;AAKb,IAAM,cAAN,cAA0B,gBAAgB;AAAA,EAA1C;AAAA;AACL,wBAAe,MAAM;AACnB,WAAK,gBAAgB,MAAM;AAC3B,aAAO,SAAS,OAAO;AAAA,IACzB;AAAA;AAAA,EAEA,SAAS;AAhBX;AAiBI,UAAM,UAAU,WAAW;AAC3B,UAAM,mBAAkB,UAAK,mBAAL,mBAAqB,IAAI,CAAC,SAAS;AACzD,aAAO;AAAA;AAAA,qBAEQ,KAAK,IAAI,KAAK,KAAK,KAAK;AAAA;AAAA;AAAA,IAGzC;AACA,WAAO;AAAA;AAAA;AAAA;AAAA;AAAA,wBAKa,KAAK,QAAQ;AAAA,iBACpB,KAAK,kBAAkB;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAU9B,IAAI,KAAK,OAAO,CAAC;AAAA;AAAA,sBAEL,CAAC,KAAK,QAAQ;AAAA;AAAA;AAAA,uBAGb,QAAQ,KAAK;AAAA,qBACf,KAAK,YAAY;AAAA;AAAA;AAAA,UAG5B,eAAe;AAAA;AAAA;AAAA,EAGvB;AACF;AA5Ca,cAAN;AAAA,EADN,cAAc,eAAe;AAAA,GACjB;","names":[]}
|