@cakemail-org/ui-components-v2 2.2.101 → 2.2.103
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/cjs/components/index.d.ts +1 -0
- package/dist/cjs/components/scopePicker/index.d.ts +8 -0
- package/dist/cjs/components/scopePicker/scopeGroups.d.ts +21 -0
- package/dist/cjs/components/scopePicker/types.d.ts +1 -0
- package/dist/cjs/factories/index.d.ts +1 -0
- package/dist/cjs/factories/personalAccessTokens/index.d.ts +22 -0
- package/dist/cjs/factories/personalAccessTokens/types.d.ts +1 -0
- package/dist/cjs/index.js +435 -0
- package/dist/cjs/models/index.d.ts +1 -0
- package/dist/cjs/models/personalAccessToken/index.d.ts +21 -0
- package/dist/cjs/models/personalAccessToken/types.d.ts +10 -0
- package/dist/cjs/services/index.d.ts +1 -0
- package/dist/cjs/services/personalAccessTokens/index.d.ts +24 -0
- package/dist/cjs/services/personalAccessTokens/types.d.ts +1 -0
- package/dist/cjs/utils/posthog.d.ts +5 -1
- package/dist/esm/components/index.d.ts +1 -0
- package/dist/esm/components/scopePicker/index.d.ts +8 -0
- package/dist/esm/components/scopePicker/scopeGroups.d.ts +21 -0
- package/dist/esm/components/scopePicker/types.d.ts +1 -0
- package/dist/esm/factories/index.d.ts +1 -0
- package/dist/esm/factories/personalAccessTokens/index.d.ts +22 -0
- package/dist/esm/factories/personalAccessTokens/types.d.ts +1 -0
- package/dist/esm/index.js +429 -2
- package/dist/esm/models/index.d.ts +1 -0
- package/dist/esm/models/personalAccessToken/index.d.ts +21 -0
- package/dist/esm/models/personalAccessToken/types.d.ts +10 -0
- package/dist/esm/services/index.d.ts +1 -0
- package/dist/esm/services/personalAccessTokens/index.d.ts +24 -0
- package/dist/esm/services/personalAccessTokens/types.d.ts +1 -0
- package/dist/esm/utils/posthog.d.ts +5 -1
- package/package.json +1 -1
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare function listPats({ page, perPage, status }: {
|
|
2
|
+
page?: number;
|
|
3
|
+
perPage?: number;
|
|
4
|
+
status?: string;
|
|
5
|
+
}): Promise<any>;
|
|
6
|
+
export declare function getPat({ keyPrefix }: {
|
|
7
|
+
keyPrefix: string;
|
|
8
|
+
}): Promise<any>;
|
|
9
|
+
export declare function createPat({ name, scopes, expiresAt, allowedAccountIds }: {
|
|
10
|
+
name: string;
|
|
11
|
+
scopes: string[];
|
|
12
|
+
expiresAt?: number | null;
|
|
13
|
+
allowedAccountIds?: string[] | null;
|
|
14
|
+
}): Promise<any>;
|
|
15
|
+
export declare function updatePat({ keyPrefix, name, scopes, allowedAccountIds }: {
|
|
16
|
+
keyPrefix: string;
|
|
17
|
+
name?: string;
|
|
18
|
+
scopes?: string[];
|
|
19
|
+
allowedAccountIds?: string[] | null;
|
|
20
|
+
}): Promise<any>;
|
|
21
|
+
export declare function revokePat({ keyPrefix }: {
|
|
22
|
+
keyPrefix: string;
|
|
23
|
+
}): Promise<any>;
|
|
24
|
+
export * from "./types";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
|
@@ -164,7 +164,11 @@ export declare enum EEvents {
|
|
|
164
164
|
PAGE_PUBLISHED = "Page.Published",
|
|
165
165
|
CUSTOM_DOMAIN_CREATED = "CustomDomain.Created",
|
|
166
166
|
CUSTOM_DOMAIN_VERIFIED = "CustomDomain.Verified",
|
|
167
|
-
CUSTOM_DOMAIN_DELETED = "CustomDomain.Deleted"
|
|
167
|
+
CUSTOM_DOMAIN_DELETED = "CustomDomain.Deleted",
|
|
168
|
+
PAT_CREATED = "PAT.Created",
|
|
169
|
+
PAT_UPDATED = "PAT.Updated",
|
|
170
|
+
PAT_REVOKED = "PAT.Revoked",
|
|
171
|
+
PAT_TOKEN_COPIED = "PAT.Token.Copied"
|
|
168
172
|
}
|
|
169
173
|
export declare function eventCondition(type: EEvents | string, disabledEvents?: string[]): boolean;
|
|
170
174
|
export declare function trackEvent(type: EEvents | string, data?: any, dataParser?: (event: EEvents | string, data: any) => any, disabledEvents?: string[]): void;
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
export type TScopePicker = {
|
|
3
|
+
value: string[];
|
|
4
|
+
onChange: (scopes: string[]) => void;
|
|
5
|
+
isPartner?: boolean;
|
|
6
|
+
disabled?: boolean;
|
|
7
|
+
};
|
|
8
|
+
export declare function ScopePicker({ value, onChange, isPartner, disabled }: TScopePicker): React.JSX.Element;
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
export type TScopeAction = "read" | "write" | "delete" | "send" | "import" | "export" | "admin";
|
|
2
|
+
export type TScopeResource = {
|
|
3
|
+
resource: string;
|
|
4
|
+
label: string;
|
|
5
|
+
actions: TScopeAction[];
|
|
6
|
+
};
|
|
7
|
+
export type TScopeCategory = {
|
|
8
|
+
id: string;
|
|
9
|
+
label: string;
|
|
10
|
+
adminOnly: boolean;
|
|
11
|
+
resources: TScopeResource[];
|
|
12
|
+
};
|
|
13
|
+
export declare const SCOPE_IMPLICATIONS: Record<string, string[]>;
|
|
14
|
+
export declare const SCOPE_CATEGORIES: TScopeCategory[];
|
|
15
|
+
export type TScopePreset = {
|
|
16
|
+
id: string;
|
|
17
|
+
label: string;
|
|
18
|
+
scopes: string[];
|
|
19
|
+
};
|
|
20
|
+
export declare function getCategoryScopes(categoryId: string): string[];
|
|
21
|
+
export declare const SCOPE_PRESETS: TScopePreset[];
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export { TScopePicker } from ".";
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
import { PersonalAccessTokenModel } from "../../models/personalAccessToken";
|
|
2
|
+
import { TGenericListReturn } from "../../types";
|
|
3
|
+
export declare class PersonalAccessTokensFactory {
|
|
4
|
+
static list({ page, perPage, status }?: {
|
|
5
|
+
page?: number;
|
|
6
|
+
perPage?: number;
|
|
7
|
+
status?: string;
|
|
8
|
+
}): Promise<TGenericListReturn<PersonalAccessTokenModel>>;
|
|
9
|
+
static get({ keyPrefix }: {
|
|
10
|
+
keyPrefix: string;
|
|
11
|
+
}): Promise<PersonalAccessTokenModel>;
|
|
12
|
+
static create({ name, scopes, expiresAt, allowedAccountIds }: {
|
|
13
|
+
name: string;
|
|
14
|
+
scopes: string[];
|
|
15
|
+
expiresAt?: number | null;
|
|
16
|
+
allowedAccountIds?: string[] | null;
|
|
17
|
+
}): Promise<{
|
|
18
|
+
pat: PersonalAccessTokenModel;
|
|
19
|
+
plaintext: string;
|
|
20
|
+
}>;
|
|
21
|
+
}
|
|
22
|
+
export * from "./types";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export {};
|
package/dist/esm/index.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { lighten, Stack as Stack$1, Box, CircularProgress as CircularProgress$1, LinearProgress as LinearProgress$1, Tooltip, Typography as Typography$1, Badge, Avatar as Avatar$1, Dialog as Dialog$1, DialogContent, Checkbox as Checkbox$1, Paper, Chip as Chip$1, ClickAwayListener, useTheme as useTheme$2, FormControl, InputLabel, Link as Link$1, Radio as Radio$1, Divider as Divider$2, InputAdornment, Select as Select$1, MenuItem as MenuItem$1 } from '@mui/material';
|
|
2
2
|
import classNames from 'classnames';
|
|
3
3
|
import * as React from 'react';
|
|
4
|
-
import React__default, { forwardRef, useRef, useState, useEffect, useLayoutEffect, useImperativeHandle, Component, useCallback, createContext } from 'react';
|
|
4
|
+
import React__default, { forwardRef, useRef, useState, useEffect, useLayoutEffect, useImperativeHandle, Component, useCallback, createContext, useMemo } from 'react';
|
|
5
5
|
import moment from 'moment';
|
|
6
6
|
import moment$1 from 'moment/min/moment-with-locales';
|
|
7
7
|
import posthog from 'posthog-js';
|
|
@@ -3875,6 +3875,10 @@ var EEvents;
|
|
|
3875
3875
|
EEvents["CUSTOM_DOMAIN_CREATED"] = "CustomDomain.Created";
|
|
3876
3876
|
EEvents["CUSTOM_DOMAIN_VERIFIED"] = "CustomDomain.Verified";
|
|
3877
3877
|
EEvents["CUSTOM_DOMAIN_DELETED"] = "CustomDomain.Deleted";
|
|
3878
|
+
EEvents["PAT_CREATED"] = "PAT.Created";
|
|
3879
|
+
EEvents["PAT_UPDATED"] = "PAT.Updated";
|
|
3880
|
+
EEvents["PAT_REVOKED"] = "PAT.Revoked";
|
|
3881
|
+
EEvents["PAT_TOKEN_COPIED"] = "PAT.Token.Copied";
|
|
3878
3882
|
})(EEvents || (EEvents = {}));
|
|
3879
3883
|
function eventCondition(type, disabledEvents) {
|
|
3880
3884
|
if (disabledEvents === void 0) { disabledEvents = []; }
|
|
@@ -11691,6 +11695,57 @@ function renderPage(_a) {
|
|
|
11691
11695
|
});
|
|
11692
11696
|
}
|
|
11693
11697
|
|
|
11698
|
+
var BASE_URL = function () { return uiKitConfig.GATEWAY_PROXY + "/pats"; };
|
|
11699
|
+
function listPats(_a) {
|
|
11700
|
+
var page = _a.page, perPage = _a.perPage, status = _a.status;
|
|
11701
|
+
return callApi({
|
|
11702
|
+
url: BASE_URL(),
|
|
11703
|
+
query: camelCase({ page: page, per_page: perPage, status: status }),
|
|
11704
|
+
fetchOptions: { method: EMethods.get }
|
|
11705
|
+
});
|
|
11706
|
+
}
|
|
11707
|
+
function getPat(_a) {
|
|
11708
|
+
var keyPrefix = _a.keyPrefix;
|
|
11709
|
+
return callApi({
|
|
11710
|
+
url: "".concat(BASE_URL(), "/").concat(keyPrefix),
|
|
11711
|
+
fetchOptions: { method: EMethods.get }
|
|
11712
|
+
});
|
|
11713
|
+
}
|
|
11714
|
+
function createPat(_a) {
|
|
11715
|
+
var name = _a.name, scopes = _a.scopes, expiresAt = _a.expiresAt, allowedAccountIds = _a.allowedAccountIds;
|
|
11716
|
+
return callApi({
|
|
11717
|
+
url: BASE_URL(),
|
|
11718
|
+
fetchOptions: {
|
|
11719
|
+
method: EMethods.post,
|
|
11720
|
+
body: { name: name, scopes: scopes, expires_at: expiresAt !== null && expiresAt !== void 0 ? expiresAt : null, allowed_account_ids: allowedAccountIds !== null && allowedAccountIds !== void 0 ? allowedAccountIds : null }
|
|
11721
|
+
}
|
|
11722
|
+
});
|
|
11723
|
+
}
|
|
11724
|
+
function updatePat(_a) {
|
|
11725
|
+
var keyPrefix = _a.keyPrefix, name = _a.name, scopes = _a.scopes, allowedAccountIds = _a.allowedAccountIds;
|
|
11726
|
+
var body = {};
|
|
11727
|
+
if (name !== undefined)
|
|
11728
|
+
body.name = name;
|
|
11729
|
+
if (scopes !== undefined)
|
|
11730
|
+
body.scopes = scopes;
|
|
11731
|
+
if (allowedAccountIds !== undefined)
|
|
11732
|
+
body.allowed_account_ids = allowedAccountIds;
|
|
11733
|
+
return callApi({
|
|
11734
|
+
url: "".concat(BASE_URL(), "/").concat(keyPrefix),
|
|
11735
|
+
fetchOptions: {
|
|
11736
|
+
method: EMethods.patch,
|
|
11737
|
+
body: body
|
|
11738
|
+
}
|
|
11739
|
+
});
|
|
11740
|
+
}
|
|
11741
|
+
function revokePat(_a) {
|
|
11742
|
+
var keyPrefix = _a.keyPrefix;
|
|
11743
|
+
return callApi({
|
|
11744
|
+
url: "".concat(BASE_URL(), "/").concat(keyPrefix),
|
|
11745
|
+
fetchOptions: { method: EMethods.delete }
|
|
11746
|
+
});
|
|
11747
|
+
}
|
|
11748
|
+
|
|
11694
11749
|
function listPopups(_a) {
|
|
11695
11750
|
return __awaiter(this, void 0, void 0, function () {
|
|
11696
11751
|
var options = __rest(_a, []);
|
|
@@ -12792,6 +12847,47 @@ var PageModel = /** @class */ (function (_super) {
|
|
|
12792
12847
|
return PageModel;
|
|
12793
12848
|
}(ListPageModel));
|
|
12794
12849
|
|
|
12850
|
+
var PersonalAccessTokenModel = /** @class */ (function () {
|
|
12851
|
+
function PersonalAccessTokenModel(params) {
|
|
12852
|
+
this.key_prefix = params.key_prefix;
|
|
12853
|
+
this.name = params.name;
|
|
12854
|
+
this.status = params.status;
|
|
12855
|
+
this.scopes = params.scopes;
|
|
12856
|
+
this.allowed_account_ids = params.allowed_account_ids;
|
|
12857
|
+
this.created_at = params.created_at;
|
|
12858
|
+
this.expires_at = params.expires_at;
|
|
12859
|
+
this.revoked_at = params.revoked_at;
|
|
12860
|
+
}
|
|
12861
|
+
PersonalAccessTokenModel.prototype.toJson = function () { return modelToJson(this); };
|
|
12862
|
+
PersonalAccessTokenModel.prototype.set = function (property, value) { modelSet(this, property, value); };
|
|
12863
|
+
PersonalAccessTokenModel.prototype.update = function (_a) {
|
|
12864
|
+
return __awaiter(this, arguments, void 0, function (_b) {
|
|
12865
|
+
var _this = this;
|
|
12866
|
+
var name = _b.name, scopes = _b.scopes, allowedAccountIds = _b.allowedAccountIds;
|
|
12867
|
+
return __generator(this, function (_c) {
|
|
12868
|
+
return [2 /*return*/, updatePat({ keyPrefix: this.key_prefix, name: name, scopes: scopes, allowedAccountIds: allowedAccountIds })
|
|
12869
|
+
.then(function (data) {
|
|
12870
|
+
trackEvent(EEvents.PAT_UPDATED, { key_prefix: _this.key_prefix });
|
|
12871
|
+
return new PersonalAccessTokenModel(data.data);
|
|
12872
|
+
})];
|
|
12873
|
+
});
|
|
12874
|
+
});
|
|
12875
|
+
};
|
|
12876
|
+
PersonalAccessTokenModel.prototype.revoke = function () {
|
|
12877
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
12878
|
+
var _this = this;
|
|
12879
|
+
return __generator(this, function (_a) {
|
|
12880
|
+
return [2 /*return*/, revokePat({ keyPrefix: this.key_prefix })
|
|
12881
|
+
.then(function (data) {
|
|
12882
|
+
trackEvent(EEvents.PAT_REVOKED, { key_prefix: _this.key_prefix });
|
|
12883
|
+
return new PersonalAccessTokenModel(data.data);
|
|
12884
|
+
})];
|
|
12885
|
+
});
|
|
12886
|
+
});
|
|
12887
|
+
};
|
|
12888
|
+
return PersonalAccessTokenModel;
|
|
12889
|
+
}());
|
|
12890
|
+
|
|
12795
12891
|
var EPopupTriggerType;
|
|
12796
12892
|
(function (EPopupTriggerType) {
|
|
12797
12893
|
EPopupTriggerType["on_page_load"] = "on_page_load";
|
|
@@ -18888,6 +18984,298 @@ function ResourceEdit(_a) {
|
|
|
18888
18984
|
support && React__default.createElement(Box, { className: "resource-support ".concat(!open ? "open" : "hidden") }, support));
|
|
18889
18985
|
}
|
|
18890
18986
|
|
|
18987
|
+
// Scope implication rules
|
|
18988
|
+
var SCOPE_IMPLICATIONS = {
|
|
18989
|
+
"write": ["read"],
|
|
18990
|
+
"delete": ["read"],
|
|
18991
|
+
"send": ["read"],
|
|
18992
|
+
"import": ["read", "write"],
|
|
18993
|
+
"export": ["read"],
|
|
18994
|
+
"admin": ["read", "write", "delete"],
|
|
18995
|
+
};
|
|
18996
|
+
var SCOPE_CATEGORIES = [
|
|
18997
|
+
{
|
|
18998
|
+
id: "audience",
|
|
18999
|
+
label: "Audience",
|
|
19000
|
+
adminOnly: false,
|
|
19001
|
+
resources: [
|
|
19002
|
+
{ resource: "lists", label: "Lists", actions: ["read", "write", "delete"] },
|
|
19003
|
+
{ resource: "contacts", label: "Contacts", actions: ["read", "write", "delete", "import", "export"] },
|
|
19004
|
+
{ resource: "segments", label: "Segments", actions: ["read", "write", "delete"] },
|
|
19005
|
+
{ resource: "tags", label: "Tags", actions: ["read", "write", "delete"] },
|
|
19006
|
+
{ resource: "custom_attributes", label: "Custom Attributes", actions: ["read", "write", "delete"] },
|
|
19007
|
+
{ resource: "interests", label: "Interests", actions: ["read", "write", "delete"] },
|
|
19008
|
+
]
|
|
19009
|
+
},
|
|
19010
|
+
{
|
|
19011
|
+
id: "suppressions",
|
|
19012
|
+
label: "Suppressions",
|
|
19013
|
+
adminOnly: false,
|
|
19014
|
+
resources: [
|
|
19015
|
+
{ resource: "suppressions", label: "Suppressions", actions: ["read", "write", "delete"] },
|
|
19016
|
+
]
|
|
19017
|
+
},
|
|
19018
|
+
{
|
|
19019
|
+
id: "campaigns",
|
|
19020
|
+
label: "Campaigns",
|
|
19021
|
+
adminOnly: false,
|
|
19022
|
+
resources: [
|
|
19023
|
+
{ resource: "campaigns", label: "Campaigns", actions: ["read", "write", "delete", "send"] },
|
|
19024
|
+
{ resource: "campaign_blueprints", label: "Campaign Blueprints", actions: ["read", "write", "delete"] },
|
|
19025
|
+
]
|
|
19026
|
+
},
|
|
19027
|
+
{
|
|
19028
|
+
id: "templates",
|
|
19029
|
+
label: "Templates",
|
|
19030
|
+
adminOnly: false,
|
|
19031
|
+
resources: [
|
|
19032
|
+
{ resource: "templates", label: "Templates", actions: ["read", "write", "delete"] },
|
|
19033
|
+
]
|
|
19034
|
+
},
|
|
19035
|
+
{
|
|
19036
|
+
id: "emailapi",
|
|
19037
|
+
label: "Email API",
|
|
19038
|
+
adminOnly: false,
|
|
19039
|
+
resources: [
|
|
19040
|
+
{ resource: "email_api", label: "Email API", actions: ["read", "send"] },
|
|
19041
|
+
]
|
|
19042
|
+
},
|
|
19043
|
+
{
|
|
19044
|
+
id: "forms",
|
|
19045
|
+
label: "Forms",
|
|
19046
|
+
adminOnly: false,
|
|
19047
|
+
resources: [
|
|
19048
|
+
{ resource: "forms", label: "Forms", actions: ["read", "write", "delete"] },
|
|
19049
|
+
{ resource: "preference_centers", label: "Preference Centers", actions: ["read", "write", "delete"] },
|
|
19050
|
+
]
|
|
19051
|
+
},
|
|
19052
|
+
{
|
|
19053
|
+
id: "deliverability",
|
|
19054
|
+
label: "Deliverability",
|
|
19055
|
+
adminOnly: false,
|
|
19056
|
+
resources: [
|
|
19057
|
+
{ resource: "senders", label: "Senders", actions: ["read", "write", "delete"] },
|
|
19058
|
+
{ resource: "dkim", label: "DKIM", actions: ["read", "write", "delete"] },
|
|
19059
|
+
{ resource: "domains", label: "Domains", actions: ["read", "write", "delete"] },
|
|
19060
|
+
{ resource: "logos", label: "Logos", actions: ["read", "write", "delete"] },
|
|
19061
|
+
]
|
|
19062
|
+
},
|
|
19063
|
+
{
|
|
19064
|
+
id: "webhooks",
|
|
19065
|
+
label: "Webhooks",
|
|
19066
|
+
adminOnly: false,
|
|
19067
|
+
resources: [
|
|
19068
|
+
{ resource: "webhooks", label: "Webhooks", actions: ["read", "write", "delete"] },
|
|
19069
|
+
]
|
|
19070
|
+
},
|
|
19071
|
+
{
|
|
19072
|
+
id: "analytics",
|
|
19073
|
+
label: "Analytics",
|
|
19074
|
+
adminOnly: false,
|
|
19075
|
+
resources: [
|
|
19076
|
+
{ resource: "reports", label: "Reports", actions: ["read", "export"] },
|
|
19077
|
+
{ resource: "logs", label: "Logs", actions: ["read", "export"] },
|
|
19078
|
+
{ resource: "links", label: "Links", actions: ["read"] },
|
|
19079
|
+
{ resource: "tasks", label: "Tasks", actions: ["read"] },
|
|
19080
|
+
]
|
|
19081
|
+
},
|
|
19082
|
+
{
|
|
19083
|
+
id: "account",
|
|
19084
|
+
label: "Account",
|
|
19085
|
+
adminOnly: false,
|
|
19086
|
+
resources: [
|
|
19087
|
+
{ resource: "account", label: "Account", actions: ["read", "write"] },
|
|
19088
|
+
]
|
|
19089
|
+
},
|
|
19090
|
+
{
|
|
19091
|
+
id: "users_admin",
|
|
19092
|
+
label: "Users (Admin)",
|
|
19093
|
+
adminOnly: true,
|
|
19094
|
+
resources: [
|
|
19095
|
+
{ resource: "users", label: "Users", actions: ["read", "write", "admin"] },
|
|
19096
|
+
]
|
|
19097
|
+
},
|
|
19098
|
+
{
|
|
19099
|
+
id: "subaccounts_admin",
|
|
19100
|
+
label: "Sub-accounts (Admin)",
|
|
19101
|
+
adminOnly: true,
|
|
19102
|
+
resources: [
|
|
19103
|
+
{ resource: "sub_accounts", label: "Sub-accounts", actions: ["read", "write", "admin"] },
|
|
19104
|
+
]
|
|
19105
|
+
},
|
|
19106
|
+
{
|
|
19107
|
+
id: "tokens_admin",
|
|
19108
|
+
label: "Tokens (Admin)",
|
|
19109
|
+
adminOnly: true,
|
|
19110
|
+
resources: [
|
|
19111
|
+
{ resource: "tokens", label: "Access Tokens", actions: ["read", "admin"] },
|
|
19112
|
+
]
|
|
19113
|
+
},
|
|
19114
|
+
];
|
|
19115
|
+
// Helper to get all scopes for a category
|
|
19116
|
+
function getCategoryScopes(categoryId) {
|
|
19117
|
+
var cat = SCOPE_CATEGORIES.find(function (c) { return c.id === categoryId; });
|
|
19118
|
+
if (!cat)
|
|
19119
|
+
return [];
|
|
19120
|
+
return cat.resources.flatMap(function (r) { return r.actions.map(function (a) { return "".concat(r.resource, ":").concat(a); }); });
|
|
19121
|
+
}
|
|
19122
|
+
var SCOPE_PRESETS = [
|
|
19123
|
+
{
|
|
19124
|
+
id: "readonly",
|
|
19125
|
+
label: "Read-only (all)",
|
|
19126
|
+
scopes: SCOPE_CATEGORIES
|
|
19127
|
+
.filter(function (c) { return !c.adminOnly; })
|
|
19128
|
+
.flatMap(function (c) { return c.resources.map(function (r) { return "".concat(r.resource, ":read"); }); })
|
|
19129
|
+
},
|
|
19130
|
+
{
|
|
19131
|
+
id: "full",
|
|
19132
|
+
label: "Full access",
|
|
19133
|
+
scopes: SCOPE_CATEGORIES
|
|
19134
|
+
.filter(function (c) { return !c.adminOnly; })
|
|
19135
|
+
.flatMap(function (c) { return c.resources.flatMap(function (r) { return r.actions.map(function (a) { return "".concat(r.resource, ":").concat(a); }); }); })
|
|
19136
|
+
},
|
|
19137
|
+
{
|
|
19138
|
+
id: "campaigns",
|
|
19139
|
+
label: "Campaigns manager",
|
|
19140
|
+
scopes: __spreadArray(__spreadArray(__spreadArray([], getCategoryScopes("campaigns"), true), getCategoryScopes("templates"), true), [
|
|
19141
|
+
"senders:read",
|
|
19142
|
+
"reports:read",
|
|
19143
|
+
], false)
|
|
19144
|
+
},
|
|
19145
|
+
{
|
|
19146
|
+
id: "contacts",
|
|
19147
|
+
label: "Contact manager",
|
|
19148
|
+
scopes: __spreadArray(__spreadArray([], getCategoryScopes("audience"), true), getCategoryScopes("suppressions"), true)
|
|
19149
|
+
},
|
|
19150
|
+
{
|
|
19151
|
+
id: "developer",
|
|
19152
|
+
label: "Developer",
|
|
19153
|
+
scopes: __spreadArray(__spreadArray(__spreadArray([], getCategoryScopes("emailapi"), true), getCategoryScopes("webhooks"), true), [
|
|
19154
|
+
"reports:read", "logs:read",
|
|
19155
|
+
], false)
|
|
19156
|
+
},
|
|
19157
|
+
];
|
|
19158
|
+
|
|
19159
|
+
function getImpliedScopes(scope) {
|
|
19160
|
+
var _a = scope.split(":"), resource = _a[0], action = _a[1];
|
|
19161
|
+
var implied = SCOPE_IMPLICATIONS[action] || [];
|
|
19162
|
+
return implied.map(function (a) { return "".concat(resource, ":").concat(a); });
|
|
19163
|
+
}
|
|
19164
|
+
function ScopePicker(_a) {
|
|
19165
|
+
var value = _a.value, onChange = _a.onChange, _b = _a.isPartner, isPartner = _b === void 0 ? false : _b, _c = _a.disabled, disabled = _c === void 0 ? false : _c;
|
|
19166
|
+
var _d = useState(new Set()), expandedCategories = _d[0], setExpandedCategories = _d[1];
|
|
19167
|
+
var selectedSet = useMemo(function () { return new Set(value); }, [value]);
|
|
19168
|
+
var visibleCategories = useMemo(function () { return SCOPE_CATEGORIES.filter(function (c) { return !c.adminOnly || isPartner; }); }, [isPartner]);
|
|
19169
|
+
var toggleCategory = useCallback(function (categoryId) {
|
|
19170
|
+
setExpandedCategories(function (prev) {
|
|
19171
|
+
var next = new Set(prev);
|
|
19172
|
+
if (next.has(categoryId))
|
|
19173
|
+
next.delete(categoryId);
|
|
19174
|
+
else
|
|
19175
|
+
next.add(categoryId);
|
|
19176
|
+
return next;
|
|
19177
|
+
});
|
|
19178
|
+
}, []);
|
|
19179
|
+
var handleScopeToggle = useCallback(function (scope, checked) {
|
|
19180
|
+
if (disabled)
|
|
19181
|
+
return;
|
|
19182
|
+
var next = new Set(selectedSet);
|
|
19183
|
+
if (checked) {
|
|
19184
|
+
next.add(scope);
|
|
19185
|
+
// Add implied scopes
|
|
19186
|
+
getImpliedScopes(scope).forEach(function (s) { return next.add(s); });
|
|
19187
|
+
}
|
|
19188
|
+
else {
|
|
19189
|
+
next.delete(scope);
|
|
19190
|
+
}
|
|
19191
|
+
onChange(Array.from(next));
|
|
19192
|
+
}, [selectedSet, onChange, disabled]);
|
|
19193
|
+
var handleCategorySelectAll = useCallback(function (categoryId, checked) {
|
|
19194
|
+
if (disabled)
|
|
19195
|
+
return;
|
|
19196
|
+
var cat = SCOPE_CATEGORIES.find(function (c) { return c.id === categoryId; });
|
|
19197
|
+
if (!cat)
|
|
19198
|
+
return;
|
|
19199
|
+
var next = new Set(selectedSet);
|
|
19200
|
+
cat.resources.forEach(function (r) {
|
|
19201
|
+
r.actions.forEach(function (a) {
|
|
19202
|
+
var scope = "".concat(r.resource, ":").concat(a);
|
|
19203
|
+
if (checked) {
|
|
19204
|
+
next.add(scope);
|
|
19205
|
+
getImpliedScopes(scope).forEach(function (s) { return next.add(s); });
|
|
19206
|
+
}
|
|
19207
|
+
else {
|
|
19208
|
+
next.delete(scope);
|
|
19209
|
+
}
|
|
19210
|
+
});
|
|
19211
|
+
});
|
|
19212
|
+
onChange(Array.from(next));
|
|
19213
|
+
}, [selectedSet, onChange, disabled]);
|
|
19214
|
+
var handlePreset = useCallback(function (presetId) {
|
|
19215
|
+
if (disabled)
|
|
19216
|
+
return;
|
|
19217
|
+
var preset = SCOPE_PRESETS.find(function (p) { return p.id === presetId; });
|
|
19218
|
+
if (!preset)
|
|
19219
|
+
return;
|
|
19220
|
+
// Expand all implied scopes
|
|
19221
|
+
var expanded = new Set();
|
|
19222
|
+
preset.scopes.forEach(function (s) {
|
|
19223
|
+
expanded.add(s);
|
|
19224
|
+
getImpliedScopes(s).forEach(function (implied) { return expanded.add(implied); });
|
|
19225
|
+
});
|
|
19226
|
+
onChange(Array.from(expanded));
|
|
19227
|
+
}, [onChange, disabled]);
|
|
19228
|
+
var isCategoryAllSelected = useCallback(function (categoryId) {
|
|
19229
|
+
var cat = SCOPE_CATEGORIES.find(function (c) { return c.id === categoryId; });
|
|
19230
|
+
if (!cat)
|
|
19231
|
+
return false;
|
|
19232
|
+
return cat.resources.every(function (r) { return r.actions.every(function (a) { return selectedSet.has("".concat(r.resource, ":").concat(a)); }); });
|
|
19233
|
+
}, [selectedSet]);
|
|
19234
|
+
var isImplied = useCallback(function (scope) {
|
|
19235
|
+
// Scope is implied (auto-selected due to another scope) if removing it wouldn't break anything
|
|
19236
|
+
var _a = scope.split(":"), resource = _a[0], action = _a[1];
|
|
19237
|
+
// Check if any other selected scope implies this one
|
|
19238
|
+
return Array.from(selectedSet).some(function (s) {
|
|
19239
|
+
if (s === scope)
|
|
19240
|
+
return false;
|
|
19241
|
+
var _a = s.split(":"), r = _a[0], a = _a[1];
|
|
19242
|
+
if (r !== resource)
|
|
19243
|
+
return false;
|
|
19244
|
+
return (SCOPE_IMPLICATIONS[a] || []).includes(action);
|
|
19245
|
+
});
|
|
19246
|
+
}, [selectedSet]);
|
|
19247
|
+
return (React__default.createElement("div", { className: "scopePicker", "aria-label": "Permission scope picker" },
|
|
19248
|
+
React__default.createElement("div", { className: "scopePicker__presets" },
|
|
19249
|
+
React__default.createElement("span", { className: "scopePicker__presetsLabel" }, "Quick presets:"),
|
|
19250
|
+
React__default.createElement("div", { className: "scopePicker__presetButtons" }, SCOPE_PRESETS.map(function (preset) { return (React__default.createElement("button", { key: preset.id, type: "button", className: "scopePicker__presetBtn", onClick: function () { return handlePreset(preset.id); }, disabled: disabled }, preset.label)); }))),
|
|
19251
|
+
React__default.createElement("div", { className: "scopePicker__categories" }, visibleCategories.map(function (category) {
|
|
19252
|
+
var isExpanded = expandedCategories.has(category.id);
|
|
19253
|
+
var allSelected = isCategoryAllSelected(category.id);
|
|
19254
|
+
return (React__default.createElement("div", { key: category.id, className: "scopePicker__category ".concat(category.adminOnly ? "scopePicker__category--admin" : "") },
|
|
19255
|
+
React__default.createElement("div", { className: "scopePicker__categoryHeader" },
|
|
19256
|
+
React__default.createElement("label", { className: "scopePicker__categorySelect" },
|
|
19257
|
+
React__default.createElement("input", { type: "checkbox", checked: allSelected, onChange: function (e) { return handleCategorySelectAll(category.id, e.target.checked); }, disabled: disabled, "aria-label": "Select all ".concat(category.label, " scopes") }),
|
|
19258
|
+
React__default.createElement("span", { className: "scopePicker__categoryLabel" }, category.label)),
|
|
19259
|
+
React__default.createElement("button", { type: "button", className: "scopePicker__categoryToggle", onClick: function () { return toggleCategory(category.id); }, "aria-expanded": isExpanded, "aria-label": "".concat(isExpanded ? "Collapse" : "Expand", " ").concat(category.label) }, isExpanded ? "▲" : "▼")),
|
|
19260
|
+
isExpanded && (React__default.createElement("div", { className: "scopePicker__categoryBody" }, category.resources.map(function (resource) { return (React__default.createElement("div", { key: resource.resource, className: "scopePicker__resource" },
|
|
19261
|
+
React__default.createElement("span", { className: "scopePicker__resourceLabel" }, resource.label),
|
|
19262
|
+
React__default.createElement("div", { className: "scopePicker__actions" }, resource.actions.map(function (action) {
|
|
19263
|
+
var scope = "".concat(resource.resource, ":").concat(action);
|
|
19264
|
+
var checked = selectedSet.has(scope);
|
|
19265
|
+
var implied = isImplied(scope);
|
|
19266
|
+
return (React__default.createElement("label", { key: action, className: "scopePicker__action ".concat(implied ? "scopePicker__action--implied" : ""), title: implied ? "Automatically included by another selected permission" : undefined },
|
|
19267
|
+
React__default.createElement("input", { type: "checkbox", checked: checked, onChange: function (e) { return handleScopeToggle(scope, e.target.checked); }, disabled: disabled || implied, "aria-label": "".concat(resource.label, " ").concat(action) }),
|
|
19268
|
+
React__default.createElement("span", null, action)));
|
|
19269
|
+
})))); })))));
|
|
19270
|
+
})),
|
|
19271
|
+
value.length > 0 && (React__default.createElement("details", { className: "scopePicker__summary" },
|
|
19272
|
+
React__default.createElement("summary", null,
|
|
19273
|
+
"Selected permissions (",
|
|
19274
|
+
value.length,
|
|
19275
|
+
")"),
|
|
19276
|
+
React__default.createElement("div", { className: "scopePicker__summaryList" }, value.sort().map(function (scope) { return (React__default.createElement("span", { key: scope, className: "scopePicker__summaryChip" }, scope)); }))))));
|
|
19277
|
+
}
|
|
19278
|
+
|
|
18891
19279
|
var css_248z$2 = ".sideMenu-component-v2 {\n z-index: 8000;\n width: -moz-fit-content;\n width: fit-content;\n}\n.sideMenu-component-v2 .sideMenu-spacer {\n display: none;\n}\n.sideMenu-component-v2.minified:hover .sideMenu-spacer {\n display: block;\n}\n.sideMenu-component-v2 .sideMenu-wrapper {\n z-index: 8000;\n display: flex;\n height: 100%;\n flex-direction: column;\n width: 20rem;\n min-width: 20rem;\n max-width: 20rem;\n padding: 1rem;\n background: var(--shade100, #F3F2F2);\n position: relative;\n box-sizing: border-box;\n}\n.sideMenu-component-v2 .sideMenu-wrapper::-webkit-scrollbar {\n display: block;\n}\n.sideMenu-component-v2 .sideMenu-wrapper::-webkit-scrollbar-track:horizontal {\n position: absolute;\n bottom: -20px;\n}\n.sideMenu-component-v2 .sideMenu-wrapper::-webkit-scrollbar-track:vertical {\n border-bottom-left-radius: 0 !important;\n border-bottom-right-radius: 8px !important;\n border-top-right-radius: 8px !important;\n}\n.sideMenu-component-v2 .sideMenu-wrapper::-webkit-scrollbar-track {\n height: 2.5rem;\n width: 2.5rem;\n padding: 2rem;\n background-clip: content-box;\n border-bottom-left-radius: 8px;\n}\n.sideMenu-component-v2 .sideMenu-wrapper::-webkit-scrollbar-thumb {\n background: var(--body-font-color-2, var(--silver, #9B9B9B));\n border-radius: 24px;\n border-top: 5px solid var(--background-color-1, var(--white, #FFFFFF));\n border-bottom: 5px solid var(--background-color-1, var(--white, #FFFFFF));\n border-right: 5px solid var(--background-color-1, var(--white, #FFFFFF));\n border-left: 5px solid var(--background-color-1, var(--white, #FFFFFF));\n}\n.sideMenu-component-v2 .sideMenu-wrapper.minified:hover {\n box-shadow: 0px 0px 32px 0px rgba(0, 0, 0, 0.15);\n position: absolute !important;\n}\n.sideMenu-component-v2 .sideMenu-wrapper.minified:not(:hover) {\n gap: 1rem;\n max-width: 73px;\n min-width: 73px;\n}\n.sideMenu-component-v2 .sideMenu-wrapper.minified:not(:hover) .sideMenuHeader {\n display: none;\n}\n.sideMenu-component-v2 .sideMenu-wrapper.minified:not(:hover) .subNav-component-v2 button {\n padding: 0.75rem;\n margin-right: 0;\n}\n.sideMenu-component-v2 .sideMenu-wrapper.minified:not(:hover) .subNav-component-v2 button:not(.selected) {\n display: none;\n}\n.sideMenu-component-v2 .sideMenu-wrapper.minified:not(:hover) .sideMenuContainer-component-v2 .menuItemRow .sideMenuItem-component-v2.subItem,\n.sideMenu-component-v2 .sideMenu-wrapper.minified:not(:hover) .sideMenuContainer-component-v2 .menuItemRow .sideMenuItem-component-v2 .chevron {\n display: none;\n}\n.sideMenu-component-v2 .sideMenu-wrapper.minified:not(:hover) .sideMenuContainer-component-v2 .menuItemRow .sideMenuItem-component-v2 a {\n justify-content: center;\n}\n.sideMenu-component-v2 .sideMenu-wrapper.minified:not(:hover) .sideMenuContainer-component-v2 .menuItemRow .sideMenuItem-component-v2 a .MuiStack-root {\n display: none;\n}\n.sideMenu-component-v2 .sideMenu-wrapper.minified:not(:hover) .footer > .avatar-component-v2 {\n display: block;\n}\n.sideMenu-component-v2 .sideMenu-wrapper.minified:not(:hover) .footer button {\n display: none;\n}\n.sideMenu-component-v2 .sideMenu-wrapper .sideMenuHeader {\n margin-bottom: 1.5rem;\n}\n.sideMenu-component-v2 .sideMenu-wrapper .sideMenuHeader .minifyIcon {\n cursor: pointer;\n}\n.sideMenu-component-v2 .sideMenu-wrapper .search-component-v2 {\n margin-top: 1.5rem;\n position: relative;\n}\n.sideMenu-component-v2 .sideMenu-wrapper .search-component-v2 .inputContainer {\n padding: 0.75rem 1rem;\n box-shadow: unset;\n border-radius: 8px;\n border: 1px solid var(--shade200, #DBDADA);\n}\n.sideMenu-component-v2 .sideMenu-wrapper .search-component-v2:after {\n position: absolute;\n left: 0;\n bottom: -1.5rem;\n content: \"\";\n display: block;\n width: 100%;\n height: 1.5rem;\n background: linear-gradient(var(--shade100, #F3F2F2) 0%, transparent 100%);\n}\n.sideMenu-component-v2 .sideMenu-wrapper .subNav-component-v2 {\n width: 100%;\n position: relative;\n justify-content: space-between;\n}\n.sideMenu-component-v2 .sideMenu-wrapper .subNav-component-v2:after {\n position: absolute;\n left: 0;\n bottom: -1.5rem;\n content: \"\";\n display: block;\n width: 100%;\n height: 1.5rem;\n background: linear-gradient(var(--shade100, #F3F2F2) 0%, transparent 100%);\n}\n.sideMenu-component-v2 .sideMenu-wrapper .subNav-component-v2 button {\n flex: 1;\n}\n.sideMenu-component-v2 .sideMenu-wrapper .subNav-component-v2 button:not(.selected):not(:hover) {\n background: none;\n}\n.sideMenu-component-v2 .sideMenu-wrapper .subNav-component-v2 button:not(.selected):not(:hover) svg path:not(.noFill),\n.sideMenu-component-v2 .sideMenu-wrapper .subNav-component-v2 button:not(.selected):not(:hover) svg rect:not(.noFill) {\n fill: var(--secondary-brand-color, var(--teal, #0ABDAE));\n}\n.sideMenu-component-v2 .sideMenu-wrapper .subNav-component-v2 button:not(.selected):not(:hover) svg path.noFill,\n.sideMenu-component-v2 .sideMenu-wrapper .subNav-component-v2 button:not(.selected):not(:hover) svg rect.noFill {\n stroke: var(--secondary-brand-color, var(--teal, #0ABDAE));\n}\n.sideMenu-component-v2 .sideMenu-wrapper .sideMenuContainer-component-v2 {\n padding-top: 1.5rem;\n padding-bottom: 1.5rem;\n}\n.sideMenu-component-v2 .sideMenu-wrapper .footer {\n position: relative;\n justify-self: flex-end;\n}\n.sideMenu-component-v2 .sideMenu-wrapper .footer:before {\n position: absolute;\n left: 0;\n top: -1.5rem;\n content: \"\";\n display: block;\n width: 100%;\n height: 1.5rem;\n background: linear-gradient(transparent 0, var(--shade100, #F3F2F2) 100%);\n}\n.sideMenu-component-v2 .sideMenu-wrapper .footer > .avatar-component-v2 {\n display: none;\n}\n\n.sideMenuContainer-component-v2 {\n flex: 1;\n overflow-y: auto;\n}\n.sideMenuContainer-component-v2 .menuItemsContainer > .menuItemRow.divider {\n margin-top: 1rem;\n margin-bottom: 1rem;\n}\n.sideMenuContainer-component-v2 .menuItemsContainer > .menuItemRow.withSubItems.openedSubMenu .sideMenuItem-component-v2:nth-child(2) {\n margin-top: calc(0.5rem - 1px);\n}\n.sideMenuContainer-component-v2 .menuItemsContainer > .menuItemRow.withSubItems.openedSubMenu .sideMenuItem-component-v2:last-child {\n margin-bottom: calc(0.5rem - 1px);\n}\n.sideMenuContainer-component-v2 .menuItemsContainer > .menuItemRow.subSection {\n margin-top: 1rem;\n}\n.sideMenuContainer-component-v2 .menuItemsContainer > .menuItemRow:first-child {\n margin-top: 0;\n}\n.sideMenuContainer-component-v2 .menuItemsContainer .sideMenuItem-component-v2.subItem {\n margin-left: 2.75rem;\n}\n.sideMenuContainer-component-v2 .menuItemsContainer .sideMenuItem-component-v2.subItem > a,\n.sideMenuContainer-component-v2 .menuItemsContainer .sideMenuItem-component-v2.subItem > a > div > span {\n font-size: 0.875rem;\n}\n.sideMenuContainer-component-v2 .menuItemsContainer .sideMenuItem-component-v2.rotate .chevron {\n rotate: 180deg;\n}\n.sideMenuContainer-component-v2 .menuItemsContainer .sideMenuItem-component-v2.hasLocationSelected:hover a {\n cursor: default;\n background: unset !important;\n}\n\n.sideMenuItem-component-v2 {\n box-sizing: border-box;\n}\n.sideMenuItem-component-v2:hover a, .sideMenuItem-component-v2.selected a {\n background: var(--shade200, #DBDADA);\n}\n.sideMenuItem-component-v2.hasSubItemSelected > .MuiTypography-root .chevron {\n rotate: -90deg;\n}\n.sideMenuItem-component-v2 .avatar-component-v2 .MuiAvatar-root {\n border-color: var(--shade200, #DBDADA);\n background: var(--white, #FFFFFF);\n}\n.sideMenuItem-component-v2 .chevron {\n margin-left: 1rem;\n display: flex;\n justify-content: center;\n align-items: center;\n}\n.sideMenuItem-component-v2 a {\n display: flex;\n justify-content: space-between;\n align-items: center;\n padding: 0.75rem;\n border-radius: 8px;\n text-decoration: none !important;\n gap: 1rem;\n}\n.sideMenuItem-component-v2 a > .MuiStack-root {\n flex: 1;\n}\n.sideMenuItem-component-v2 a img {\n max-width: 80px;\n}\n.sideMenuItem-component-v2.soloItem a {\n border-radius: 16px;\n padding: 1.5rem;\n border: 1px solid var(--shade200, #DBDADA);\n}\n.sideMenuItem-component-v2.soloItem a:hover {\n border-color: var(--wild-sand, #dddddd);\n}\n.sideMenuItem-component-v2.soloItem .chevron {\n rotate: -90deg;\n}\n.sideMenuItem-component-v2.subSection {\n padding: 0.5rem 0.75rem 0.5rem 0.75rem;\n}";
|
|
18892
19280
|
styleInject(css_248z$2);
|
|
18893
19281
|
|
|
@@ -19745,6 +20133,45 @@ var PagesFactory = /** @class */ (function () {
|
|
|
19745
20133
|
return PagesFactory;
|
|
19746
20134
|
}());
|
|
19747
20135
|
|
|
20136
|
+
var PersonalAccessTokensFactory = /** @class */ (function () {
|
|
20137
|
+
function PersonalAccessTokensFactory() {
|
|
20138
|
+
}
|
|
20139
|
+
PersonalAccessTokensFactory.list = function () {
|
|
20140
|
+
return __awaiter(this, arguments, void 0, function (_a) {
|
|
20141
|
+
var _b = _a === void 0 ? {} : _a, page = _b.page, perPage = _b.perPage, status = _b.status;
|
|
20142
|
+
return __generator(this, function (_c) {
|
|
20143
|
+
return [2 /*return*/, listPats({ page: page, perPage: perPage, status: status }).then(function (data) {
|
|
20144
|
+
data.data = data.data.map(function (pat) { return new PersonalAccessTokenModel(pat); });
|
|
20145
|
+
return data;
|
|
20146
|
+
})];
|
|
20147
|
+
});
|
|
20148
|
+
});
|
|
20149
|
+
};
|
|
20150
|
+
PersonalAccessTokensFactory.get = function (_a) {
|
|
20151
|
+
return __awaiter(this, arguments, void 0, function (_b) {
|
|
20152
|
+
var keyPrefix = _b.keyPrefix;
|
|
20153
|
+
return __generator(this, function (_c) {
|
|
20154
|
+
return [2 /*return*/, getPat({ keyPrefix: keyPrefix }).then(function (data) {
|
|
20155
|
+
return new PersonalAccessTokenModel(data.data);
|
|
20156
|
+
})];
|
|
20157
|
+
});
|
|
20158
|
+
});
|
|
20159
|
+
};
|
|
20160
|
+
PersonalAccessTokensFactory.create = function (_a) {
|
|
20161
|
+
return __awaiter(this, arguments, void 0, function (_b) {
|
|
20162
|
+
var name = _b.name, scopes = _b.scopes, expiresAt = _b.expiresAt, allowedAccountIds = _b.allowedAccountIds;
|
|
20163
|
+
return __generator(this, function (_c) {
|
|
20164
|
+
return [2 /*return*/, createPat({ name: name, scopes: scopes, expiresAt: expiresAt, allowedAccountIds: allowedAccountIds }).then(function (data) {
|
|
20165
|
+
var _a = data.data, plaintext = _a.plaintext, patData = __rest(_a, ["plaintext"]);
|
|
20166
|
+
trackEvent(EEvents.PAT_CREATED, { name: name, scopes: scopes });
|
|
20167
|
+
return { pat: new PersonalAccessTokenModel(patData), plaintext: plaintext };
|
|
20168
|
+
})];
|
|
20169
|
+
});
|
|
20170
|
+
});
|
|
20171
|
+
};
|
|
20172
|
+
return PersonalAccessTokensFactory;
|
|
20173
|
+
}());
|
|
20174
|
+
|
|
19748
20175
|
var PopupsFactory = /** @class */ (function () {
|
|
19749
20176
|
function PopupsFactory() {
|
|
19750
20177
|
}
|
|
@@ -20129,4 +20556,4 @@ var UsersFactory = /** @class */ (function () {
|
|
|
20129
20556
|
return UsersFactory;
|
|
20130
20557
|
}());
|
|
20131
20558
|
|
|
20132
|
-
export { AccountModel, AccountsFactory, ActionBarContainer, ActionBarContainerHandler, AssetManager, AutomationModel, AutomationsFactory, Avatar, BillingFactory, BrandWrapper, BrandsFactory, Button, ButtonMenu, CampaignModel, CampaignsFactory, Checkbox, Chip, CircularProgress, CodeInput, ColManager, ColorTextField, CommonFormModel, ContactModel, ContactsFactory, ContentSectionContainer, CountryDropdown, CustomDomainModel, CustomDomainsFactory, CustomerModel, DataTable, DataTableHead, DataTableRow, DateCalendar, DatePicker, DateTimeCalendar, DateTimePicker, Dialog, DialogActions, DialogHandler, DialogTitle, Divider, Drawer, DrawerHandler, DropMenu, Dropdown, EApiLanguages, EAssetManagerMatchType, ECampaignStatuses, ECertificateStatus, EDnsStatus, EEMailSummaryStatuses, EEditorType, EEmailAttachementTypes, EEmailLogType, EEmailLogTypeParam, EEmailProviders, EEmailStatuses, EEmailSummaryEngagement, EEvents, EIngressRouteStatus, EListAttributeType, EMethods, EOperatorTypes, EPageBranding, EPartialInfoPool, EPopupBranding, EPopupBrowserType, EPopupCloseButtonPosition, EPopupDeviceType, EPopupDisplayFrequency, EPopupPosition, EPopupTriggerType, EStorageType, ETaskType, ElementContains, Email, EmailAPIFactory, EmptyContent, EnhancedFormModel, FileUpload, FilterBar, FormModel, FormsFactory, FullBar, GenericWrapper, GenericWrapperContext, GroupedActions, Header, Icon, IconPill, InformationGroup, InlineTextEdit, LinearProgress, Link, ListCampaignModel, ListModel, ListPageModel, ListPopupModel, ListTemplateModel, ListsFactory, LoadingContainer, LocationTextField, Logo, MD5, MetricCard, Modal, ModalHandler, ModalHeading, Overlay, OverlayHandler, OverlayHeading, PageModel, PagesFactory, PhoneTextField, PopupModel, PopupsFactory, Radio, ResourceEdit, Search, SenderModel, SendersFactory, SideMenu, SideMenuContainer, SideMenuItem, SubNav, SummaryEnhancedFormModel, SuppressedEmailsFactory, SystemEmailsFactory, SystemEmailsModel, TagsFactory, TasksFactory, TemplateModel, TemplatesFactory, TextField, TimePicker, TimeSelector, Toggle, TopMenu, Typography, UserModel, UsersFactory, acceptListPolicy, addInterestsToContactsOfList, addPartialInformation, addSuppressedEmail, addToImpersonificationTree, amIImpersonating, amILoggedInService, archiveCampaign, areAllPropertiesEmpty, buildMUITheme, callApi, camelCase, camelToSnakeCase, cancelCampaign, capitalizeFirstLetter, cleanPostHogId, clearImpersonificationTree, clearStorage, copyToClipboard, createAccount, createBrand, createCampaign, createCampaignLogsExports, createCampaignsReportsExport, createContactsExport, createCustomDomain, createForm, createPage, createPopup, createSender, createSuppressedEmailExport, createTemplate, deepMergeObject, deleteAccount, deleteAnyAutomation, deleteAutomation, deleteCampaign, deleteCampaignsReportsExport, deleteContact, deleteCustomDomain, deleteForm, deleteList, deletePage, deletePartialInformation, deletePopup, deleteSender, deleteStorageItem, deleteSuppressedEmail, deleteTaskService, deleteTemplate, deleteUser, deleteWorkflow, descendingComparator, disableForm, disablePage, disablePopup, domainHasValidCertificateService, downloadCampaignLogExport, downloadCampaignsReportsExport, downloadContactsExport, downloadListLogExport, downloadSuppressedEmailExport, emptyAccountAddress, emptyAccountLimits, enableForm, enablePage, enablePopup, enrichBrand, enrichOrganization, enrichProfile, eventCondition, eventIdentify, eventLogout, fetchRetry, fetchRoute, findNestedProperty, formatNumber, getAccount, getAccountMetadata, getAccountReport, getAdjustedBillingCycle, getAllAutomationStats, getAutomation, getAutomationEmailContent, getAutomationExecutionsCount, getAutomationStats, getBeeTokenService, getBestLocalMatch, getBrand, getBrandService, getBrandUrl, getCalendarFormat, getCampaign, getCampaignLinks, getCampaignLinksReport, getCampaignLogs, getCampaignLogsExports, getCampaignReport, getCampaignRevisions, getCampaignsReportsExport, getComparator, getContactsExport, getCustomDomain, getCustomerProfile, getDate, getDomainFromEmail, getDomainsFromEmails, getDomainsService, getEmail, getEmailActivitySummary, getEmailReport, getEndOfDate, getForm, getHashQueryWithoutHistory, getIconSize, getList, getListLogs, getListReport, getNestedProperty, getPage, getPopup, getPropertyValue, getSender, getStartOfDate, getStorage, getSuppressedEmailExport, getTColor, getTaskService, getTemplate, getUnixTime, getUrlQueryParam, getUser, getUtmCookies, googlePlacesMapper, hasDecimal, impersonateService, initFieldValidation, initPostHog, isColorLight, isDomainValidService, isPublicEmailProviderService, isSimpleType, isValidEmail, isValidString, isValidUrl, lisTEmailTags, listAccounts, listAutomations, listCampaigns, listCampaignsReportsExports, listContacts, listCustomDomains, listDkimService, listEmailLogs, listForms, listList, listListAttributes, listListInterests, listPages, listPopups, listSenders, listSuppressedEmails, listSystemEmails, listTasksService, listTemplates, listUsers, listWorkflows, logOutService, loginService, miliToSecond, modelSet, modelToJson, originalBrand, patchAccountDomainsService, patchForm, popImpersonificationTree, postMessage, publishForm, publishPage, publishPopup, reScheduleCampaign, removeEmptyProperties, removeInterestsFromContactsOfList, removeQueryParams, removeTrailingChar, renderCampaign, renderEmail, renderForm, renderPage, renderPopup, renderPublicHtmlForm, renderTemplate, requestSupportService, resendEmail, resendVerificationEmail, resumeCampaign, saveList, scheduleCampaign, searchCustomerProfiles, sendCampaignTest, setBrandHeadElements, setStorage, shareTemplate, splitArray, splitObject, stableSort, startPromisePool, suspendAccount, suspendCampaign, tagContact, tagsContactsOfList, trackEvent, truncateEmail, truncateText, uiKitConfig, unArchiveCampaign, unScheduleCampaign, unSuspendAccount, unshareTemplate, unsubscribeContact, untagContact, untagContactsOfList, updateAccount, updateAndClearUrlParams, updateAnyAutomation, updateAutomation, updateCampaign, updatePage, updatePopup, updateSystemEmails, updateTemplate, updateUser, updateWorkflow, validateColor, validateEmail, validateGenericInput, validateUrl, verifyCustomDomain, verifyTrackingCnamesService, wait, whiteLabelBrand, whoAmi };
|
|
20559
|
+
export { AccountModel, AccountsFactory, ActionBarContainer, ActionBarContainerHandler, AssetManager, AutomationModel, AutomationsFactory, Avatar, BillingFactory, BrandWrapper, BrandsFactory, Button, ButtonMenu, CampaignModel, CampaignsFactory, Checkbox, Chip, CircularProgress, CodeInput, ColManager, ColorTextField, CommonFormModel, ContactModel, ContactsFactory, ContentSectionContainer, CountryDropdown, CustomDomainModel, CustomDomainsFactory, CustomerModel, DataTable, DataTableHead, DataTableRow, DateCalendar, DatePicker, DateTimeCalendar, DateTimePicker, Dialog, DialogActions, DialogHandler, DialogTitle, Divider, Drawer, DrawerHandler, DropMenu, Dropdown, EApiLanguages, EAssetManagerMatchType, ECampaignStatuses, ECertificateStatus, EDnsStatus, EEMailSummaryStatuses, EEditorType, EEmailAttachementTypes, EEmailLogType, EEmailLogTypeParam, EEmailProviders, EEmailStatuses, EEmailSummaryEngagement, EEvents, EIngressRouteStatus, EListAttributeType, EMethods, EOperatorTypes, EPageBranding, EPartialInfoPool, EPopupBranding, EPopupBrowserType, EPopupCloseButtonPosition, EPopupDeviceType, EPopupDisplayFrequency, EPopupPosition, EPopupTriggerType, EStorageType, ETaskType, ElementContains, Email, EmailAPIFactory, EmptyContent, EnhancedFormModel, FileUpload, FilterBar, FormModel, FormsFactory, FullBar, GenericWrapper, GenericWrapperContext, GroupedActions, Header, Icon, IconPill, InformationGroup, InlineTextEdit, LinearProgress, Link, ListCampaignModel, ListModel, ListPageModel, ListPopupModel, ListTemplateModel, ListsFactory, LoadingContainer, LocationTextField, Logo, MD5, MetricCard, Modal, ModalHandler, ModalHeading, Overlay, OverlayHandler, OverlayHeading, PageModel, PagesFactory, PersonalAccessTokenModel, PersonalAccessTokensFactory, PhoneTextField, PopupModel, PopupsFactory, Radio, ResourceEdit, ScopePicker, Search, SenderModel, SendersFactory, SideMenu, SideMenuContainer, SideMenuItem, SubNav, SummaryEnhancedFormModel, SuppressedEmailsFactory, SystemEmailsFactory, SystemEmailsModel, TagsFactory, TasksFactory, TemplateModel, TemplatesFactory, TextField, TimePicker, TimeSelector, Toggle, TopMenu, Typography, UserModel, UsersFactory, acceptListPolicy, addInterestsToContactsOfList, addPartialInformation, addSuppressedEmail, addToImpersonificationTree, amIImpersonating, amILoggedInService, archiveCampaign, areAllPropertiesEmpty, buildMUITheme, callApi, camelCase, camelToSnakeCase, cancelCampaign, capitalizeFirstLetter, cleanPostHogId, clearImpersonificationTree, clearStorage, copyToClipboard, createAccount, createBrand, createCampaign, createCampaignLogsExports, createCampaignsReportsExport, createContactsExport, createCustomDomain, createForm, createPage, createPat, createPopup, createSender, createSuppressedEmailExport, createTemplate, deepMergeObject, deleteAccount, deleteAnyAutomation, deleteAutomation, deleteCampaign, deleteCampaignsReportsExport, deleteContact, deleteCustomDomain, deleteForm, deleteList, deletePage, deletePartialInformation, deletePopup, deleteSender, deleteStorageItem, deleteSuppressedEmail, deleteTaskService, deleteTemplate, deleteUser, deleteWorkflow, descendingComparator, disableForm, disablePage, disablePopup, domainHasValidCertificateService, downloadCampaignLogExport, downloadCampaignsReportsExport, downloadContactsExport, downloadListLogExport, downloadSuppressedEmailExport, emptyAccountAddress, emptyAccountLimits, enableForm, enablePage, enablePopup, enrichBrand, enrichOrganization, enrichProfile, eventCondition, eventIdentify, eventLogout, fetchRetry, fetchRoute, findNestedProperty, formatNumber, getAccount, getAccountMetadata, getAccountReport, getAdjustedBillingCycle, getAllAutomationStats, getAutomation, getAutomationEmailContent, getAutomationExecutionsCount, getAutomationStats, getBeeTokenService, getBestLocalMatch, getBrand, getBrandService, getBrandUrl, getCalendarFormat, getCampaign, getCampaignLinks, getCampaignLinksReport, getCampaignLogs, getCampaignLogsExports, getCampaignReport, getCampaignRevisions, getCampaignsReportsExport, getComparator, getContactsExport, getCustomDomain, getCustomerProfile, getDate, getDomainFromEmail, getDomainsFromEmails, getDomainsService, getEmail, getEmailActivitySummary, getEmailReport, getEndOfDate, getForm, getHashQueryWithoutHistory, getIconSize, getList, getListLogs, getListReport, getNestedProperty, getPage, getPat, getPopup, getPropertyValue, getSender, getStartOfDate, getStorage, getSuppressedEmailExport, getTColor, getTaskService, getTemplate, getUnixTime, getUrlQueryParam, getUser, getUtmCookies, googlePlacesMapper, hasDecimal, impersonateService, initFieldValidation, initPostHog, isColorLight, isDomainValidService, isPublicEmailProviderService, isSimpleType, isValidEmail, isValidString, isValidUrl, lisTEmailTags, listAccounts, listAutomations, listCampaigns, listCampaignsReportsExports, listContacts, listCustomDomains, listDkimService, listEmailLogs, listForms, listList, listListAttributes, listListInterests, listPages, listPats, listPopups, listSenders, listSuppressedEmails, listSystemEmails, listTasksService, listTemplates, listUsers, listWorkflows, logOutService, loginService, miliToSecond, modelSet, modelToJson, originalBrand, patchAccountDomainsService, patchForm, popImpersonificationTree, postMessage, publishForm, publishPage, publishPopup, reScheduleCampaign, removeEmptyProperties, removeInterestsFromContactsOfList, removeQueryParams, removeTrailingChar, renderCampaign, renderEmail, renderForm, renderPage, renderPopup, renderPublicHtmlForm, renderTemplate, requestSupportService, resendEmail, resendVerificationEmail, resumeCampaign, revokePat, saveList, scheduleCampaign, searchCustomerProfiles, sendCampaignTest, setBrandHeadElements, setStorage, shareTemplate, splitArray, splitObject, stableSort, startPromisePool, suspendAccount, suspendCampaign, tagContact, tagsContactsOfList, trackEvent, truncateEmail, truncateText, uiKitConfig, unArchiveCampaign, unScheduleCampaign, unSuspendAccount, unshareTemplate, unsubscribeContact, untagContact, untagContactsOfList, updateAccount, updateAndClearUrlParams, updateAnyAutomation, updateAutomation, updateCampaign, updatePage, updatePat, updatePopup, updateSystemEmails, updateTemplate, updateUser, updateWorkflow, validateColor, validateEmail, validateGenericInput, validateUrl, verifyCustomDomain, verifyTrackingCnamesService, wait, whiteLabelBrand, whoAmi };
|