@levo-so/core 0.1.52 → 0.1.58
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/client.d.ts +1 -1
- package/dist/constants/collection/fieldInterfaces.d.ts +5 -2
- package/dist/constants/integration.d.ts +1 -3
- package/dist/index.js +20 -28
- package/dist/types/collection/lemaCollection.d.ts +31 -2
- package/dist/types/event.d.ts +17 -3
- package/dist/types/media.d.ts +22 -0
- package/dist/types/membership/index.d.ts +3 -1
- package/dist/types/workspace.d.ts +34 -0
- package/package.json +1 -1
package/dist/client.d.ts
CHANGED
|
@@ -45,7 +45,7 @@ export declare const createLevoClient: (options: ILevoClientOptions) => {
|
|
|
45
45
|
signUpWithPassword: <T = import(".").ILevoMembership.Account>(data: import(".").ILevoMembership.Request.SignUpWithPassword, options?: import("wretch").WretchOptions) => Promise<T>;
|
|
46
46
|
};
|
|
47
47
|
readonly collection: {
|
|
48
|
-
getAllCollections: (data?: import(".").LevoQuery.FindQuery<"id" | "workspace_id" | "description" | "created_at" | "updated_at" | "key" | "readonly" | "hidden" | "icon" | "name" | "sections" | "views" | "title_field" | "email_field" | "
|
|
48
|
+
getAllCollections: (data?: import(".").LevoQuery.FindQuery<"id" | "workspace_id" | "description" | "created_at" | "updated_at" | "key" | "readonly" | "hidden" | "icon" | "on_submit" | "on_update" | "name" | "sections" | "views" | "title_field" | "email_field" | "mobile_field" | "settings" | "module_name" | "allow_draft">, options?: import("wretch").WretchOptions) => Promise<import(".").IResponseMultiple<import(".").ILemaCollection>>;
|
|
49
49
|
getCollectionByIDExpanded: <T = import(".").ILemaCollection>(id: string, options?: import("wretch").WretchOptions) => Promise<import(".").IResponseSingle<T>>;
|
|
50
50
|
createCollection: (data: import(".").ILemaCollection) => Promise<import(".").IResponseSingle<import(".").ILemaCollection>>;
|
|
51
51
|
saveCollectionData: ({ collection_id, data, options, }: {
|
|
@@ -1,3 +1,6 @@
|
|
|
1
|
-
export declare const
|
|
2
|
-
export declare const
|
|
1
|
+
export declare const CommonFieldInterfacesList: readonly ["TextWidget", "CurrencyWidget", "TextareaWidget", "GeocoderWidget", "MultiGeocoderWidget", "DropdownWidget", "ToggleCheckboxWidget", "RadioWidget", "NumberWidget", "EmailWidget", "PhoneWidget", "URLWidget", "DateWidget", "SwitchWidget", "RichTextWidget", "DateTimeWidget", "CheckboxWidget", "ImageUploadWidget", "MultiImageUploadWidget", "FileUploadWidget", "MultiFileUploadWidget", "MultiDropdownWidget", "MultiTextWidget"];
|
|
2
|
+
export declare const ComplexFieldInterfacesList: readonly ["CollectionWidget", "ArrayWidget", "RecordWidget", "JSONWidget", "SlugWidget"];
|
|
3
|
+
export declare const FieldInterfacesList: readonly ["TextWidget", "CurrencyWidget", "TextareaWidget", "GeocoderWidget", "MultiGeocoderWidget", "DropdownWidget", "ToggleCheckboxWidget", "RadioWidget", "NumberWidget", "EmailWidget", "PhoneWidget", "URLWidget", "DateWidget", "SwitchWidget", "RichTextWidget", "DateTimeWidget", "CheckboxWidget", "ImageUploadWidget", "MultiImageUploadWidget", "FileUploadWidget", "MultiFileUploadWidget", "MultiDropdownWidget", "MultiTextWidget", "CollectionWidget", "ArrayWidget", "RecordWidget", "JSONWidget", "SlugWidget"];
|
|
4
|
+
export declare const CommonFieldIntefaces: Record<"TextWidget" | "CurrencyWidget" | "TextareaWidget" | "GeocoderWidget" | "MultiGeocoderWidget" | "DropdownWidget" | "ToggleCheckboxWidget" | "RadioWidget" | "NumberWidget" | "EmailWidget" | "PhoneWidget" | "URLWidget" | "DateWidget" | "SwitchWidget" | "RichTextWidget" | "DateTimeWidget" | "CheckboxWidget" | "ImageUploadWidget" | "MultiImageUploadWidget" | "FileUploadWidget" | "MultiFileUploadWidget" | "MultiDropdownWidget" | "MultiTextWidget", "TextWidget" | "CurrencyWidget" | "TextareaWidget" | "GeocoderWidget" | "MultiGeocoderWidget" | "DropdownWidget" | "ToggleCheckboxWidget" | "RadioWidget" | "NumberWidget" | "EmailWidget" | "PhoneWidget" | "URLWidget" | "DateWidget" | "SwitchWidget" | "RichTextWidget" | "DateTimeWidget" | "CheckboxWidget" | "ImageUploadWidget" | "MultiImageUploadWidget" | "FileUploadWidget" | "MultiFileUploadWidget" | "MultiDropdownWidget" | "MultiTextWidget">;
|
|
5
|
+
export declare const FieldInterfaces: Record<"TextWidget" | "CurrencyWidget" | "TextareaWidget" | "GeocoderWidget" | "MultiGeocoderWidget" | "DropdownWidget" | "ToggleCheckboxWidget" | "RadioWidget" | "NumberWidget" | "EmailWidget" | "PhoneWidget" | "URLWidget" | "DateWidget" | "SwitchWidget" | "RichTextWidget" | "DateTimeWidget" | "CheckboxWidget" | "ImageUploadWidget" | "MultiImageUploadWidget" | "FileUploadWidget" | "MultiFileUploadWidget" | "MultiDropdownWidget" | "MultiTextWidget" | "CollectionWidget" | "ArrayWidget" | "RecordWidget" | "JSONWidget" | "SlugWidget", "TextWidget" | "CurrencyWidget" | "TextareaWidget" | "GeocoderWidget" | "MultiGeocoderWidget" | "DropdownWidget" | "ToggleCheckboxWidget" | "RadioWidget" | "NumberWidget" | "EmailWidget" | "PhoneWidget" | "URLWidget" | "DateWidget" | "SwitchWidget" | "RichTextWidget" | "DateTimeWidget" | "CheckboxWidget" | "ImageUploadWidget" | "MultiImageUploadWidget" | "FileUploadWidget" | "MultiFileUploadWidget" | "MultiDropdownWidget" | "MultiTextWidget" | "CollectionWidget" | "ArrayWidget" | "RecordWidget" | "JSONWidget" | "SlugWidget">;
|
|
3
6
|
//# sourceMappingURL=fieldInterfaces.d.ts.map
|
|
@@ -1,14 +1,12 @@
|
|
|
1
1
|
export declare const LEVO_INTEGRATIONS: {
|
|
2
2
|
readonly beacon: "so.levo.beacon";
|
|
3
3
|
readonly blog: "so.levo.blog";
|
|
4
|
-
readonly collection: "so.levo.collection";
|
|
5
4
|
readonly event: "so.levo.event";
|
|
6
5
|
readonly membership: "so.levo.membership";
|
|
7
6
|
readonly payment: "so.levo.payment";
|
|
8
|
-
readonly studio: "so.levo.studio";
|
|
9
7
|
readonly search_console: "com.google.search_console";
|
|
10
8
|
};
|
|
11
|
-
export declare const LEVO_INTEGRATIONS_LIST: ("so.levo.beacon" | "so.levo.blog" | "so.levo.
|
|
9
|
+
export declare const LEVO_INTEGRATIONS_LIST: ("so.levo.beacon" | "so.levo.blog" | "so.levo.event" | "so.levo.membership" | "so.levo.payment" | "com.google.search_console")[];
|
|
12
10
|
export type ILevoIntegrationList = (typeof LEVO_INTEGRATIONS)[keyof typeof LEVO_INTEGRATIONS][];
|
|
13
11
|
export type ILevoIntegrationInstance = {
|
|
14
12
|
id: string;
|
package/dist/index.js
CHANGED
|
@@ -1416,15 +1416,6 @@ var FieldKind = {
|
|
|
1416
1416
|
"array-json": "array-json"
|
|
1417
1417
|
};
|
|
1418
1418
|
var interfaceKinds = {
|
|
1419
|
-
// IdentifierWidget: 'identifier',
|
|
1420
|
-
// SlugWidget: 'string',
|
|
1421
|
-
// BlogWidget: 'string',
|
|
1422
|
-
// TimeWidget: 'date',
|
|
1423
|
-
// VideoUploadWidget: 'file',
|
|
1424
|
-
// MediaUploadWidget: 'file',
|
|
1425
|
-
// TextSliderWidget: 'number',
|
|
1426
|
-
// SliderWidget: 'number',
|
|
1427
|
-
// RangeSliderWidget: 'array-number',
|
|
1428
1419
|
ArrayWidget: FieldKind.group,
|
|
1429
1420
|
RecordWidget: FieldKind.record,
|
|
1430
1421
|
TextWidget: FieldKind.string,
|
|
@@ -1456,9 +1447,7 @@ var interfaceKinds = {
|
|
|
1456
1447
|
};
|
|
1457
1448
|
|
|
1458
1449
|
// src/constants/collection/fieldInterfaces.ts
|
|
1459
|
-
var
|
|
1460
|
-
"ArrayWidget",
|
|
1461
|
-
"RecordWidget",
|
|
1450
|
+
var CommonFieldInterfacesList = [
|
|
1462
1451
|
"TextWidget",
|
|
1463
1452
|
"CurrencyWidget",
|
|
1464
1453
|
"TextareaWidget",
|
|
@@ -1481,21 +1470,26 @@ var FieldInterfacesList = [
|
|
|
1481
1470
|
"FileUploadWidget",
|
|
1482
1471
|
"MultiFileUploadWidget",
|
|
1483
1472
|
"MultiDropdownWidget",
|
|
1484
|
-
"JSONWidget",
|
|
1485
|
-
"SlugWidget",
|
|
1486
|
-
"CollectionWidget",
|
|
1487
1473
|
"MultiTextWidget"
|
|
1488
|
-
// 'MediaUploadWidget',
|
|
1489
|
-
// 'VideoUploadWidget',
|
|
1490
|
-
// 'GroupCollectionWidget',
|
|
1491
|
-
// 'SliderWidget',
|
|
1492
|
-
// 'RangeSliderWidget',
|
|
1493
|
-
// 'IdentifierWidget',
|
|
1494
|
-
// 'SlugWidget',
|
|
1495
|
-
// 'BlogWidget',
|
|
1496
|
-
// 'TimeWidget',
|
|
1497
|
-
// 'TextSliderWidget',
|
|
1498
1474
|
];
|
|
1475
|
+
var ComplexFieldInterfacesList = [
|
|
1476
|
+
"CollectionWidget",
|
|
1477
|
+
"ArrayWidget",
|
|
1478
|
+
"RecordWidget",
|
|
1479
|
+
"JSONWidget",
|
|
1480
|
+
"SlugWidget"
|
|
1481
|
+
];
|
|
1482
|
+
var FieldInterfacesList = [
|
|
1483
|
+
...CommonFieldInterfacesList,
|
|
1484
|
+
...ComplexFieldInterfacesList
|
|
1485
|
+
];
|
|
1486
|
+
var CommonFieldIntefaces = CommonFieldInterfacesList.reduce(
|
|
1487
|
+
(acc, curr) => {
|
|
1488
|
+
acc[curr] = curr;
|
|
1489
|
+
return acc;
|
|
1490
|
+
},
|
|
1491
|
+
{}
|
|
1492
|
+
);
|
|
1499
1493
|
var FieldInterfaces = FieldInterfacesList.reduce(
|
|
1500
1494
|
(acc, curr) => {
|
|
1501
1495
|
acc[curr] = curr;
|
|
@@ -1518,11 +1512,9 @@ var MediaKind = MediaKindList.reduce(
|
|
|
1518
1512
|
var LEVO_INTEGRATIONS = {
|
|
1519
1513
|
beacon: "so.levo.beacon",
|
|
1520
1514
|
blog: "so.levo.blog",
|
|
1521
|
-
collection: "so.levo.collection",
|
|
1522
1515
|
event: "so.levo.event",
|
|
1523
1516
|
membership: "so.levo.membership",
|
|
1524
1517
|
payment: "so.levo.payment",
|
|
1525
|
-
studio: "so.levo.studio",
|
|
1526
1518
|
search_console: "com.google.search_console"
|
|
1527
1519
|
};
|
|
1528
1520
|
var LEVO_INTEGRATIONS_LIST = Object.values(LEVO_INTEGRATIONS);
|
|
@@ -1538,4 +1530,4 @@ var formatImagePath = (string) => {
|
|
|
1538
1530
|
return "";
|
|
1539
1531
|
};
|
|
1540
1532
|
|
|
1541
|
-
export { AnalyticsEvents, AnalyticsEventsList, FieldInterfaces, FieldInterfacesList, FieldKind, FieldKindList, LEVO_INTEGRATIONS, LEVO_INTEGRATIONS_LIST, LevoError, LevoOAuthProviderList, LocalStorageLock, MediaKind, MediaKindList, createLevoClient, defaultByKinds, formatImagePath, formatsByInterface, getLevoError, interfaceKinds };
|
|
1533
|
+
export { AnalyticsEvents, AnalyticsEventsList, CommonFieldIntefaces, CommonFieldInterfacesList, ComplexFieldInterfacesList, FieldInterfaces, FieldInterfacesList, FieldKind, FieldKindList, LEVO_INTEGRATIONS, LEVO_INTEGRATIONS_LIST, LevoError, LevoOAuthProviderList, LocalStorageLock, MediaKind, MediaKindList, createLevoClient, defaultByKinds, formatImagePath, formatsByInterface, getLevoError, interfaceKinds };
|
|
@@ -3,8 +3,35 @@
|
|
|
3
3
|
* @see IIcon
|
|
4
4
|
*/
|
|
5
5
|
import type { IIcon } from "../emoji";
|
|
6
|
+
import { LevoQuery } from "../levo-query";
|
|
6
7
|
import type { ICollectionViews } from "../schema/schema";
|
|
7
8
|
import type { ILemaSection } from "./lemaSection";
|
|
9
|
+
export interface INotificationData {
|
|
10
|
+
id?: string;
|
|
11
|
+
kind: string;
|
|
12
|
+
subkind: string;
|
|
13
|
+
enabled?: boolean;
|
|
14
|
+
condition?: LevoQuery.Where;
|
|
15
|
+
options: {
|
|
16
|
+
to_email: string | string[];
|
|
17
|
+
subject?: string;
|
|
18
|
+
template_key: string;
|
|
19
|
+
from_name: string;
|
|
20
|
+
reply_to?: string;
|
|
21
|
+
cc_email?: string[];
|
|
22
|
+
bcc_email?: string[];
|
|
23
|
+
info: {
|
|
24
|
+
show_download_button?: boolean;
|
|
25
|
+
hide_fields?: string[];
|
|
26
|
+
body?: string;
|
|
27
|
+
subject?: string;
|
|
28
|
+
richtext?: string;
|
|
29
|
+
};
|
|
30
|
+
};
|
|
31
|
+
}
|
|
32
|
+
export interface INotificationWithTrigger extends INotificationData {
|
|
33
|
+
trigger: "on_submit" | "on_update";
|
|
34
|
+
}
|
|
8
35
|
/**
|
|
9
36
|
* Defines the schema structure for a Levo Collection.
|
|
10
37
|
*
|
|
@@ -35,6 +62,8 @@ export interface ILemaCollection {
|
|
|
35
62
|
title_field?: string | null;
|
|
36
63
|
/** Optional field name used for email in the collection. */
|
|
37
64
|
email_field?: string | null;
|
|
65
|
+
/** Optional field name used for mobile in the collection. */
|
|
66
|
+
mobile_field?: string | null;
|
|
38
67
|
/** Whether the collection is hidden from the UI. */
|
|
39
68
|
hidden?: boolean;
|
|
40
69
|
/** Whether the collection is read-only. */
|
|
@@ -44,9 +73,9 @@ export interface ILemaCollection {
|
|
|
44
73
|
/** Optional module name associated with the collection. */
|
|
45
74
|
module_name?: string | null;
|
|
46
75
|
/** Optional configuration for actions to perform on submit. */
|
|
47
|
-
on_submit?:
|
|
76
|
+
on_submit?: INotificationData[];
|
|
48
77
|
/** Optional configuration for actions to perform on update. */
|
|
49
|
-
on_update?:
|
|
78
|
+
on_update?: INotificationData[];
|
|
50
79
|
/** Date or string representing when the collection was created. */
|
|
51
80
|
created_at?: Date | string;
|
|
52
81
|
/** Date or string representing when the collection was last updated. */
|
package/dist/types/event.d.ts
CHANGED
|
@@ -10,6 +10,8 @@ export declare namespace LevoEvent {
|
|
|
10
10
|
timing: string;
|
|
11
11
|
url: string | null;
|
|
12
12
|
location: IGeocoderLocation | null;
|
|
13
|
+
is_location_public?: boolean;
|
|
14
|
+
is_url_public?: boolean;
|
|
13
15
|
starts_at?: string | null;
|
|
14
16
|
ends_at?: string | null;
|
|
15
17
|
cadence: string;
|
|
@@ -25,6 +27,17 @@ export declare namespace LevoEvent {
|
|
|
25
27
|
updated_at: Date;
|
|
26
28
|
updated_by: string;
|
|
27
29
|
external_ticketing?: string;
|
|
30
|
+
ticket_order?: "alphabetical-asc" | "alphabetical-desc" | "price-asc" | "price-desc" | "custom";
|
|
31
|
+
series?: {
|
|
32
|
+
_id: string;
|
|
33
|
+
slug: string;
|
|
34
|
+
name: string;
|
|
35
|
+
description?: string;
|
|
36
|
+
cover_image?: IMediaObject | null;
|
|
37
|
+
status?: string;
|
|
38
|
+
created_at?: string;
|
|
39
|
+
updated_at?: string;
|
|
40
|
+
};
|
|
28
41
|
}
|
|
29
42
|
namespace Ticket {
|
|
30
43
|
interface Root {
|
|
@@ -69,6 +82,7 @@ export declare namespace LevoEvent {
|
|
|
69
82
|
expires_at: Date | null;
|
|
70
83
|
max_redemptions: number | null;
|
|
71
84
|
minimum_amount: number | null;
|
|
85
|
+
is_public: boolean;
|
|
72
86
|
created_at: Date;
|
|
73
87
|
created_by: string;
|
|
74
88
|
updated_at: Date;
|
|
@@ -76,12 +90,12 @@ export declare namespace LevoEvent {
|
|
|
76
90
|
status: string;
|
|
77
91
|
tickets: string[];
|
|
78
92
|
}
|
|
79
|
-
type Create = Pick<Root, "code" | "kind" | "percent_off" | "amount_off" | "currency" | "starts_at" | "expires_at" | "max_redemptions" | "minimum_amount" | "tickets">;
|
|
80
|
-
type CreateBulk = Pick<Root, "kind" | "percent_off" | "amount_off" | "currency" | "starts_at" | "expires_at" | "max_redemptions" | "minimum_amount" | "tickets"> & {
|
|
93
|
+
type Create = Pick<Root, "code" | "kind" | "percent_off" | "amount_off" | "currency" | "starts_at" | "expires_at" | "max_redemptions" | "minimum_amount" | "is_public" | "tickets">;
|
|
94
|
+
type CreateBulk = Pick<Root, "kind" | "percent_off" | "amount_off" | "currency" | "starts_at" | "expires_at" | "max_redemptions" | "minimum_amount" | "is_public" | "tickets"> & {
|
|
81
95
|
coupon_count: number;
|
|
82
96
|
code_length: number;
|
|
83
97
|
};
|
|
84
|
-
type Update = Partial<Pick<Root, "code" | "kind" | "percent_off" | "amount_off" | "currency" | "starts_at" | "expires_at" | "max_redemptions" | "minimum_amount" | "tickets">>;
|
|
98
|
+
type Update = Partial<Pick<Root, "code" | "kind" | "percent_off" | "amount_off" | "currency" | "starts_at" | "expires_at" | "max_redemptions" | "minimum_amount" | "is_public" | "tickets">>;
|
|
85
99
|
type Validate = {
|
|
86
100
|
base_amount: number;
|
|
87
101
|
sale_amount: number;
|
package/dist/types/media.d.ts
CHANGED
|
@@ -1,4 +1,19 @@
|
|
|
1
1
|
import type { MediaKindList } from "../constants/media";
|
|
2
|
+
interface IFaviconSrcset {
|
|
3
|
+
"16": string;
|
|
4
|
+
"32": string;
|
|
5
|
+
"57": string;
|
|
6
|
+
"60": string;
|
|
7
|
+
"72": string;
|
|
8
|
+
"76": string;
|
|
9
|
+
"96": string;
|
|
10
|
+
"114": string;
|
|
11
|
+
"120": string;
|
|
12
|
+
"144": string;
|
|
13
|
+
"152": string;
|
|
14
|
+
"180": string;
|
|
15
|
+
"192": string;
|
|
16
|
+
}
|
|
2
17
|
export interface IMedia {
|
|
3
18
|
id: string;
|
|
4
19
|
workspace_id: string;
|
|
@@ -28,7 +43,14 @@ export interface IMedia {
|
|
|
28
43
|
updated_at?: Date;
|
|
29
44
|
updated_by?: string;
|
|
30
45
|
}
|
|
46
|
+
export type IFaviconMedia = Omit<IMedia, "srcset"> & {
|
|
47
|
+
srcset: IFaviconSrcset;
|
|
48
|
+
};
|
|
31
49
|
export type IMediaObject = Pick<IMedia, "id" | "location" | "srcset" | "kind"> & {
|
|
32
50
|
mimetype?: IMedia["metadata"]["mimetype"];
|
|
33
51
|
};
|
|
52
|
+
export type IFaviconMediaObject = Omit<IMediaObject, "srcset"> & {
|
|
53
|
+
srcset: IFaviconSrcset;
|
|
54
|
+
};
|
|
55
|
+
export {};
|
|
34
56
|
//# sourceMappingURL=media.d.ts.map
|
|
@@ -94,7 +94,9 @@ export declare namespace ILevoMembership {
|
|
|
94
94
|
* }
|
|
95
95
|
* ```
|
|
96
96
|
*/
|
|
97
|
-
type RequestOtp = Pick<Otp, "content"
|
|
97
|
+
type RequestOtp = Pick<Otp, "content"> & {
|
|
98
|
+
medium?: "email" | "whatsapp";
|
|
99
|
+
};
|
|
98
100
|
/**
|
|
99
101
|
* `content` - the email or mobile number to send the Otp to
|
|
100
102
|
*
|
|
@@ -90,6 +90,32 @@ export type IModuleAccessControl = {
|
|
|
90
90
|
export interface IFeatureFlags extends Partial<IModuleAccessControl> {
|
|
91
91
|
branding?: boolean;
|
|
92
92
|
}
|
|
93
|
+
export interface IEmailAddress {
|
|
94
|
+
id: string;
|
|
95
|
+
email: string;
|
|
96
|
+
is_primary: boolean;
|
|
97
|
+
}
|
|
98
|
+
export interface IPhoneNumber {
|
|
99
|
+
id: string;
|
|
100
|
+
phone: string;
|
|
101
|
+
is_primary: boolean;
|
|
102
|
+
}
|
|
103
|
+
export interface IAddress {
|
|
104
|
+
id: string;
|
|
105
|
+
unit?: string;
|
|
106
|
+
street: string;
|
|
107
|
+
landmark?: string;
|
|
108
|
+
city: string;
|
|
109
|
+
state: string;
|
|
110
|
+
zip: string;
|
|
111
|
+
country: string;
|
|
112
|
+
is_primary: boolean;
|
|
113
|
+
}
|
|
114
|
+
export interface IContactInfo {
|
|
115
|
+
emails?: IEmailAddress[];
|
|
116
|
+
phones?: IPhoneNumber[];
|
|
117
|
+
addresses?: IAddress[];
|
|
118
|
+
}
|
|
93
119
|
export interface IWorkspace {
|
|
94
120
|
id: string;
|
|
95
121
|
public_id: string;
|
|
@@ -107,6 +133,7 @@ export interface IWorkspace {
|
|
|
107
133
|
icon: IMediaObject | null;
|
|
108
134
|
workspace_id: string;
|
|
109
135
|
industry: string;
|
|
136
|
+
countries: string[];
|
|
110
137
|
info: {
|
|
111
138
|
locations?: {
|
|
112
139
|
place_name: string;
|
|
@@ -121,6 +148,13 @@ export interface IWorkspace {
|
|
|
121
148
|
category_confidence: number;
|
|
122
149
|
};
|
|
123
150
|
};
|
|
151
|
+
contact_info?: IContactInfo;
|
|
152
|
+
social_media?: {
|
|
153
|
+
facebook?: string;
|
|
154
|
+
twitter?: string;
|
|
155
|
+
linkedin?: string;
|
|
156
|
+
instagram?: string;
|
|
157
|
+
};
|
|
124
158
|
};
|
|
125
159
|
settings: {
|
|
126
160
|
head_code?: string;
|