@saasquatch/mint-components 2.0.2 → 2.0.3-1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (79) hide show
  1. package/dist/cjs/{ShadowViewAddon-fbc33c53.js → ShadowViewAddon-ae3a32c3.js} +3 -3
  2. package/dist/cjs/{data-16106637.js → data-44260010.js} +29 -2
  3. package/dist/cjs/loader.cjs.js +1 -1
  4. package/dist/cjs/mint-components.cjs.js +1 -1
  5. package/dist/cjs/sqm-banking-info-form_10.cjs.entry.js +340 -75
  6. package/dist/cjs/sqm-big-stat_47.cjs.entry.js +211 -10
  7. package/dist/cjs/sqm-header-logo.cjs.entry.js +14 -1
  8. package/dist/cjs/sqm-stencilbook.cjs.entry.js +23 -2
  9. package/dist/collection/components/sqm-header-logo/sqm-header-logo.js +83 -3
  10. package/dist/collection/components/sqm-portal-footer/sqm-portal-footer-view.js +3 -3
  11. package/dist/collection/components/tax-and-cash/TaxForm.stories.js +1 -0
  12. package/dist/collection/components/tax-and-cash/sqm-banking-info-form/useBankingInfoForm.js +10 -5
  13. package/dist/collection/components/tax-and-cash/sqm-docusign-form/useDocusignForm.js +11 -5
  14. package/dist/collection/components/tax-and-cash/sqm-indirect-tax-form/useIndirectTaxForm.js +46 -40
  15. package/dist/collection/components/tax-and-cash/sqm-payout-status-alert/PayoutStatusAlert.stories.js +13 -0
  16. package/dist/collection/components/tax-and-cash/sqm-payout-status-alert/sqm-payout-status-alert-view.js +95 -1
  17. package/dist/collection/components/tax-and-cash/sqm-payout-status-alert/sqm-payout-status-alert.js +360 -7
  18. package/dist/collection/components/tax-and-cash/sqm-payout-status-alert/usePayoutStatus.js +29 -2
  19. package/dist/collection/components/tax-and-cash/sqm-tax-and-cash/sqm-tax-and-cash.js +307 -7
  20. package/dist/collection/components/tax-and-cash/sqm-tax-and-cash-dashboard/sqm-tax-and-cash-dashboard-view.js +96 -1
  21. package/dist/collection/components/tax-and-cash/sqm-tax-and-cash-dashboard/sqm-tax-and-cash-dashboard.js +308 -8
  22. package/dist/collection/components/tax-and-cash/sqm-tax-and-cash-dashboard/useTaxAndCashDashboard.js +7 -1
  23. package/dist/collection/components/tax-and-cash/sqm-user-info-form/sqm-user-info-form-view.js +23 -12
  24. package/dist/collection/components/tax-and-cash/sqm-user-info-form/sqm-user-info-form.js +1 -1
  25. package/dist/collection/components/tax-and-cash/sqm-user-info-form/useUserInfoForm.js +100 -9
  26. package/dist/esm/{ShadowViewAddon-7a242b65.js → ShadowViewAddon-78a1c35c.js} +3 -3
  27. package/dist/esm/{data-acdb790f.js → data-68816061.js} +29 -2
  28. package/dist/esm/loader.js +1 -1
  29. package/dist/esm/mint-components.js +1 -1
  30. package/dist/esm/sqm-banking-info-form_10.entry.js +340 -75
  31. package/dist/esm/sqm-big-stat_47.entry.js +211 -10
  32. package/dist/esm/sqm-header-logo.entry.js +14 -1
  33. package/dist/esm/sqm-stencilbook.entry.js +23 -2
  34. package/dist/esm-es5/{ShadowViewAddon-7a242b65.js → ShadowViewAddon-78a1c35c.js} +1 -1
  35. package/dist/esm-es5/{data-acdb790f.js → data-68816061.js} +2 -2
  36. package/dist/esm-es5/loader.js +1 -1
  37. package/dist/esm-es5/mint-components.js +1 -1
  38. package/dist/esm-es5/sqm-banking-info-form_10.entry.js +1 -1
  39. package/dist/esm-es5/sqm-big-stat_47.entry.js +1 -1
  40. package/dist/esm-es5/sqm-header-logo.entry.js +1 -1
  41. package/dist/esm-es5/sqm-stencilbook.entry.js +1 -1
  42. package/dist/mint-components/mint-components.esm.js +1 -1
  43. package/dist/mint-components/p-42760067.system.entry.js +1 -0
  44. package/dist/mint-components/p-7fb4470e.entry.js +1 -0
  45. package/dist/mint-components/p-8fa77acf.system.entry.js +1 -0
  46. package/dist/mint-components/p-92b5c376.js +157 -0
  47. package/dist/mint-components/p-947bacd1.system.js +1 -1
  48. package/dist/mint-components/p-a2dbc9ad.system.js +6 -0
  49. package/dist/mint-components/{p-6976099f.entry.js → p-aabfb90f.entry.js} +2 -2
  50. package/dist/mint-components/{p-97747228.system.entry.js → p-bbdf93b6.system.entry.js} +1 -1
  51. package/dist/mint-components/{p-2ea6e2fa.entry.js → p-be0ca483.entry.js} +21 -21
  52. package/dist/mint-components/p-c0d60c61.entry.js +106 -0
  53. package/dist/mint-components/{p-d7635535.system.js → p-e3ee8c37.system.js} +1 -1
  54. package/dist/mint-components/{p-ffc3cd7c.js → p-ee83de0e.js} +1 -1
  55. package/dist/mint-components/p-ffef3f95.system.entry.js +1 -0
  56. package/dist/types/components/sqm-header-logo/sqm-header-logo.d.ts +15 -1
  57. package/dist/types/components/tax-and-cash/sqm-indirect-tax-form/useIndirectTaxForm.d.ts +24 -0
  58. package/dist/types/components/tax-and-cash/sqm-payout-status-alert/PayoutStatusAlert.stories.d.ts +7 -0
  59. package/dist/types/components/tax-and-cash/sqm-payout-status-alert/sqm-payout-status-alert-view.d.ts +16 -0
  60. package/dist/types/components/tax-and-cash/sqm-payout-status-alert/sqm-payout-status-alert.d.ts +57 -0
  61. package/dist/types/components/tax-and-cash/sqm-payout-status-alert/usePayoutStatus.d.ts +3 -1
  62. package/dist/types/components/tax-and-cash/sqm-tax-and-cash/sqm-tax-and-cash.d.ts +48 -0
  63. package/dist/types/components/tax-and-cash/sqm-tax-and-cash-dashboard/sqm-tax-and-cash-dashboard-view.d.ts +12 -0
  64. package/dist/types/components/tax-and-cash/sqm-tax-and-cash-dashboard/sqm-tax-and-cash-dashboard.d.ts +48 -0
  65. package/dist/types/components/tax-and-cash/sqm-user-info-form/sqm-user-info-form-view.d.ts +2 -0
  66. package/dist/types/components/tax-and-cash/sqm-user-info-form/useUserInfoForm.d.ts +1 -0
  67. package/dist/types/components.d.ts +333 -1
  68. package/docs/docs.docx +0 -0
  69. package/docs/raisins.json +1 -1
  70. package/grapesjs/grapesjs.js +1 -1
  71. package/package.json +1 -1
  72. package/dist/mint-components/p-012d31bc.entry.js +0 -99
  73. package/dist/mint-components/p-303b84d7.system.entry.js +0 -1
  74. package/dist/mint-components/p-469a6450.system.js +0 -6
  75. package/dist/mint-components/p-752ede25.system.entry.js +0 -1
  76. package/dist/mint-components/p-a7ee19dc.entry.js +0 -1
  77. package/dist/mint-components/p-e1e7d01c.js +0 -157
  78. package/dist/mint-components/p-eea87fdc.system.entry.js +0 -1
  79. package/shoelace/assets/icons/twitter-x.svg +0 -4
@@ -6,7 +6,7 @@ import { COUNTRIES_QUERY_NAMESPACE, TAX_CONTEXT_NAMESPACE, TAX_FORM_CONTEXT_NAME
6
6
  import { TAX_FORM_UPDATED_EVENT_KEY } from "../eventKeys";
7
7
  import { INDIRECT_TAX_PROVINCES, INDIRECT_TAX_SPAIN_REGIONS, } from "../subregions";
8
8
  import { getCountryObj, validTaxDocument } from "../utils";
9
- const CONNECT_PARTNER = gql `
9
+ export const CONNECT_PARTNER = gql `
10
10
  mutation createImpactConnection($vars: ImpactConnectionInput!) {
11
11
  createImpactConnection(impactConnectionInput: $vars) {
12
12
  success
@@ -111,8 +111,51 @@ export function useIndirectTaxForm(props) {
111
111
  console.error("Could not detect select change");
112
112
  setFormState((p) => ({ ...p, [field]: value }));
113
113
  };
114
- const onSubmit = async (event) => {
114
+ async function connectPartner(formData) {
115
115
  var _a, _b, _c, _d, _e;
116
+ const vars = {
117
+ user: {
118
+ id: user.id,
119
+ accountId: user.accountId,
120
+ },
121
+ firstName: userForm.firstName,
122
+ lastName: userForm.lastName,
123
+ countryCode: userForm.countryCode,
124
+ currency: userForm.currency,
125
+ address: userForm.address,
126
+ city: userForm.city,
127
+ state: userForm.state,
128
+ postalCode: userForm.postalCode,
129
+ phoneNumber: userForm.phoneNumber,
130
+ phoneNumberCountryCode: userForm.phoneNumberCountryCode,
131
+ indirectTaxCountryCode: formData.selectedRegion,
132
+ indirectTaxRegion: formData.province || formData.subRegion,
133
+ indirectTaxId: formData.indirectTaxNumber,
134
+ additionalTaxId: formData.qstNumber,
135
+ withholdingTaxId: formData.subRegionTaxNumber,
136
+ };
137
+ const result = await connectImpactPartner({
138
+ vars,
139
+ });
140
+ if (!result || ((_a = result) === null || _a === void 0 ? void 0 : _a.message))
141
+ throw new Error();
142
+ if (!((_b = result.createImpactConnection) === null || _b === void 0 ? void 0 : _b.success)) {
143
+ // Output backend errors to console for now
144
+ console.error("Failed to create Impact connection: ", result.createImpactConnection.validationErrors);
145
+ throw new Error();
146
+ }
147
+ await refetch();
148
+ const resultPublisher = (_e = (_d = (_c = result
149
+ .createImpactConnection) === null || _c === void 0 ? void 0 : _c.user) === null || _d === void 0 ? void 0 : _d.impactConnection) === null || _e === void 0 ? void 0 : _e.publisher;
150
+ const hasValidCurrentDocument = validTaxDocument(resultPublisher === null || resultPublisher === void 0 ? void 0 : resultPublisher.requiredTaxDocumentType) && (resultPublisher === null || resultPublisher === void 0 ? void 0 : resultPublisher.currentTaxDocument);
151
+ // Fire form change event
152
+ window.dispatchEvent(new Event(TAX_FORM_UPDATED_EVENT_KEY));
153
+ return {
154
+ resultPublisher,
155
+ hasValidCurrentDocument,
156
+ };
157
+ }
158
+ const onSubmit = async (event) => {
116
159
  if (!option) {
117
160
  setErrors({ taxDetails: true });
118
161
  return;
@@ -138,44 +181,7 @@ export function useIndirectTaxForm(props) {
138
181
  }
139
182
  setLoading(true);
140
183
  try {
141
- const vars = {
142
- user: {
143
- id: user.id,
144
- accountId: user.accountId,
145
- },
146
- firstName: userForm.firstName,
147
- lastName: userForm.lastName,
148
- countryCode: userForm.countryCode,
149
- currency: userForm.currency,
150
- address: userForm.address,
151
- city: userForm.city,
152
- state: userForm.state,
153
- postalCode: userForm.postalCode,
154
- phoneNumber: userForm.phoneNumber,
155
- phoneNumberCountryCode: userForm.phoneNumberCountryCode,
156
- indirectTaxCountryCode: formData.selectedRegion,
157
- indirectTaxRegion: formData.province || formData.subRegion,
158
- indirectTaxId: formData.indirectTaxNumber,
159
- additionalTaxId: formData.qstNumber,
160
- withholdingTaxId: formData.subRegionTaxNumber,
161
- };
162
- const result = await connectImpactPartner({
163
- vars,
164
- });
165
- if (!result || ((_a = result) === null || _a === void 0 ? void 0 : _a.message))
166
- throw new Error();
167
- if (!((_b = result.createImpactConnection) === null || _b === void 0 ? void 0 : _b.success)) {
168
- // Output backend errors to console for now
169
- console.error("Failed to create Impact connection: ", result.createImpactConnection
170
- .validationErrors);
171
- throw new Error();
172
- }
173
- await refetch();
174
- const resultPublisher = (_e = (_d = (_c = result
175
- .createImpactConnection) === null || _c === void 0 ? void 0 : _c.user) === null || _d === void 0 ? void 0 : _d.impactConnection) === null || _e === void 0 ? void 0 : _e.publisher;
176
- const hasValidCurrentDocument = validTaxDocument(resultPublisher === null || resultPublisher === void 0 ? void 0 : resultPublisher.requiredTaxDocumentType) && (resultPublisher === null || resultPublisher === void 0 ? void 0 : resultPublisher.currentTaxDocument);
177
- // Fire form change event
178
- window.dispatchEvent(new Event(TAX_FORM_UPDATED_EVENT_KEY));
184
+ const { resultPublisher, hasValidCurrentDocument } = await connectPartner(formData);
179
185
  if ((resultPublisher === null || resultPublisher === void 0 ? void 0 : resultPublisher.requiredTaxDocumentType) &&
180
186
  !hasValidCurrentDocument) {
181
187
  // Go to docusign form
@@ -17,3 +17,16 @@ export const W9ThresholdReached = () => (h("sqm-payout-status-alert", { demoData
17
17
  export const Hold = () => (h("sqm-payout-status-alert", { demoData: { states: { ...defaultProps, status: "HOLD" } } }));
18
18
  export const Loading = () => (h("sqm-payout-status-alert", { demoData: { states: { ...defaultProps, loading: true } } }));
19
19
  export const Error = () => (h("sqm-payout-status-alert", { demoData: { states: { ...defaultProps, error: true } } }));
20
+ export const NewPayeeReview = () => (h("sqm-payout-status-alert", { demoData: { states: { ...defaultProps, status: "NEW_PAYEE_REVIEW" } } }));
21
+ export const PaymentHoldOnChange = () => (h("sqm-payout-status-alert", { demoData: { states: { ...defaultProps, status: "PAYMENT_HOLD_ON_CHANGE" } } }));
22
+ export const BeneficiaryNameInvalid = () => (h("sqm-payout-status-alert", { demoData: {
23
+ states: { ...defaultProps, status: "BENEFICIARY_NAME_INVALID" },
24
+ } }));
25
+ export const BeneficiaryNameMismatch = () => (h("sqm-payout-status-alert", { demoData: {
26
+ states: { ...defaultProps, status: "BENEFICIARY_NAME_MISMATCH" },
27
+ } }));
28
+ export const BankTaxNameMismatch = () => (h("sqm-payout-status-alert", { demoData: { states: { ...defaultProps, status: "BANK_TAX_NAME_MISMATCH" } } }));
29
+ export const WithdrawalSettingsInvalid = () => (h("sqm-payout-status-alert", { demoData: {
30
+ states: { ...defaultProps, status: "WITHDRAWAL_SETTINGS_INVALID" },
31
+ } }));
32
+ export const PaymentReturned = () => (h("sqm-payout-status-alert", { demoData: { states: { ...defaultProps, status: "PAYMENT_RETURNED" } } }));
@@ -2,6 +2,12 @@ import { h } from "@stencil/core";
2
2
  import { intl } from "../../../global/global";
3
3
  import { createStyleSheet } from "../../../styling/JSS";
4
4
  const style = {
5
+ ButtonContainer: {
6
+ display: "flex",
7
+ gap: "var(--sl-spacing-medium)",
8
+ marginTop: "var(--sl-spacing-medium)",
9
+ flexWrap: "wrap",
10
+ },
5
11
  SkeletonOne: {
6
12
  width: "50%",
7
13
  height: "16px",
@@ -126,7 +132,7 @@ export function PayoutStatusAlertView(props) {
126
132
  icon: "exclamation-triangle",
127
133
  };
128
134
  }
129
- case "ACCOUNT_REVIEW":
135
+ case "NEW_PAYEE_REVIEW":
130
136
  return {
131
137
  header: text.accountReviewHeader,
132
138
  description: intl.formatMessage({
@@ -139,6 +145,92 @@ export function PayoutStatusAlertView(props) {
139
145
  alertType: "warning",
140
146
  icon: "exclamation-triangle",
141
147
  };
148
+ case "PAYMENT_HOLD_ON_CHANGE":
149
+ return {
150
+ header: text.paymentHoldOnChangeHeader,
151
+ description: intl.formatMessage({
152
+ id: "accountReviewDescription",
153
+ defaultMessage: text.paymentHoldOnChangeDescription,
154
+ }, {
155
+ supportLink: (h("a", { target: "_blank", href: `mailto:advocate-support@impact.com` }, text.supportLink)),
156
+ }),
157
+ buttonText: null,
158
+ alertType: "warning",
159
+ icon: "exclamation-triangle",
160
+ };
161
+ case "BENEFICIARY_NAME_INVALID":
162
+ return {
163
+ header: text.beneficiaryNameInvalidHeader,
164
+ description: intl.formatMessage({
165
+ id: "accountReviewDescription",
166
+ defaultMessage: text.beneficiaryNameInvalidDescription,
167
+ }, {
168
+ supportLink: (h("a", { target: "_blank", href: `mailto:advocate-support@impact.com` }, text.supportLink)),
169
+ }),
170
+ button: (h("div", { class: sheet.classes.ButtonContainer },
171
+ h("sl-button", { disabled: states.loading, type: "primary", onClick: callbacks.onPaymentInfoClick }, text.editPaymentInformationButton),
172
+ h("sl-button", { disabled: states.loading, type: "default", onClick: callbacks.onNewFormClick }, text.newFormButton))),
173
+ alertType: "warning",
174
+ icon: "exclamation-triangle",
175
+ };
176
+ case "BENEFICIARY_NAME_MISMATCH":
177
+ return {
178
+ header: text.beneficiaryNameMismatchHeader,
179
+ description: intl.formatMessage({
180
+ id: "accountReviewDescription",
181
+ defaultMessage: text.beneficiaryNameMismatchDescription,
182
+ }, {
183
+ supportLink: (h("a", { target: "_blank", href: `mailto:advocate-support@impact.com` }, text.supportLink)),
184
+ }),
185
+ button: (h("div", { class: sheet.classes.ButtonContainer },
186
+ h("sl-button", { disabled: states.loading, type: "primary", onClick: callbacks.onPaymentInfoClick }, text.editPaymentInformationButton),
187
+ h("sl-button", { disabled: states.loading, type: "default", onClick: callbacks.onNewFormClick }, text.newFormButton))),
188
+ alertType: "warning",
189
+ icon: "exclamation-triangle",
190
+ };
191
+ case "BANK_TAX_NAME_MISMATCH":
192
+ return {
193
+ header: text.bankTaxNameMismatchHeader,
194
+ description: intl.formatMessage({
195
+ id: "accountReviewDescription",
196
+ defaultMessage: text.bankTaxNameMismatchDescription,
197
+ }, {
198
+ supportLink: (h("a", { target: "_blank", href: `mailto:advocate-support@impact.com` }, text.supportLink)),
199
+ }),
200
+ button: (h("div", { class: sheet.classes.ButtonContainer },
201
+ h("sl-button", { disabled: states.loading, type: "primary", onClick: callbacks.onPaymentInfoClick }, text.editPaymentInformationButton),
202
+ h("sl-button", { disabled: states.loading, type: "default", onClick: callbacks.onNewFormClick }, text.newFormButton))),
203
+ alertType: "warning",
204
+ icon: "exclamation-triangle",
205
+ };
206
+ case "WITHDRAWAL_SETTINGS_INVALID":
207
+ return {
208
+ header: text.withdrawalSettingsInvalidHeader,
209
+ description: intl.formatMessage({
210
+ id: "accountReviewDescription",
211
+ defaultMessage: text.withdrawalSettingsInvalidDescription,
212
+ }, {
213
+ supportLink: (h("a", { target: "_blank", href: `mailto:advocate-support@impact.com` }, text.supportLink)),
214
+ }),
215
+ button: (h("div", { class: sheet.classes.ButtonContainer },
216
+ h("sl-button", { disabled: states.loading, type: "primary", onClick: callbacks.onPaymentInfoClick }, text.editPaymentInformationButton))),
217
+ alertType: "warning",
218
+ icon: "exclamation-triangle",
219
+ };
220
+ case "PAYMENT_RETURNED":
221
+ return {
222
+ header: text.paymentReturnedHeader,
223
+ description: intl.formatMessage({
224
+ id: "accountReviewDescription",
225
+ defaultMessage: text.paymentReturnedDescription,
226
+ }, {
227
+ supportLink: (h("a", { target: "_blank", href: `mailto:advocate-support@impact.com` }, text.supportLink)),
228
+ }),
229
+ button: (h("div", { class: sheet.classes.ButtonContainer },
230
+ h("sl-button", { disabled: states.loading, type: "primary", onClick: callbacks.onPaymentInfoClick }, text.editPaymentInformationButton))),
231
+ alertType: "error",
232
+ icon: "exclamation-triangle",
233
+ };
142
234
  case "HOLD":
143
235
  return {
144
236
  header: text.holdHeader,
@@ -174,6 +266,8 @@ export function PayoutStatusAlertView(props) {
174
266
  return (h("div", { style: { paddingTop: "10px" } },
175
267
  h("sl-button", { type: "secondary", exportparts: "base: secondarybutton-base", loading: states.veriffLoading, onClick: callbacks.onClick }, text.verificationRequiredButtonText)));
176
268
  default:
269
+ if (alertDetails.button)
270
+ return alertDetails.button;
177
271
  return;
178
272
  }
179
273
  }