@meetelise/chat 1.53.7 → 1.54.1
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/src/WebComponent/actions/details-window.d.ts +7 -0
- package/dist/src/WebComponent/actions/email-us-window.d.ts +30 -0
- package/dist/src/WebComponent/launcher/Launcher.d.ts +1 -0
- package/dist/src/WebComponent/me-chat.d.ts +1 -0
- package/dist/src/fetchFeatureFlag.d.ts +2 -0
- package/package.json +1 -1
- package/public/dist/index.js +525 -430
- package/src/WebComponent/actions/details-window.ts +24 -0
- package/src/WebComponent/actions/email-us-window.ts +280 -22
- package/src/WebComponent/launcher/Launcher.ts +3 -0
- package/src/WebComponent/me-chat.ts +7 -0
- package/src/brokerReferralSubmission.test.ts +287 -0
- package/src/fetchFeatureFlag.ts +20 -0
|
@@ -9,8 +9,15 @@ export declare class DetailsWindow extends LitElement {
|
|
|
9
9
|
isMobileSized: boolean;
|
|
10
10
|
useGradientDesign: boolean;
|
|
11
11
|
private _cleanupMobileListener?;
|
|
12
|
+
private readonly _onWindowResize;
|
|
12
13
|
connectedCallback(): void;
|
|
13
14
|
disconnectedCallback(): void;
|
|
15
|
+
updated(): void;
|
|
16
|
+
/**
|
|
17
|
+
* The window is anchored at its bottom, above the launcher, so the 100vh cap alone can push its top (header and
|
|
18
|
+
* close button) off screen when the form is tall. Cap it to the room above its bottom edge; it scrolls past that.
|
|
19
|
+
*/
|
|
20
|
+
fitAboveBottom(): void;
|
|
14
21
|
render(): TemplateResult;
|
|
15
22
|
}
|
|
16
23
|
export declare const installDetailsWindow: () => void;
|
|
@@ -18,6 +18,8 @@ export declare class EmailUsWindow extends LitElement {
|
|
|
18
18
|
private leadSourceClient;
|
|
19
19
|
private leadSourceMultitouchClient;
|
|
20
20
|
featureFlagShowDropdown: string;
|
|
21
|
+
/** Broker intake is on for the building: offer the broker referral fields. */
|
|
22
|
+
brokerIntakeEnabled: boolean;
|
|
21
23
|
privatePolicyUrl: string;
|
|
22
24
|
termsOfServiceUrl: string;
|
|
23
25
|
firstName: string;
|
|
@@ -27,12 +29,19 @@ export declare class EmailUsWindow extends LitElement {
|
|
|
27
29
|
phoneNumberE164: string | null;
|
|
28
30
|
phoneCountry: string | null;
|
|
29
31
|
message: string;
|
|
32
|
+
isBrokerReferral: boolean;
|
|
33
|
+
brokerFirstName: string;
|
|
34
|
+
brokerLastName: string;
|
|
35
|
+
brokerEmail: string;
|
|
36
|
+
brokerFirmName: string;
|
|
30
37
|
selectedLeadSource: MESelect;
|
|
31
38
|
currentLeadSource: string;
|
|
32
39
|
hasNameError: boolean;
|
|
33
40
|
hasEmailError: boolean;
|
|
34
41
|
hasPhoneNumberError: boolean;
|
|
35
42
|
hasMessageError: boolean;
|
|
43
|
+
hasBrokerNameError: boolean;
|
|
44
|
+
brokerEmailError: string | null;
|
|
36
45
|
hasSubmittedForm: boolean;
|
|
37
46
|
windowHeight: number;
|
|
38
47
|
hasSubmissionError: boolean;
|
|
@@ -42,9 +51,30 @@ export declare class EmailUsWindow extends LitElement {
|
|
|
42
51
|
onChangeEmail: (e: Event) => void;
|
|
43
52
|
onChangePhoneNumber: (e: CustomEvent<InternationalPhoneChangeDetail>) => void;
|
|
44
53
|
onChangeMessage: (e: Event) => void;
|
|
54
|
+
/**
|
|
55
|
+
* A broker usually starts typing their own details before ticking the box, so ticking it moves
|
|
56
|
+
* the name and email into the broker's empty details and leaves the client's fields empty. Once
|
|
57
|
+
* the broker's details are filled, re-ticking leaves both sections alone: the main fields then
|
|
58
|
+
* hold the client. Unticking with the client's fields still empty moves the details back.
|
|
59
|
+
*/
|
|
60
|
+
onToggleBrokerReferral: (e: Event) => void;
|
|
61
|
+
onChangeBrokerField: (field: "brokerFirstName" | "brokerLastName" | "brokerEmail" | "brokerFirmName") => (e: Event) => void;
|
|
62
|
+
/** The form's height without error lines: the broker's section adds rows when shown. */
|
|
63
|
+
baseHeight: () => number;
|
|
64
|
+
/** The broker's details to send, only when the submitter says they're referring a client. */
|
|
65
|
+
brokerReferral: () => BrokerReferral | null;
|
|
45
66
|
validateFormFields: () => void;
|
|
46
67
|
onClick: () => Promise<void>;
|
|
47
68
|
getNumErrors: () => number;
|
|
69
|
+
renderBrokerToggle: () => TemplateResult;
|
|
70
|
+
renderBrokerSection: () => TemplateResult;
|
|
48
71
|
render: () => TemplateResult;
|
|
49
72
|
}
|
|
50
73
|
export declare const installEmailUsWindow: () => void;
|
|
74
|
+
/** A broker submitting the form for a client: sent as the request's broker fields. */
|
|
75
|
+
export declare type BrokerReferral = {
|
|
76
|
+
firstName: string;
|
|
77
|
+
lastName: string;
|
|
78
|
+
email: string;
|
|
79
|
+
firmName: string;
|
|
80
|
+
};
|
|
@@ -56,6 +56,7 @@ export declare class Launcher extends LitElement {
|
|
|
56
56
|
tourTypeOptions: LabeledOption[];
|
|
57
57
|
layoutOptions: LayoutOption[];
|
|
58
58
|
bedroomPreferenceRequired: boolean;
|
|
59
|
+
brokerIntakeEnabled: boolean;
|
|
59
60
|
hasDynamicSchedulingEnabled: boolean;
|
|
60
61
|
hasPricingCalculatorEnabledDesktop: boolean;
|
|
61
62
|
hasPricingCalculatorEnabledMobile: boolean;
|
|
@@ -32,6 +32,7 @@ export declare class MEChat extends LitElement {
|
|
|
32
32
|
private currentLeadSource;
|
|
33
33
|
private featureFlagShowDropdown;
|
|
34
34
|
private bedroomPreferenceRequired;
|
|
35
|
+
private brokerIntakeEnabled;
|
|
35
36
|
private phoneNumberForSource;
|
|
36
37
|
private hasMounted;
|
|
37
38
|
private hideLauncher;
|
|
@@ -8,3 +8,5 @@ export declare function fetchFeatureFlagUseOverrideContactUsForm(buildingSlug: s
|
|
|
8
8
|
export declare function fetchFeatureFlagShowUtilities(orgSlug: string): Promise<boolean>;
|
|
9
9
|
export declare function fetchFeatureFlagUseApplicationsLinkReplacement(buildingSlug: string): Promise<boolean>;
|
|
10
10
|
export declare function fetchTrackedRolloutBedroomPreferenceRequired(buildingSlug: string): Promise<boolean>;
|
|
11
|
+
/** Whether the building has broker intake on, so the email form offers the broker referral fields. */
|
|
12
|
+
export declare function fetchTrackedRolloutBrokerIntake(buildingSlug: string): Promise<boolean>;
|