@lokalise/harmony 1.29.0 → 1.29.2
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/dist/harmony12.cjs +3 -2
- package/dist/harmony12.cjs.map +1 -1
- package/dist/harmony12.mjs +3 -2
- package/dist/harmony12.mjs.map +1 -1
- package/dist/harmony15.cjs +1 -1
- package/dist/harmony15.mjs +1 -1
- package/dist/harmony22.cjs +1 -1
- package/dist/harmony22.mjs +1 -1
- package/dist/harmony23.cjs +1 -1
- package/dist/harmony23.mjs +1 -1
- package/dist/harmony61.cjs +2 -2
- package/dist/harmony61.cjs.map +1 -1
- package/dist/harmony61.mjs +2 -2
- package/dist/harmony61.mjs.map +1 -1
- package/dist/harmony66.cjs +1 -1
- package/dist/harmony66.mjs +1 -1
- package/dist/harmony94.cjs +99 -18
- package/dist/harmony94.cjs.map +1 -1
- package/dist/harmony94.mjs +82 -18
- package/dist/harmony94.mjs.map +1 -1
- package/dist/harmony95.cjs +18 -14
- package/dist/harmony95.cjs.map +1 -1
- package/dist/harmony95.mjs +18 -14
- package/dist/harmony95.mjs.map +1 -1
- package/dist/harmony96.cjs +11 -96
- package/dist/harmony96.cjs.map +1 -1
- package/dist/harmony96.mjs +11 -79
- package/dist/harmony96.mjs.map +1 -1
- package/dist/types/src/features/publicApi/hooks/useListTeamsQuery.d.ts +1 -1
- package/dist/types/src/features/publicApi/hooks/useRetrieveTeamQuery.d.ts +1 -1
- package/dist/types/src/features/publicApi/team.d.ts +10 -10
- package/dist/types/src/features/publicApi/types/teamTypes.d.ts +10 -10
- package/package.json +1 -1
package/dist/harmony12.cjs
CHANGED
@@ -3,7 +3,6 @@ Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
3
|
const createHeaderBuilderMiddleware = require("./harmony17.cjs");
|
4
4
|
const jwtTokenPayload = require("./harmony15.cjs");
|
5
5
|
const UnauthorizedError = require("./harmony14.cjs");
|
6
|
-
const dateFns = require("date-fns");
|
7
6
|
function JwtAuthHeaderBuilderMiddleware(props) {
|
8
7
|
return createHeaderBuilderMiddleware.createHeaderBuilderMiddleware(async (builder) => {
|
9
8
|
var _a, _b;
|
@@ -12,7 +11,9 @@ function JwtAuthHeaderBuilderMiddleware(props) {
|
|
12
11
|
throw new UnauthorizedError.UnauthorizedError();
|
13
12
|
}
|
14
13
|
const { exp } = jwtTokenPayload.parseJwtTokenPayload(token.accessToken) ?? { exp: 0 };
|
15
|
-
|
14
|
+
const tokenExpirationInMilliseconds = exp * 1e3;
|
15
|
+
const tokenExpirationSafetyMargin = 5 * 60 * 1e3;
|
16
|
+
if (Date.now() < tokenExpirationInMilliseconds - tokenExpirationSafetyMargin) {
|
16
17
|
return builder.add("authorization", `Bearer ${token.accessToken}`);
|
17
18
|
}
|
18
19
|
const newToken = await props.refreshToken(token);
|
package/dist/harmony12.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony12.cjs","sources":["../src/features/auth/core/middleware/jwtAuthHeaderBuilderMiddleware.ts"],"sourcesContent":["import { createHeaderBuilderMiddleware } from '@features/auth/core/headers/createHeaderBuilderMiddleware'\nimport { parseJwtTokenPayload } from '@features/auth/core/utils/jwtTokenPayload'\nimport { UnauthorizedError } from '@features/auth/errors/UnauthorizedError'\nimport type { JwtToken } from '@features/publicApi/types/userTokenTypes'\
|
1
|
+
{"version":3,"file":"harmony12.cjs","sources":["../src/features/auth/core/middleware/jwtAuthHeaderBuilderMiddleware.ts"],"sourcesContent":["import { createHeaderBuilderMiddleware } from '@features/auth/core/headers/createHeaderBuilderMiddleware'\nimport { parseJwtTokenPayload } from '@features/auth/core/utils/jwtTokenPayload'\nimport { UnauthorizedError } from '@features/auth/errors/UnauthorizedError'\nimport type { JwtToken } from '@features/publicApi/types/userTokenTypes'\n\nexport type JwtAuthHeaderBuilderMiddlewareProps = {\n\trefreshToken: (current: JwtToken) => Promise<JwtToken | null>\n\tgetCurrentToken: () => JwtToken | null\n\tgenerateNewToken?: () => Promise<JwtToken | null>\n\tonNewTokenIssued?: (token: JwtToken) => void\n}\n\nexport function JwtAuthHeaderBuilderMiddleware(props: JwtAuthHeaderBuilderMiddlewareProps) {\n\treturn createHeaderBuilderMiddleware(async (builder) => {\n\t\tconst token = props.getCurrentToken() ?? (await props.generateNewToken?.())\n\n\t\tif (!token) {\n\t\t\tthrow new UnauthorizedError()\n\t\t}\n\n\t\t// Check if the token is expired or will expire in less than 5 minutes\n\t\tconst { exp } = parseJwtTokenPayload(token.accessToken) ?? { exp: 0 }\n\t\tconst tokenExpirationInMilliseconds = exp * 1000\n\t\tconst tokenExpirationSafetyMargin = 5 * 60 * 1000 // 5 minutes in milliseconds\n\t\tif (Date.now() < tokenExpirationInMilliseconds - tokenExpirationSafetyMargin) {\n\t\t\treturn builder.add('authorization', `Bearer ${token.accessToken}`)\n\t\t}\n\n\t\tconst newToken = await props.refreshToken(token)\n\n\t\tif (!newToken) {\n\t\t\tthrow new UnauthorizedError()\n\t\t}\n\n\t\tprops.onNewTokenIssued?.(newToken)\n\n\t\treturn builder.add('authorization', `Bearer ${newToken.accessToken}`)\n\t})\n}\n"],"names":["createHeaderBuilderMiddleware","UnauthorizedError","parseJwtTokenPayload"],"mappings":";;;;;AAYO,SAAS,+BAA+B,OAA4C;AACnF,SAAAA,8BAAAA,8BAA8B,OAAO,YAAY;;AACvD,UAAM,QAAQ,MAAM,gBAAsB,KAAA,QAAM,WAAM,qBAAN;AAEhD,QAAI,CAAC,OAAO;AACX,YAAM,IAAIC,kBAAAA,kBAAkB;AAAA,IAAA;AAIvB,UAAA,EAAE,IAAQ,IAAAC,qCAAqB,MAAM,WAAW,KAAK,EAAE,KAAK,EAAE;AACpE,UAAM,gCAAgC,MAAM;AACtC,UAAA,8BAA8B,IAAI,KAAK;AAC7C,QAAI,KAAK,QAAQ,gCAAgC,6BAA6B;AAC7E,aAAO,QAAQ,IAAI,iBAAiB,UAAU,MAAM,WAAW,EAAE;AAAA,IAAA;AAGlE,UAAM,WAAW,MAAM,MAAM,aAAa,KAAK;AAE/C,QAAI,CAAC,UAAU;AACd,YAAM,IAAID,kBAAAA,kBAAkB;AAAA,IAAA;AAG7B,gBAAM,qBAAN,+BAAyB;AAEzB,WAAO,QAAQ,IAAI,iBAAiB,UAAU,SAAS,WAAW,EAAE;AAAA,EAAA,CACpE;AACF;;"}
|
package/dist/harmony12.mjs
CHANGED
@@ -1,7 +1,6 @@
|
|
1
1
|
import { createHeaderBuilderMiddleware } from "./harmony17.mjs";
|
2
2
|
import { parseJwtTokenPayload } from "./harmony15.mjs";
|
3
3
|
import { UnauthorizedError } from "./harmony14.mjs";
|
4
|
-
import { isThisSecond } from "date-fns";
|
5
4
|
function JwtAuthHeaderBuilderMiddleware(props) {
|
6
5
|
return createHeaderBuilderMiddleware(async (builder) => {
|
7
6
|
var _a, _b;
|
@@ -10,7 +9,9 @@ function JwtAuthHeaderBuilderMiddleware(props) {
|
|
10
9
|
throw new UnauthorizedError();
|
11
10
|
}
|
12
11
|
const { exp } = parseJwtTokenPayload(token.accessToken) ?? { exp: 0 };
|
13
|
-
|
12
|
+
const tokenExpirationInMilliseconds = exp * 1e3;
|
13
|
+
const tokenExpirationSafetyMargin = 5 * 60 * 1e3;
|
14
|
+
if (Date.now() < tokenExpirationInMilliseconds - tokenExpirationSafetyMargin) {
|
14
15
|
return builder.add("authorization", `Bearer ${token.accessToken}`);
|
15
16
|
}
|
16
17
|
const newToken = await props.refreshToken(token);
|
package/dist/harmony12.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony12.mjs","sources":["../src/features/auth/core/middleware/jwtAuthHeaderBuilderMiddleware.ts"],"sourcesContent":["import { createHeaderBuilderMiddleware } from '@features/auth/core/headers/createHeaderBuilderMiddleware'\nimport { parseJwtTokenPayload } from '@features/auth/core/utils/jwtTokenPayload'\nimport { UnauthorizedError } from '@features/auth/errors/UnauthorizedError'\nimport type { JwtToken } from '@features/publicApi/types/userTokenTypes'\
|
1
|
+
{"version":3,"file":"harmony12.mjs","sources":["../src/features/auth/core/middleware/jwtAuthHeaderBuilderMiddleware.ts"],"sourcesContent":["import { createHeaderBuilderMiddleware } from '@features/auth/core/headers/createHeaderBuilderMiddleware'\nimport { parseJwtTokenPayload } from '@features/auth/core/utils/jwtTokenPayload'\nimport { UnauthorizedError } from '@features/auth/errors/UnauthorizedError'\nimport type { JwtToken } from '@features/publicApi/types/userTokenTypes'\n\nexport type JwtAuthHeaderBuilderMiddlewareProps = {\n\trefreshToken: (current: JwtToken) => Promise<JwtToken | null>\n\tgetCurrentToken: () => JwtToken | null\n\tgenerateNewToken?: () => Promise<JwtToken | null>\n\tonNewTokenIssued?: (token: JwtToken) => void\n}\n\nexport function JwtAuthHeaderBuilderMiddleware(props: JwtAuthHeaderBuilderMiddlewareProps) {\n\treturn createHeaderBuilderMiddleware(async (builder) => {\n\t\tconst token = props.getCurrentToken() ?? (await props.generateNewToken?.())\n\n\t\tif (!token) {\n\t\t\tthrow new UnauthorizedError()\n\t\t}\n\n\t\t// Check if the token is expired or will expire in less than 5 minutes\n\t\tconst { exp } = parseJwtTokenPayload(token.accessToken) ?? { exp: 0 }\n\t\tconst tokenExpirationInMilliseconds = exp * 1000\n\t\tconst tokenExpirationSafetyMargin = 5 * 60 * 1000 // 5 minutes in milliseconds\n\t\tif (Date.now() < tokenExpirationInMilliseconds - tokenExpirationSafetyMargin) {\n\t\t\treturn builder.add('authorization', `Bearer ${token.accessToken}`)\n\t\t}\n\n\t\tconst newToken = await props.refreshToken(token)\n\n\t\tif (!newToken) {\n\t\t\tthrow new UnauthorizedError()\n\t\t}\n\n\t\tprops.onNewTokenIssued?.(newToken)\n\n\t\treturn builder.add('authorization', `Bearer ${newToken.accessToken}`)\n\t})\n}\n"],"names":[],"mappings":";;;AAYO,SAAS,+BAA+B,OAA4C;AACnF,SAAA,8BAA8B,OAAO,YAAY;;AACvD,UAAM,QAAQ,MAAM,gBAAsB,KAAA,QAAM,WAAM,qBAAN;AAEhD,QAAI,CAAC,OAAO;AACX,YAAM,IAAI,kBAAkB;AAAA,IAAA;AAIvB,UAAA,EAAE,IAAQ,IAAA,qBAAqB,MAAM,WAAW,KAAK,EAAE,KAAK,EAAE;AACpE,UAAM,gCAAgC,MAAM;AACtC,UAAA,8BAA8B,IAAI,KAAK;AAC7C,QAAI,KAAK,QAAQ,gCAAgC,6BAA6B;AAC7E,aAAO,QAAQ,IAAI,iBAAiB,UAAU,MAAM,WAAW,EAAE;AAAA,IAAA;AAGlE,UAAM,WAAW,MAAM,MAAM,aAAa,KAAK;AAE/C,QAAI,CAAC,UAAU;AACd,YAAM,IAAI,kBAAkB;AAAA,IAAA;AAG7B,gBAAM,qBAAN,+BAAyB;AAEzB,WAAO,QAAQ,IAAI,iBAAiB,UAAU,SAAS,WAAW,EAAE;AAAA,EAAA,CACpE;AACF;"}
|
package/dist/harmony15.cjs
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
-
const jwtTokenPayload = require("./
|
3
|
+
const jwtTokenPayload = require("./harmony95.cjs");
|
4
4
|
function parseJwtTokenPayload(token) {
|
5
5
|
try {
|
6
6
|
const payload = token.split(".")[1];
|
package/dist/harmony15.mjs
CHANGED
package/dist/harmony22.cjs
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
3
|
const useGetUserTokenQuery = require("./harmony42.cjs");
|
4
4
|
const React = require("react");
|
5
|
-
const NewJwtIssuedEvent = require("./
|
5
|
+
const NewJwtIssuedEvent = require("./harmony96.cjs");
|
6
6
|
const cookieTokenUtils = require("./harmony16.cjs");
|
7
7
|
function useGetPromotedClassicSessionJwtQuery(wretchClient, headers, teamId) {
|
8
8
|
const csrf = cookieTokenUtils.getCsrfTokenFromCookie();
|
package/dist/harmony22.mjs
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import { useGetUserTokenQuery, getUserTokenKey } from "./harmony42.mjs";
|
2
2
|
import { useRef, useEffect } from "react";
|
3
|
-
import { NewJwtIssuedEvent } from "./
|
3
|
+
import { NewJwtIssuedEvent } from "./harmony96.mjs";
|
4
4
|
import { getCsrfTokenFromCookie } from "./harmony16.mjs";
|
5
5
|
function useGetPromotedClassicSessionJwtQuery(wretchClient, headers, teamId) {
|
6
6
|
const csrf = getCsrfTokenFromCookie();
|
package/dist/harmony23.cjs
CHANGED
@@ -2,7 +2,7 @@
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
3
|
const React = require("react");
|
4
4
|
const jwtTokenPayload = require("./harmony15.cjs");
|
5
|
-
const NewJwtIssuedEvent = require("./
|
5
|
+
const NewJwtIssuedEvent = require("./harmony96.cjs");
|
6
6
|
const cookieTokenUtils = require("./harmony16.cjs");
|
7
7
|
function useAuthenticatedSessionPayload() {
|
8
8
|
const [payload, setPayload] = React.useState();
|
package/dist/harmony23.mjs
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
import { useState, useEffect } from "react";
|
2
2
|
import { parseJwtTokenPayload } from "./harmony15.mjs";
|
3
|
-
import { NewJwtIssuedEvent } from "./
|
3
|
+
import { NewJwtIssuedEvent } from "./harmony96.mjs";
|
4
4
|
import { getJwtTokenFromCookie } from "./harmony16.mjs";
|
5
5
|
function useAuthenticatedSessionPayload() {
|
6
6
|
const [payload, setPayload] = useState();
|
package/dist/harmony61.cjs
CHANGED
@@ -31,7 +31,7 @@ const LIST_TEAMS_RESPONSE_SCHEMA = zod.z.object({
|
|
31
31
|
uuid: zod.z.string().uuid().optional(),
|
32
32
|
name: zod.z.string(),
|
33
33
|
plan: zod.z.string(),
|
34
|
-
logo_url: zod.z.string(),
|
34
|
+
logo_url: zod.z.string().nullable(),
|
35
35
|
role: zod.z.string(),
|
36
36
|
created_at: EXTENDED_DATE_TIME_SCHEMA,
|
37
37
|
created_at_timestamp: zod.z.number(),
|
@@ -63,7 +63,7 @@ const RETRIEVE_TEAM_RESPONSE_SCHEMA = zod.z.object({
|
|
63
63
|
plan_name: zod.z.string(),
|
64
64
|
created_at: EXTENDED_DATE_TIME_SCHEMA,
|
65
65
|
created_at_timestamp: zod.z.number(),
|
66
|
-
logo_url: zod.z.string(),
|
66
|
+
logo_url: zod.z.string().nullable(),
|
67
67
|
role: zod.z.string(),
|
68
68
|
quota_usage: TEAM_QUOTA_USAGE_SCHEMA,
|
69
69
|
quota_allowed: TEAM_QUOTA_ALLOWED_SCHEMA,
|
package/dist/harmony61.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony61.cjs","sources":["../src/features/publicApi/types/teamTypes.ts"],"sourcesContent":["import { PAGINATION_QUERY_PARAMS_SCHEMA } from '@features/publicApi/types/paginationTypes'\nimport { BASE_API_ENDPOINT_HEADER_SCHEMA } from '@features/publicApi/types/sharedTypes'\nimport { z } from 'zod'\n\n// Shared schema\nexport const TEAM_API_BASE_HEADERS_SCHEMA = BASE_API_ENDPOINT_HEADER_SCHEMA\n\nexport type TeamApiBaseHeaders = z.infer<typeof TEAM_API_BASE_HEADERS_SCHEMA>\n\n/**\n * TODO - created_at is using custom format like 2024-10-03 09:45:52 (Etc/UTC)\n * instead of ISO 8601 which is expected by ZOD and we need a custom datetime schema\n */\nconst EXTENDED_DATE_TIME_SCHEMA = z.union([\n\tz.string().refine((val) => /^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2} \\(.*\\)$/.test(val), {\n\t\tmessage: 'Invalid datetime format',\n\t}),\n\tz.string().datetime({ offset: true }),\n\tz.string().datetime(),\n])\n\n// There are too many differences between teams list and retrieving team\n// It is better to keep schemas separately\n\n// List teams\nexport const TEAMS_QUOTA_METRICS = [\n\t'users',\n\t'keys',\n\t'projects',\n\t'mau',\n\t'trafficBytes',\n\t'ai_words',\n] as const\n\nexport const TEAMS_QUOTA_METRICS_SCHEMA = z.enum(TEAMS_QUOTA_METRICS)\nexport type TeamsQuotaMetrics = z.infer<typeof TEAMS_QUOTA_METRICS_SCHEMA>\n\nexport const TEAMS_QUOTA_USAGE_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaUsage = z.infer<typeof TEAMS_QUOTA_USAGE_SCHEMA>\n\nexport const TEAMS_QUOTA_ALLOWED_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaAllowed = z.infer<typeof TEAMS_QUOTA_ALLOWED_SCHEMA>\n\nexport const LIST_TEAMS_QUERY_SCHEMA = PAGINATION_QUERY_PARAMS_SCHEMA\nexport type ListTeamsQueryParams = z.infer<typeof LIST_TEAMS_QUERY_SCHEMA>\n\nexport const LIST_TEAMS_RESPONSE_SCHEMA = z.object({\n\tteams: z.array(\n\t\tz.object({\n\t\t\tteam_id: z.number(),\n\t\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\t\tuuid: z.string().uuid().optional(),\n\t\t\tname: z.string(),\n\t\t\tplan: z.string(),\n\t\t\tlogo_url: z.string(),\n\t\t\trole: z.string(),\n\t\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\t\tcreated_at_timestamp: z.number(),\n\t\t\tquota_usage: TEAMS_QUOTA_USAGE_SCHEMA,\n\t\t\tquota_allowed: TEAMS_QUOTA_ALLOWED_SCHEMA,\n\t\t}),\n\t),\n})\n\nexport type ListTeamsResponse = z.infer<typeof LIST_TEAMS_RESPONSE_SCHEMA>\n\n// Retrieve team\nexport const TEAM_QUOTA_METRICS_SCHEMA = z.object({\n\tid: z.number().nullable().optional(),\n\tusers: z.number(),\n\tkeys: z.number(),\n\tprojects: z.number(),\n\tmau: z.number(),\n\ttrafficBytes: z.number(),\n\taiWords: z.number(),\n})\n\nexport type TeamQuotaMetrics = z.infer<typeof TEAM_QUOTA_METRICS_SCHEMA>\n\nexport const TEAM_QUOTA_USAGE_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaUsage = z.infer<typeof TEAM_QUOTA_USAGE_SCHEMA>\n\nexport const TEAM_QUOTA_ALLOWED_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaAllowed = z.infer<typeof TEAM_QUOTA_ALLOWED_SCHEMA>\n\nexport const RETRIEVE_TEAM_PATH_PARAMS_SCHEMA = z.object({\n\tteamId: z.union([z.string().uuid(), z.number()]),\n})\n\nexport type RetrieveTeamPathParams = z.infer<typeof RETRIEVE_TEAM_PATH_PARAMS_SCHEMA>\n\nexport const RETRIEVE_TEAM_RESPONSE_SCHEMA = z.object({\n\tteam: z.object({\n\t\tteam_id: z.number(),\n\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\tuuid: z.string().uuid().optional(),\n\t\tname: z.string(),\n\t\tplan_name: z.string(),\n\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\tcreated_at_timestamp: z.number(),\n\t\tlogo_url: z.string(),\n\t\trole: z.string(),\n\t\tquota_usage: TEAM_QUOTA_USAGE_SCHEMA,\n\t\tquota_allowed: TEAM_QUOTA_ALLOWED_SCHEMA,\n\t\tis_team_suspended: z.boolean(),\n\t\tis_end_of_trial_active: z.boolean(),\n\t\ttrial_days_left: z.number(),\n\t}),\n})\n\nexport type RetrieveTeamResponse = z.infer<typeof RETRIEVE_TEAM_RESPONSE_SCHEMA>\n"],"names":["BASE_API_ENDPOINT_HEADER_SCHEMA","z","PAGINATION_QUERY_PARAMS_SCHEMA"],"mappings":";;;;;AAKO,MAAM,+BAA+BA,YAAAA;AAQ5C,MAAM,4BAA4BC,MAAE,MAAM;AAAA,EACzCA,MAAE,OAAS,EAAA,OAAO,CAAC,QAAQ,+CAA+C,KAAK,GAAG,GAAG;AAAA,IACpF,SAAS;AAAA,EAAA,CACT;AAAA,EACDA,MAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,MAAM;AAAA,EACpCA,IAAA,EAAE,OAAO,EAAE,SAAS;AACrB,CAAC;AAMM,MAAM,sBAAsB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;AAEa,MAAA,6BAA6BA,IAAAA,EAAE,KAAK,mBAAmB;AAG7D,MAAM,2BAA2BA,IAAAA,EAAE,OAAO,4BAA4BA,IAAAA,EAAE,OAAQ,CAAA;AAGhF,MAAM,6BAA6BA,IAAAA,EAAE,OAAO,4BAA4BA,IAAAA,EAAE,OAAQ,CAAA;AAGlF,MAAM,0BAA0BC,gBAAAA;AAG1B,MAAA,6BAA6BD,MAAE,OAAO;AAAA,EAClD,OAAOA,IAAE,EAAA;AAAA,IACRA,IAAAA,EAAE,OAAO;AAAA,MACR,SAASA,MAAE,OAAO;AAAA;AAAA,MAElB,MAAMA,IAAAA,EAAE,OAAS,EAAA,KAAA,EAAO,SAAS;AAAA,MACjC,MAAMA,MAAE,OAAO;AAAA,MACf,MAAMA,MAAE,OAAO;AAAA,MACf,UAAUA,
|
1
|
+
{"version":3,"file":"harmony61.cjs","sources":["../src/features/publicApi/types/teamTypes.ts"],"sourcesContent":["import { PAGINATION_QUERY_PARAMS_SCHEMA } from '@features/publicApi/types/paginationTypes'\nimport { BASE_API_ENDPOINT_HEADER_SCHEMA } from '@features/publicApi/types/sharedTypes'\nimport { z } from 'zod'\n\n// Shared schema\nexport const TEAM_API_BASE_HEADERS_SCHEMA = BASE_API_ENDPOINT_HEADER_SCHEMA\n\nexport type TeamApiBaseHeaders = z.infer<typeof TEAM_API_BASE_HEADERS_SCHEMA>\n\n/**\n * TODO - created_at is using custom format like 2024-10-03 09:45:52 (Etc/UTC)\n * instead of ISO 8601 which is expected by ZOD and we need a custom datetime schema\n */\nconst EXTENDED_DATE_TIME_SCHEMA = z.union([\n\tz.string().refine((val) => /^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2} \\(.*\\)$/.test(val), {\n\t\tmessage: 'Invalid datetime format',\n\t}),\n\tz.string().datetime({ offset: true }),\n\tz.string().datetime(),\n])\n\n// There are too many differences between teams list and retrieving team\n// It is better to keep schemas separately\n\n// List teams\nexport const TEAMS_QUOTA_METRICS = [\n\t'users',\n\t'keys',\n\t'projects',\n\t'mau',\n\t'trafficBytes',\n\t'ai_words',\n] as const\n\nexport const TEAMS_QUOTA_METRICS_SCHEMA = z.enum(TEAMS_QUOTA_METRICS)\nexport type TeamsQuotaMetrics = z.infer<typeof TEAMS_QUOTA_METRICS_SCHEMA>\n\nexport const TEAMS_QUOTA_USAGE_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaUsage = z.infer<typeof TEAMS_QUOTA_USAGE_SCHEMA>\n\nexport const TEAMS_QUOTA_ALLOWED_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaAllowed = z.infer<typeof TEAMS_QUOTA_ALLOWED_SCHEMA>\n\nexport const LIST_TEAMS_QUERY_SCHEMA = PAGINATION_QUERY_PARAMS_SCHEMA\nexport type ListTeamsQueryParams = z.infer<typeof LIST_TEAMS_QUERY_SCHEMA>\n\nexport const LIST_TEAMS_RESPONSE_SCHEMA = z.object({\n\tteams: z.array(\n\t\tz.object({\n\t\t\tteam_id: z.number(),\n\t\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\t\tuuid: z.string().uuid().optional(),\n\t\t\tname: z.string(),\n\t\t\tplan: z.string(),\n\t\t\tlogo_url: z.string().nullable(),\n\t\t\trole: z.string(),\n\t\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\t\tcreated_at_timestamp: z.number(),\n\t\t\tquota_usage: TEAMS_QUOTA_USAGE_SCHEMA,\n\t\t\tquota_allowed: TEAMS_QUOTA_ALLOWED_SCHEMA,\n\t\t}),\n\t),\n})\n\nexport type ListTeamsResponse = z.infer<typeof LIST_TEAMS_RESPONSE_SCHEMA>\n\n// Retrieve team\nexport const TEAM_QUOTA_METRICS_SCHEMA = z.object({\n\tid: z.number().nullable().optional(),\n\tusers: z.number(),\n\tkeys: z.number(),\n\tprojects: z.number(),\n\tmau: z.number(),\n\ttrafficBytes: z.number(),\n\taiWords: z.number(),\n})\n\nexport type TeamQuotaMetrics = z.infer<typeof TEAM_QUOTA_METRICS_SCHEMA>\n\nexport const TEAM_QUOTA_USAGE_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaUsage = z.infer<typeof TEAM_QUOTA_USAGE_SCHEMA>\n\nexport const TEAM_QUOTA_ALLOWED_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaAllowed = z.infer<typeof TEAM_QUOTA_ALLOWED_SCHEMA>\n\nexport const RETRIEVE_TEAM_PATH_PARAMS_SCHEMA = z.object({\n\tteamId: z.union([z.string().uuid(), z.number()]),\n})\n\nexport type RetrieveTeamPathParams = z.infer<typeof RETRIEVE_TEAM_PATH_PARAMS_SCHEMA>\n\nexport const RETRIEVE_TEAM_RESPONSE_SCHEMA = z.object({\n\tteam: z.object({\n\t\tteam_id: z.number(),\n\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\tuuid: z.string().uuid().optional(),\n\t\tname: z.string(),\n\t\tplan_name: z.string(),\n\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\tcreated_at_timestamp: z.number(),\n\t\tlogo_url: z.string().nullable(),\n\t\trole: z.string(),\n\t\tquota_usage: TEAM_QUOTA_USAGE_SCHEMA,\n\t\tquota_allowed: TEAM_QUOTA_ALLOWED_SCHEMA,\n\t\tis_team_suspended: z.boolean(),\n\t\tis_end_of_trial_active: z.boolean(),\n\t\ttrial_days_left: z.number(),\n\t}),\n})\n\nexport type RetrieveTeamResponse = z.infer<typeof RETRIEVE_TEAM_RESPONSE_SCHEMA>\n"],"names":["BASE_API_ENDPOINT_HEADER_SCHEMA","z","PAGINATION_QUERY_PARAMS_SCHEMA"],"mappings":";;;;;AAKO,MAAM,+BAA+BA,YAAAA;AAQ5C,MAAM,4BAA4BC,MAAE,MAAM;AAAA,EACzCA,MAAE,OAAS,EAAA,OAAO,CAAC,QAAQ,+CAA+C,KAAK,GAAG,GAAG;AAAA,IACpF,SAAS;AAAA,EAAA,CACT;AAAA,EACDA,MAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,MAAM;AAAA,EACpCA,IAAA,EAAE,OAAO,EAAE,SAAS;AACrB,CAAC;AAMM,MAAM,sBAAsB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;AAEa,MAAA,6BAA6BA,IAAAA,EAAE,KAAK,mBAAmB;AAG7D,MAAM,2BAA2BA,IAAAA,EAAE,OAAO,4BAA4BA,IAAAA,EAAE,OAAQ,CAAA;AAGhF,MAAM,6BAA6BA,IAAAA,EAAE,OAAO,4BAA4BA,IAAAA,EAAE,OAAQ,CAAA;AAGlF,MAAM,0BAA0BC,gBAAAA;AAG1B,MAAA,6BAA6BD,MAAE,OAAO;AAAA,EAClD,OAAOA,IAAE,EAAA;AAAA,IACRA,IAAAA,EAAE,OAAO;AAAA,MACR,SAASA,MAAE,OAAO;AAAA;AAAA,MAElB,MAAMA,IAAAA,EAAE,OAAS,EAAA,KAAA,EAAO,SAAS;AAAA,MACjC,MAAMA,MAAE,OAAO;AAAA,MACf,MAAMA,MAAE,OAAO;AAAA,MACf,UAAUA,IAAA,EAAE,OAAO,EAAE,SAAS;AAAA,MAC9B,MAAMA,MAAE,OAAO;AAAA,MACf,YAAY;AAAA,MACZ,sBAAsBA,MAAE,OAAO;AAAA,MAC/B,aAAa;AAAA,MACb,eAAe;AAAA,IACf,CAAA;AAAA,EAAA;AAEH,CAAC;AAKY,MAAA,4BAA4BA,MAAE,OAAO;AAAA,EACjD,IAAIA,IAAAA,EAAE,OAAS,EAAA,SAAA,EAAW,SAAS;AAAA,EACnC,OAAOA,MAAE,OAAO;AAAA,EAChB,MAAMA,MAAE,OAAO;AAAA,EACf,UAAUA,MAAE,OAAO;AAAA,EACnB,KAAKA,MAAE,OAAO;AAAA,EACd,cAAcA,MAAE,OAAO;AAAA,EACvB,SAASA,MAAE,OAAO;AACnB,CAAC;AAIM,MAAM,0BAA0B;AAGhC,MAAM,4BAA4B;AAG5B,MAAA,mCAAmCA,MAAE,OAAO;AAAA,EACxD,QAAQA,IAAAA,EAAE,MAAM,CAACA,IAAE,EAAA,OAAS,EAAA,KAAQ,GAAAA,MAAE,QAAQ,CAAC;AAChD,CAAC;AAIY,MAAA,gCAAgCA,MAAE,OAAO;AAAA,EACrD,MAAMA,MAAE,OAAO;AAAA,IACd,SAASA,MAAE,OAAO;AAAA;AAAA,IAElB,MAAMA,IAAAA,EAAE,OAAS,EAAA,KAAA,EAAO,SAAS;AAAA,IACjC,MAAMA,MAAE,OAAO;AAAA,IACf,WAAWA,MAAE,OAAO;AAAA,IACpB,YAAY;AAAA,IACZ,sBAAsBA,MAAE,OAAO;AAAA,IAC/B,UAAUA,IAAA,EAAE,OAAO,EAAE,SAAS;AAAA,IAC9B,MAAMA,MAAE,OAAO;AAAA,IACf,aAAa;AAAA,IACb,eAAe;AAAA,IACf,mBAAmBA,MAAE,QAAQ;AAAA,IAC7B,wBAAwBA,MAAE,QAAQ;AAAA,IAClC,iBAAiBA,MAAE,OAAO;AAAA,EAC1B,CAAA;AACF,CAAC;;;;;;;;;;;;;"}
|
package/dist/harmony61.mjs
CHANGED
@@ -29,7 +29,7 @@ const LIST_TEAMS_RESPONSE_SCHEMA = z.object({
|
|
29
29
|
uuid: z.string().uuid().optional(),
|
30
30
|
name: z.string(),
|
31
31
|
plan: z.string(),
|
32
|
-
logo_url: z.string(),
|
32
|
+
logo_url: z.string().nullable(),
|
33
33
|
role: z.string(),
|
34
34
|
created_at: EXTENDED_DATE_TIME_SCHEMA,
|
35
35
|
created_at_timestamp: z.number(),
|
@@ -61,7 +61,7 @@ const RETRIEVE_TEAM_RESPONSE_SCHEMA = z.object({
|
|
61
61
|
plan_name: z.string(),
|
62
62
|
created_at: EXTENDED_DATE_TIME_SCHEMA,
|
63
63
|
created_at_timestamp: z.number(),
|
64
|
-
logo_url: z.string(),
|
64
|
+
logo_url: z.string().nullable(),
|
65
65
|
role: z.string(),
|
66
66
|
quota_usage: TEAM_QUOTA_USAGE_SCHEMA,
|
67
67
|
quota_allowed: TEAM_QUOTA_ALLOWED_SCHEMA,
|
package/dist/harmony61.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony61.mjs","sources":["../src/features/publicApi/types/teamTypes.ts"],"sourcesContent":["import { PAGINATION_QUERY_PARAMS_SCHEMA } from '@features/publicApi/types/paginationTypes'\nimport { BASE_API_ENDPOINT_HEADER_SCHEMA } from '@features/publicApi/types/sharedTypes'\nimport { z } from 'zod'\n\n// Shared schema\nexport const TEAM_API_BASE_HEADERS_SCHEMA = BASE_API_ENDPOINT_HEADER_SCHEMA\n\nexport type TeamApiBaseHeaders = z.infer<typeof TEAM_API_BASE_HEADERS_SCHEMA>\n\n/**\n * TODO - created_at is using custom format like 2024-10-03 09:45:52 (Etc/UTC)\n * instead of ISO 8601 which is expected by ZOD and we need a custom datetime schema\n */\nconst EXTENDED_DATE_TIME_SCHEMA = z.union([\n\tz.string().refine((val) => /^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2} \\(.*\\)$/.test(val), {\n\t\tmessage: 'Invalid datetime format',\n\t}),\n\tz.string().datetime({ offset: true }),\n\tz.string().datetime(),\n])\n\n// There are too many differences between teams list and retrieving team\n// It is better to keep schemas separately\n\n// List teams\nexport const TEAMS_QUOTA_METRICS = [\n\t'users',\n\t'keys',\n\t'projects',\n\t'mau',\n\t'trafficBytes',\n\t'ai_words',\n] as const\n\nexport const TEAMS_QUOTA_METRICS_SCHEMA = z.enum(TEAMS_QUOTA_METRICS)\nexport type TeamsQuotaMetrics = z.infer<typeof TEAMS_QUOTA_METRICS_SCHEMA>\n\nexport const TEAMS_QUOTA_USAGE_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaUsage = z.infer<typeof TEAMS_QUOTA_USAGE_SCHEMA>\n\nexport const TEAMS_QUOTA_ALLOWED_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaAllowed = z.infer<typeof TEAMS_QUOTA_ALLOWED_SCHEMA>\n\nexport const LIST_TEAMS_QUERY_SCHEMA = PAGINATION_QUERY_PARAMS_SCHEMA\nexport type ListTeamsQueryParams = z.infer<typeof LIST_TEAMS_QUERY_SCHEMA>\n\nexport const LIST_TEAMS_RESPONSE_SCHEMA = z.object({\n\tteams: z.array(\n\t\tz.object({\n\t\t\tteam_id: z.number(),\n\t\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\t\tuuid: z.string().uuid().optional(),\n\t\t\tname: z.string(),\n\t\t\tplan: z.string(),\n\t\t\tlogo_url: z.string(),\n\t\t\trole: z.string(),\n\t\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\t\tcreated_at_timestamp: z.number(),\n\t\t\tquota_usage: TEAMS_QUOTA_USAGE_SCHEMA,\n\t\t\tquota_allowed: TEAMS_QUOTA_ALLOWED_SCHEMA,\n\t\t}),\n\t),\n})\n\nexport type ListTeamsResponse = z.infer<typeof LIST_TEAMS_RESPONSE_SCHEMA>\n\n// Retrieve team\nexport const TEAM_QUOTA_METRICS_SCHEMA = z.object({\n\tid: z.number().nullable().optional(),\n\tusers: z.number(),\n\tkeys: z.number(),\n\tprojects: z.number(),\n\tmau: z.number(),\n\ttrafficBytes: z.number(),\n\taiWords: z.number(),\n})\n\nexport type TeamQuotaMetrics = z.infer<typeof TEAM_QUOTA_METRICS_SCHEMA>\n\nexport const TEAM_QUOTA_USAGE_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaUsage = z.infer<typeof TEAM_QUOTA_USAGE_SCHEMA>\n\nexport const TEAM_QUOTA_ALLOWED_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaAllowed = z.infer<typeof TEAM_QUOTA_ALLOWED_SCHEMA>\n\nexport const RETRIEVE_TEAM_PATH_PARAMS_SCHEMA = z.object({\n\tteamId: z.union([z.string().uuid(), z.number()]),\n})\n\nexport type RetrieveTeamPathParams = z.infer<typeof RETRIEVE_TEAM_PATH_PARAMS_SCHEMA>\n\nexport const RETRIEVE_TEAM_RESPONSE_SCHEMA = z.object({\n\tteam: z.object({\n\t\tteam_id: z.number(),\n\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\tuuid: z.string().uuid().optional(),\n\t\tname: z.string(),\n\t\tplan_name: z.string(),\n\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\tcreated_at_timestamp: z.number(),\n\t\tlogo_url: z.string(),\n\t\trole: z.string(),\n\t\tquota_usage: TEAM_QUOTA_USAGE_SCHEMA,\n\t\tquota_allowed: TEAM_QUOTA_ALLOWED_SCHEMA,\n\t\tis_team_suspended: z.boolean(),\n\t\tis_end_of_trial_active: z.boolean(),\n\t\ttrial_days_left: z.number(),\n\t}),\n})\n\nexport type RetrieveTeamResponse = z.infer<typeof RETRIEVE_TEAM_RESPONSE_SCHEMA>\n"],"names":[],"mappings":";;;AAKO,MAAM,+BAA+B;AAQ5C,MAAM,4BAA4B,EAAE,MAAM;AAAA,EACzC,EAAE,OAAS,EAAA,OAAO,CAAC,QAAQ,+CAA+C,KAAK,GAAG,GAAG;AAAA,IACpF,SAAS;AAAA,EAAA,CACT;AAAA,EACD,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,MAAM;AAAA,EACpC,EAAE,OAAO,EAAE,SAAS;AACrB,CAAC;AAMM,MAAM,sBAAsB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;AAEa,MAAA,6BAA6B,EAAE,KAAK,mBAAmB;AAG7D,MAAM,2BAA2B,EAAE,OAAO,4BAA4B,EAAE,OAAQ,CAAA;AAGhF,MAAM,6BAA6B,EAAE,OAAO,4BAA4B,EAAE,OAAQ,CAAA;AAGlF,MAAM,0BAA0B;AAG1B,MAAA,6BAA6B,EAAE,OAAO;AAAA,EAClD,OAAO,EAAE;AAAA,IACR,EAAE,OAAO;AAAA,MACR,SAAS,EAAE,OAAO;AAAA;AAAA,MAElB,MAAM,EAAE,OAAS,EAAA,KAAA,EAAO,SAAS;AAAA,MACjC,MAAM,EAAE,OAAO;AAAA,MACf,MAAM,EAAE,OAAO;AAAA,MACf,UAAU,EAAE,OAAO;AAAA,
|
1
|
+
{"version":3,"file":"harmony61.mjs","sources":["../src/features/publicApi/types/teamTypes.ts"],"sourcesContent":["import { PAGINATION_QUERY_PARAMS_SCHEMA } from '@features/publicApi/types/paginationTypes'\nimport { BASE_API_ENDPOINT_HEADER_SCHEMA } from '@features/publicApi/types/sharedTypes'\nimport { z } from 'zod'\n\n// Shared schema\nexport const TEAM_API_BASE_HEADERS_SCHEMA = BASE_API_ENDPOINT_HEADER_SCHEMA\n\nexport type TeamApiBaseHeaders = z.infer<typeof TEAM_API_BASE_HEADERS_SCHEMA>\n\n/**\n * TODO - created_at is using custom format like 2024-10-03 09:45:52 (Etc/UTC)\n * instead of ISO 8601 which is expected by ZOD and we need a custom datetime schema\n */\nconst EXTENDED_DATE_TIME_SCHEMA = z.union([\n\tz.string().refine((val) => /^\\d{4}-\\d{2}-\\d{2} \\d{2}:\\d{2}:\\d{2} \\(.*\\)$/.test(val), {\n\t\tmessage: 'Invalid datetime format',\n\t}),\n\tz.string().datetime({ offset: true }),\n\tz.string().datetime(),\n])\n\n// There are too many differences between teams list and retrieving team\n// It is better to keep schemas separately\n\n// List teams\nexport const TEAMS_QUOTA_METRICS = [\n\t'users',\n\t'keys',\n\t'projects',\n\t'mau',\n\t'trafficBytes',\n\t'ai_words',\n] as const\n\nexport const TEAMS_QUOTA_METRICS_SCHEMA = z.enum(TEAMS_QUOTA_METRICS)\nexport type TeamsQuotaMetrics = z.infer<typeof TEAMS_QUOTA_METRICS_SCHEMA>\n\nexport const TEAMS_QUOTA_USAGE_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaUsage = z.infer<typeof TEAMS_QUOTA_USAGE_SCHEMA>\n\nexport const TEAMS_QUOTA_ALLOWED_SCHEMA = z.record(TEAMS_QUOTA_METRICS_SCHEMA, z.number())\nexport type TeamsQuotaAllowed = z.infer<typeof TEAMS_QUOTA_ALLOWED_SCHEMA>\n\nexport const LIST_TEAMS_QUERY_SCHEMA = PAGINATION_QUERY_PARAMS_SCHEMA\nexport type ListTeamsQueryParams = z.infer<typeof LIST_TEAMS_QUERY_SCHEMA>\n\nexport const LIST_TEAMS_RESPONSE_SCHEMA = z.object({\n\tteams: z.array(\n\t\tz.object({\n\t\t\tteam_id: z.number(),\n\t\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\t\tuuid: z.string().uuid().optional(),\n\t\t\tname: z.string(),\n\t\t\tplan: z.string(),\n\t\t\tlogo_url: z.string().nullable(),\n\t\t\trole: z.string(),\n\t\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\t\tcreated_at_timestamp: z.number(),\n\t\t\tquota_usage: TEAMS_QUOTA_USAGE_SCHEMA,\n\t\t\tquota_allowed: TEAMS_QUOTA_ALLOWED_SCHEMA,\n\t\t}),\n\t),\n})\n\nexport type ListTeamsResponse = z.infer<typeof LIST_TEAMS_RESPONSE_SCHEMA>\n\n// Retrieve team\nexport const TEAM_QUOTA_METRICS_SCHEMA = z.object({\n\tid: z.number().nullable().optional(),\n\tusers: z.number(),\n\tkeys: z.number(),\n\tprojects: z.number(),\n\tmau: z.number(),\n\ttrafficBytes: z.number(),\n\taiWords: z.number(),\n})\n\nexport type TeamQuotaMetrics = z.infer<typeof TEAM_QUOTA_METRICS_SCHEMA>\n\nexport const TEAM_QUOTA_USAGE_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaUsage = z.infer<typeof TEAM_QUOTA_USAGE_SCHEMA>\n\nexport const TEAM_QUOTA_ALLOWED_SCHEMA = TEAM_QUOTA_METRICS_SCHEMA\nexport type TeamQuotaAllowed = z.infer<typeof TEAM_QUOTA_ALLOWED_SCHEMA>\n\nexport const RETRIEVE_TEAM_PATH_PARAMS_SCHEMA = z.object({\n\tteamId: z.union([z.string().uuid(), z.number()]),\n})\n\nexport type RetrieveTeamPathParams = z.infer<typeof RETRIEVE_TEAM_PATH_PARAMS_SCHEMA>\n\nexport const RETRIEVE_TEAM_RESPONSE_SCHEMA = z.object({\n\tteam: z.object({\n\t\tteam_id: z.number(),\n\t\t// TODO: This should not be optional, but the API is not consistent yet\n\t\tuuid: z.string().uuid().optional(),\n\t\tname: z.string(),\n\t\tplan_name: z.string(),\n\t\tcreated_at: EXTENDED_DATE_TIME_SCHEMA,\n\t\tcreated_at_timestamp: z.number(),\n\t\tlogo_url: z.string().nullable(),\n\t\trole: z.string(),\n\t\tquota_usage: TEAM_QUOTA_USAGE_SCHEMA,\n\t\tquota_allowed: TEAM_QUOTA_ALLOWED_SCHEMA,\n\t\tis_team_suspended: z.boolean(),\n\t\tis_end_of_trial_active: z.boolean(),\n\t\ttrial_days_left: z.number(),\n\t}),\n})\n\nexport type RetrieveTeamResponse = z.infer<typeof RETRIEVE_TEAM_RESPONSE_SCHEMA>\n"],"names":[],"mappings":";;;AAKO,MAAM,+BAA+B;AAQ5C,MAAM,4BAA4B,EAAE,MAAM;AAAA,EACzC,EAAE,OAAS,EAAA,OAAO,CAAC,QAAQ,+CAA+C,KAAK,GAAG,GAAG;AAAA,IACpF,SAAS;AAAA,EAAA,CACT;AAAA,EACD,EAAE,OAAO,EAAE,SAAS,EAAE,QAAQ,MAAM;AAAA,EACpC,EAAE,OAAO,EAAE,SAAS;AACrB,CAAC;AAMM,MAAM,sBAAsB;AAAA,EAClC;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACD;AAEa,MAAA,6BAA6B,EAAE,KAAK,mBAAmB;AAG7D,MAAM,2BAA2B,EAAE,OAAO,4BAA4B,EAAE,OAAQ,CAAA;AAGhF,MAAM,6BAA6B,EAAE,OAAO,4BAA4B,EAAE,OAAQ,CAAA;AAGlF,MAAM,0BAA0B;AAG1B,MAAA,6BAA6B,EAAE,OAAO;AAAA,EAClD,OAAO,EAAE;AAAA,IACR,EAAE,OAAO;AAAA,MACR,SAAS,EAAE,OAAO;AAAA;AAAA,MAElB,MAAM,EAAE,OAAS,EAAA,KAAA,EAAO,SAAS;AAAA,MACjC,MAAM,EAAE,OAAO;AAAA,MACf,MAAM,EAAE,OAAO;AAAA,MACf,UAAU,EAAE,OAAO,EAAE,SAAS;AAAA,MAC9B,MAAM,EAAE,OAAO;AAAA,MACf,YAAY;AAAA,MACZ,sBAAsB,EAAE,OAAO;AAAA,MAC/B,aAAa;AAAA,MACb,eAAe;AAAA,IACf,CAAA;AAAA,EAAA;AAEH,CAAC;AAKY,MAAA,4BAA4B,EAAE,OAAO;AAAA,EACjD,IAAI,EAAE,OAAS,EAAA,SAAA,EAAW,SAAS;AAAA,EACnC,OAAO,EAAE,OAAO;AAAA,EAChB,MAAM,EAAE,OAAO;AAAA,EACf,UAAU,EAAE,OAAO;AAAA,EACnB,KAAK,EAAE,OAAO;AAAA,EACd,cAAc,EAAE,OAAO;AAAA,EACvB,SAAS,EAAE,OAAO;AACnB,CAAC;AAIM,MAAM,0BAA0B;AAGhC,MAAM,4BAA4B;AAG5B,MAAA,mCAAmC,EAAE,OAAO;AAAA,EACxD,QAAQ,EAAE,MAAM,CAAC,EAAE,OAAS,EAAA,KAAQ,GAAA,EAAE,QAAQ,CAAC;AAChD,CAAC;AAIY,MAAA,gCAAgC,EAAE,OAAO;AAAA,EACrD,MAAM,EAAE,OAAO;AAAA,IACd,SAAS,EAAE,OAAO;AAAA;AAAA,IAElB,MAAM,EAAE,OAAS,EAAA,KAAA,EAAO,SAAS;AAAA,IACjC,MAAM,EAAE,OAAO;AAAA,IACf,WAAW,EAAE,OAAO;AAAA,IACpB,YAAY;AAAA,IACZ,sBAAsB,EAAE,OAAO;AAAA,IAC/B,UAAU,EAAE,OAAO,EAAE,SAAS;AAAA,IAC9B,MAAM,EAAE,OAAO;AAAA,IACf,aAAa;AAAA,IACb,eAAe;AAAA,IACf,mBAAmB,EAAE,QAAQ;AAAA,IAC7B,wBAAwB,EAAE,QAAQ;AAAA,IAClC,iBAAiB,EAAE,OAAO;AAAA,EAC1B,CAAA;AACF,CAAC;"}
|
package/dist/harmony66.cjs
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperties(exports, { __esModule: { value: true }, [Symbol.toStringTag]: { value: "Module" } });
|
3
3
|
const React = require("react");
|
4
|
-
const utils = require("./
|
4
|
+
const utils = require("./harmony94.cjs");
|
5
5
|
function useResizeDetector({ skipOnMount = false, refreshMode, refreshRate = 1e3, refreshOptions, handleWidth = true, handleHeight = true, targetRef, observerOptions, onResize } = {}) {
|
6
6
|
const skipResize = React.useRef(skipOnMount);
|
7
7
|
const onResizeRef = utils.useCallbackRef(onResize);
|
package/dist/harmony66.mjs
CHANGED
@@ -1,5 +1,5 @@
|
|
1
1
|
import { useRef, useState, useCallback, useEffect } from "react";
|
2
|
-
import { useCallbackRef, useRefProxy, getDimensions, patchResizeCallback } from "./
|
2
|
+
import { useCallbackRef, useRefProxy, getDimensions, patchResizeCallback } from "./harmony94.mjs";
|
3
3
|
function useResizeDetector({ skipOnMount = false, refreshMode, refreshRate = 1e3, refreshOptions, handleWidth = true, handleHeight = true, targetRef, observerOptions, onResize } = {}) {
|
4
4
|
const skipResize = useRef(skipOnMount);
|
5
5
|
const onResizeRef = useCallbackRef(onResize);
|
package/dist/harmony94.cjs
CHANGED
@@ -1,21 +1,102 @@
|
|
1
1
|
"use strict";
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
-
const
|
4
|
-
const
|
5
|
-
const
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
3
|
+
const React = require("react");
|
4
|
+
const debounce = require("./harmony106.cjs");
|
5
|
+
const throttle = require("./harmony107.cjs");
|
6
|
+
function _interopNamespaceDefault(e) {
|
7
|
+
const n = Object.create(null, { [Symbol.toStringTag]: { value: "Module" } });
|
8
|
+
if (e) {
|
9
|
+
for (const k in e) {
|
10
|
+
if (k !== "default") {
|
11
|
+
const d = Object.getOwnPropertyDescriptor(e, k);
|
12
|
+
Object.defineProperty(n, k, d.get ? d : {
|
13
|
+
enumerable: true,
|
14
|
+
get: () => e[k]
|
15
|
+
});
|
16
|
+
}
|
17
|
+
}
|
18
|
+
}
|
19
|
+
n.default = e;
|
20
|
+
return Object.freeze(n);
|
21
|
+
}
|
22
|
+
const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
|
23
|
+
const patchResizeCallback = (resizeCallback, refreshMode, refreshRate, refreshOptions) => {
|
24
|
+
switch (refreshMode) {
|
25
|
+
case "debounce":
|
26
|
+
return debounce.default(resizeCallback, refreshRate, refreshOptions);
|
27
|
+
case "throttle":
|
28
|
+
return throttle.default(resizeCallback, refreshRate, refreshOptions);
|
29
|
+
default:
|
30
|
+
return resizeCallback;
|
31
|
+
}
|
32
|
+
};
|
33
|
+
const useCallbackRef = (
|
34
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
35
|
+
(callback) => {
|
36
|
+
const callbackRef = React__namespace.useRef(callback);
|
37
|
+
React__namespace.useEffect(() => {
|
38
|
+
callbackRef.current = callback;
|
39
|
+
});
|
40
|
+
return React__namespace.useMemo(() => (...args) => {
|
41
|
+
var _a;
|
42
|
+
return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call(callbackRef, ...args);
|
43
|
+
}, []);
|
44
|
+
}
|
45
|
+
);
|
46
|
+
const useRefProxy = (
|
47
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
48
|
+
(targetRef) => {
|
49
|
+
const [refElement, setRefElement] = React__namespace.useState((targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) || null);
|
50
|
+
if (targetRef) {
|
51
|
+
setTimeout(() => {
|
52
|
+
if (targetRef.current !== refElement) {
|
53
|
+
setRefElement(targetRef.current);
|
54
|
+
}
|
55
|
+
}, 0);
|
56
|
+
}
|
57
|
+
const refProxy = React__namespace.useMemo(() => new Proxy((node) => {
|
58
|
+
if (node !== refElement) {
|
59
|
+
setRefElement(node);
|
60
|
+
}
|
61
|
+
}, {
|
62
|
+
get(target, prop) {
|
63
|
+
if (prop === "current") {
|
64
|
+
return refElement;
|
65
|
+
}
|
66
|
+
return target[prop];
|
67
|
+
},
|
68
|
+
set(target, prop, value) {
|
69
|
+
if (prop === "current") {
|
70
|
+
setRefElement(value);
|
71
|
+
} else {
|
72
|
+
target[prop] = value;
|
73
|
+
}
|
74
|
+
return true;
|
75
|
+
}
|
76
|
+
}), [refElement]);
|
77
|
+
return { refProxy, refElement, setRefElement };
|
78
|
+
}
|
79
|
+
);
|
80
|
+
const getDimensions = (entry, box) => {
|
81
|
+
if (box === "border-box") {
|
82
|
+
return {
|
83
|
+
width: entry.borderBoxSize[0].inlineSize,
|
84
|
+
height: entry.borderBoxSize[0].blockSize
|
85
|
+
};
|
86
|
+
}
|
87
|
+
if (box === "content-box") {
|
88
|
+
return {
|
89
|
+
width: entry.contentBoxSize[0].inlineSize,
|
90
|
+
height: entry.contentBoxSize[0].blockSize
|
91
|
+
};
|
92
|
+
}
|
93
|
+
return {
|
94
|
+
width: entry.contentRect.width,
|
95
|
+
height: entry.contentRect.height
|
96
|
+
};
|
97
|
+
};
|
98
|
+
exports.getDimensions = getDimensions;
|
99
|
+
exports.patchResizeCallback = patchResizeCallback;
|
100
|
+
exports.useCallbackRef = useCallbackRef;
|
101
|
+
exports.useRefProxy = useRefProxy;
|
21
102
|
//# sourceMappingURL=harmony94.cjs.map
|
package/dist/harmony94.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony94.cjs","sources":["../
|
1
|
+
{"version":3,"file":"harmony94.cjs","sources":["../node_modules/react-resize-detector/build/utils.js"],"sourcesContent":["import * as React from 'react';\nimport debounce from 'lodash/debounce.js';\nimport throttle from 'lodash/throttle.js';\n\n/**\n * Wraps the resize callback with a lodash debounce / throttle based on the refresh mode\n */\nconst patchResizeCallback = (resizeCallback, refreshMode, refreshRate, refreshOptions) => {\n switch (refreshMode) {\n case 'debounce':\n return debounce(resizeCallback, refreshRate, refreshOptions);\n case 'throttle':\n return throttle(resizeCallback, refreshRate, refreshOptions);\n default:\n return resizeCallback;\n }\n};\n/**\n * A custom hook that converts a callback to a ref to avoid triggering re-renders when passed as a\n * prop or avoid re-executing effects when passed as a dependency\n */\nconst useCallbackRef = \n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(callback) => {\n const callbackRef = React.useRef(callback);\n React.useEffect(() => {\n callbackRef.current = callback;\n });\n return React.useMemo(() => ((...args) => { var _a; return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call(callbackRef, ...args); }), []);\n};\n/** `useRef` hook doesn't handle conditional rendering or dynamic ref changes.\n * This hook creates a proxy that ensures that `refElement` is updated whenever the ref is changed. */\nconst useRefProxy = \n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(targetRef) => {\n // we are going to use this ref to store the last element that was passed to the hook\n const [refElement, setRefElement] = React.useState((targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) || null);\n // if targetRef is passed, we need to update the refElement\n // we have to use setTimeout because ref get assigned after the hook is called\n // in the future releases we are going to remove targetRef and force users to use ref returned by the hook\n if (targetRef) {\n setTimeout(() => {\n if (targetRef.current !== refElement) {\n setRefElement(targetRef.current);\n }\n }, 0);\n }\n // this is a memo that will be called every time the ref is changed\n // This proxy will properly call setState either when the ref is called as a function or when `.current` is set\n // we call setState inside to trigger rerender\n const refProxy = React.useMemo(() => new Proxy((node) => {\n if (node !== refElement) {\n setRefElement(node);\n }\n }, {\n get(target, prop) {\n if (prop === 'current') {\n return refElement;\n }\n return target[prop];\n },\n set(target, prop, value) {\n if (prop === 'current') {\n setRefElement(value);\n }\n else {\n target[prop] = value;\n }\n return true;\n },\n }), [refElement]);\n return { refProxy, refElement, setRefElement };\n};\n/** Calculates the dimensions of the element based on the current box model.\n * @see https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/The_box_model\n */\nconst getDimensions = (entry, box) => {\n // Value\t Border\t Padding\t Inner Content\n // ---------------------------------------------------\n // 'border-box'\t Yes\t Yes\t Yes\n // 'content-box'\t No\t No\t Yes\n // undefined No\t No?\t Yes\n if (box === 'border-box') {\n return {\n width: entry.borderBoxSize[0].inlineSize,\n height: entry.borderBoxSize[0].blockSize,\n };\n }\n if (box === 'content-box') {\n return {\n width: entry.contentBoxSize[0].inlineSize,\n height: entry.contentBoxSize[0].blockSize,\n };\n }\n return {\n width: entry.contentRect.width,\n height: entry.contentRect.height,\n };\n};\n\nexport { getDimensions, patchResizeCallback, useCallbackRef, useRefProxy };\n//# sourceMappingURL=utils.js.map\n"],"names":["debounce","throttle","React"],"mappings":";;;;;;;;;;;;;;;;;;;;;;AAOK,MAAC,sBAAsB,CAAC,gBAAgB,aAAa,aAAa,mBAAmB;AACtF,UAAQ,aAAW;AAAA,IACf,KAAK;AACD,aAAOA,iBAAS,gBAAgB,aAAa,cAAc;AAAA,IAC/D,KAAK;AACD,aAAOC,iBAAS,gBAAgB,aAAa,cAAc;AAAA,IAC/D;AACI,aAAO;AAAA,EACnB;AACA;AAKK,MAAC;AAAA;AAAA,EAEN,CAAC,aAAa;AACV,UAAM,cAAcC,iBAAM,OAAO,QAAQ;AACzCA,qBAAM,UAAU,MAAM;AAClB,kBAAY,UAAU;AAAA,IAC9B,CAAK;AACD,WAAOA,iBAAM,QAAQ,MAAO,IAAI,SAAS;AAAE,UAAI;AAAI,cAAQ,KAAK,YAAY,aAAa,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,aAAa,GAAG,IAAI;AAAA,IAAI,GAAG,CAAA,CAAE;AAAA,EACnK;AAAA;AAGK,MAAC;AAAA;AAAA,EAEN,CAAC,cAAc;AAEX,UAAM,CAAC,YAAY,aAAa,IAAIA,iBAAM,UAAU,cAAc,QAAQ,cAAc,SAAS,SAAS,UAAU,YAAY,IAAI;AAIpI,QAAI,WAAW;AACX,iBAAW,MAAM;AACb,YAAI,UAAU,YAAY,YAAY;AAClC,wBAAc,UAAU,OAAO;AAAA,QAC/C;AAAA,MACS,GAAE,CAAC;AAAA,IACZ;AAII,UAAM,WAAWA,iBAAM,QAAQ,MAAM,IAAI,MAAM,CAAC,SAAS;AACrD,UAAI,SAAS,YAAY;AACrB,sBAAc,IAAI;AAAA,MAC9B;AAAA,IACA,GAAO;AAAA,MACC,IAAI,QAAQ,MAAM;AACd,YAAI,SAAS,WAAW;AACpB,iBAAO;AAAA,QACvB;AACY,eAAO,OAAO,IAAI;AAAA,MACrB;AAAA,MACD,IAAI,QAAQ,MAAM,OAAO;AACrB,YAAI,SAAS,WAAW;AACpB,wBAAc,KAAK;AAAA,QACnC,OACiB;AACD,iBAAO,IAAI,IAAI;AAAA,QAC/B;AACY,eAAO;AAAA,MACV;AAAA,IACT,CAAK,GAAG,CAAC,UAAU,CAAC;AAChB,WAAO,EAAE,UAAU,YAAY,cAAe;AAAA,EAClD;AAAA;AAIK,MAAC,gBAAgB,CAAC,OAAO,QAAQ;AAMlC,MAAI,QAAQ,cAAc;AACtB,WAAO;AAAA,MACH,OAAO,MAAM,cAAc,CAAC,EAAE;AAAA,MAC9B,QAAQ,MAAM,cAAc,CAAC,EAAE;AAAA,IAClC;AAAA,EACT;AACI,MAAI,QAAQ,eAAe;AACvB,WAAO;AAAA,MACH,OAAO,MAAM,eAAe,CAAC,EAAE;AAAA,MAC/B,QAAQ,MAAM,eAAe,CAAC,EAAE;AAAA,IACnC;AAAA,EACT;AACI,SAAO;AAAA,IACH,OAAO,MAAM,YAAY;AAAA,IACzB,QAAQ,MAAM,YAAY;AAAA,EAC7B;AACL;;;;;","x_google_ignoreList":[0]}
|
package/dist/harmony94.mjs
CHANGED
@@ -1,21 +1,85 @@
|
|
1
|
-
import
|
2
|
-
import
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
1
|
+
import * as React from "react";
|
2
|
+
import debounce from "./harmony106.mjs";
|
3
|
+
import throttle from "./harmony107.mjs";
|
4
|
+
const patchResizeCallback = (resizeCallback, refreshMode, refreshRate, refreshOptions) => {
|
5
|
+
switch (refreshMode) {
|
6
|
+
case "debounce":
|
7
|
+
return debounce(resizeCallback, refreshRate, refreshOptions);
|
8
|
+
case "throttle":
|
9
|
+
return throttle(resizeCallback, refreshRate, refreshOptions);
|
10
|
+
default:
|
11
|
+
return resizeCallback;
|
12
|
+
}
|
13
|
+
};
|
14
|
+
const useCallbackRef = (
|
15
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
16
|
+
(callback) => {
|
17
|
+
const callbackRef = React.useRef(callback);
|
18
|
+
React.useEffect(() => {
|
19
|
+
callbackRef.current = callback;
|
20
|
+
});
|
21
|
+
return React.useMemo(() => (...args) => {
|
22
|
+
var _a;
|
23
|
+
return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call(callbackRef, ...args);
|
24
|
+
}, []);
|
25
|
+
}
|
26
|
+
);
|
27
|
+
const useRefProxy = (
|
28
|
+
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
29
|
+
(targetRef) => {
|
30
|
+
const [refElement, setRefElement] = React.useState((targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) || null);
|
31
|
+
if (targetRef) {
|
32
|
+
setTimeout(() => {
|
33
|
+
if (targetRef.current !== refElement) {
|
34
|
+
setRefElement(targetRef.current);
|
35
|
+
}
|
36
|
+
}, 0);
|
37
|
+
}
|
38
|
+
const refProxy = React.useMemo(() => new Proxy((node) => {
|
39
|
+
if (node !== refElement) {
|
40
|
+
setRefElement(node);
|
41
|
+
}
|
42
|
+
}, {
|
43
|
+
get(target, prop) {
|
44
|
+
if (prop === "current") {
|
45
|
+
return refElement;
|
46
|
+
}
|
47
|
+
return target[prop];
|
48
|
+
},
|
49
|
+
set(target, prop, value) {
|
50
|
+
if (prop === "current") {
|
51
|
+
setRefElement(value);
|
52
|
+
} else {
|
53
|
+
target[prop] = value;
|
54
|
+
}
|
55
|
+
return true;
|
56
|
+
}
|
57
|
+
}), [refElement]);
|
58
|
+
return { refProxy, refElement, setRefElement };
|
59
|
+
}
|
60
|
+
);
|
61
|
+
const getDimensions = (entry, box) => {
|
62
|
+
if (box === "border-box") {
|
63
|
+
return {
|
64
|
+
width: entry.borderBoxSize[0].inlineSize,
|
65
|
+
height: entry.borderBoxSize[0].blockSize
|
66
|
+
};
|
67
|
+
}
|
68
|
+
if (box === "content-box") {
|
69
|
+
return {
|
70
|
+
width: entry.contentBoxSize[0].inlineSize,
|
71
|
+
height: entry.contentBoxSize[0].blockSize
|
72
|
+
};
|
73
|
+
}
|
74
|
+
return {
|
75
|
+
width: entry.contentRect.width,
|
76
|
+
height: entry.contentRect.height
|
77
|
+
};
|
78
|
+
};
|
18
79
|
export {
|
19
|
-
|
80
|
+
getDimensions,
|
81
|
+
patchResizeCallback,
|
82
|
+
useCallbackRef,
|
83
|
+
useRefProxy
|
20
84
|
};
|
21
85
|
//# sourceMappingURL=harmony94.mjs.map
|
package/dist/harmony94.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony94.mjs","sources":["../
|
1
|
+
{"version":3,"file":"harmony94.mjs","sources":["../node_modules/react-resize-detector/build/utils.js"],"sourcesContent":["import * as React from 'react';\nimport debounce from 'lodash/debounce.js';\nimport throttle from 'lodash/throttle.js';\n\n/**\n * Wraps the resize callback with a lodash debounce / throttle based on the refresh mode\n */\nconst patchResizeCallback = (resizeCallback, refreshMode, refreshRate, refreshOptions) => {\n switch (refreshMode) {\n case 'debounce':\n return debounce(resizeCallback, refreshRate, refreshOptions);\n case 'throttle':\n return throttle(resizeCallback, refreshRate, refreshOptions);\n default:\n return resizeCallback;\n }\n};\n/**\n * A custom hook that converts a callback to a ref to avoid triggering re-renders when passed as a\n * prop or avoid re-executing effects when passed as a dependency\n */\nconst useCallbackRef = \n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(callback) => {\n const callbackRef = React.useRef(callback);\n React.useEffect(() => {\n callbackRef.current = callback;\n });\n return React.useMemo(() => ((...args) => { var _a; return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call(callbackRef, ...args); }), []);\n};\n/** `useRef` hook doesn't handle conditional rendering or dynamic ref changes.\n * This hook creates a proxy that ensures that `refElement` is updated whenever the ref is changed. */\nconst useRefProxy = \n// eslint-disable-next-line @typescript-eslint/no-explicit-any\n(targetRef) => {\n // we are going to use this ref to store the last element that was passed to the hook\n const [refElement, setRefElement] = React.useState((targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) || null);\n // if targetRef is passed, we need to update the refElement\n // we have to use setTimeout because ref get assigned after the hook is called\n // in the future releases we are going to remove targetRef and force users to use ref returned by the hook\n if (targetRef) {\n setTimeout(() => {\n if (targetRef.current !== refElement) {\n setRefElement(targetRef.current);\n }\n }, 0);\n }\n // this is a memo that will be called every time the ref is changed\n // This proxy will properly call setState either when the ref is called as a function or when `.current` is set\n // we call setState inside to trigger rerender\n const refProxy = React.useMemo(() => new Proxy((node) => {\n if (node !== refElement) {\n setRefElement(node);\n }\n }, {\n get(target, prop) {\n if (prop === 'current') {\n return refElement;\n }\n return target[prop];\n },\n set(target, prop, value) {\n if (prop === 'current') {\n setRefElement(value);\n }\n else {\n target[prop] = value;\n }\n return true;\n },\n }), [refElement]);\n return { refProxy, refElement, setRefElement };\n};\n/** Calculates the dimensions of the element based on the current box model.\n * @see https://developer.mozilla.org/en-US/docs/Learn/CSS/Building_blocks/The_box_model\n */\nconst getDimensions = (entry, box) => {\n // Value\t Border\t Padding\t Inner Content\n // ---------------------------------------------------\n // 'border-box'\t Yes\t Yes\t Yes\n // 'content-box'\t No\t No\t Yes\n // undefined No\t No?\t Yes\n if (box === 'border-box') {\n return {\n width: entry.borderBoxSize[0].inlineSize,\n height: entry.borderBoxSize[0].blockSize,\n };\n }\n if (box === 'content-box') {\n return {\n width: entry.contentBoxSize[0].inlineSize,\n height: entry.contentBoxSize[0].blockSize,\n };\n }\n return {\n width: entry.contentRect.width,\n height: entry.contentRect.height,\n };\n};\n\nexport { getDimensions, patchResizeCallback, useCallbackRef, useRefProxy };\n//# sourceMappingURL=utils.js.map\n"],"names":[],"mappings":";;;AAOK,MAAC,sBAAsB,CAAC,gBAAgB,aAAa,aAAa,mBAAmB;AACtF,UAAQ,aAAW;AAAA,IACf,KAAK;AACD,aAAO,SAAS,gBAAgB,aAAa,cAAc;AAAA,IAC/D,KAAK;AACD,aAAO,SAAS,gBAAgB,aAAa,cAAc;AAAA,IAC/D;AACI,aAAO;AAAA,EACnB;AACA;AAKK,MAAC;AAAA;AAAA,EAEN,CAAC,aAAa;AACV,UAAM,cAAc,MAAM,OAAO,QAAQ;AACzC,UAAM,UAAU,MAAM;AAClB,kBAAY,UAAU;AAAA,IAC9B,CAAK;AACD,WAAO,MAAM,QAAQ,MAAO,IAAI,SAAS;AAAE,UAAI;AAAI,cAAQ,KAAK,YAAY,aAAa,QAAQ,OAAO,SAAS,SAAS,GAAG,KAAK,aAAa,GAAG,IAAI;AAAA,IAAI,GAAG,CAAA,CAAE;AAAA,EACnK;AAAA;AAGK,MAAC;AAAA;AAAA,EAEN,CAAC,cAAc;AAEX,UAAM,CAAC,YAAY,aAAa,IAAI,MAAM,UAAU,cAAc,QAAQ,cAAc,SAAS,SAAS,UAAU,YAAY,IAAI;AAIpI,QAAI,WAAW;AACX,iBAAW,MAAM;AACb,YAAI,UAAU,YAAY,YAAY;AAClC,wBAAc,UAAU,OAAO;AAAA,QAC/C;AAAA,MACS,GAAE,CAAC;AAAA,IACZ;AAII,UAAM,WAAW,MAAM,QAAQ,MAAM,IAAI,MAAM,CAAC,SAAS;AACrD,UAAI,SAAS,YAAY;AACrB,sBAAc,IAAI;AAAA,MAC9B;AAAA,IACA,GAAO;AAAA,MACC,IAAI,QAAQ,MAAM;AACd,YAAI,SAAS,WAAW;AACpB,iBAAO;AAAA,QACvB;AACY,eAAO,OAAO,IAAI;AAAA,MACrB;AAAA,MACD,IAAI,QAAQ,MAAM,OAAO;AACrB,YAAI,SAAS,WAAW;AACpB,wBAAc,KAAK;AAAA,QACnC,OACiB;AACD,iBAAO,IAAI,IAAI;AAAA,QAC/B;AACY,eAAO;AAAA,MACV;AAAA,IACT,CAAK,GAAG,CAAC,UAAU,CAAC;AAChB,WAAO,EAAE,UAAU,YAAY,cAAe;AAAA,EAClD;AAAA;AAIK,MAAC,gBAAgB,CAAC,OAAO,QAAQ;AAMlC,MAAI,QAAQ,cAAc;AACtB,WAAO;AAAA,MACH,OAAO,MAAM,cAAc,CAAC,EAAE;AAAA,MAC9B,QAAQ,MAAM,cAAc,CAAC,EAAE;AAAA,IAClC;AAAA,EACT;AACI,MAAI,QAAQ,eAAe;AACvB,WAAO;AAAA,MACH,OAAO,MAAM,eAAe,CAAC,EAAE;AAAA,MAC/B,QAAQ,MAAM,eAAe,CAAC,EAAE;AAAA,IACnC;AAAA,EACT;AACI,SAAO;AAAA,IACH,OAAO,MAAM,YAAY;AAAA,IACzB,QAAQ,MAAM,YAAY;AAAA,EAC7B;AACL;","x_google_ignoreList":[0]}
|
package/dist/harmony95.cjs
CHANGED
@@ -1,17 +1,21 @@
|
|
1
1
|
"use strict";
|
2
|
-
var __defProp = Object.defineProperty;
|
3
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
4
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
5
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
6
|
-
const
|
7
|
-
const
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
3
|
+
const zod = require("zod");
|
4
|
+
const teamRoleTypes = require("./harmony60.cjs");
|
5
|
+
const JWT_TOKEN_PAYLOAD_SCHEMA = zod.z.object({
|
6
|
+
userId: zod.z.number(),
|
7
|
+
userUuid: zod.z.string().uuid(),
|
8
|
+
teamId: zod.z.number(),
|
9
|
+
teamUuid: zod.z.string().uuid(),
|
10
|
+
userTeamRole: teamRoleTypes.TEAM_ROLE_SCHEMA,
|
11
|
+
userEmail: zod.z.string().email(),
|
12
|
+
userName: zod.z.string(),
|
13
|
+
userCurrentTeamId: zod.z.number(),
|
14
|
+
planId: zod.z.number(),
|
15
|
+
planName: zod.z.string(),
|
16
|
+
isProviderAlpha: zod.z.boolean(),
|
17
|
+
isFullyAuthenticated: zod.z.boolean(),
|
18
|
+
exp: zod.z.number()
|
19
|
+
});
|
20
|
+
exports.JWT_TOKEN_PAYLOAD_SCHEMA = JWT_TOKEN_PAYLOAD_SCHEMA;
|
17
21
|
//# sourceMappingURL=harmony95.cjs.map
|
package/dist/harmony95.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony95.cjs","sources":["../src/features/auth/
|
1
|
+
{"version":3,"file":"harmony95.cjs","sources":["../src/features/auth/core/types/jwtTokenPayload.ts"],"sourcesContent":["import { z } from 'zod'\nimport { TEAM_ROLE_SCHEMA } from '../../../publicApi/types/teamRoleTypes'\n\nexport const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({\n\tuserId: z.number(),\n\tuserUuid: z.string().uuid(),\n\tteamId: z.number(),\n\tteamUuid: z.string().uuid(),\n\tuserTeamRole: TEAM_ROLE_SCHEMA,\n\tuserEmail: z.string().email(),\n\tuserName: z.string(),\n\tuserCurrentTeamId: z.number(),\n\tplanId: z.number(),\n\tplanName: z.string(),\n\tisProviderAlpha: z.boolean(),\n\tisFullyAuthenticated: z.boolean(),\n\texp: z.number(),\n})\nexport type JwtTokenPayload = z.infer<typeof JWT_TOKEN_PAYLOAD_SCHEMA>\n"],"names":["z","TEAM_ROLE_SCHEMA"],"mappings":";;;;AAGa,MAAA,2BAA2BA,MAAE,OAAO;AAAA,EAChD,QAAQA,MAAE,OAAO;AAAA,EACjB,UAAUA,IAAA,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,QAAQA,MAAE,OAAO;AAAA,EACjB,UAAUA,IAAA,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,cAAcC,cAAA;AAAA,EACd,WAAWD,IAAA,EAAE,OAAO,EAAE,MAAM;AAAA,EAC5B,UAAUA,MAAE,OAAO;AAAA,EACnB,mBAAmBA,MAAE,OAAO;AAAA,EAC5B,QAAQA,MAAE,OAAO;AAAA,EACjB,UAAUA,MAAE,OAAO;AAAA,EACnB,iBAAiBA,MAAE,QAAQ;AAAA,EAC3B,sBAAsBA,MAAE,QAAQ;AAAA,EAChC,KAAKA,MAAE,OAAO;AACf,CAAC;;"}
|
package/dist/harmony95.mjs
CHANGED
@@ -1,17 +1,21 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
|
10
|
-
|
11
|
-
|
12
|
-
|
13
|
-
|
1
|
+
import { z } from "zod";
|
2
|
+
import { TEAM_ROLE_SCHEMA } from "./harmony60.mjs";
|
3
|
+
const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({
|
4
|
+
userId: z.number(),
|
5
|
+
userUuid: z.string().uuid(),
|
6
|
+
teamId: z.number(),
|
7
|
+
teamUuid: z.string().uuid(),
|
8
|
+
userTeamRole: TEAM_ROLE_SCHEMA,
|
9
|
+
userEmail: z.string().email(),
|
10
|
+
userName: z.string(),
|
11
|
+
userCurrentTeamId: z.number(),
|
12
|
+
planId: z.number(),
|
13
|
+
planName: z.string(),
|
14
|
+
isProviderAlpha: z.boolean(),
|
15
|
+
isFullyAuthenticated: z.boolean(),
|
16
|
+
exp: z.number()
|
17
|
+
});
|
14
18
|
export {
|
15
|
-
|
19
|
+
JWT_TOKEN_PAYLOAD_SCHEMA
|
16
20
|
};
|
17
21
|
//# sourceMappingURL=harmony95.mjs.map
|
package/dist/harmony95.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony95.mjs","sources":["../src/features/auth/
|
1
|
+
{"version":3,"file":"harmony95.mjs","sources":["../src/features/auth/core/types/jwtTokenPayload.ts"],"sourcesContent":["import { z } from 'zod'\nimport { TEAM_ROLE_SCHEMA } from '../../../publicApi/types/teamRoleTypes'\n\nexport const JWT_TOKEN_PAYLOAD_SCHEMA = z.object({\n\tuserId: z.number(),\n\tuserUuid: z.string().uuid(),\n\tteamId: z.number(),\n\tteamUuid: z.string().uuid(),\n\tuserTeamRole: TEAM_ROLE_SCHEMA,\n\tuserEmail: z.string().email(),\n\tuserName: z.string(),\n\tuserCurrentTeamId: z.number(),\n\tplanId: z.number(),\n\tplanName: z.string(),\n\tisProviderAlpha: z.boolean(),\n\tisFullyAuthenticated: z.boolean(),\n\texp: z.number(),\n})\nexport type JwtTokenPayload = z.infer<typeof JWT_TOKEN_PAYLOAD_SCHEMA>\n"],"names":[],"mappings":";;AAGa,MAAA,2BAA2B,EAAE,OAAO;AAAA,EAChD,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO,EAAE,KAAK;AAAA,EAC1B,cAAc;AAAA,EACd,WAAW,EAAE,OAAO,EAAE,MAAM;AAAA,EAC5B,UAAU,EAAE,OAAO;AAAA,EACnB,mBAAmB,EAAE,OAAO;AAAA,EAC5B,QAAQ,EAAE,OAAO;AAAA,EACjB,UAAU,EAAE,OAAO;AAAA,EACnB,iBAAiB,EAAE,QAAQ;AAAA,EAC3B,sBAAsB,EAAE,QAAQ;AAAA,EAChC,KAAK,EAAE,OAAO;AACf,CAAC;"}
|
package/dist/harmony96.cjs
CHANGED
@@ -1,102 +1,17 @@
|
|
1
1
|
"use strict";
|
2
|
+
var __defProp = Object.defineProperty;
|
3
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
4
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
2
5
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
3
|
-
const
|
4
|
-
const
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
if (e) {
|
9
|
-
for (const k in e) {
|
10
|
-
if (k !== "default") {
|
11
|
-
const d = Object.getOwnPropertyDescriptor(e, k);
|
12
|
-
Object.defineProperty(n, k, d.get ? d : {
|
13
|
-
enumerable: true,
|
14
|
-
get: () => e[k]
|
15
|
-
});
|
16
|
-
}
|
17
|
-
}
|
18
|
-
}
|
19
|
-
n.default = e;
|
20
|
-
return Object.freeze(n);
|
21
|
-
}
|
22
|
-
const React__namespace = /* @__PURE__ */ _interopNamespaceDefault(React);
|
23
|
-
const patchResizeCallback = (resizeCallback, refreshMode, refreshRate, refreshOptions) => {
|
24
|
-
switch (refreshMode) {
|
25
|
-
case "debounce":
|
26
|
-
return debounce.default(resizeCallback, refreshRate, refreshOptions);
|
27
|
-
case "throttle":
|
28
|
-
return throttle.default(resizeCallback, refreshRate, refreshOptions);
|
29
|
-
default:
|
30
|
-
return resizeCallback;
|
31
|
-
}
|
32
|
-
};
|
33
|
-
const useCallbackRef = (
|
34
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
35
|
-
(callback) => {
|
36
|
-
const callbackRef = React__namespace.useRef(callback);
|
37
|
-
React__namespace.useEffect(() => {
|
38
|
-
callbackRef.current = callback;
|
6
|
+
const jwtTokenPayload = require("./harmony15.cjs");
|
7
|
+
const _NewJwtIssuedEvent = class _NewJwtIssuedEvent extends CustomEvent {
|
8
|
+
constructor(token) {
|
9
|
+
super(_NewJwtIssuedEvent.eventName, {
|
10
|
+
detail: { token, payload: jwtTokenPayload.parseJwtTokenPayload(token.accessToken) }
|
39
11
|
});
|
40
|
-
return React__namespace.useMemo(() => (...args) => {
|
41
|
-
var _a;
|
42
|
-
return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call(callbackRef, ...args);
|
43
|
-
}, []);
|
44
|
-
}
|
45
|
-
);
|
46
|
-
const useRefProxy = (
|
47
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
48
|
-
(targetRef) => {
|
49
|
-
const [refElement, setRefElement] = React__namespace.useState((targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) || null);
|
50
|
-
if (targetRef) {
|
51
|
-
setTimeout(() => {
|
52
|
-
if (targetRef.current !== refElement) {
|
53
|
-
setRefElement(targetRef.current);
|
54
|
-
}
|
55
|
-
}, 0);
|
56
|
-
}
|
57
|
-
const refProxy = React__namespace.useMemo(() => new Proxy((node) => {
|
58
|
-
if (node !== refElement) {
|
59
|
-
setRefElement(node);
|
60
|
-
}
|
61
|
-
}, {
|
62
|
-
get(target, prop) {
|
63
|
-
if (prop === "current") {
|
64
|
-
return refElement;
|
65
|
-
}
|
66
|
-
return target[prop];
|
67
|
-
},
|
68
|
-
set(target, prop, value) {
|
69
|
-
if (prop === "current") {
|
70
|
-
setRefElement(value);
|
71
|
-
} else {
|
72
|
-
target[prop] = value;
|
73
|
-
}
|
74
|
-
return true;
|
75
|
-
}
|
76
|
-
}), [refElement]);
|
77
|
-
return { refProxy, refElement, setRefElement };
|
78
|
-
}
|
79
|
-
);
|
80
|
-
const getDimensions = (entry, box) => {
|
81
|
-
if (box === "border-box") {
|
82
|
-
return {
|
83
|
-
width: entry.borderBoxSize[0].inlineSize,
|
84
|
-
height: entry.borderBoxSize[0].blockSize
|
85
|
-
};
|
86
|
-
}
|
87
|
-
if (box === "content-box") {
|
88
|
-
return {
|
89
|
-
width: entry.contentBoxSize[0].inlineSize,
|
90
|
-
height: entry.contentBoxSize[0].blockSize
|
91
|
-
};
|
92
12
|
}
|
93
|
-
return {
|
94
|
-
width: entry.contentRect.width,
|
95
|
-
height: entry.contentRect.height
|
96
|
-
};
|
97
13
|
};
|
98
|
-
|
99
|
-
|
100
|
-
exports.
|
101
|
-
exports.useRefProxy = useRefProxy;
|
14
|
+
__publicField(_NewJwtIssuedEvent, "eventName", "new-jwt-issued");
|
15
|
+
let NewJwtIssuedEvent = _NewJwtIssuedEvent;
|
16
|
+
exports.NewJwtIssuedEvent = NewJwtIssuedEvent;
|
102
17
|
//# sourceMappingURL=harmony96.cjs.map
|
package/dist/harmony96.cjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony96.cjs","sources":["../
|
1
|
+
{"version":3,"file":"harmony96.cjs","sources":["../src/features/auth/frontend/events/NewJwtIssuedEvent.ts"],"sourcesContent":["import type { JwtTokenPayload } from '@features/auth/core/types/jwtTokenPayload'\nimport { parseJwtTokenPayload } from '@features/auth/core/utils/jwtTokenPayload'\nimport type { JwtToken } from '@features/publicApi/types/userTokenTypes'\n\ntype NewJwtIssuedEventDetail = {\n\ttoken: JwtToken\n\tpayload: JwtTokenPayload | undefined\n}\n\n/**\n * This event is emitted when a new JWT token is issued or refreshed.\n */\nexport class NewJwtIssuedEvent extends CustomEvent<NewJwtIssuedEventDetail> {\n\tstatic readonly eventName = 'new-jwt-issued' as const\n\n\tconstructor(token: JwtToken) {\n\t\tsuper(NewJwtIssuedEvent.eventName, {\n\t\t\tdetail: { token, payload: parseJwtTokenPayload(token.accessToken) },\n\t\t})\n\t}\n}\n\nexport const isNewJwtIssuedEvent = (event: Event): event is NewJwtIssuedEvent =>\n\tevent.type === NewJwtIssuedEvent.eventName\n\ndeclare global {\n\tinterface WindowEventMap {\n\t\t[NewJwtIssuedEvent.eventName]: NewJwtIssuedEvent\n\t}\n}\n"],"names":["parseJwtTokenPayload"],"mappings":";;;;;;AAYO,MAAM,qBAAN,MAAM,2BAA0B,YAAqC;AAAA,EAG3E,YAAY,OAAiB;AAC5B,UAAM,mBAAkB,WAAW;AAAA,MAClC,QAAQ,EAAE,OAAO,SAASA,gBAAAA,qBAAqB,MAAM,WAAW,EAAE;AAAA,IAAA,CAClE;AAAA,EAAA;AAEH;AAPC,cADY,oBACI,aAAY;AADtB,IAAM,oBAAN;;"}
|
package/dist/harmony96.mjs
CHANGED
@@ -1,85 +1,17 @@
|
|
1
|
-
|
2
|
-
|
3
|
-
|
4
|
-
|
5
|
-
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
return throttle(resizeCallback, refreshRate, refreshOptions);
|
10
|
-
default:
|
11
|
-
return resizeCallback;
|
12
|
-
}
|
13
|
-
};
|
14
|
-
const useCallbackRef = (
|
15
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
16
|
-
(callback) => {
|
17
|
-
const callbackRef = React.useRef(callback);
|
18
|
-
React.useEffect(() => {
|
19
|
-
callbackRef.current = callback;
|
1
|
+
var __defProp = Object.defineProperty;
|
2
|
+
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
3
|
+
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
4
|
+
import { parseJwtTokenPayload } from "./harmony15.mjs";
|
5
|
+
const _NewJwtIssuedEvent = class _NewJwtIssuedEvent extends CustomEvent {
|
6
|
+
constructor(token) {
|
7
|
+
super(_NewJwtIssuedEvent.eventName, {
|
8
|
+
detail: { token, payload: parseJwtTokenPayload(token.accessToken) }
|
20
9
|
});
|
21
|
-
return React.useMemo(() => (...args) => {
|
22
|
-
var _a;
|
23
|
-
return (_a = callbackRef.current) === null || _a === void 0 ? void 0 : _a.call(callbackRef, ...args);
|
24
|
-
}, []);
|
25
|
-
}
|
26
|
-
);
|
27
|
-
const useRefProxy = (
|
28
|
-
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
29
|
-
(targetRef) => {
|
30
|
-
const [refElement, setRefElement] = React.useState((targetRef === null || targetRef === void 0 ? void 0 : targetRef.current) || null);
|
31
|
-
if (targetRef) {
|
32
|
-
setTimeout(() => {
|
33
|
-
if (targetRef.current !== refElement) {
|
34
|
-
setRefElement(targetRef.current);
|
35
|
-
}
|
36
|
-
}, 0);
|
37
|
-
}
|
38
|
-
const refProxy = React.useMemo(() => new Proxy((node) => {
|
39
|
-
if (node !== refElement) {
|
40
|
-
setRefElement(node);
|
41
|
-
}
|
42
|
-
}, {
|
43
|
-
get(target, prop) {
|
44
|
-
if (prop === "current") {
|
45
|
-
return refElement;
|
46
|
-
}
|
47
|
-
return target[prop];
|
48
|
-
},
|
49
|
-
set(target, prop, value) {
|
50
|
-
if (prop === "current") {
|
51
|
-
setRefElement(value);
|
52
|
-
} else {
|
53
|
-
target[prop] = value;
|
54
|
-
}
|
55
|
-
return true;
|
56
|
-
}
|
57
|
-
}), [refElement]);
|
58
|
-
return { refProxy, refElement, setRefElement };
|
59
|
-
}
|
60
|
-
);
|
61
|
-
const getDimensions = (entry, box) => {
|
62
|
-
if (box === "border-box") {
|
63
|
-
return {
|
64
|
-
width: entry.borderBoxSize[0].inlineSize,
|
65
|
-
height: entry.borderBoxSize[0].blockSize
|
66
|
-
};
|
67
|
-
}
|
68
|
-
if (box === "content-box") {
|
69
|
-
return {
|
70
|
-
width: entry.contentBoxSize[0].inlineSize,
|
71
|
-
height: entry.contentBoxSize[0].blockSize
|
72
|
-
};
|
73
10
|
}
|
74
|
-
return {
|
75
|
-
width: entry.contentRect.width,
|
76
|
-
height: entry.contentRect.height
|
77
|
-
};
|
78
11
|
};
|
12
|
+
__publicField(_NewJwtIssuedEvent, "eventName", "new-jwt-issued");
|
13
|
+
let NewJwtIssuedEvent = _NewJwtIssuedEvent;
|
79
14
|
export {
|
80
|
-
|
81
|
-
patchResizeCallback,
|
82
|
-
useCallbackRef,
|
83
|
-
useRefProxy
|
15
|
+
NewJwtIssuedEvent
|
84
16
|
};
|
85
17
|
//# sourceMappingURL=harmony96.mjs.map
|
package/dist/harmony96.mjs.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"harmony96.mjs","sources":["../
|
1
|
+
{"version":3,"file":"harmony96.mjs","sources":["../src/features/auth/frontend/events/NewJwtIssuedEvent.ts"],"sourcesContent":["import type { JwtTokenPayload } from '@features/auth/core/types/jwtTokenPayload'\nimport { parseJwtTokenPayload } from '@features/auth/core/utils/jwtTokenPayload'\nimport type { JwtToken } from '@features/publicApi/types/userTokenTypes'\n\ntype NewJwtIssuedEventDetail = {\n\ttoken: JwtToken\n\tpayload: JwtTokenPayload | undefined\n}\n\n/**\n * This event is emitted when a new JWT token is issued or refreshed.\n */\nexport class NewJwtIssuedEvent extends CustomEvent<NewJwtIssuedEventDetail> {\n\tstatic readonly eventName = 'new-jwt-issued' as const\n\n\tconstructor(token: JwtToken) {\n\t\tsuper(NewJwtIssuedEvent.eventName, {\n\t\t\tdetail: { token, payload: parseJwtTokenPayload(token.accessToken) },\n\t\t})\n\t}\n}\n\nexport const isNewJwtIssuedEvent = (event: Event): event is NewJwtIssuedEvent =>\n\tevent.type === NewJwtIssuedEvent.eventName\n\ndeclare global {\n\tinterface WindowEventMap {\n\t\t[NewJwtIssuedEvent.eventName]: NewJwtIssuedEvent\n\t}\n}\n"],"names":[],"mappings":";;;;AAYO,MAAM,qBAAN,MAAM,2BAA0B,YAAqC;AAAA,EAG3E,YAAY,OAAiB;AAC5B,UAAM,mBAAkB,WAAW;AAAA,MAClC,QAAQ,EAAE,OAAO,SAAS,qBAAqB,MAAM,WAAW,EAAE;AAAA,IAAA,CAClE;AAAA,EAAA;AAEH;AAPC,cADY,oBACI,aAAY;AADtB,IAAM,oBAAN;"}
|
@@ -27,7 +27,7 @@ export declare function useListTeamsQuery<T>(wretchClient: Wretch<T>, headers: H
|
|
27
27
|
created_at_timestamp: number;
|
28
28
|
team_id: number;
|
29
29
|
plan: string;
|
30
|
-
logo_url: string;
|
30
|
+
logo_url: string | null;
|
31
31
|
quota_usage: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
32
32
|
quota_allowed: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
33
33
|
uuid?: string | undefined;
|
@@ -22,7 +22,7 @@ export declare function useRetrieveTeamQuery<T>(wretchClient: Wretch<T>, headers
|
|
22
22
|
created_at: string;
|
23
23
|
created_at_timestamp: number;
|
24
24
|
team_id: number;
|
25
|
-
logo_url: string;
|
25
|
+
logo_url: string | null;
|
26
26
|
quota_usage: {
|
27
27
|
keys: number;
|
28
28
|
projects: number;
|
@@ -4,7 +4,7 @@ export declare const listTeams: import('@lokalise/api-contracts').GetRouteDefini
|
|
4
4
|
uuid: import('zod').ZodOptional<import('zod').ZodString>;
|
5
5
|
name: import('zod').ZodString;
|
6
6
|
plan: import('zod').ZodString;
|
7
|
-
logo_url: import('zod').ZodString
|
7
|
+
logo_url: import('zod').ZodNullable<import('zod').ZodString>;
|
8
8
|
role: import('zod').ZodString;
|
9
9
|
created_at: import('zod').ZodUnion<[import('zod').ZodEffects<import('zod').ZodString, string, string>, import('zod').ZodString, import('zod').ZodString]>;
|
10
10
|
created_at_timestamp: import('zod').ZodNumber;
|
@@ -17,7 +17,7 @@ export declare const listTeams: import('@lokalise/api-contracts').GetRouteDefini
|
|
17
17
|
created_at_timestamp: number;
|
18
18
|
team_id: number;
|
19
19
|
plan: string;
|
20
|
-
logo_url: string;
|
20
|
+
logo_url: string | null;
|
21
21
|
quota_usage: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
22
22
|
quota_allowed: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
23
23
|
uuid?: string | undefined;
|
@@ -28,7 +28,7 @@ export declare const listTeams: import('@lokalise/api-contracts').GetRouteDefini
|
|
28
28
|
created_at_timestamp: number;
|
29
29
|
team_id: number;
|
30
30
|
plan: string;
|
31
|
-
logo_url: string;
|
31
|
+
logo_url: string | null;
|
32
32
|
quota_usage: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
33
33
|
quota_allowed: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
34
34
|
uuid?: string | undefined;
|
@@ -41,7 +41,7 @@ export declare const listTeams: import('@lokalise/api-contracts').GetRouteDefini
|
|
41
41
|
created_at_timestamp: number;
|
42
42
|
team_id: number;
|
43
43
|
plan: string;
|
44
|
-
logo_url: string;
|
44
|
+
logo_url: string | null;
|
45
45
|
quota_usage: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
46
46
|
quota_allowed: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
47
47
|
uuid?: string | undefined;
|
@@ -54,7 +54,7 @@ export declare const listTeams: import('@lokalise/api-contracts').GetRouteDefini
|
|
54
54
|
created_at_timestamp: number;
|
55
55
|
team_id: number;
|
56
56
|
plan: string;
|
57
|
-
logo_url: string;
|
57
|
+
logo_url: string | null;
|
58
58
|
quota_usage: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
59
59
|
quota_allowed: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
60
60
|
uuid?: string | undefined;
|
@@ -133,7 +133,7 @@ export declare const retrieveTeam: import('@lokalise/api-contracts').GetRouteDef
|
|
133
133
|
plan_name: import('zod').ZodString;
|
134
134
|
created_at: import('zod').ZodUnion<[import('zod').ZodEffects<import('zod').ZodString, string, string>, import('zod').ZodString, import('zod').ZodString]>;
|
135
135
|
created_at_timestamp: import('zod').ZodNumber;
|
136
|
-
logo_url: import('zod').ZodString
|
136
|
+
logo_url: import('zod').ZodNullable<import('zod').ZodString>;
|
137
137
|
role: import('zod').ZodString;
|
138
138
|
quota_usage: import('zod').ZodObject<{
|
139
139
|
id: import('zod').ZodOptional<import('zod').ZodNullable<import('zod').ZodNumber>>;
|
@@ -194,7 +194,7 @@ export declare const retrieveTeam: import('@lokalise/api-contracts').GetRouteDef
|
|
194
194
|
created_at: string;
|
195
195
|
created_at_timestamp: number;
|
196
196
|
team_id: number;
|
197
|
-
logo_url: string;
|
197
|
+
logo_url: string | null;
|
198
198
|
quota_usage: {
|
199
199
|
keys: number;
|
200
200
|
projects: number;
|
@@ -224,7 +224,7 @@ export declare const retrieveTeam: import('@lokalise/api-contracts').GetRouteDef
|
|
224
224
|
created_at: string;
|
225
225
|
created_at_timestamp: number;
|
226
226
|
team_id: number;
|
227
|
-
logo_url: string;
|
227
|
+
logo_url: string | null;
|
228
228
|
quota_usage: {
|
229
229
|
keys: number;
|
230
230
|
projects: number;
|
@@ -256,7 +256,7 @@ export declare const retrieveTeam: import('@lokalise/api-contracts').GetRouteDef
|
|
256
256
|
created_at: string;
|
257
257
|
created_at_timestamp: number;
|
258
258
|
team_id: number;
|
259
|
-
logo_url: string;
|
259
|
+
logo_url: string | null;
|
260
260
|
quota_usage: {
|
261
261
|
keys: number;
|
262
262
|
projects: number;
|
@@ -288,7 +288,7 @@ export declare const retrieveTeam: import('@lokalise/api-contracts').GetRouteDef
|
|
288
288
|
created_at: string;
|
289
289
|
created_at_timestamp: number;
|
290
290
|
team_id: number;
|
291
|
-
logo_url: string;
|
291
|
+
logo_url: string | null;
|
292
292
|
quota_usage: {
|
293
293
|
keys: number;
|
294
294
|
projects: number;
|
@@ -79,7 +79,7 @@ export declare const LIST_TEAMS_RESPONSE_SCHEMA: z.ZodObject<{
|
|
79
79
|
uuid: z.ZodOptional<z.ZodString>;
|
80
80
|
name: z.ZodString;
|
81
81
|
plan: z.ZodString;
|
82
|
-
logo_url: z.ZodString
|
82
|
+
logo_url: z.ZodNullable<z.ZodString>;
|
83
83
|
role: z.ZodString;
|
84
84
|
created_at: z.ZodUnion<[z.ZodEffects<z.ZodString, string, string>, z.ZodString, z.ZodString]>;
|
85
85
|
created_at_timestamp: z.ZodNumber;
|
@@ -92,7 +92,7 @@ export declare const LIST_TEAMS_RESPONSE_SCHEMA: z.ZodObject<{
|
|
92
92
|
created_at_timestamp: number;
|
93
93
|
team_id: number;
|
94
94
|
plan: string;
|
95
|
-
logo_url: string;
|
95
|
+
logo_url: string | null;
|
96
96
|
quota_usage: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
97
97
|
quota_allowed: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
98
98
|
uuid?: string | undefined;
|
@@ -103,7 +103,7 @@ export declare const LIST_TEAMS_RESPONSE_SCHEMA: z.ZodObject<{
|
|
103
103
|
created_at_timestamp: number;
|
104
104
|
team_id: number;
|
105
105
|
plan: string;
|
106
|
-
logo_url: string;
|
106
|
+
logo_url: string | null;
|
107
107
|
quota_usage: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
108
108
|
quota_allowed: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
109
109
|
uuid?: string | undefined;
|
@@ -116,7 +116,7 @@ export declare const LIST_TEAMS_RESPONSE_SCHEMA: z.ZodObject<{
|
|
116
116
|
created_at_timestamp: number;
|
117
117
|
team_id: number;
|
118
118
|
plan: string;
|
119
|
-
logo_url: string;
|
119
|
+
logo_url: string | null;
|
120
120
|
quota_usage: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
121
121
|
quota_allowed: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
122
122
|
uuid?: string | undefined;
|
@@ -129,7 +129,7 @@ export declare const LIST_TEAMS_RESPONSE_SCHEMA: z.ZodObject<{
|
|
129
129
|
created_at_timestamp: number;
|
130
130
|
team_id: number;
|
131
131
|
plan: string;
|
132
|
-
logo_url: string;
|
132
|
+
logo_url: string | null;
|
133
133
|
quota_usage: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
134
134
|
quota_allowed: Partial<Record<"keys" | "projects" | "users" | "mau" | "trafficBytes" | "ai_words", number>>;
|
135
135
|
uuid?: string | undefined;
|
@@ -230,7 +230,7 @@ export declare const RETRIEVE_TEAM_RESPONSE_SCHEMA: z.ZodObject<{
|
|
230
230
|
plan_name: z.ZodString;
|
231
231
|
created_at: z.ZodUnion<[z.ZodEffects<z.ZodString, string, string>, z.ZodString, z.ZodString]>;
|
232
232
|
created_at_timestamp: z.ZodNumber;
|
233
|
-
logo_url: z.ZodString
|
233
|
+
logo_url: z.ZodNullable<z.ZodString>;
|
234
234
|
role: z.ZodString;
|
235
235
|
quota_usage: z.ZodObject<{
|
236
236
|
id: z.ZodOptional<z.ZodNullable<z.ZodNumber>>;
|
@@ -291,7 +291,7 @@ export declare const RETRIEVE_TEAM_RESPONSE_SCHEMA: z.ZodObject<{
|
|
291
291
|
created_at: string;
|
292
292
|
created_at_timestamp: number;
|
293
293
|
team_id: number;
|
294
|
-
logo_url: string;
|
294
|
+
logo_url: string | null;
|
295
295
|
quota_usage: {
|
296
296
|
keys: number;
|
297
297
|
projects: number;
|
@@ -321,7 +321,7 @@ export declare const RETRIEVE_TEAM_RESPONSE_SCHEMA: z.ZodObject<{
|
|
321
321
|
created_at: string;
|
322
322
|
created_at_timestamp: number;
|
323
323
|
team_id: number;
|
324
|
-
logo_url: string;
|
324
|
+
logo_url: string | null;
|
325
325
|
quota_usage: {
|
326
326
|
keys: number;
|
327
327
|
projects: number;
|
@@ -353,7 +353,7 @@ export declare const RETRIEVE_TEAM_RESPONSE_SCHEMA: z.ZodObject<{
|
|
353
353
|
created_at: string;
|
354
354
|
created_at_timestamp: number;
|
355
355
|
team_id: number;
|
356
|
-
logo_url: string;
|
356
|
+
logo_url: string | null;
|
357
357
|
quota_usage: {
|
358
358
|
keys: number;
|
359
359
|
projects: number;
|
@@ -385,7 +385,7 @@ export declare const RETRIEVE_TEAM_RESPONSE_SCHEMA: z.ZodObject<{
|
|
385
385
|
created_at: string;
|
386
386
|
created_at_timestamp: number;
|
387
387
|
team_id: number;
|
388
|
-
logo_url: string;
|
388
|
+
logo_url: string | null;
|
389
389
|
quota_usage: {
|
390
390
|
keys: number;
|
391
391
|
projects: number;
|