@axos-web-dev/shared-components 0.0.108 → 0.0.109

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.
Files changed (35) hide show
  1. package/dist/ATMLocator/ATMLocator.js +2 -0
  2. package/dist/Accordion/Accordion.css.d.ts +9 -9
  3. package/dist/Button/Button.js +2 -0
  4. package/dist/Calculators/Calculator.js +2 -0
  5. package/dist/Carousel/index.js +2 -0
  6. package/dist/Chevron/index.js +2 -0
  7. package/dist/Comparison/Comparison.js +2 -0
  8. package/dist/FooterSiteMap/AxosBank/FooterSiteMap.js +2 -0
  9. package/dist/Forms/ClearingForm.d.ts +14 -0
  10. package/dist/Forms/ClearingForm.js +334 -0
  11. package/dist/Forms/ContactUsBusiness.js +2 -0
  12. package/dist/Forms/ContactUsNMLSId.js +2 -0
  13. package/dist/Forms/EmailOnly.js +2 -0
  14. package/dist/Forms/SalesforceFieldsForm.d.ts +0 -1
  15. package/dist/Forms/SuccesForm.js +2 -0
  16. package/dist/Forms/index.d.ts +1 -0
  17. package/dist/Forms/index.js +2 -0
  18. package/dist/Hyperlink/index.js +2 -0
  19. package/dist/ImageLink/ImageLink.js +2 -0
  20. package/dist/ImageLink/ImageLinkSet.js +2 -0
  21. package/dist/ImageLink/index.js +2 -0
  22. package/dist/Input/Checkbox.css.d.ts +2 -0
  23. package/dist/Input/Checkbox.css.js +5 -1
  24. package/dist/Input/Checkbox.d.ts +1 -1
  25. package/dist/Input/CheckboxGroup.d.ts +20 -0
  26. package/dist/Input/CheckboxGroup.js +39 -0
  27. package/dist/Insight/Featured/CategorySelector.js +2 -0
  28. package/dist/Insight/Featured/Featured.js +2 -0
  29. package/dist/Modal/Modal.js +2 -0
  30. package/dist/NavigationMenu/AxosBank/SubNavBar.js +2 -0
  31. package/dist/SetContainer/SetContainer.js +2 -0
  32. package/dist/Table/Table.d.ts +13 -13
  33. package/dist/assets/Input/Checkbox.css +7 -0
  34. package/dist/main.js +2 -0
  35. package/package.json +1 -1
@@ -58,6 +58,8 @@ import { iconForm } from "../Forms/Forms.css.js";
58
58
  import "../Forms/SalesforceFieldsForm.js";
59
59
  import "../LoadingIndicator/LoadingIndicator.css.js";
60
60
  import "../Input/RadioButton.js";
61
+ import "../Input/RadioButton.css.js";
62
+ import "../Input/Checkbox.css.js";
61
63
  import "../ImageBillboard/ImageBillboard.css.js";
62
64
  /* empty css */
63
65
  /* empty css */
@@ -4,39 +4,39 @@ export declare const accordion: import('@vanilla-extract/recipes').RuntimeFn<{
4
4
  width: {
5
5
  "1/2": {
6
6
  display: "flex";
7
- flexBasis: `${number}%`;
7
+ flexBasis: "50%";
8
8
  };
9
9
  "1/3": {
10
10
  display: "flex";
11
- flexBasis: `${number}%`;
11
+ flexBasis: "33.333333333333336%";
12
12
  };
13
13
  "2/3": {
14
14
  display: "flex";
15
- flexBasis: `${number}%`;
15
+ flexBasis: "66.66666666666667%";
16
16
  };
17
17
  "1/4": {
18
18
  display: "flex";
19
- flexBasis: `${number}%`;
19
+ flexBasis: "25%";
20
20
  };
21
21
  "3/4": {
22
22
  display: "flex";
23
- flexBasis: `${number}%`;
23
+ flexBasis: "75%";
24
24
  };
25
25
  "1/5": {
26
26
  display: "flex";
27
- flexBasis: `${number}%`;
27
+ flexBasis: "20%";
28
28
  };
29
29
  "2/5": {
30
30
  display: "flex";
31
- flexBasis: `${number}%`;
31
+ flexBasis: "40%";
32
32
  };
33
33
  "3/5": {
34
34
  display: "flex";
35
- flexBasis: `${number}%`;
35
+ flexBasis: "60%";
36
36
  };
37
37
  "4/5": {
38
38
  display: "flex";
39
- flexBasis: `${number}%`;
39
+ flexBasis: "80%";
40
40
  };
41
41
  };
42
42
  }>;
@@ -40,6 +40,8 @@ import "../Forms/Forms.css.js";
40
40
  import "../Forms/SalesforceFieldsForm.js";
41
41
  import "../LoadingIndicator/LoadingIndicator.css.js";
42
42
  import "../Input/RadioButton.js";
43
+ import "../Input/RadioButton.css.js";
44
+ import "../Input/Checkbox.css.js";
43
45
  import "iframe-resizer";
44
46
  import "../Calculators/calculator.css.js";
45
47
  /* empty css */
@@ -97,6 +97,8 @@ import "react-hook-form";
97
97
  import { iconForm } from "../Forms/Forms.css.js";
98
98
  import "../Forms/SalesforceFieldsForm.js";
99
99
  import "../Input/RadioButton.js";
100
+ import "../Input/RadioButton.css.js";
101
+ import "../Input/Checkbox.css.js";
100
102
  import { iframeResizer } from "iframe-resizer";
101
103
  import { calculators } from "./calculators.js";
102
104
  const Calculator = (props) => {
@@ -46,6 +46,8 @@ import "../Forms/Forms.css.js";
46
46
  import "../Forms/SalesforceFieldsForm.js";
47
47
  import "../LoadingIndicator/LoadingIndicator.css.js";
48
48
  import "../Input/RadioButton.js";
49
+ import "../Input/RadioButton.css.js";
50
+ import "../Input/Checkbox.css.js";
49
51
  import "iframe-resizer";
50
52
  import "../Calculators/calculator.css.js";
51
53
  /* empty css */
@@ -43,6 +43,8 @@ import "../Forms/Forms.css.js";
43
43
  import "../Forms/SalesforceFieldsForm.js";
44
44
  import "../LoadingIndicator/LoadingIndicator.css.js";
45
45
  import "../Input/RadioButton.js";
46
+ import "../Input/RadioButton.css.js";
47
+ import "../Input/Checkbox.css.js";
46
48
  import "iframe-resizer";
47
49
  import "../Calculators/calculator.css.js";
48
50
  /* empty css */
@@ -41,6 +41,8 @@ import "../Forms/Forms.css.js";
41
41
  import "../Forms/SalesforceFieldsForm.js";
42
42
  import "../LoadingIndicator/LoadingIndicator.css.js";
43
43
  import "../Input/RadioButton.js";
44
+ import "../Input/RadioButton.css.js";
45
+ import "../Input/Checkbox.css.js";
44
46
  import "iframe-resizer";
45
47
  import "../Calculators/calculator.css.js";
46
48
  /* empty css */
@@ -41,6 +41,8 @@ import "../../Forms/Forms.css.js";
41
41
  import "../../Forms/SalesforceFieldsForm.js";
42
42
  import "../../LoadingIndicator/LoadingIndicator.css.js";
43
43
  import "../../Input/RadioButton.js";
44
+ import "../../Input/RadioButton.css.js";
45
+ import "../../Input/Checkbox.css.js";
44
46
  import "iframe-resizer";
45
47
  import "../../Calculators/calculator.css.js";
46
48
  /* empty css */
@@ -0,0 +1,14 @@
1
+ import { FormProps } from './FormProps';
2
+
3
+ export type ClearingInputs = {
4
+ first_name: string;
5
+ last_name: string;
6
+ email: string;
7
+ phone: string;
8
+ company: string;
9
+ Business_Type__c: string;
10
+ Current_Assets_Under_Management__c: string;
11
+ Memo__c: string;
12
+ business_type_selection: string;
13
+ };
14
+ export declare const ClearingForm: ({ icon, children, onSubmit, disclosure, variant: fullVariant, headline, description, callToAction, validateEmail, id, }: FormProps) => import("react/jsx-runtime").JSX.Element;
@@ -0,0 +1,334 @@
1
+ "use client";
2
+ import { jsx, jsxs } from "react/jsx-runtime";
3
+ import { zodResolver } from "@hookform/resolvers/zod";
4
+ import { Button } from "../Button/Button.js";
5
+ import "../Button/Button.css.js";
6
+ import { useState } from "react";
7
+ import "react-use";
8
+ import "../Input/Checkbox.js";
9
+ import "../Input/CurrencyInput.js";
10
+ import { Dropdown } from "../Input/Dropdown.js";
11
+ /* empty css */
12
+ /* empty css */
13
+ import { Input } from "../Input/Input.js";
14
+ import "../Input/Input.css.js";
15
+ import "../Input/InputAmount.js";
16
+ import { InputPhone } from "../Input/InputPhone.js";
17
+ import "../Input/InputTextArea.js";
18
+ import "../icons/ArrowIcon/ArrowIcon.css.js";
19
+ import SvgAxosX from "../icons/AxosX/index.js";
20
+ import SvgComponent from "../icons/AxosX/Blue.js";
21
+ import "../icons/CheckIcon/CheckIcon.css.js";
22
+ /* empty css */
23
+ /* empty css */
24
+ /* empty css */
25
+ /* empty css */
26
+ import { associatedEmail } from "../utils/EverestValidity.js";
27
+ import "../utils/allowedAxosDomains.js";
28
+ import { getVariant } from "../utils/getVariant.js";
29
+ import clsx from "clsx";
30
+ import { useForm, FormProvider } from "react-hook-form";
31
+ import * as z from "zod";
32
+ import { formContainer, iconForm, headerContainer, headerForm, form, descriptionField, formWrapper, fullRowForm, disclosureForm, actions } from "./Forms.css.js";
33
+ import { SalesforceSchema } from "./SalesforceFieldsForm.js";
34
+ import CheckboxGroup from "../Input/CheckboxGroup.js";
35
+ const options = [
36
+ { label: "Active Trading", value: "Active Trading" },
37
+ { label: "FinTech", value: "FinTech" },
38
+ { label: "Foreign", value: "Foreign" },
39
+ { label: "Hybrid (RIA and BD)", value: "Hybrid (RIA and BD)" },
40
+ { label: "Independent Contractor", value: "Independent Contractor" },
41
+ { label: "IPOs", value: "IPOs" },
42
+ { label: "Institutional Fixed Income", value: "Institutional Fixed Income" },
43
+ { label: "Institutional Equity", value: "Institutional Equity" },
44
+ { label: "Prime Services", value: "Prime Services" },
45
+ { label: "Retail", value: "Retail" },
46
+ { label: "Retail/Institutional", value: "Retail/Institutional" },
47
+ { label: "RIA", value: "RIA" },
48
+ { label: "Self-Directed", value: "Self-Directed" }
49
+ ];
50
+ const ClearingForm = ({
51
+ icon = false,
52
+ children,
53
+ onSubmit = (values) => {
54
+ console.log(values);
55
+ },
56
+ disclosure,
57
+ variant: fullVariant = "primary",
58
+ headline,
59
+ description,
60
+ callToAction,
61
+ validateEmail,
62
+ id
63
+ }) => {
64
+ const schema = z.object({
65
+ first_name: z.string({ message: "First name is required." }).regex(/^[A-Za-z][^0-9_!¡?÷?¿/\\+=@#$%ˆ&*,.^(){}|~<>;:[\]]{1,}$/g, {
66
+ message: "First name is required."
67
+ }).trim().min(1, { message: "First Name is required." }),
68
+ last_name: z.string({ message: "Last Name is required." }).regex(/^[A-Za-z][^0-9_!¡?÷?¿/\\+=@#$%ˆ&*,.^(){}|~<>;:[\]]{1,}$/g, {
69
+ message: "Last Name is required."
70
+ }).trim().min(1, { message: "Last Name is required." }),
71
+ email: z.string().email({ message: "Email is required." }).refine(async (val) => await validateEmail(val)),
72
+ phone: z.string({ message: "Phone is required." }).regex(/[\d-]{10}/, { message: "Phone is required." }).min(10, { message: "Phone is required." }).max(12, { message: "Phone is required." }).transform((val, ctx) => {
73
+ const removeDashes = val.replace(/-/gi, "");
74
+ if (removeDashes.length !== 10) {
75
+ ctx.addIssue({
76
+ code: z.ZodIssueCode.custom,
77
+ message: "Phone must have at least 10 and no more than 10 characters."
78
+ });
79
+ return z.NEVER;
80
+ }
81
+ return removeDashes;
82
+ }),
83
+ company: z.string({ message: "Broker-Dealer Name is required." }).regex(/^[A-Za-z][^0-9_!¡?÷?¿/\\+=@#$%ˆ&*,.^(){}|~<>;:[\]]{1,}$/g, {
84
+ message: "Broker-Dealer Name is required"
85
+ }).trim().min(1, { message: "Broker-Dealer Name is required." }),
86
+ Business_Type__c: z.string({ message: "Type of Business is required." }).trim().min(1, { message: "Type of Business is required." }).refine((val) => val.trim().length > 0, {
87
+ message: "Type of Business is required."
88
+ }),
89
+ Current_Assets_Under_Management__c: z.string().trim().min(1, { message: "Assets Under Management is required." }),
90
+ Memo__c: z.string().trim()
91
+ });
92
+ const [selectedValues, setSelectedValues] = useState([]);
93
+ const [showBusinessTypes, setShowBusinessTypes] = useState(false);
94
+ const [requiredAUM, setRequiredAUM] = useState(false);
95
+ const [requiredTOB, setRequiredTOB] = useState(false);
96
+ const handleShowBusinessType = () => {
97
+ setShowBusinessTypes(true);
98
+ };
99
+ let formattedValues = "";
100
+ const handleBusinessTypeChange = (updatedValues) => {
101
+ setSelectedValues(updatedValues);
102
+ formattedValues = updatedValues.join(";");
103
+ setValue("Business_Type__c", formattedValues);
104
+ handleTOBerrors();
105
+ };
106
+ const methods = useForm({
107
+ resolver: zodResolver(schema.merge(SalesforceSchema), {
108
+ async: true
109
+ }),
110
+ mode: "all",
111
+ defaultValues: {
112
+ email: "",
113
+ Business_Type__c: "FinTech"
114
+ // Set default value as empty array
115
+ }
116
+ });
117
+ const {
118
+ handleSubmit,
119
+ register,
120
+ setValue,
121
+ setError,
122
+ clearErrors,
123
+ formState: { errors, isValid, isSubmitting }
124
+ } = methods;
125
+ const submitForm = async (data) => {
126
+ await onSubmit(data);
127
+ };
128
+ const handleTOBerrors = () => {
129
+ if (!formattedValues.length) {
130
+ setError("Business_Type__c", {
131
+ type: "manual",
132
+ message: "Type of Business is required."
133
+ });
134
+ return;
135
+ } else {
136
+ clearErrors("Business_Type__c");
137
+ setRequiredTOB(true);
138
+ }
139
+ };
140
+ const handleDropdownChange = (event) => {
141
+ const value = event.target.value;
142
+ setValue("Current_Assets_Under_Management__c", value);
143
+ if (value) setRequiredAUM(true);
144
+ };
145
+ const variant = getVariant(fullVariant);
146
+ return /* @__PURE__ */ jsx(
147
+ "section",
148
+ {
149
+ id: `id_${id}`,
150
+ className: clsx(formContainer({ variant })),
151
+ children: /* @__PURE__ */ jsx("div", { className: clsx("containment"), children: /* @__PURE__ */ jsxs(FormProvider, { ...methods, children: [
152
+ icon && /* @__PURE__ */ jsx("div", { className: clsx("text_center", iconForm), children: ["primary", "secondary"].includes(variant) ? /* @__PURE__ */ jsx(SvgComponent, {}) : /* @__PURE__ */ jsx(SvgAxosX, {}) }),
153
+ /* @__PURE__ */ jsxs("div", { className: clsx(headerContainer, "text_center"), children: [
154
+ /* @__PURE__ */ jsx("h2", { className: clsx("header_2", headerForm({ variant })), children: headline }),
155
+ description && /* @__PURE__ */ jsx(
156
+ "div",
157
+ {
158
+ className: clsx(
159
+ form,
160
+ descriptionField({ variant }),
161
+ "text_center"
162
+ ),
163
+ children: description
164
+ }
165
+ )
166
+ ] }),
167
+ /* @__PURE__ */ jsxs("form", { className: form, onSubmit: handleSubmit(submitForm), children: [
168
+ /* @__PURE__ */ jsxs("div", { className: clsx(formWrapper({ variant })), children: [
169
+ /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(
170
+ Input,
171
+ {
172
+ id: "first_name",
173
+ ...register("first_name", {
174
+ required: "First Name is required"
175
+ }),
176
+ label: "First Name",
177
+ sizes: "medium",
178
+ required: true,
179
+ error: !!errors.first_name,
180
+ helperText: errors.first_name?.message,
181
+ variant
182
+ }
183
+ ) }),
184
+ /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(
185
+ Input,
186
+ {
187
+ id: "last_name",
188
+ ...register("last_name", { required: true }),
189
+ label: "Last Name",
190
+ sizes: "medium",
191
+ required: true,
192
+ error: !!errors.last_name,
193
+ helperText: errors.last_name?.message,
194
+ variant
195
+ }
196
+ ) }),
197
+ /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(
198
+ Input,
199
+ {
200
+ id: "email",
201
+ ...register("email", {
202
+ required: true,
203
+ validate: {
204
+ isValid: associatedEmail
205
+ }
206
+ }),
207
+ label: "Email",
208
+ sizes: "medium",
209
+ required: true,
210
+ error: !!errors.email,
211
+ helperText: errors.email?.message,
212
+ variant
213
+ }
214
+ ) }),
215
+ /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(
216
+ InputPhone,
217
+ {
218
+ id: "phone",
219
+ ...register("phone", { required: true, maxLength: 12 }),
220
+ label: "Phone",
221
+ sizes: "medium",
222
+ required: true,
223
+ error: !!errors.phone,
224
+ helperText: errors.phone?.message,
225
+ variant
226
+ }
227
+ ) }),
228
+ /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsx(
229
+ Input,
230
+ {
231
+ id: "company",
232
+ ...register("company", { required: true }),
233
+ label: "Broker-Dealer Name",
234
+ sizes: "medium",
235
+ required: true,
236
+ error: !!errors.company,
237
+ helperText: errors.company?.message,
238
+ variant
239
+ }
240
+ ) }),
241
+ /* @__PURE__ */ jsx("div", { children: /* @__PURE__ */ jsxs(
242
+ Dropdown,
243
+ {
244
+ id: "Current_Assets_Under_Management__c",
245
+ ...register("Current_Assets_Under_Management__c", {
246
+ required: true
247
+ }),
248
+ label: "Assets Under Management",
249
+ sizes: "medium",
250
+ required: true,
251
+ error: !!errors.Current_Assets_Under_Management__c,
252
+ helperText: errors.Current_Assets_Under_Management__c?.message,
253
+ variant,
254
+ defaultValue: "Select option",
255
+ onChange: handleDropdownChange,
256
+ children: [
257
+ /* @__PURE__ */ jsx("option", { value: "Select option", disabled: true, children: "Select Option" }),
258
+ /* @__PURE__ */ jsx("option", { value: "$0 - $100MM", children: "$0 - $100MM" }),
259
+ /* @__PURE__ */ jsx("option", { value: "$101MM - $200MM", children: "$101MM - $200MM" }),
260
+ /* @__PURE__ */ jsx("option", { value: "$201MM - $500MM", children: "$201MM - $500MM" }),
261
+ /* @__PURE__ */ jsx("option", { value: "$501MM - $750MM", children: "$501MM - $750MM" }),
262
+ /* @__PURE__ */ jsx("option", { value: "$751MM - $1B", children: "$751MM - $1B" }),
263
+ /* @__PURE__ */ jsx("option", { value: "$1B -$2B", children: "$1B -$2B" }),
264
+ /* @__PURE__ */ jsx("option", { value: "$2B+", children: "$2B+" })
265
+ ]
266
+ }
267
+ ) }),
268
+ /* @__PURE__ */ jsxs("div", { className: `${fullRowForm}`, children: [
269
+ /* @__PURE__ */ jsx(
270
+ Input,
271
+ {
272
+ id: "business_type_selection",
273
+ label: "Type of Business",
274
+ onFocus: handleShowBusinessType,
275
+ onBlur: handleTOBerrors,
276
+ sizes: "medium",
277
+ placeholder: "Select All That Apply",
278
+ error: !!errors.Business_Type__c,
279
+ disabled: true
280
+ }
281
+ ),
282
+ showBusinessTypes && /* @__PURE__ */ jsx(
283
+ CheckboxGroup,
284
+ {
285
+ options,
286
+ selectedValues,
287
+ onChange: handleBusinessTypeChange
288
+ }
289
+ )
290
+ ] }),
291
+ /* @__PURE__ */ jsx("div", { className: fullRowForm, children: /* @__PURE__ */ jsx(
292
+ Input,
293
+ {
294
+ id: "Memo__c",
295
+ ...register("Memo__c", { required: false }),
296
+ label: "Please provide additional details about your clearing need (optional)",
297
+ sizes: "medium",
298
+ required: false,
299
+ error: !!errors.Memo__c,
300
+ helperText: errors.Memo__c?.message,
301
+ variant
302
+ }
303
+ ) }),
304
+ /* @__PURE__ */ jsx(
305
+ "input",
306
+ {
307
+ type: "hidden",
308
+ ...register("Lead_Source_Detail_SFDC2__c", {
309
+ value: "Axos Clearing"
310
+ })
311
+ }
312
+ )
313
+ ] }),
314
+ children,
315
+ /* @__PURE__ */ jsx("div", { className: disclosureForm({ variant }), children: disclosure }),
316
+ /* @__PURE__ */ jsx("div", { className: actions, children: /* @__PURE__ */ jsx(
317
+ Button,
318
+ {
319
+ color: getVariant(callToAction?.variant),
320
+ as: "button",
321
+ type: "submit",
322
+ disabled: !isValid || isSubmitting || !requiredAUM || !requiredTOB,
323
+ children: callToAction?.displayText
324
+ }
325
+ ) })
326
+ ] })
327
+ ] }) })
328
+ },
329
+ id
330
+ );
331
+ };
332
+ export {
333
+ ClearingForm
334
+ };
@@ -43,6 +43,8 @@ import { formContainer, iconForm, headerContainer, headerForm, form, description
43
43
  import { SalesforceSchema } from "./SalesforceFieldsForm.js";
44
44
  import "../LoadingIndicator/LoadingIndicator.css.js";
45
45
  import "../Input/RadioButton.js";
46
+ import "../Input/RadioButton.css.js";
47
+ import "../Input/Checkbox.css.js";
46
48
  import "iframe-resizer";
47
49
  import "../Calculators/calculator.css.js";
48
50
  /* empty css */
@@ -43,6 +43,8 @@ import { formContainer, iconForm, headerContainer, headerForm, form, description
43
43
  import { SalesforceSchema } from "./SalesforceFieldsForm.js";
44
44
  import "../LoadingIndicator/LoadingIndicator.css.js";
45
45
  import "../Input/RadioButton.js";
46
+ import "../Input/RadioButton.css.js";
47
+ import "../Input/Checkbox.css.js";
46
48
  import "iframe-resizer";
47
49
  import "../Calculators/calculator.css.js";
48
50
  /* empty css */
@@ -44,6 +44,8 @@ import { formContainer, iconForm, headerContainer, headerForm, form, description
44
44
  import { SalesforceSchema } from "./SalesforceFieldsForm.js";
45
45
  import "../LoadingIndicator/LoadingIndicator.css.js";
46
46
  import "../Input/RadioButton.js";
47
+ import "../Input/RadioButton.css.js";
48
+ import "../Input/Checkbox.css.js";
47
49
  import "iframe-resizer";
48
50
  import "../Calculators/calculator.css.js";
49
51
  /* empty css */
@@ -1,4 +1,3 @@
1
- /// <reference types="react" />
2
1
  import * as z from "zod";
3
2
  export interface SalesforceFields {
4
3
  brand: string;
@@ -93,6 +93,8 @@ import "react-hook-form";
93
93
  import { success_wrap, success_icon, success_circle, succes_check_mark } from "./Forms.css.js";
94
94
  import "./SalesforceFieldsForm.js";
95
95
  import "../Input/RadioButton.js";
96
+ import "../Input/RadioButton.css.js";
97
+ import "../Input/Checkbox.css.js";
96
98
  function SuccesFormWrapper({
97
99
  children,
98
100
  isSubmitted,
@@ -16,3 +16,4 @@ export * from './ScheduleCall';
16
16
  export * from './ScheduleCallPremier';
17
17
  export * from './SuccesForm';
18
18
  export * from './WcplSurvey';
19
+ export * from './ClearingForm';
@@ -15,8 +15,10 @@ import { ScheduleCall } from "./ScheduleCall.js";
15
15
  import { ScheduleCallPremier } from "./ScheduleCallPremier.js";
16
16
  import { SuccesFormWrapper } from "./SuccesForm.js";
17
17
  import { WCPLSurvey } from "./WcplSurvey.js";
18
+ import { ClearingForm } from "./ClearingForm.js";
18
19
  export {
19
20
  ApplicationStart,
21
+ ClearingForm,
20
22
  CommercialLending,
21
23
  ContactCompany,
22
24
  ContactUs,
@@ -43,6 +43,8 @@ import "../Forms/Forms.css.js";
43
43
  import "../Forms/SalesforceFieldsForm.js";
44
44
  import "../LoadingIndicator/LoadingIndicator.css.js";
45
45
  import "../Input/RadioButton.js";
46
+ import "../Input/RadioButton.css.js";
47
+ import "../Input/Checkbox.css.js";
46
48
  import "iframe-resizer";
47
49
  import "../Calculators/calculator.css.js";
48
50
  /* empty css */
@@ -38,6 +38,8 @@ import "../Forms/SalesforceFieldsForm.js";
38
38
  import "../LoadingIndicator/LoadingIndicator.css.js";
39
39
  import "react-use";
40
40
  import "../Input/RadioButton.js";
41
+ import "../Input/RadioButton.css.js";
42
+ import "../Input/Checkbox.css.js";
41
43
  import "iframe-resizer";
42
44
  import "../Calculators/calculator.css.js";
43
45
  /* empty css */
@@ -42,6 +42,8 @@ import "../Forms/Forms.css.js";
42
42
  import "../Forms/SalesforceFieldsForm.js";
43
43
  import "../LoadingIndicator/LoadingIndicator.css.js";
44
44
  import "../Input/RadioButton.js";
45
+ import "../Input/RadioButton.css.js";
46
+ import "../Input/Checkbox.css.js";
45
47
  import "iframe-resizer";
46
48
  import "../Calculators/calculator.css.js";
47
49
  /* empty css */
@@ -41,6 +41,8 @@ import "../Forms/Forms.css.js";
41
41
  import "../Forms/SalesforceFieldsForm.js";
42
42
  import "../LoadingIndicator/LoadingIndicator.css.js";
43
43
  import "../Input/RadioButton.js";
44
+ import "../Input/RadioButton.css.js";
45
+ import "../Input/Checkbox.css.js";
44
46
  import "iframe-resizer";
45
47
  import "../Calculators/calculator.css.js";
46
48
  /* empty css */
@@ -8,3 +8,5 @@ export declare const checkbox: import('@vanilla-extract/recipes').RuntimeFn<{
8
8
  [x: string]: string | import('@vanilla-extract/css').ComplexStyleRule;
9
9
  };
10
10
  }>;
11
+ export declare const checkbox_group_container: string;
12
+ export declare const no_borders: string;
@@ -2,7 +2,11 @@
2
2
  import { createRuntimeFn } from "@vanilla-extract/recipes/createRuntimeFn";
3
3
  var checkboxContainer = createRuntimeFn({ defaultClassName: "_3tjom70", variantClassNames: { disabled: { true: "_3tjom71" } }, defaultVariants: {}, compoundVariants: [] });
4
4
  var checkbox = createRuntimeFn({ defaultClassName: "_3tjom72", variantClassNames: {}, defaultVariants: {}, compoundVariants: [] });
5
+ var checkbox_group_container = "_3tjom73";
6
+ var no_borders = "_3tjom74";
5
7
  export {
6
8
  checkbox,
7
- checkboxContainer
9
+ checkboxContainer,
10
+ checkbox_group_container,
11
+ no_borders
8
12
  };
@@ -1,5 +1,5 @@
1
1
  import { InputProps } from './InputProps';
2
2
 
3
3
  export declare const Checkbox: import('react').ForwardRefExoticComponent<InputProps & {
4
- children?: import('react').ReactNode;
4
+ children?: import('react').ReactNode | undefined;
5
5
  } & import('react').RefAttributes<HTMLInputElement>>;
@@ -0,0 +1,20 @@
1
+ import { default as React, ReactNode } from 'react';
2
+
3
+ interface CheckboxOption {
4
+ label: string;
5
+ value: string;
6
+ }
7
+ interface CheckboxGroupProps {
8
+ disabled?: boolean;
9
+ error?: boolean;
10
+ label?: string;
11
+ variant?: string;
12
+ helperText?: string;
13
+ options: CheckboxOption[];
14
+ selectedValues: string[];
15
+ onChange: (selectedValues: string[]) => void;
16
+ direction?: "row" | "column";
17
+ iconLeft?: ReactNode;
18
+ }
19
+ declare const CheckboxGroup: React.FC<CheckboxGroupProps>;
20
+ export default CheckboxGroup;
@@ -0,0 +1,39 @@
1
+ import { jsxs, jsx } from "react/jsx-runtime";
2
+ import { Checkbox } from "./Checkbox.js";
3
+ import { labelClassName } from "./Input.css.js";
4
+ import { fieldset_wrapper, fieldset_container, fieldset } from "./RadioButton.css.js";
5
+ import { checkbox_group_container } from "./Checkbox.css.js";
6
+ const CheckboxGroup = ({
7
+ error = false,
8
+ label,
9
+ options,
10
+ selectedValues,
11
+ onChange,
12
+ direction = "column"
13
+ }) => {
14
+ const handleCheckboxChange = (e) => {
15
+ const value = e.target.value;
16
+ const isChecked = e.target.checked;
17
+ const updatedValues = isChecked ? [...selectedValues, value] : selectedValues.filter((item) => item !== value);
18
+ onChange(updatedValues);
19
+ };
20
+ return /* @__PURE__ */ jsxs("div", { className: fieldset_wrapper, children: [
21
+ label && /* @__PURE__ */ jsx("label", { className: labelClassName({ error }), children: label }),
22
+ /* @__PURE__ */ jsx("div", { className: `${fieldset_container} ${checkbox_group_container}`, children: /* @__PURE__ */ jsx("fieldset", { className: fieldset({ direction }), children: options.map((option) => /* @__PURE__ */ jsx(
23
+ Checkbox,
24
+ {
25
+ name: option.value,
26
+ value: option.value,
27
+ checked: selectedValues.includes(option.value),
28
+ onChange: handleCheckboxChange,
29
+ sizes: "medium",
30
+ children: option.label
31
+ },
32
+ option.value
33
+ )) }) }),
34
+ error && /* @__PURE__ */ jsx("span", { className: "error-text", children: "Error message here" })
35
+ ] });
36
+ };
37
+ export {
38
+ CheckboxGroup as default
39
+ };
@@ -41,6 +41,8 @@ import "../../Forms/SalesforceFieldsForm.js";
41
41
  import "../../LoadingIndicator/LoadingIndicator.css.js";
42
42
  import "react-use";
43
43
  import "../../Input/RadioButton.js";
44
+ import "../../Input/RadioButton.css.js";
45
+ import "../../Input/Checkbox.css.js";
44
46
  import "iframe-resizer";
45
47
  import "../../Calculators/calculator.css.js";
46
48
  /* empty css */
@@ -43,6 +43,8 @@ import "../../Forms/Forms.css.js";
43
43
  import "../../Forms/SalesforceFieldsForm.js";
44
44
  import "../../LoadingIndicator/LoadingIndicator.css.js";
45
45
  import "../../Input/RadioButton.js";
46
+ import "../../Input/RadioButton.css.js";
47
+ import "../../Input/Checkbox.css.js";
46
48
  import "iframe-resizer";
47
49
  import "../../Calculators/calculator.css.js";
48
50
  /* empty css */
@@ -38,6 +38,8 @@ import "../Forms/Forms.css.js";
38
38
  import "../Forms/SalesforceFieldsForm.js";
39
39
  import "../LoadingIndicator/LoadingIndicator.css.js";
40
40
  import "../Input/RadioButton.js";
41
+ import "../Input/RadioButton.css.js";
42
+ import "../Input/Checkbox.css.js";
41
43
  import "iframe-resizer";
42
44
  import "../Calculators/calculator.css.js";
43
45
  /* empty css */
@@ -42,6 +42,8 @@ import "../../Forms/Forms.css.js";
42
42
  import "../../Forms/SalesforceFieldsForm.js";
43
43
  import "../../LoadingIndicator/LoadingIndicator.css.js";
44
44
  import "../../Input/RadioButton.js";
45
+ import "../../Input/RadioButton.css.js";
46
+ import "../../Input/Checkbox.css.js";
45
47
  import "iframe-resizer";
46
48
  import "../../Calculators/calculator.css.js";
47
49
  /* empty css */
@@ -40,6 +40,8 @@ import "../Forms/SalesforceFieldsForm.js";
40
40
  import "../LoadingIndicator/LoadingIndicator.css.js";
41
41
  import "react-use";
42
42
  import "../Input/RadioButton.js";
43
+ import "../Input/RadioButton.css.js";
44
+ import "../Input/Checkbox.css.js";
43
45
  import "iframe-resizer";
44
46
  import "../Calculators/calculator.css.js";
45
47
  /* empty css */
@@ -9,14 +9,14 @@ export declare const TableBody: ({ children }: PropsWithChildren) => import("rea
9
9
  export declare const TableCell: ({ children, as, variant, highlighted, ...props }: CellProps) => import('react').DetailedReactHTMLElement<{
10
10
  className: string;
11
11
  manifest?: string | undefined;
12
- amp?: string | undefined;
12
+ amp?: string;
13
13
  defaultChecked?: boolean | undefined;
14
14
  defaultValue?: string | number | readonly string[] | undefined;
15
15
  suppressContentEditableWarning?: boolean | undefined;
16
16
  suppressHydrationWarning?: boolean | undefined;
17
17
  accessKey?: string | undefined;
18
18
  autoFocus?: boolean | undefined;
19
- contentEditable?: "inherit" | (boolean | "false" | "true") | "plaintext-only" | undefined;
19
+ contentEditable?: (boolean | "false" | "true") | "inherit" | "plaintext-only" | undefined;
20
20
  contextMenu?: string | undefined;
21
21
  dir?: string | undefined;
22
22
  draggable?: (boolean | "false" | "true") | undefined;
@@ -29,7 +29,7 @@ export declare const TableCell: ({ children, as, variant, highlighted, ...props
29
29
  style?: import('react').CSSProperties | undefined;
30
30
  tabIndex?: number | undefined;
31
31
  title?: string | undefined;
32
- translate?: "no" | "yes" | undefined;
32
+ translate?: "yes" | "no" | undefined;
33
33
  radioGroup?: string | undefined;
34
34
  role?: import('react').AriaRole | undefined;
35
35
  about?: string | undefined;
@@ -54,38 +54,38 @@ export declare const TableCell: ({ children, as, variant, highlighted, ...props
54
54
  itemRef?: string | undefined;
55
55
  results?: number | undefined;
56
56
  security?: string | undefined;
57
- unselectable?: "off" | "on" | undefined;
58
- inputMode?: "search" | "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | undefined;
57
+ unselectable?: "on" | "off" | undefined;
58
+ inputMode?: "none" | "text" | "tel" | "url" | "email" | "numeric" | "decimal" | "search" | undefined;
59
59
  is?: string | undefined;
60
60
  popover?: "" | "auto" | "manual" | undefined;
61
- popoverTargetAction?: "hide" | "show" | "toggle" | undefined;
61
+ popoverTargetAction?: "toggle" | "show" | "hide" | undefined;
62
62
  popoverTarget?: string | undefined;
63
63
  onToggle?: import('react').ToggleEventHandler<HTMLTableCellElement> | undefined;
64
64
  onBeforeToggle?: import('react').ToggleEventHandler<HTMLTableCellElement> | undefined;
65
65
  inert?: boolean | undefined;
66
66
  "aria-activedescendant"?: string | undefined;
67
67
  "aria-atomic"?: (boolean | "false" | "true") | undefined;
68
- "aria-autocomplete"?: "none" | "both" | "inline" | "list" | undefined;
68
+ "aria-autocomplete"?: "none" | "inline" | "list" | "both" | undefined;
69
69
  "aria-braillelabel"?: string | undefined;
70
70
  "aria-brailleroledescription"?: string | undefined;
71
71
  "aria-busy"?: (boolean | "false" | "true") | undefined;
72
- "aria-checked"?: boolean | "mixed" | "false" | "true" | undefined;
72
+ "aria-checked"?: boolean | "false" | "mixed" | "true" | undefined;
73
73
  "aria-colcount"?: number | undefined;
74
74
  "aria-colindex"?: number | undefined;
75
75
  "aria-colindextext"?: string | undefined;
76
76
  "aria-colspan"?: number | undefined;
77
77
  "aria-controls"?: string | undefined;
78
- "aria-current"?: boolean | "page" | "false" | "true" | "time" | "step" | "location" | "date" | undefined;
78
+ "aria-current"?: boolean | "false" | "true" | "page" | "step" | "location" | "date" | "time" | undefined;
79
79
  "aria-describedby"?: string | undefined;
80
80
  "aria-description"?: string | undefined;
81
81
  "aria-details"?: string | undefined;
82
82
  "aria-disabled"?: (boolean | "false" | "true") | undefined;
83
- "aria-dropeffect"?: "link" | "none" | "copy" | "move" | "execute" | "popup" | undefined;
83
+ "aria-dropeffect"?: "none" | "copy" | "execute" | "link" | "move" | "popup" | undefined;
84
84
  "aria-errormessage"?: string | undefined;
85
85
  "aria-expanded"?: (boolean | "false" | "true") | undefined;
86
86
  "aria-flowto"?: string | undefined;
87
87
  "aria-grabbed"?: (boolean | "false" | "true") | undefined;
88
- "aria-haspopup"?: boolean | "grid" | "listbox" | "menu" | "false" | "true" | "dialog" | "tree" | undefined;
88
+ "aria-haspopup"?: boolean | "false" | "true" | "menu" | "listbox" | "tree" | "grid" | "dialog" | undefined;
89
89
  "aria-hidden"?: (boolean | "false" | "true") | undefined;
90
90
  "aria-invalid"?: boolean | "false" | "true" | "grammar" | "spelling" | undefined;
91
91
  "aria-keyshortcuts"?: string | undefined;
@@ -100,9 +100,9 @@ export declare const TableCell: ({ children, as, variant, highlighted, ...props
100
100
  "aria-owns"?: string | undefined;
101
101
  "aria-placeholder"?: string | undefined;
102
102
  "aria-posinset"?: number | undefined;
103
- "aria-pressed"?: boolean | "mixed" | "false" | "true" | undefined;
103
+ "aria-pressed"?: boolean | "false" | "mixed" | "true" | undefined;
104
104
  "aria-readonly"?: (boolean | "false" | "true") | undefined;
105
- "aria-relevant"?: "all" | "text" | "additions" | "additions removals" | "additions text" | "removals" | "removals additions" | "removals text" | "text additions" | "text removals" | undefined;
105
+ "aria-relevant"?: "additions" | "additions removals" | "additions text" | "all" | "removals" | "removals additions" | "removals text" | "text" | "text additions" | "text removals" | undefined;
106
106
  "aria-required"?: (boolean | "false" | "true") | undefined;
107
107
  "aria-roledescription"?: string | undefined;
108
108
  "aria-rowcount"?: number | undefined;
@@ -3,4 +3,11 @@
3
3
  height: 20px;
4
4
  border: 2px solid #8F8F8F;
5
5
  border-radius: 2px;
6
+ }
7
+ ._3tjom73 {
8
+ border: 1px solid #d4d4d4;
9
+ border-radius: 4px;
10
+ }
11
+ ._3tjom74 {
12
+ border: none;
6
13
  }
package/dist/main.js CHANGED
@@ -58,6 +58,7 @@ import { ScheduleCall } from "./Forms/ScheduleCall.js";
58
58
  import { ScheduleCallPremier } from "./Forms/ScheduleCallPremier.js";
59
59
  import { SuccesFormWrapper } from "./Forms/SuccesForm.js";
60
60
  import { WCPLSurvey } from "./Forms/WcplSurvey.js";
61
+ import { ClearingForm } from "./Forms/ClearingForm.js";
61
62
  import { HeroBanner } from "./HeroBanner/HeroBanner.js";
62
63
  import { headline_text, heroSupertag, hero_banner, hero_btns, hero_content, hero_embedded_image, hero_img, hero_text, hero_wrapper, logout, reversed, reversed_lg_image } from "./HeroBanner/HeroBanner.css.js";
63
64
  import { selection_headline_text, selection_section, selection_section_bg, selection_section_content, selection_section_icon, selection_section_icon_img } from "./HeroBanner/SelectionBanner.css.js";
@@ -196,6 +197,7 @@ export {
196
197
  Chevron,
197
198
  default8 as ChevronDown,
198
199
  default9 as ChevronUp,
200
+ ClearingForm,
199
201
  default19 as ClockIcon,
200
202
  default10 as CloseIcon,
201
203
  CollectInformationAlert,
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@axos-web-dev/shared-components",
3
3
  "description": "Axos shared components library for web.",
4
- "version": "0.0.108",
4
+ "version": "0.0.109",
5
5
  "type": "module",
6
6
  "module": "dist/main.js",
7
7
  "types": "dist/main.d.ts",