@justifi/webcomponents 4.12.0 → 4.12.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (116) hide show
  1. package/dist/cjs/{Business-f8e37adb.js → Business-21cef37d.js} +20 -0
  2. package/dist/cjs/additional-questions-details_5.cjs.entry.js +2 -2
  3. package/dist/cjs/business-additional-questions-schema-f5f303fb.js +49 -0
  4. package/dist/cjs/{business-form-types-61b8196a.js → business-form-types-a3cc374d.js} +60 -1
  5. package/dist/cjs/{form-control-date_4.cjs.entry.js → form-control-date_3.cjs.entry.js} +0 -44
  6. package/dist/cjs/{form-control-datepart.cjs.entry.js → form-control-datepart_2.cjs.entry.js} +46 -2
  7. package/dist/cjs/{form-input-masks-baa06faf.js → form-input-masks-efd44b8e.js} +2 -0
  8. package/dist/cjs/justifi-additional-questions-form-step_5.cjs.entry.js +7 -7
  9. package/dist/cjs/justifi-additional-questions_4.cjs.entry.js +5 -5
  10. package/dist/cjs/justifi-billing-form_4.cjs.entry.js +2 -2
  11. package/dist/cjs/justifi-business-details.cjs.entry.js +1 -1
  12. package/dist/cjs/justifi-business-form.cjs.entry.js +4 -4
  13. package/dist/cjs/justifi-business-list.cjs.entry.js +1 -1
  14. package/dist/cjs/justifi-business-owners.cjs.entry.js +1 -1
  15. package/dist/cjs/justifi-owner-form.cjs.entry.js +5 -5
  16. package/dist/cjs/justifi-payment-provisioning.cjs.entry.js +2 -2
  17. package/dist/cjs/loader.cjs.js +1 -1
  18. package/dist/cjs/{payload-parsers-32c43c76.js → payload-parsers-74693a97.js} +97 -36
  19. package/dist/cjs/webcomponents.cjs.js +1 -1
  20. package/dist/collection/api/Business.js +18 -0
  21. package/dist/collection/api/Identity.js +2 -0
  22. package/dist/collection/components/business-details/generic-info-details/generic-info-details.js +2 -2
  23. package/dist/collection/components/business-forms/business-form/business-core-info/business-core-info.js +2 -2
  24. package/dist/collection/components/business-forms/business-form/business-representative/business-representative.js +2 -2
  25. package/dist/collection/components/business-forms/owner-form/owner-form.js +2 -2
  26. package/dist/collection/components/business-forms/payment-provisioning/business-core-info/business-core-info-form-step.js +2 -2
  27. package/dist/collection/components/business-forms/payment-provisioning/business-representative/business-representative-form-step.js +2 -2
  28. package/dist/collection/components/business-forms/schemas/business-address-schema.js +1 -22
  29. package/dist/collection/components/business-forms/schemas/business-core-info-schema.js +6 -35
  30. package/dist/collection/components/business-forms/schemas/business-identity-schema.js +15 -32
  31. package/dist/collection/components/business-forms/schemas/schema-helpers.js +1 -0
  32. package/dist/collection/components/business-forms/schemas/schema-validations.js +95 -0
  33. package/dist/collection/components/business-forms/utils/business-form-types.js +59 -1
  34. package/dist/collection/components/business-forms/utils/payload-parsers.js +1 -0
  35. package/dist/collection/components/payment-method-form/payment-method-form.js +1 -1
  36. package/dist/collection/utils/form-input-masks.js +1 -0
  37. package/dist/docs.json +4 -26
  38. package/dist/esm/{Business-2410f7e3.js → Business-0e8a9a3a.js} +21 -1
  39. package/dist/esm/additional-questions-details_5.entry.js +2 -2
  40. package/dist/esm/{business-additional-questions-schema-5571d40f.js → business-additional-questions-schema-a84dd641.js} +6 -35
  41. package/dist/esm/{business-form-types-46ecd908.js → business-form-types-7420dc96.js} +60 -2
  42. package/dist/esm/{form-control-date_4.entry.js → form-control-date_3.entry.js} +2 -45
  43. package/dist/esm/{form-control-datepart.entry.js → form-control-datepart_2.entry.js} +47 -4
  44. package/dist/esm/{form-input-masks-850c8cd4.js → form-input-masks-84875967.js} +2 -1
  45. package/dist/esm/justifi-additional-questions-form-step_5.entry.js +7 -7
  46. package/dist/esm/justifi-additional-questions_4.entry.js +5 -5
  47. package/dist/esm/justifi-billing-form_4.entry.js +2 -2
  48. package/dist/esm/justifi-business-details.entry.js +1 -1
  49. package/dist/esm/justifi-business-form.entry.js +4 -4
  50. package/dist/esm/justifi-business-list.entry.js +1 -1
  51. package/dist/esm/justifi-business-owners.entry.js +1 -1
  52. package/dist/esm/justifi-owner-form.entry.js +5 -5
  53. package/dist/esm/justifi-payment-provisioning.entry.js +2 -2
  54. package/dist/esm/loader.js +1 -1
  55. package/dist/esm/{payload-parsers-192e0c3e.js → payload-parsers-0c4fc2b1.js} +89 -31
  56. package/dist/esm/webcomponents.js +1 -1
  57. package/dist/module/Business.js +21 -1
  58. package/dist/module/business-address-schema.js +2 -23
  59. package/dist/module/business-core-info-form-step.js +2 -2
  60. package/dist/module/business-core-info-schema.js +6 -35
  61. package/dist/module/business-core-info.js +2 -2
  62. package/dist/module/business-form-types.js +60 -2
  63. package/dist/module/business-identity-schema.js +15 -32
  64. package/dist/module/business-owners-form-step.js +2 -8
  65. package/dist/module/business-representative-form-step.js +5 -11
  66. package/dist/module/business-representative.js +4 -10
  67. package/dist/module/form-input-masks.js +2 -1
  68. package/dist/module/generic-info-details2.js +2 -2
  69. package/dist/module/justifi-business-details.js +1 -1
  70. package/dist/module/justifi-business-form.js +7 -13
  71. package/dist/module/justifi-business-list.js +1 -1
  72. package/dist/module/justifi-payment-provisioning.js +5 -11
  73. package/dist/module/legal-address-form-step.js +2 -2
  74. package/dist/module/owner-form.js +6 -12
  75. package/dist/module/payload-parsers.js +99 -1
  76. package/dist/module/payment-method-form.js +2 -2
  77. package/dist/types/api/Business.d.ts +19 -0
  78. package/dist/types/api/Identity.d.ts +3 -0
  79. package/dist/types/components/business-forms/schemas/business-core-info-schema.d.ts +2 -0
  80. package/dist/types/components/business-forms/schemas/business-form-schema.d.ts +4 -0
  81. package/dist/types/components/business-forms/schemas/business-identity-schema.d.ts +3 -1
  82. package/dist/types/components/business-forms/schemas/schema-helpers.d.ts +1 -0
  83. package/dist/types/components/business-forms/schemas/schema-validations.d.ts +18 -0
  84. package/dist/types/components/business-forms/utils/business-form-types.d.ts +5 -1
  85. package/dist/types/utils/form-input-masks.d.ts +1 -0
  86. package/dist/webcomponents/p-01913426.js +1 -0
  87. package/dist/webcomponents/{p-3fe05c4a.entry.js → p-18cf5a16.entry.js} +1 -1
  88. package/dist/webcomponents/p-2fbe8823.entry.js +1 -0
  89. package/dist/webcomponents/{p-8c9d9812.entry.js → p-51ee396f.entry.js} +1 -1
  90. package/dist/webcomponents/p-52e4cc27.js +1 -0
  91. package/dist/webcomponents/{p-9f3facf1.entry.js → p-5f5e730c.entry.js} +1 -1
  92. package/dist/webcomponents/p-602a1588.entry.js +1 -0
  93. package/dist/webcomponents/p-6ec77980.entry.js +1 -0
  94. package/dist/webcomponents/{p-99d6b67e.entry.js → p-81c43ba5.entry.js} +1 -1
  95. package/dist/webcomponents/{p-56780f10.entry.js → p-9e35b0f6.entry.js} +1 -1
  96. package/dist/webcomponents/p-9ec89299.entry.js +1 -0
  97. package/dist/webcomponents/{p-84b9ffc9.entry.js → p-b38baa84.entry.js} +1 -1
  98. package/dist/webcomponents/p-b9f04fb0.entry.js +1 -0
  99. package/dist/webcomponents/p-bfc634c6.entry.js +1 -0
  100. package/dist/webcomponents/p-cb86b2fd.js +1 -0
  101. package/dist/webcomponents/p-d2b7beac.js +1 -0
  102. package/dist/webcomponents/p-e3946c2b.js +1 -0
  103. package/dist/webcomponents/webcomponents.esm.js +1 -1
  104. package/package.json +1 -1
  105. package/dist/cjs/business-additional-questions-schema-bdfd29c3.js +0 -78
  106. package/dist/webcomponents/p-0315876e.entry.js +0 -1
  107. package/dist/webcomponents/p-26fe62d6.entry.js +0 -1
  108. package/dist/webcomponents/p-41b1ad3a.entry.js +0 -1
  109. package/dist/webcomponents/p-5c269619.js +0 -1
  110. package/dist/webcomponents/p-910bb656.js +0 -1
  111. package/dist/webcomponents/p-96cebc8b.entry.js +0 -1
  112. package/dist/webcomponents/p-b318b899.js +0 -1
  113. package/dist/webcomponents/p-e2ba8d84.entry.js +0 -1
  114. package/dist/webcomponents/p-f4ae621e.entry.js +0 -1
  115. package/dist/webcomponents/p-fd60d5af.js +0 -1
  116. package/dist/webcomponents/p-ff211f76.js +0 -1
@@ -2,7 +2,7 @@ import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/
2
2
  import { E as ErrorState } from './utils.js';
3
3
  import { c as config } from './config.js';
4
4
  import { A as Api } from './Api.js';
5
- import { a as Business } from './Business.js';
5
+ import { b as Business } from './Business.js';
6
6
  import { C as ComponentErrorSeverity, g as getErrorMessage, a as getErrorCode, b as ComponentErrorCodes } from './utils3.js';
7
7
  import { d as defineCustomElement$7 } from './additional-questions-details2.js';
8
8
  import { d as defineCustomElement$6 } from './business-details-core2.js';
@@ -9,14 +9,13 @@ import { A as Api } from './Api.js';
9
9
  import './Pagination.js';
10
10
  import './Payment.js';
11
11
  import './Payout.js';
12
- import { d as parseBusiness } from './payload-parsers.js';
12
+ import { g as parseBusiness } from './payload-parsers.js';
13
13
  import { c as config } from './config.js';
14
14
  import { F as FormAlert } from './utils4.js';
15
- import { B as BusinessFormServerErrors, b as BusinessFormClickActions } from './business-form-types.js';
16
- import { a as Business } from './Business.js';
17
- import { d as defineCustomElement$c } from './form-control-date2.js';
18
- import { d as defineCustomElement$b } from './form-control-monetary2.js';
19
- import { d as defineCustomElement$a } from './form-control-number2.js';
15
+ import { B as BusinessFormServerErrors, c as BusinessFormClickActions } from './business-form-types.js';
16
+ import { b as Business } from './Business.js';
17
+ import { d as defineCustomElement$b } from './form-control-date2.js';
18
+ import { d as defineCustomElement$a } from './form-control-monetary2.js';
20
19
  import { d as defineCustomElement$9 } from './form-control-number-masked2.js';
21
20
  import { d as defineCustomElement$8 } from './form-control-select2.js';
22
21
  import { d as defineCustomElement$7 } from './form-control-text2.js';
@@ -134,7 +133,7 @@ function defineCustomElement$1() {
134
133
  if (typeof customElements === "undefined") {
135
134
  return;
136
135
  }
137
- const components = ["justifi-business-form", "form-control-date", "form-control-monetary", "form-control-number", "form-control-number-masked", "form-control-select", "form-control-text", "justifi-additional-questions", "justifi-business-core-info", "justifi-business-representative", "justifi-identity-address-form", "justifi-legal-address-form"];
136
+ const components = ["justifi-business-form", "form-control-date", "form-control-monetary", "form-control-number-masked", "form-control-select", "form-control-text", "justifi-additional-questions", "justifi-business-core-info", "justifi-business-representative", "justifi-identity-address-form", "justifi-legal-address-form"];
138
137
  components.forEach(tagName => { switch (tagName) {
139
138
  case "justifi-business-form":
140
139
  if (!customElements.get(tagName)) {
@@ -142,16 +141,11 @@ function defineCustomElement$1() {
142
141
  }
143
142
  break;
144
143
  case "form-control-date":
145
- if (!customElements.get(tagName)) {
146
- defineCustomElement$c();
147
- }
148
- break;
149
- case "form-control-monetary":
150
144
  if (!customElements.get(tagName)) {
151
145
  defineCustomElement$b();
152
146
  }
153
147
  break;
154
- case "form-control-number":
148
+ case "form-control-monetary":
155
149
  if (!customElements.get(tagName)) {
156
150
  defineCustomElement$a();
157
151
  }
@@ -3,7 +3,7 @@ import { A as Api } from './Api.js';
3
3
  import { p as pagingDefaults } from './Pagination.js';
4
4
  import './Payment.js';
5
5
  import './Payout.js';
6
- import { a as Business } from './Business.js';
6
+ import { b as Business } from './Business.js';
7
7
  import { s as snakeCaseToHumanReadable, e as formatDate } from './utils2.js';
8
8
  import { c as config } from './config.js';
9
9
  import { d as defineCustomElement$3 } from './table.js';
@@ -1,9 +1,8 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { F as FormAlert, L as LoadingSpinner } from './utils4.js';
3
- import { b as BusinessFormClickActions } from './business-form-types.js';
4
- import { d as defineCustomElement$e } from './form-control-date2.js';
5
- import { d as defineCustomElement$d } from './form-control-monetary2.js';
6
- import { d as defineCustomElement$c } from './form-control-number2.js';
3
+ import { c as BusinessFormClickActions } from './business-form-types.js';
4
+ import { d as defineCustomElement$d } from './form-control-date2.js';
5
+ import { d as defineCustomElement$c } from './form-control-monetary2.js';
7
6
  import { d as defineCustomElement$b } from './form-control-number-masked2.js';
8
7
  import { d as defineCustomElement$a } from './form-control-select2.js';
9
8
  import { d as defineCustomElement$9 } from './form-control-text2.js';
@@ -116,7 +115,7 @@ function defineCustomElement$1() {
116
115
  if (typeof customElements === "undefined") {
117
116
  return;
118
117
  }
119
- const components = ["justifi-payment-provisioning", "form-control-date", "form-control-monetary", "form-control-number", "form-control-number-masked", "form-control-select", "form-control-text", "justifi-additional-questions-form-step", "justifi-business-core-info-form-step", "justifi-business-owners-form-step", "justifi-business-representative-form-step", "justifi-identity-address-form", "justifi-legal-address-form-step", "justifi-owner-form"];
118
+ const components = ["justifi-payment-provisioning", "form-control-date", "form-control-monetary", "form-control-number-masked", "form-control-select", "form-control-text", "justifi-additional-questions-form-step", "justifi-business-core-info-form-step", "justifi-business-owners-form-step", "justifi-business-representative-form-step", "justifi-identity-address-form", "justifi-legal-address-form-step", "justifi-owner-form"];
120
119
  components.forEach(tagName => { switch (tagName) {
121
120
  case "justifi-payment-provisioning":
122
121
  if (!customElements.get(tagName)) {
@@ -124,16 +123,11 @@ function defineCustomElement$1() {
124
123
  }
125
124
  break;
126
125
  case "form-control-date":
127
- if (!customElements.get(tagName)) {
128
- defineCustomElement$e();
129
- }
130
- break;
131
- case "form-control-monetary":
132
126
  if (!customElements.get(tagName)) {
133
127
  defineCustomElement$d();
134
128
  }
135
129
  break;
136
- case "form-control-number":
130
+ case "form-control-monetary":
137
131
  if (!customElements.get(tagName)) {
138
132
  defineCustomElement$c();
139
133
  }
@@ -1,8 +1,8 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { F as FormController } from './form.js';
3
3
  import { A as Api } from './Api.js';
4
- import { b as Address } from './Business.js';
5
- import { f as parseAddressInfo } from './payload-parsers.js';
4
+ import { c as Address } from './Business.js';
5
+ import { u as parseAddressInfo } from './payload-parsers.js';
6
6
  import { a as addressSchema } from './business-address-schema.js';
7
7
  import { c as config } from './config.js';
8
8
  import { B as BusinessFormServerErrors } from './business-form-types.js';
@@ -1,19 +1,18 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { F as FormController } from './form.js';
3
- import { P as PHONE_MASKS } from './form-input-masks.js';
3
+ import { P as PHONE_MASKS, S as SSN_MASK } from './form-input-masks.js';
4
4
  import { A as Api } from './Api.js';
5
5
  import './Pagination.js';
6
6
  import './Payment.js';
7
7
  import './Payout.js';
8
8
  import { O as Owner } from './Business.js';
9
- import { e as parseIdentityInfo } from './payload-parsers.js';
9
+ import { r as parseIdentityInfo } from './payload-parsers.js';
10
10
  import { i as identitySchema } from './business-identity-schema.js';
11
11
  import { c as config } from './config.js';
12
12
  import { L as LoadingSpinner } from './utils4.js';
13
13
  import { d as deconstructDate } from './helpers.js';
14
- import { c as OwnerFormServerErrors, O as OwnerFormClickActions } from './business-form-types.js';
15
- import { d as defineCustomElement$6 } from './form-control-date2.js';
16
- import { d as defineCustomElement$5 } from './form-control-number2.js';
14
+ import { d as OwnerFormServerErrors, O as OwnerFormClickActions } from './business-form-types.js';
15
+ import { d as defineCustomElement$5 } from './form-control-date2.js';
17
16
  import { d as defineCustomElement$4 } from './form-control-number-masked2.js';
18
17
  import { d as defineCustomElement$3 } from './form-control-select2.js';
19
18
  import { d as defineCustomElement$2 } from './form-control-text2.js';
@@ -176,7 +175,7 @@ const BusinessOwnerForm = /*@__PURE__*/ proxyCustomElement(class BusinessOwnerFo
176
175
  }
177
176
  render() {
178
177
  const ownerDefaultValue = this.formController.getInitialValues();
179
- return (h(Host, { exportparts: "label,input,input-invalid" }, h("form", { onSubmit: this.validateAndSubmit }, h("fieldset", null, h("legend", null, this.formTitle), h("div", { class: 'row gy-3' }, h("div", { class: "col-12 col-md-6" }, h("form-control-text", { name: "name", label: "Full Name", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.name, error: this.errors.name, inputHandler: this.inputHandler })), h("div", { class: "col-12 col-md-4" }, h("form-control-text", { name: "title", label: "Title", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.title, error: this.errors.title, inputHandler: this.inputHandler })), h("div", { class: "col-12 col-md-6" }, h("form-control-text", { name: "email", label: "Email Address", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.email, error: this.errors.email, inputHandler: this.inputHandler })), h("div", { class: "col-12 col-md-6" }, h("form-control-number-masked", { name: "phone", label: "Phone Number", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.phone, error: this.errors.phone, inputHandler: this.inputHandler, mask: PHONE_MASKS.US })), h("div", { class: "col-12 col-md-4" }, h("form-control-date", { name: "dob_full", label: "Birth Date", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.dob_full, error: this.errors.dob_full, inputHandler: this.inputHandler, onFormControlInput: this.onDateOfBirthUpdate })), h("div", { class: "col-12 col-md-8" }, h("form-control-number", { name: "identification_number", label: "SSN", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.identification_number, error: this.errors.identification_number, inputHandler: this.inputHandler })), h("div", { class: "col-12" }, h("justifi-identity-address-form", { errors: this.errors.address, defaultValues: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.address, handleFormUpdate: this.onAddressFormUpdate })), h("div", { class: "container d-flex gap-2" }, h("button", { type: "submit", class: `btn btn-primary jfi-submit-button${this.isLoading ? ' jfi-submit-button-loading' : ''}`, onClick: () => this.handleAddOwner(), disabled: this.isLoading }, this.isLoading ? LoadingSpinner() : this.submitButtonText), this.showRemoveButton &&
178
+ return (h(Host, { exportparts: "label,input,input-invalid" }, h("form", { onSubmit: this.validateAndSubmit }, h("fieldset", null, h("legend", null, this.formTitle), h("div", { class: 'row gy-3' }, h("div", { class: "col-12 col-md-6" }, h("form-control-text", { name: "name", label: "Full Name", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.name, error: this.errors.name, inputHandler: this.inputHandler })), h("div", { class: "col-12 col-md-4" }, h("form-control-text", { name: "title", label: "Title", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.title, error: this.errors.title, inputHandler: this.inputHandler })), h("div", { class: "col-12 col-md-6" }, h("form-control-text", { name: "email", label: "Email Address", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.email, error: this.errors.email, inputHandler: this.inputHandler })), h("div", { class: "col-12 col-md-6" }, h("form-control-number-masked", { name: "phone", label: "Phone Number", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.phone, error: this.errors.phone, inputHandler: this.inputHandler, mask: PHONE_MASKS.US })), h("div", { class: "col-12 col-md-4" }, h("form-control-date", { name: "dob_full", label: "Birth Date", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.dob_full, error: this.errors.dob_full, inputHandler: this.inputHandler, onFormControlInput: this.onDateOfBirthUpdate })), h("div", { class: "col-12 col-md-8" }, h("form-control-number-masked", { name: "identification_number", label: "SSN", defaultValue: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.identification_number, error: this.errors.identification_number, inputHandler: this.inputHandler, mask: SSN_MASK })), h("div", { class: "col-12" }, h("justifi-identity-address-form", { errors: this.errors.address, defaultValues: ownerDefaultValue === null || ownerDefaultValue === void 0 ? void 0 : ownerDefaultValue.address, handleFormUpdate: this.onAddressFormUpdate })), h("div", { class: "container d-flex gap-2" }, h("button", { type: "submit", class: `btn btn-primary jfi-submit-button${this.isLoading ? ' jfi-submit-button-loading' : ''}`, onClick: () => this.handleAddOwner(), disabled: this.isLoading }, this.isLoading ? LoadingSpinner() : this.submitButtonText), this.showRemoveButton &&
180
179
  h("button", { type: "button", class: "btn btn-danger", onClick: () => this.handleRemoveOwner() }, "Remove owner"))), h("hr", null)))));
181
180
  }
182
181
  static get watchers() { return {
@@ -204,7 +203,7 @@ function defineCustomElement() {
204
203
  if (typeof customElements === "undefined") {
205
204
  return;
206
205
  }
207
- const components = ["justifi-owner-form", "form-control-date", "form-control-number", "form-control-number-masked", "form-control-select", "form-control-text", "justifi-identity-address-form"];
206
+ const components = ["justifi-owner-form", "form-control-date", "form-control-number-masked", "form-control-select", "form-control-text", "justifi-identity-address-form"];
208
207
  components.forEach(tagName => { switch (tagName) {
209
208
  case "justifi-owner-form":
210
209
  if (!customElements.get(tagName)) {
@@ -212,11 +211,6 @@ function defineCustomElement() {
212
211
  }
213
212
  break;
214
213
  case "form-control-date":
215
- if (!customElements.get(tagName)) {
216
- defineCustomElement$6();
217
- }
218
- break;
219
- case "form-control-number":
220
214
  if (!customElements.get(tagName)) {
221
215
  defineCustomElement$5();
222
216
  }
@@ -1,3 +1,7 @@
1
+ import { a as create$6 } from './index.esm.js';
2
+ import { a as BusinessTypeOptions, b as BusinessStructureOptions } from './business-form-types.js';
3
+ import { S as StateOptions } from './state-options.js';
4
+
1
5
  const transformEmptyString = (value) => {
2
6
  return value === '' ? null : value;
3
7
  };
@@ -6,6 +10,99 @@ const phoneRegex = /^\d{10}$/;
6
10
  const urlRegex = /^(?:http(s)?:\/\/)?(?:www\.)?[-a-zA-Z0-9@:%._\+~#=]{2,256}\.[a-z]{2,6}\b([-a-zA-Z0-9@:%_\+.~#?&//=]*)$/;
7
11
  const taxIdRegex = /^\d{9}$/;
8
12
  const stringLettersOnlyRegex = /^(?!^\s+$)[a-zA-Z\s]*$/;
13
+ const ssnRegex = /^(?!000|666|9\d{2})\d{3}(?!00)\d{2}(?!0000)\d{4}$/;
14
+
15
+ // Common Validations
16
+ const emailValidation = create$6()
17
+ .email('Enter valid email')
18
+ .transform(transformEmptyString);
19
+ const phoneValidation = create$6()
20
+ .matches(phoneRegex, 'Enter valid phone number')
21
+ .transform(transformEmptyString);
22
+ // Core Info Validations
23
+ const businessNameValidation = create$6()
24
+ .min(2, 'Name must be at least 2 characters')
25
+ .max(100, 'Name must be less than 100 characters')
26
+ .matches(businessNameRegex, 'Enter valid business name')
27
+ .transform(transformEmptyString);
28
+ const doingBusinessAsValidation = create$6()
29
+ .min(2, 'Name must be at least 2 characters')
30
+ .max(100, 'Name must be less than 100 characters')
31
+ .matches(businessNameRegex, 'Enter valid doing business as')
32
+ .transform(transformEmptyString);
33
+ const websiteUrlValidation = create$6()
34
+ .matches(urlRegex, 'Enter valid website url')
35
+ .transform(transformEmptyString);
36
+ const businessTypeValidation = create$6()
37
+ .oneOf(BusinessTypeOptions.map((option) => option.value), 'Select business type')
38
+ .transform(transformEmptyString);
39
+ const businessStructureValidation = create$6()
40
+ .oneOf(BusinessStructureOptions.map((option) => option.value), 'Select business structure')
41
+ .transform(transformEmptyString);
42
+ const industryValidation = create$6()
43
+ .min(2, 'Industry must be at least 2 characters')
44
+ .max(50, 'Industry must be less than 50 characters')
45
+ .matches(stringLettersOnlyRegex, 'Enter valid industry')
46
+ .transform(transformEmptyString);
47
+ const taxIdValidation = create$6()
48
+ .matches(taxIdRegex, 'Enter valid tax id')
49
+ .transform(transformEmptyString);
50
+ // Identity Validations
51
+ const identityNameValidation = create$6()
52
+ .min(2, 'Name must be at least 2 characters')
53
+ .max(100, 'Name must be less than 100 characters')
54
+ .matches(stringLettersOnlyRegex, 'Enter valid name')
55
+ .transform(transformEmptyString);
56
+ const identityTitleValidation = create$6()
57
+ .min(2, 'Title must be at least 2 characters')
58
+ .max(50, 'Title must be less than 50 characters')
59
+ .matches(stringLettersOnlyRegex, 'Enter valid title')
60
+ .transform(transformEmptyString);
61
+ const dobValidation = (role) => {
62
+ return (create$6()
63
+ .test('min', 'Enter a valid date', (value) => {
64
+ const date = new Date(value);
65
+ const minDate = new Date('1902-01-01');
66
+ return date >= minDate;
67
+ })
68
+ .test('age', `${role} must be at least 18 years old`, (value) => {
69
+ const date = new Date(value);
70
+ const minAgeDate = new Date();
71
+ minAgeDate.setFullYear(minAgeDate.getFullYear() - 18);
72
+ return date <= minAgeDate;
73
+ })
74
+ .transform(transformEmptyString));
75
+ };
76
+ const ssnValidation = create$6()
77
+ .matches(ssnRegex, 'Enter valid SSN')
78
+ .test('not-repeat', 'Enter valid SSN', (value) => {
79
+ return !/^(\d)\1+$/.test(value);
80
+ })
81
+ .test('not-seq', 'Enter valid SSN', (value) => {
82
+ return value !== '123456789';
83
+ })
84
+ .transform(transformEmptyString);
85
+ // Address Validations
86
+ const lineOneValidation = create$6()
87
+ .min(5, 'Address must be at least 5 characters')
88
+ .max(100, 'Address must be less than 100 characters')
89
+ .matches(/^(?!^\s+$)[a-zA-Z0-9\s,.'-]*$/, 'Enter valid address line 1')
90
+ .transform(transformEmptyString);
91
+ const lineTwoValidation = create$6()
92
+ .max(100, 'Address must be less than 100 characters')
93
+ .matches(/^(?!^\s+$)[a-zA-Z0-9\s,.'-]*$/, 'Enter valid address line 2')
94
+ .transform(transformEmptyString);
95
+ const cityValidation = create$6()
96
+ .min(2, 'City must be at least 2 characters')
97
+ .max(50, 'City must be less than 50 characters')
98
+ .matches(/^(?!^\s+$)[a-zA-Z\s]*$/, 'Enter valid city')
99
+ .transform(transformEmptyString);
100
+ const stateValidation = create$6()
101
+ .oneOf(StateOptions.map((option) => option.value), 'Select state')
102
+ .transform(transformEmptyString);
103
+ const postalValidation = create$6()
104
+ .matches(/^[0-9]{5}$/, 'Enter valid postal code')
105
+ .transform(transformEmptyString);
9
106
 
10
107
  // These props should not be sent to the server
11
108
  // This function is for the larger business form.
@@ -43,7 +140,8 @@ const parseIdentityInfo = (values) => {
43
140
  delete values.address.updated_at;
44
141
  delete values.business_id;
45
142
  delete values.dob_full;
143
+ delete values.ssn_last4;
46
144
  return values;
47
145
  };
48
146
 
49
- export { phoneRegex as a, businessNameRegex as b, taxIdRegex as c, parseBusiness as d, parseIdentityInfo as e, parseAddressInfo as f, parseCoreInfo as p, stringLettersOnlyRegex as s, transformEmptyString as t, urlRegex as u };
147
+ export { phoneValidation as a, businessNameValidation as b, businessTypeValidation as c, doingBusinessAsValidation as d, emailValidation as e, businessStructureValidation as f, parseBusiness as g, identityNameValidation as h, industryValidation as i, identityTitleValidation as j, dobValidation as k, lineOneValidation as l, lineTwoValidation as m, cityValidation as n, stateValidation as o, parseCoreInfo as p, postalValidation as q, parseIdentityInfo as r, ssnValidation as s, taxIdValidation as t, parseAddressInfo as u, websiteUrlValidation as w };
@@ -1490,7 +1490,7 @@ const MessageEventType = {
1490
1490
  };
1491
1491
 
1492
1492
  const name = "@justifi/webcomponents";
1493
- const version = "4.12.0";
1493
+ const version = "4.12.2";
1494
1494
  const description = "JustiFi Web Components";
1495
1495
  const main = "dist/module/index.js";
1496
1496
  const module = "dist/module/index.js";
@@ -1724,11 +1724,11 @@ const PaymentMethodForm = /*@__PURE__*/ proxyCustomElement(class PaymentMethodFo
1724
1724
  render() {
1725
1725
  return (h(Host, null, h("iframe", { id: `justifi-payment-method-form-${this.paymentMethodFormType}`, src: this.getIframeSrc(), ref: el => {
1726
1726
  this.iframeElement = el;
1727
+ this.initializeFrameCommunicationService();
1727
1728
  }, onLoad: () => {
1728
1729
  iframeResizer({
1729
1730
  scrollbars: false,
1730
1731
  }, this.iframeElement);
1731
- this.initializeFrameCommunicationService();
1732
1732
  this.sendStyleOverrides();
1733
1733
  } })));
1734
1734
  }
@@ -6,6 +6,21 @@ export declare enum BusinessType {
6
6
  non_profit = "non_profit",
7
7
  government_entity = "government_entity"
8
8
  }
9
+ export declare enum BusinessStructure {
10
+ sole_proprietorship = "sole_proprietorship",
11
+ single_llc = "single_llc",
12
+ multi_llc = "multi_llc",
13
+ private_partnership = "private_partnership",
14
+ private_corporation = "private_corporation",
15
+ unincorporated_association = "unincorporated_association",
16
+ public_partnership = "public_partnership",
17
+ public_corporation = "public_corporation",
18
+ incorporated = "incorporated",
19
+ unincorporated = "unincorporated",
20
+ government_unit = "government_unit",
21
+ government_instrumentality = "government_instrumentality",
22
+ tax_exempt_government_instrumentality = "tax_exempt_government_instrumentality"
23
+ }
9
24
  export interface IAddress {
10
25
  id?: string;
11
26
  platform_account_id?: string;
@@ -67,6 +82,7 @@ export declare class AdditionalQuestions implements IAdditionalQuestions {
67
82
  }
68
83
  export interface ICoreBusinessInfo {
69
84
  business_type?: BusinessType;
85
+ business_structure?: BusinessStructure;
70
86
  legal_name?: string;
71
87
  doing_business_as?: string;
72
88
  industry?: string;
@@ -77,6 +93,7 @@ export interface ICoreBusinessInfo {
77
93
  }
78
94
  export declare class CoreBusinessInfo implements ICoreBusinessInfo {
79
95
  business_type: BusinessType;
96
+ business_structure: BusinessStructure;
80
97
  legal_name: string;
81
98
  doing_business_as: string;
82
99
  industry: string;
@@ -89,6 +106,7 @@ export declare class CoreBusinessInfo implements ICoreBusinessInfo {
89
106
  export interface IBusiness {
90
107
  additional_questions: IAdditionalQuestions | {};
91
108
  business_type: BusinessType;
109
+ business_structure: BusinessStructure;
92
110
  bank_accounts: BankAccount[];
93
111
  created_at: string;
94
112
  documents: Document[];
@@ -111,6 +129,7 @@ export interface IBusiness {
111
129
  export declare class Business implements IBusiness {
112
130
  additional_questions: IAdditionalQuestions | {};
113
131
  business_type: BusinessType;
132
+ business_structure: BusinessStructure;
114
133
  bank_accounts: BankAccount[];
115
134
  created_at: string;
116
135
  documents: Document[];
@@ -14,6 +14,7 @@ export interface Identity {
14
14
  name?: string;
15
15
  phone?: string;
16
16
  platform_account_id?: string;
17
+ identification_number?: string;
17
18
  ssn_last4?: string;
18
19
  title?: string;
19
20
  updated_at?: string;
@@ -34,6 +35,7 @@ export declare class Owner implements Identity {
34
35
  name?: string;
35
36
  phone?: string;
36
37
  platform_account_id?: string;
38
+ identification_number?: string;
37
39
  ssn_last4?: string;
38
40
  title?: string;
39
41
  updated_at?: string;
@@ -55,6 +57,7 @@ export declare class Representative implements Identity {
55
57
  name?: string;
56
58
  phone?: string;
57
59
  platform_account_id?: string;
60
+ identification_number?: string;
58
61
  ssn_last4?: string;
59
62
  title?: string;
60
63
  updated_at?: string;
@@ -5,6 +5,7 @@ export declare const businessCoreInfoSchema: (allowOptionalFields?: boolean) =>
5
5
  phone: string;
6
6
  doing_business_as: string;
7
7
  business_type: string;
8
+ business_structure: string;
8
9
  industry: string;
9
10
  tax_id: string;
10
11
  }, import("yup").AnyObject, {
@@ -14,6 +15,7 @@ export declare const businessCoreInfoSchema: (allowOptionalFields?: boolean) =>
14
15
  phone: undefined;
15
16
  doing_business_as: undefined;
16
17
  business_type: undefined;
18
+ business_structure: undefined;
17
19
  industry: undefined;
18
20
  tax_id: undefined;
19
21
  }, "">;
@@ -22,6 +22,7 @@ export declare const businessFormSchema: import("yup").ObjectSchema<{
22
22
  postal_code?: string;
23
23
  country?: string;
24
24
  };
25
+ title?: string;
25
26
  name?: string;
26
27
  email?: string;
27
28
  phone?: string;
@@ -34,6 +35,7 @@ export declare const businessFormSchema: import("yup").ObjectSchema<{
34
35
  phone: unknown;
35
36
  doing_business_as: unknown;
36
37
  business_type: unknown;
38
+ business_structure: unknown;
37
39
  industry: unknown;
38
40
  tax_id: unknown;
39
41
  }, import("yup").AnyObject, {
@@ -53,6 +55,7 @@ export declare const businessFormSchema: import("yup").ObjectSchema<{
53
55
  };
54
56
  representative: {
55
57
  name: undefined;
58
+ title: undefined;
56
59
  email: undefined;
57
60
  phone: undefined;
58
61
  dob_full: undefined;
@@ -72,6 +75,7 @@ export declare const businessFormSchema: import("yup").ObjectSchema<{
72
75
  phone: undefined;
73
76
  doing_business_as: undefined;
74
77
  business_type: undefined;
78
+ business_structure: undefined;
75
79
  industry: undefined;
76
80
  tax_id: undefined;
77
81
  }, "">;
@@ -1,5 +1,6 @@
1
- export declare const identitySchema: (title: string, allowOptionalFields?: boolean) => import("yup").ObjectSchema<{
1
+ export declare const identitySchema: (role: string, allowOptionalFields?: boolean) => import("yup").ObjectSchema<{
2
2
  name: string;
3
+ title: string;
3
4
  email: string;
4
5
  phone: string;
5
6
  dob_full: string;
@@ -14,6 +15,7 @@ export declare const identitySchema: (title: string, allowOptionalFields?: boole
14
15
  };
15
16
  }, import("yup").AnyObject, {
16
17
  name: undefined;
18
+ title: undefined;
17
19
  email: undefined;
18
20
  phone: undefined;
19
21
  dob_full: undefined;
@@ -4,3 +4,4 @@ export declare const phoneRegex: RegExp;
4
4
  export declare const urlRegex: RegExp;
5
5
  export declare const taxIdRegex: RegExp;
6
6
  export declare const stringLettersOnlyRegex: RegExp;
7
+ export declare const ssnRegex: RegExp;
@@ -0,0 +1,18 @@
1
+ export declare const emailValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
2
+ export declare const phoneValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
3
+ export declare const businessNameValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
4
+ export declare const doingBusinessAsValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
5
+ export declare const websiteUrlValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
6
+ export declare const businessTypeValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
7
+ export declare const businessStructureValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
8
+ export declare const industryValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
9
+ export declare const taxIdValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
10
+ export declare const identityNameValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
11
+ export declare const identityTitleValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
12
+ export declare const dobValidation: (role: string) => import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
13
+ export declare const ssnValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
14
+ export declare const lineOneValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
15
+ export declare const lineTwoValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
16
+ export declare const cityValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
17
+ export declare const stateValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
18
+ export declare const postalValidation: import("yup").StringSchema<string, import("yup").AnyObject, undefined, "">;
@@ -1,4 +1,4 @@
1
- import { BusinessType } from "../../../api/Business";
1
+ import { BusinessStructure, BusinessType } from "../../../api/Business";
2
2
  export interface BusinessFormSubmitEvent {
3
3
  data: any;
4
4
  metadata?: BusinessFormEventMetaData;
@@ -51,4 +51,8 @@ export declare const BusinessTypeOptions: {
51
51
  label: string;
52
52
  value: BusinessType | string;
53
53
  }[];
54
+ export declare const BusinessStructureOptions: {
55
+ label: string;
56
+ value: BusinessStructure | string;
57
+ }[];
54
58
  export {};
@@ -4,3 +4,4 @@ export declare const PHONE_MASKS: {
4
4
  export declare const TAX_ID_MASKS: {
5
5
  US: string;
6
6
  };
7
+ export declare const SSN_MASK = "000-00-0000";
@@ -0,0 +1 @@
1
+ const s={US:"(000) 000-0000"},a={US:"00-0000000"},S="000-00-0000";export{s as P,S,a as T}
@@ -1 +1 @@
1
- import{r,h as o,H as s}from"./p-9ee8ad4d.js";import{A as i}from"./p-04c7f8f8.js";import{p as t}from"./p-56f6ce4c.js";import"./p-02fa533c.js";import"./p-e3fab0e2.js";import{B as e}from"./p-5c269619.js";import{s as a,f as n}from"./p-28b38699.js";import{c as b}from"./p-ae263544.js";import"./p-6078a370.js";const c=class{constructor(o){r(this,o),this.mapProductStatusToBadge=r=>r?"bg-success":"bg-secondary",this.handleClickPrevious=r=>{const o=Object.assign({},this.params);delete o.after_cursor,this.params=Object.assign(Object.assign({},o),{before_cursor:r})},this.handleClickNext=r=>{const o=Object.assign({},this.params);delete o.before_cursor,this.params=Object.assign(Object.assign({},o),{after_cursor:r})},this.accountId=void 0,this.authToken=void 0,this.businesses=[],this.loading=!0,this.errorMessage=void 0,this.paging=t,this.params=void 0}updateOnPropChange(){this.fetchData()}connectedCallback(){this.fetchData()}async fetchData(){var r;if(!this.accountId||!this.authToken)return this.errorMessage="Can not fetch any data without an AccountID and an AuthToken",void(this.loading=!1);this.loading=!0;let o={account_id:this.accountId};const s=await i(this.authToken,b.proxyApiOrigin).get("entities/business",Object.assign(Object.assign({},o),this.params));if(s.error)this.errorMessage="string"==typeof s.error?s.error:s.error.message;else{this.paging=Object.assign(Object.assign({},this.paging),s.page_info);const o=null===(r=null==s?void 0:s.data)||void 0===r?void 0:r.map((r=>new e(r)));this.businesses=o}this.loading=!1}render(){return o(s,null,o("justifi-table",{columnData:[["Legal Name","The name associated with this Business"],["Business Type","The business type"],["Tax ID","The tax ID associated with this business"],["Industry","The industry this business participates in"],["Product Ready","List of our products that are used by this business"],["Created at","Date this business was created"]],rowData:this.businesses.map((r=>[r.legal_name,a(r.business_type),r.tax_id,r.industry,{type:"inner",value:`\n <div class="d-flex flex-nowrap gap-1">\n <span class="badge ${this.mapProductStatusToBadge(r.product_categories.credit)}">Credit</span>\n <span class="badge ${this.mapProductStatusToBadge(r.product_categories.insurance)}">Insurance</span>\n <span class="badge ${this.mapProductStatusToBadge(r.product_categories.lending)}">Lending</span>\n <span class="badge ${this.mapProductStatusToBadge(r.product_categories.payment)}">Payment</span>\n </div>\n `},n(r.created_at)])),loading:this.loading,"error-message":this.errorMessage,params:this.params,paging:Object.assign(Object.assign({},this.paging),{handleClickNext:this.handleClickNext,handleClickPrevious:this.handleClickPrevious})}))}static get watchers(){return{accountId:["updateOnPropChange"],authToken:["updateOnPropChange"],params:["updateOnPropChange"]}}};c.style=':root,[data-bs-theme=light]{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13, 110, 253;--bs-secondary-rgb:108, 117, 125;--bs-success-rgb:25, 135, 84;--bs-info-rgb:13, 202, 240;--bs-warning-rgb:255, 193, 7;--bs-danger-rgb:220, 53, 69;--bs-light-rgb:248, 249, 250;--bs-dark-rgb:33, 37, 41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255, 255, 255;--bs-black-rgb:0, 0, 0;--bs-font-sans-serif:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33, 37, 41;--bs-body-bg:#fff;--bs-body-bg-rgb:255, 255, 255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0, 0, 0;--bs-secondary-color:rgba(33, 37, 41, 0.75);--bs-secondary-color-rgb:33, 37, 41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233, 236, 239;--bs-tertiary-color:rgba(33, 37, 41, 0.5);--bs-tertiary-color-rgb:33, 37, 41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248, 249, 250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13, 110, 253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10, 88, 202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13, 110, 253, 0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222, 226, 230;--bs-body-bg:#212529;--bs-body-bg-rgb:33, 37, 41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255, 255, 255;--bs-secondary-color:rgba(222, 226, 230, 0.75);--bs-secondary-color-rgb:222, 226, 230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52, 58, 64;--bs-tertiary-color:rgba(222, 226, 230, 0.5);--bs-tertiary-color-rgb:222, 226, 230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43, 48, 53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110, 168, 254;--bs-link-hover-color-rgb:139, 185, 254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, 0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg) }}.spinner-border{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-border-width:0.25em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem;--bs-spinner-border-width:0.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem}@media (prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed:1.5s}}.clearfix::after{display:block;clear:both;content:""}.text-bg-primary{color:#fff !important;background-color:RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-secondary{color:#fff !important;background-color:RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-success{color:#fff !important;background-color:RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-info{color:#000 !important;background-color:RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-warning{color:#000 !important;background-color:RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-danger{color:#fff !important;background-color:RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-light{color:#000 !important;background-color:RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-dark{color:#fff !important;background-color:RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important}.link-primary{color:RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-primary:hover,.link-primary:focus{color:RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important}.link-secondary{color:RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-secondary:hover,.link-secondary:focus{color:RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important}.link-success{color:RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-success:hover,.link-success:focus{color:RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important}.link-info{color:RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-info:hover,.link-info:focus{color:RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important}.link-warning{color:RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-warning:hover,.link-warning:focus{color:RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important}.link-danger{color:RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-danger:hover,.link-danger:focus{color:RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important}.link-light{color:RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-light:hover,.link-light:focus{color:RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important}.link-dark{color:RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-dark:hover,.link-dark:focus{color:RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis:hover,.link-body-emphasis:focus{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:0.375rem;align-items:center;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));text-underline-offset:0.25em;backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:0.2s ease-in-out transform}@media (prefers-reduced-motion: reduce){.icon-link>.bi{transition:none}}.icon-link-hover:hover>.bi,.icon-link-hover:focus-visible>.bi{transform:var(--bs-icon-link-transform, translate3d(0.25em, 0, 0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media (min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.visually-hidden:not(caption),.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption){position:absolute !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:0.25}:host{font-family:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529}';export{c as justifi_business_list}
1
+ import{r,h as o,H as s}from"./p-9ee8ad4d.js";import{A as i}from"./p-04c7f8f8.js";import{p as t}from"./p-56f6ce4c.js";import"./p-02fa533c.js";import"./p-e3fab0e2.js";import{B as e}from"./p-e3946c2b.js";import{s as a,f as n}from"./p-28b38699.js";import{c as b}from"./p-ae263544.js";import"./p-6078a370.js";const c=class{constructor(o){r(this,o),this.mapProductStatusToBadge=r=>r?"bg-success":"bg-secondary",this.handleClickPrevious=r=>{const o=Object.assign({},this.params);delete o.after_cursor,this.params=Object.assign(Object.assign({},o),{before_cursor:r})},this.handleClickNext=r=>{const o=Object.assign({},this.params);delete o.before_cursor,this.params=Object.assign(Object.assign({},o),{after_cursor:r})},this.accountId=void 0,this.authToken=void 0,this.businesses=[],this.loading=!0,this.errorMessage=void 0,this.paging=t,this.params=void 0}updateOnPropChange(){this.fetchData()}connectedCallback(){this.fetchData()}async fetchData(){var r;if(!this.accountId||!this.authToken)return this.errorMessage="Can not fetch any data without an AccountID and an AuthToken",void(this.loading=!1);this.loading=!0;let o={account_id:this.accountId};const s=await i(this.authToken,b.proxyApiOrigin).get("entities/business",Object.assign(Object.assign({},o),this.params));if(s.error)this.errorMessage="string"==typeof s.error?s.error:s.error.message;else{this.paging=Object.assign(Object.assign({},this.paging),s.page_info);const o=null===(r=null==s?void 0:s.data)||void 0===r?void 0:r.map((r=>new e(r)));this.businesses=o}this.loading=!1}render(){return o(s,null,o("justifi-table",{columnData:[["Legal Name","The name associated with this Business"],["Business Type","The business type"],["Tax ID","The tax ID associated with this business"],["Industry","The industry this business participates in"],["Product Ready","List of our products that are used by this business"],["Created at","Date this business was created"]],rowData:this.businesses.map((r=>[r.legal_name,a(r.business_type),r.tax_id,r.industry,{type:"inner",value:`\n <div class="d-flex flex-nowrap gap-1">\n <span class="badge ${this.mapProductStatusToBadge(r.product_categories.credit)}">Credit</span>\n <span class="badge ${this.mapProductStatusToBadge(r.product_categories.insurance)}">Insurance</span>\n <span class="badge ${this.mapProductStatusToBadge(r.product_categories.lending)}">Lending</span>\n <span class="badge ${this.mapProductStatusToBadge(r.product_categories.payment)}">Payment</span>\n </div>\n `},n(r.created_at)])),loading:this.loading,"error-message":this.errorMessage,params:this.params,paging:Object.assign(Object.assign({},this.paging),{handleClickNext:this.handleClickNext,handleClickPrevious:this.handleClickPrevious})}))}static get watchers(){return{accountId:["updateOnPropChange"],authToken:["updateOnPropChange"],params:["updateOnPropChange"]}}};c.style=':root,[data-bs-theme=light]{--bs-blue:#0d6efd;--bs-indigo:#6610f2;--bs-purple:#6f42c1;--bs-pink:#d63384;--bs-red:#dc3545;--bs-orange:#fd7e14;--bs-yellow:#ffc107;--bs-green:#198754;--bs-teal:#20c997;--bs-cyan:#0dcaf0;--bs-black:#000;--bs-white:#fff;--bs-gray:#6c757d;--bs-gray-dark:#343a40;--bs-gray-100:#f8f9fa;--bs-gray-200:#e9ecef;--bs-gray-300:#dee2e6;--bs-gray-400:#ced4da;--bs-gray-500:#adb5bd;--bs-gray-600:#6c757d;--bs-gray-700:#495057;--bs-gray-800:#343a40;--bs-gray-900:#212529;--bs-primary:#0d6efd;--bs-secondary:#6c757d;--bs-success:#198754;--bs-info:#0dcaf0;--bs-warning:#ffc107;--bs-danger:#dc3545;--bs-light:#f8f9fa;--bs-dark:#212529;--bs-primary-rgb:13, 110, 253;--bs-secondary-rgb:108, 117, 125;--bs-success-rgb:25, 135, 84;--bs-info-rgb:13, 202, 240;--bs-warning-rgb:255, 193, 7;--bs-danger-rgb:220, 53, 69;--bs-light-rgb:248, 249, 250;--bs-dark-rgb:33, 37, 41;--bs-primary-text-emphasis:#052c65;--bs-secondary-text-emphasis:#2b2f32;--bs-success-text-emphasis:#0a3622;--bs-info-text-emphasis:#055160;--bs-warning-text-emphasis:#664d03;--bs-danger-text-emphasis:#58151c;--bs-light-text-emphasis:#495057;--bs-dark-text-emphasis:#495057;--bs-primary-bg-subtle:#cfe2ff;--bs-secondary-bg-subtle:#e2e3e5;--bs-success-bg-subtle:#d1e7dd;--bs-info-bg-subtle:#cff4fc;--bs-warning-bg-subtle:#fff3cd;--bs-danger-bg-subtle:#f8d7da;--bs-light-bg-subtle:#fcfcfd;--bs-dark-bg-subtle:#ced4da;--bs-primary-border-subtle:#9ec5fe;--bs-secondary-border-subtle:#c4c8cb;--bs-success-border-subtle:#a3cfbb;--bs-info-border-subtle:#9eeaf9;--bs-warning-border-subtle:#ffe69c;--bs-danger-border-subtle:#f1aeb5;--bs-light-border-subtle:#e9ecef;--bs-dark-border-subtle:#adb5bd;--bs-white-rgb:255, 255, 255;--bs-black-rgb:0, 0, 0;--bs-font-sans-serif:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--bs-font-monospace:SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--bs-gradient:linear-gradient(180deg, rgba(255, 255, 255, 0.15), rgba(255, 255, 255, 0));--bs-body-font-family:var(--bs-font-sans-serif);--bs-body-font-size:1rem;--bs-body-font-weight:400;--bs-body-line-height:1.5;--bs-body-color:#212529;--bs-body-color-rgb:33, 37, 41;--bs-body-bg:#fff;--bs-body-bg-rgb:255, 255, 255;--bs-emphasis-color:#000;--bs-emphasis-color-rgb:0, 0, 0;--bs-secondary-color:rgba(33, 37, 41, 0.75);--bs-secondary-color-rgb:33, 37, 41;--bs-secondary-bg:#e9ecef;--bs-secondary-bg-rgb:233, 236, 239;--bs-tertiary-color:rgba(33, 37, 41, 0.5);--bs-tertiary-color-rgb:33, 37, 41;--bs-tertiary-bg:#f8f9fa;--bs-tertiary-bg-rgb:248, 249, 250;--bs-heading-color:inherit;--bs-link-color:#0d6efd;--bs-link-color-rgb:13, 110, 253;--bs-link-decoration:underline;--bs-link-hover-color:#0a58ca;--bs-link-hover-color-rgb:10, 88, 202;--bs-code-color:#d63384;--bs-highlight-color:#212529;--bs-highlight-bg:#fff3cd;--bs-border-width:1px;--bs-border-style:solid;--bs-border-color:#dee2e6;--bs-border-color-translucent:rgba(0, 0, 0, 0.175);--bs-border-radius:0.375rem;--bs-border-radius-sm:0.25rem;--bs-border-radius-lg:0.5rem;--bs-border-radius-xl:1rem;--bs-border-radius-xxl:2rem;--bs-border-radius-2xl:var(--bs-border-radius-xxl);--bs-border-radius-pill:50rem;--bs-box-shadow:0 0.5rem 1rem rgba(0, 0, 0, 0.15);--bs-box-shadow-sm:0 0.125rem 0.25rem rgba(0, 0, 0, 0.075);--bs-box-shadow-lg:0 1rem 3rem rgba(0, 0, 0, 0.175);--bs-box-shadow-inset:inset 0 1px 2px rgba(0, 0, 0, 0.075);--bs-focus-ring-width:0.25rem;--bs-focus-ring-opacity:0.25;--bs-focus-ring-color:rgba(13, 110, 253, 0.25);--bs-form-valid-color:#198754;--bs-form-valid-border-color:#198754;--bs-form-invalid-color:#dc3545;--bs-form-invalid-border-color:#dc3545}[data-bs-theme=dark]{color-scheme:dark;--bs-body-color:#dee2e6;--bs-body-color-rgb:222, 226, 230;--bs-body-bg:#212529;--bs-body-bg-rgb:33, 37, 41;--bs-emphasis-color:#fff;--bs-emphasis-color-rgb:255, 255, 255;--bs-secondary-color:rgba(222, 226, 230, 0.75);--bs-secondary-color-rgb:222, 226, 230;--bs-secondary-bg:#343a40;--bs-secondary-bg-rgb:52, 58, 64;--bs-tertiary-color:rgba(222, 226, 230, 0.5);--bs-tertiary-color-rgb:222, 226, 230;--bs-tertiary-bg:#2b3035;--bs-tertiary-bg-rgb:43, 48, 53;--bs-primary-text-emphasis:#6ea8fe;--bs-secondary-text-emphasis:#a7acb1;--bs-success-text-emphasis:#75b798;--bs-info-text-emphasis:#6edff6;--bs-warning-text-emphasis:#ffda6a;--bs-danger-text-emphasis:#ea868f;--bs-light-text-emphasis:#f8f9fa;--bs-dark-text-emphasis:#dee2e6;--bs-primary-bg-subtle:#031633;--bs-secondary-bg-subtle:#161719;--bs-success-bg-subtle:#051b11;--bs-info-bg-subtle:#032830;--bs-warning-bg-subtle:#332701;--bs-danger-bg-subtle:#2c0b0e;--bs-light-bg-subtle:#343a40;--bs-dark-bg-subtle:#1a1d20;--bs-primary-border-subtle:#084298;--bs-secondary-border-subtle:#41464b;--bs-success-border-subtle:#0f5132;--bs-info-border-subtle:#087990;--bs-warning-border-subtle:#997404;--bs-danger-border-subtle:#842029;--bs-light-border-subtle:#495057;--bs-dark-border-subtle:#343a40;--bs-heading-color:inherit;--bs-link-color:#6ea8fe;--bs-link-hover-color:#8bb9fe;--bs-link-color-rgb:110, 168, 254;--bs-link-hover-color-rgb:139, 185, 254;--bs-code-color:#e685b5;--bs-highlight-color:#dee2e6;--bs-highlight-bg:#664d03;--bs-border-color:#495057;--bs-border-color-translucent:rgba(255, 255, 255, 0.15);--bs-form-valid-color:#75b798;--bs-form-valid-border-color:#75b798;--bs-form-invalid-color:#ea868f;--bs-form-invalid-border-color:#ea868f}.spinner-grow,.spinner-border{display:inline-block;width:var(--bs-spinner-width);height:var(--bs-spinner-height);vertical-align:var(--bs-spinner-vertical-align);border-radius:50%;animation:var(--bs-spinner-animation-speed) linear infinite var(--bs-spinner-animation-name)}@keyframes spinner-border{to{transform:rotate(360deg) }}.spinner-border{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-border-width:0.25em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-border;border:var(--bs-spinner-border-width) solid currentcolor;border-right-color:transparent}.spinner-border-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem;--bs-spinner-border-width:0.2em}@keyframes spinner-grow{0%{transform:scale(0)}50%{opacity:1;transform:none}}.spinner-grow{--bs-spinner-width:2rem;--bs-spinner-height:2rem;--bs-spinner-vertical-align:-0.125em;--bs-spinner-animation-speed:0.75s;--bs-spinner-animation-name:spinner-grow;background-color:currentcolor;opacity:0}.spinner-grow-sm{--bs-spinner-width:1rem;--bs-spinner-height:1rem}@media (prefers-reduced-motion: reduce){.spinner-border,.spinner-grow{--bs-spinner-animation-speed:1.5s}}.clearfix::after{display:block;clear:both;content:""}.text-bg-primary{color:#fff !important;background-color:RGBA(var(--bs-primary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-secondary{color:#fff !important;background-color:RGBA(var(--bs-secondary-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-success{color:#fff !important;background-color:RGBA(var(--bs-success-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-info{color:#000 !important;background-color:RGBA(var(--bs-info-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-warning{color:#000 !important;background-color:RGBA(var(--bs-warning-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-danger{color:#fff !important;background-color:RGBA(var(--bs-danger-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-light{color:#000 !important;background-color:RGBA(var(--bs-light-rgb), var(--bs-bg-opacity, 1)) !important}.text-bg-dark{color:#fff !important;background-color:RGBA(var(--bs-dark-rgb), var(--bs-bg-opacity, 1)) !important}.link-primary{color:RGBA(var(--bs-primary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-primary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-primary:hover,.link-primary:focus{color:RGBA(10, 88, 202, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(10, 88, 202, var(--bs-link-underline-opacity, 1)) !important}.link-secondary{color:RGBA(var(--bs-secondary-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-secondary-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-secondary:hover,.link-secondary:focus{color:RGBA(86, 94, 100, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(86, 94, 100, var(--bs-link-underline-opacity, 1)) !important}.link-success{color:RGBA(var(--bs-success-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-success-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-success:hover,.link-success:focus{color:RGBA(20, 108, 67, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(20, 108, 67, var(--bs-link-underline-opacity, 1)) !important}.link-info{color:RGBA(var(--bs-info-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-info-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-info:hover,.link-info:focus{color:RGBA(61, 213, 243, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(61, 213, 243, var(--bs-link-underline-opacity, 1)) !important}.link-warning{color:RGBA(var(--bs-warning-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-warning-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-warning:hover,.link-warning:focus{color:RGBA(255, 205, 57, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(255, 205, 57, var(--bs-link-underline-opacity, 1)) !important}.link-danger{color:RGBA(var(--bs-danger-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-danger-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-danger:hover,.link-danger:focus{color:RGBA(176, 42, 55, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(176, 42, 55, var(--bs-link-underline-opacity, 1)) !important}.link-light{color:RGBA(var(--bs-light-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-light-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-light:hover,.link-light:focus{color:RGBA(249, 250, 251, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(249, 250, 251, var(--bs-link-underline-opacity, 1)) !important}.link-dark{color:RGBA(var(--bs-dark-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-dark-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-dark:hover,.link-dark:focus{color:RGBA(26, 30, 33, var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(26, 30, 33, var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 1)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 1)) !important}.link-body-emphasis:hover,.link-body-emphasis:focus{color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-opacity, 0.75)) !important;text-decoration-color:RGBA(var(--bs-emphasis-color-rgb), var(--bs-link-underline-opacity, 0.75)) !important}.focus-ring:focus{outline:0;box-shadow:var(--bs-focus-ring-x, 0) var(--bs-focus-ring-y, 0) var(--bs-focus-ring-blur, 0) var(--bs-focus-ring-width) var(--bs-focus-ring-color)}.icon-link{display:inline-flex;gap:0.375rem;align-items:center;text-decoration-color:rgba(var(--bs-link-color-rgb), var(--bs-link-opacity, 0.5));text-underline-offset:0.25em;backface-visibility:hidden}.icon-link>.bi{flex-shrink:0;width:1em;height:1em;fill:currentcolor;transition:0.2s ease-in-out transform}@media (prefers-reduced-motion: reduce){.icon-link>.bi{transition:none}}.icon-link-hover:hover>.bi,.icon-link-hover:focus-visible>.bi{transform:var(--bs-icon-link-transform, translate3d(0.25em, 0, 0))}.ratio{position:relative;width:100%}.ratio::before{display:block;padding-top:var(--bs-aspect-ratio);content:""}.ratio>*{position:absolute;top:0;left:0;width:100%;height:100%}.ratio-1x1{--bs-aspect-ratio:100%}.ratio-4x3{--bs-aspect-ratio:75%}.ratio-16x9{--bs-aspect-ratio:56.25%}.ratio-21x9{--bs-aspect-ratio:42.8571428571%}.fixed-top{position:fixed;top:0;right:0;left:0;z-index:1030}.fixed-bottom{position:fixed;right:0;bottom:0;left:0;z-index:1030}.sticky-top{position:sticky;top:0;z-index:1020}.sticky-bottom{position:sticky;bottom:0;z-index:1020}@media (min-width: 576px){.sticky-sm-top{position:sticky;top:0;z-index:1020}.sticky-sm-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 768px){.sticky-md-top{position:sticky;top:0;z-index:1020}.sticky-md-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 992px){.sticky-lg-top{position:sticky;top:0;z-index:1020}.sticky-lg-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1200px){.sticky-xl-top{position:sticky;top:0;z-index:1020}.sticky-xl-bottom{position:sticky;bottom:0;z-index:1020}}@media (min-width: 1400px){.sticky-xxl-top{position:sticky;top:0;z-index:1020}.sticky-xxl-bottom{position:sticky;bottom:0;z-index:1020}}.hstack{display:flex;flex-direction:row;align-items:center;align-self:stretch}.vstack{display:flex;flex:1 1 auto;flex-direction:column;align-self:stretch}.visually-hidden,.visually-hidden-focusable:not(:focus):not(:focus-within){width:1px !important;height:1px !important;padding:0 !important;margin:-1px !important;overflow:hidden !important;clip:rect(0, 0, 0, 0) !important;white-space:nowrap !important;border:0 !important}.visually-hidden:not(caption),.visually-hidden-focusable:not(:focus):not(:focus-within):not(caption){position:absolute !important}.stretched-link::after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;content:""}.text-truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.vr{display:inline-block;align-self:stretch;width:var(--bs-border-width);min-height:1em;background-color:currentcolor;opacity:0.25}:host{font-family:system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", "Liberation Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";font-size:1rem;font-weight:400;line-height:1.5;color:#212529}';export{c as justifi_business_list}