@gusto/embedded-react-sdk 0.18.0 → 0.19.0

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 (156) hide show
  1. package/CHANGELOG.md +23 -0
  2. package/dist/assets/icons/icon-error-outline.svg.js +10 -0
  3. package/dist/assets/icons/icon-error-outline.svg.js.map +1 -0
  4. package/dist/assets/icons/icon-info-outline.svg.js +10 -0
  5. package/dist/assets/icons/icon-info-outline.svg.js.map +1 -0
  6. package/dist/assets/icons/icon-zap-fast.svg.js +10 -0
  7. package/dist/assets/icons/icon-zap-fast.svg.js.map +1 -0
  8. package/dist/components/Common/Fieldset/Fieldset.module.scss.js +1 -1
  9. package/dist/components/Common/PaginationControl/PaginationControl.js +6 -6
  10. package/dist/components/Common/PaginationControl/PaginationControl.js.map +1 -1
  11. package/dist/components/Common/RequirementsList/RequirementsList.js +19 -13
  12. package/dist/components/Common/RequirementsList/RequirementsList.js.map +1 -1
  13. package/dist/components/Common/RequirementsList/RequirementsList.module.scss.js +1 -1
  14. package/dist/components/Common/UI/Badge/index.d.ts +2 -0
  15. package/dist/components/Common/UI/Banner/Banner.d.ts +3 -0
  16. package/dist/components/Common/UI/Banner/Banner.js +31 -0
  17. package/dist/components/Common/UI/Banner/Banner.js.map +1 -0
  18. package/dist/components/Common/UI/Banner/Banner.module.scss.js +14 -0
  19. package/dist/components/Common/UI/Banner/Banner.module.scss.js.map +1 -0
  20. package/dist/components/Common/UI/Banner/BannerTypes.d.ts +21 -0
  21. package/dist/components/Common/UI/Banner/BannerTypes.js +7 -0
  22. package/dist/components/Common/UI/Banner/BannerTypes.js.map +1 -0
  23. package/dist/components/Common/UI/Banner/index.d.ts +4 -0
  24. package/dist/components/Common/UI/Breadcrumbs/Breadcrumbs.js +1 -1
  25. package/dist/components/Common/UI/List/List.module.scss.js +2 -2
  26. package/dist/components/Common/UI/ProgressBar/ProgressBar.js +4 -4
  27. package/dist/components/Company/DocumentSigner/DocumentList/ManageSignatories.js +13 -13
  28. package/dist/components/Company/DocumentSigner/DocumentList/ManageSignatories.js.map +1 -1
  29. package/dist/components/Company/FederalTaxes/Form.js +29 -29
  30. package/dist/components/Company/FederalTaxes/Form.js.map +1 -1
  31. package/dist/components/Company/FederalTaxes/Head.js +5 -5
  32. package/dist/components/Company/FederalTaxes/Head.js.map +1 -1
  33. package/dist/components/Contractor/ContractorList/index.js +32 -32
  34. package/dist/components/Contractor/ContractorList/index.js.map +1 -1
  35. package/dist/components/Contractor/Profile/ContractorProfileForm.js +11 -11
  36. package/dist/components/Contractor/Submit/Submit.js +6 -6
  37. package/dist/components/Contractor/Submit/Submit.js.map +1 -1
  38. package/dist/components/Contractor/Submit/SubmitDone.js +8 -8
  39. package/dist/components/Contractor/Submit/SubmitDone.js.map +1 -1
  40. package/dist/components/Employee/Compensation/Edit.js +16 -16
  41. package/dist/components/Employee/Compensation/Edit.js.map +1 -1
  42. package/dist/components/Employee/Deductions/DeductionsForm/CustomDeductionForm.d.ts +3 -3
  43. package/dist/components/Employee/EmployeeList/List.js +23 -23
  44. package/dist/components/Employee/EmployeeList/List.js.map +1 -1
  45. package/dist/components/Employee/FederalTaxes/Head.js +1 -1
  46. package/dist/components/Employee/FederalTaxes/Head.js.map +1 -1
  47. package/dist/components/Employee/Landing/Landing.js +17 -16
  48. package/dist/components/Employee/Landing/Landing.js.map +1 -1
  49. package/dist/components/Employee/PaymentMethod/BankAccountsList.js +1 -1
  50. package/dist/components/Employee/PaymentMethod/BankAccountsList.js.map +1 -1
  51. package/dist/components/Employee/Profile/HomeAddress.js +1 -1
  52. package/dist/components/Employee/Profile/HomeAddress.js.map +1 -1
  53. package/dist/components/Employee/Taxes/FederalHead.js +1 -1
  54. package/dist/components/Employee/Taxes/FederalHead.js.map +1 -1
  55. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.d.ts +6 -0
  56. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js +57 -0
  57. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetails.js.map +1 -0
  58. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.d.ts +8 -0
  59. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js +79 -0
  60. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/ConfirmWireDetailsBanner.js.map +1 -0
  61. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsBanner/index.d.ts +2 -0
  62. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsComponents.d.ts +7 -0
  63. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsComponents.js +25 -0
  64. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsComponents.js.map +1 -0
  65. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.d.ts +10 -0
  66. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js +30 -0
  67. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/ConfirmWireDetailsForm.js.map +1 -0
  68. package/dist/components/Payroll/ConfirmWireDetails/ConfirmWireDetailsForm/index.d.ts +2 -0
  69. package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.d.ts +10 -0
  70. package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.js +30 -0
  71. package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/WireInstructions.js.map +1 -0
  72. package/dist/components/Payroll/ConfirmWireDetails/WireInstructions/index.d.ts +2 -0
  73. package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.d.ts +13 -0
  74. package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.js +63 -0
  75. package/dist/components/Payroll/ConfirmWireDetails/confirmWireDetailsStateMachine.js.map +1 -0
  76. package/dist/components/Payroll/ConfirmWireDetails/index.d.ts +3 -0
  77. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js +1 -1
  78. package/dist/components/Payroll/PayrollBlocker/components/PayrollBlockerAlerts.js.map +1 -1
  79. package/dist/components/Payroll/PayrollBlocker/payrollHelpers.js +1 -1
  80. package/dist/components/Payroll/PayrollBlocker/payrollHelpers.js.map +1 -1
  81. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js +60 -59
  82. package/dist/components/Payroll/PayrollConfiguration/PayrollConfiguration.js.map +1 -1
  83. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js +30 -29
  84. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployee.js.map +1 -1
  85. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js +75 -75
  86. package/dist/components/Payroll/PayrollEditEmployee/PayrollEditEmployeePresentation.js.map +1 -1
  87. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js +41 -36
  88. package/dist/components/Payroll/PayrollLanding/PayrollLandingFlowComponents.js.map +1 -1
  89. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js +25 -25
  90. package/dist/components/Payroll/PayrollList/PayrollListPresentation.js.map +1 -1
  91. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js +109 -89
  92. package/dist/components/Payroll/PayrollOverview/PayrollOverview.js.map +1 -1
  93. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.d.ts +6 -1
  94. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js +179 -147
  95. package/dist/components/Payroll/PayrollOverview/PayrollOverviewPresentation.js.map +1 -1
  96. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.d.ts +8 -0
  97. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.js +49 -0
  98. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/FastAchThresholdExceeded.js.map +1 -0
  99. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/GenericBlocker.d.ts +6 -0
  100. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/GenericBlocker.js +18 -0
  101. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/GenericBlocker.js.map +1 -0
  102. package/dist/components/Payroll/PayrollOverview/SubmissionBlockers/index.d.ts +3 -0
  103. package/dist/components/Payroll/index.d.ts +1 -0
  104. package/dist/components/Payroll/index.js +8 -6
  105. package/dist/components/Payroll/index.js.map +1 -1
  106. package/dist/contexts/ComponentAdapter/adapters/defaultComponentAdapter.js +54 -52
  107. package/dist/contexts/ComponentAdapter/adapters/defaultComponentAdapter.js.map +1 -1
  108. package/dist/contexts/ComponentAdapter/componentAdapterTypes.d.ts +1 -0
  109. package/dist/contexts/ComponentAdapter/createComponentsWithDefaults.d.ts +5 -0
  110. package/dist/contexts/ComponentAdapter/createComponentsWithDefaults.js +27 -25
  111. package/dist/contexts/ComponentAdapter/createComponentsWithDefaults.js.map +1 -1
  112. package/dist/contexts/ComponentAdapter/useComponentContext.d.ts +2 -0
  113. package/dist/contexts/ComponentAdapter/useComponentContext.js +3 -3
  114. package/dist/contexts/ComponentAdapter/useComponentContext.js.map +1 -1
  115. package/dist/contexts/ThemeProvider/theme.d.ts +1 -0
  116. package/dist/contexts/ThemeProvider/theme.js +5 -4
  117. package/dist/contexts/ThemeProvider/theme.js.map +1 -1
  118. package/dist/i18n/I18n.js +1 -1
  119. package/dist/i18n/I18n.js.map +1 -1
  120. package/dist/i18n/en/Company.BankAccount.json.js +1 -1
  121. package/dist/i18n/en/Company.DocumentList.json.js +16 -16
  122. package/dist/i18n/en/Company.FederalTaxes.json.js +22 -22
  123. package/dist/i18n/en/Contractor.ContractorList.json.js +8 -8
  124. package/dist/i18n/en/Contractor.Submit.json.js +6 -6
  125. package/dist/i18n/en/Employee.Compensation.json.js +8 -8
  126. package/dist/i18n/en/Employee.Deductions.json.js +51 -51
  127. package/dist/i18n/en/Employee.EmployeeList.json.js +6 -6
  128. package/dist/i18n/en/Employee.FederalTaxes.json.js +3 -3
  129. package/dist/i18n/en/Employee.HomeAddress.json.js +2 -2
  130. package/dist/i18n/en/Employee.OnboardingSummary.json.js +1 -1
  131. package/dist/i18n/en/Employee.PaymentMethod.json.js +11 -11
  132. package/dist/i18n/en/Employee.Taxes.json.js +2 -2
  133. package/dist/i18n/en/Payroll.ConfirmWireDetailsBanner.json.js +14 -0
  134. package/dist/i18n/en/Payroll.ConfirmWireDetailsBanner.json.js.map +1 -0
  135. package/dist/i18n/en/Payroll.ConfirmWireDetailsForm.json.js +10 -0
  136. package/dist/i18n/en/Payroll.ConfirmWireDetailsForm.json.js.map +1 -0
  137. package/dist/i18n/en/Payroll.PayrollBlocker.json.js +3 -3
  138. package/dist/i18n/en/Payroll.PayrollEditEmployee.json.js +4 -4
  139. package/dist/i18n/en/Payroll.PayrollList.json.js +7 -7
  140. package/dist/i18n/en/Payroll.PayrollOverview.json.js +35 -33
  141. package/dist/i18n/en/Payroll.PayrollOverview.json.js.map +1 -1
  142. package/dist/i18n/en/Payroll.PayrollReceipts.json.js +7 -7
  143. package/dist/i18n/en/Payroll.WireInstructions.json.js +10 -0
  144. package/dist/i18n/en/Payroll.WireInstructions.json.js.map +1 -0
  145. package/dist/i18n/en/common.json.d.ts +1 -1
  146. package/dist/i18n/en/common.json.js +1 -1
  147. package/dist/shared/constants.d.ts +13 -0
  148. package/dist/shared/constants.js +56 -47
  149. package/dist/shared/constants.js.map +1 -1
  150. package/dist/style.css +1 -1
  151. package/dist/types/i18next.d.ts +113 -98
  152. package/package.json +9 -10
  153. package/dist/i18n/en/Company.AddBank.json.js +0 -28
  154. package/dist/i18n/en/Company.AddBank.json.js.map +0 -1
  155. package/dist/i18n/en/Payroll.PayrollSchedule.json.js +0 -27
  156. package/dist/i18n/en/Payroll.PayrollSchedule.json.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Form.js","sources":["../../../../src/components/Company/FederalTaxes/Form.tsx"],"sourcesContent":["import { useMemo } from 'react'\nimport { useTranslation, Trans } from 'react-i18next'\nimport {\n TaxPayerType,\n FilingForm,\n} from '@gusto/embedded-api/models/operations/putv1companiescompanyidfederaltaxdetails'\nimport { useFederalTaxes } from './useFederalTaxes'\nimport { TextInputField, SelectField, Flex } from '@/components/Common'\nimport { usePlaceholderEin, normalizeEin } from '@/helpers/federalEin'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\nexport function Form() {\n const { t } = useTranslation('Company.FederalTaxes')\n const { federalTaxDetails } = useFederalTaxes()\n const Components = useComponentContext()\n\n const placeholderEin = usePlaceholderEin(federalTaxDetails?.hasEin)\n\n const taxPayerTypeOptions = useMemo(\n () =>\n Object.values(TaxPayerType).map(value => ({\n value: value,\n label: t(`taxPayerType.${value}`),\n })),\n [t],\n )\n\n const filingFormOptions = useMemo(\n () =>\n Object.values(FilingForm).map(value => ({\n value: value,\n label: t(`filingForm.${value}`),\n })),\n [t],\n )\n\n return (\n <Flex flexDirection=\"column\" gap={28}>\n <TextInputField\n name=\"federalEin\"\n label={t('federal_ein_label')}\n description={\n <Trans\n t={t}\n i18nKey=\"federal_ein_description\"\n components={{\n applyLink: (\n <Components.Link\n href=\"https://www.irs.gov/businesses/employer-identification-number\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n />\n ),\n }}\n />\n }\n isRequired\n transform={normalizeEin}\n placeholder={placeholderEin}\n />\n <SelectField\n name=\"taxPayerType\"\n label={t('taxpayer_type_label')}\n description={t('taxpayer_type_description')}\n options={taxPayerTypeOptions}\n isRequired\n />\n <SelectField\n name=\"filingForm\"\n label={t('federal_filing_form_label')}\n description={\n <Trans\n t={t}\n i18nKey=\"federal_filing_form_description\"\n components={{\n irsLink: (\n <Components.Link\n href=\"https://www.irs.gov/newsroom/employers-should-you-file-form-944-or-941\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n />\n ),\n }}\n />\n }\n options={filingFormOptions}\n isRequired\n />\n <TextInputField\n name=\"legalName\"\n label={t('legal_entity_name_label')}\n description={t('legal_entity_name_description')}\n isRequired\n errorMessage={t('legal_entity_name_error')}\n />\n </Flex>\n )\n}\n"],"names":["Form","t","useTranslation","federalTaxDetails","useFederalTaxes","Components","useComponentContext","placeholderEin","usePlaceholderEin","taxPayerTypeOptions","useMemo","TaxPayerType","value","filingFormOptions","FilingForm","jsxs","Flex","jsx","TextInputField","Trans","normalizeEin","SelectField"],"mappings":";;;;;;;;;;AAWO,SAASA,IAAO;AACrB,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,sBAAsB,GAC7C,EAAE,mBAAAC,EAAA,IAAsBC,EAAA,GACxBC,IAAaC,EAAA,GAEbC,IAAiBC,EAAkBL,GAAmB,MAAM,GAE5DM,IAAsBC;AAAA,IAC1B,MACE,OAAO,OAAOC,CAAY,EAAE,IAAI,CAAAC,OAAU;AAAA,MACxC,OAAAA;AAAA,MACA,OAAOX,EAAE,gBAAgBW,CAAK,EAAE;AAAA,IAAA,EAChC;AAAA,IACJ,CAACX,CAAC;AAAA,EAAA,GAGEY,IAAoBH;AAAA,IACxB,MACE,OAAO,OAAOI,CAAU,EAAE,IAAI,CAAAF,OAAU;AAAA,MACtC,OAAAA;AAAA,MACA,OAAOX,EAAE,cAAcW,CAAK,EAAE;AAAA,IAAA,EAC9B;AAAA,IACJ,CAACX,CAAC;AAAA,EAAA;AAGJ,SACE,gBAAAc,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAChC,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,OAAOjB,EAAE,mBAAmB;AAAA,QAC5B,aACE,gBAAAgB;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,GAAAlB;AAAA,YACA,SAAQ;AAAA,YACR,YAAY;AAAA,cACV,WACE,gBAAAgB;AAAA,gBAACZ,EAAW;AAAA,gBAAX;AAAA,kBACC,MAAK;AAAA,kBACL,QAAO;AAAA,kBACP,KAAI;AAAA,gBAAA;AAAA,cAAA;AAAA,YACN;AAAA,UAEJ;AAAA,QAAA;AAAA,QAGJ,YAAU;AAAA,QACV,WAAWe;AAAA,QACX,aAAab;AAAA,MAAA;AAAA,IAAA;AAAA,IAEf,gBAAAU;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,OAAOpB,EAAE,qBAAqB;AAAA,QAC9B,aAAaA,EAAE,2BAA2B;AAAA,QAC1C,SAASQ;AAAA,QACT,YAAU;AAAA,MAAA;AAAA,IAAA;AAAA,IAEZ,gBAAAQ;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,OAAOpB,EAAE,2BAA2B;AAAA,QACpC,aACE,gBAAAgB;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,GAAAlB;AAAA,YACA,SAAQ;AAAA,YACR,YAAY;AAAA,cACV,SACE,gBAAAgB;AAAA,gBAACZ,EAAW;AAAA,gBAAX;AAAA,kBACC,MAAK;AAAA,kBACL,QAAO;AAAA,kBACP,KAAI;AAAA,gBAAA;AAAA,cAAA;AAAA,YACN;AAAA,UAEJ;AAAA,QAAA;AAAA,QAGJ,SAASQ;AAAA,QACT,YAAU;AAAA,MAAA;AAAA,IAAA;AAAA,IAEZ,gBAAAI;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,OAAOjB,EAAE,yBAAyB;AAAA,QAClC,aAAaA,EAAE,+BAA+B;AAAA,QAC9C,YAAU;AAAA,QACV,cAAcA,EAAE,yBAAyB;AAAA,MAAA;AAAA,IAAA;AAAA,EAC3C,GACF;AAEJ;"}
1
+ {"version":3,"file":"Form.js","sources":["../../../../src/components/Company/FederalTaxes/Form.tsx"],"sourcesContent":["import { useMemo } from 'react'\nimport { useTranslation, Trans } from 'react-i18next'\nimport {\n TaxPayerType,\n FilingForm,\n} from '@gusto/embedded-api/models/operations/putv1companiescompanyidfederaltaxdetails'\nimport { useFederalTaxes } from './useFederalTaxes'\nimport { TextInputField, SelectField, Flex } from '@/components/Common'\nimport { usePlaceholderEin, normalizeEin } from '@/helpers/federalEin'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\nexport function Form() {\n const { t } = useTranslation('Company.FederalTaxes')\n const { federalTaxDetails } = useFederalTaxes()\n const Components = useComponentContext()\n\n const placeholderEin = usePlaceholderEin(federalTaxDetails?.hasEin)\n\n const taxPayerTypeOptions = useMemo(\n () =>\n Object.values(TaxPayerType).map(value => ({\n value: value,\n label: t(`taxPayerType.${value}`),\n })),\n [t],\n )\n\n const filingFormOptions = useMemo(\n () =>\n Object.values(FilingForm).map(value => ({\n value: value,\n label: t(`filingForm.${value}`),\n })),\n [t],\n )\n\n return (\n <Flex flexDirection=\"column\" gap={28}>\n <TextInputField\n name=\"federalEin\"\n label={t('federalEinLabel')}\n description={\n <Trans\n t={t}\n i18nKey=\"federalEinDescription\"\n components={{\n applyLink: (\n <Components.Link\n href=\"https://www.irs.gov/businesses/employer-identification-number\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n />\n ),\n }}\n />\n }\n isRequired\n transform={normalizeEin}\n placeholder={placeholderEin}\n />\n <SelectField\n name=\"taxPayerType\"\n label={t('taxpayerTypeLabel')}\n description={t('taxpayerTypeDescription')}\n options={taxPayerTypeOptions}\n isRequired\n />\n <SelectField\n name=\"filingForm\"\n label={t('federalFilingFormLabel')}\n description={\n <Trans\n t={t}\n i18nKey=\"federalFilingFormDescription\"\n components={{\n irsLink: (\n <Components.Link\n href=\"https://www.irs.gov/newsroom/employers-should-you-file-form-944-or-941\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n />\n ),\n }}\n />\n }\n options={filingFormOptions}\n isRequired\n />\n <TextInputField\n name=\"legalName\"\n label={t('legalEntityNameLabel')}\n description={t('legalEntityNameDescription')}\n isRequired\n errorMessage={t('legalEntityNameError')}\n />\n </Flex>\n )\n}\n"],"names":["Form","t","useTranslation","federalTaxDetails","useFederalTaxes","Components","useComponentContext","placeholderEin","usePlaceholderEin","taxPayerTypeOptions","useMemo","TaxPayerType","value","filingFormOptions","FilingForm","jsxs","Flex","jsx","TextInputField","Trans","normalizeEin","SelectField"],"mappings":";;;;;;;;;;AAWO,SAASA,IAAO;AACrB,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,sBAAsB,GAC7C,EAAE,mBAAAC,EAAA,IAAsBC,EAAA,GACxBC,IAAaC,EAAA,GAEbC,IAAiBC,EAAkBL,GAAmB,MAAM,GAE5DM,IAAsBC;AAAA,IAC1B,MACE,OAAO,OAAOC,CAAY,EAAE,IAAI,CAAAC,OAAU;AAAA,MACxC,OAAAA;AAAA,MACA,OAAOX,EAAE,gBAAgBW,CAAK,EAAE;AAAA,IAAA,EAChC;AAAA,IACJ,CAACX,CAAC;AAAA,EAAA,GAGEY,IAAoBH;AAAA,IACxB,MACE,OAAO,OAAOI,CAAU,EAAE,IAAI,CAAAF,OAAU;AAAA,MACtC,OAAAA;AAAA,MACA,OAAOX,EAAE,cAAcW,CAAK,EAAE;AAAA,IAAA,EAC9B;AAAA,IACJ,CAACX,CAAC;AAAA,EAAA;AAGJ,SACE,gBAAAc,EAACC,GAAA,EAAK,eAAc,UAAS,KAAK,IAChC,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,OAAOjB,EAAE,iBAAiB;AAAA,QAC1B,aACE,gBAAAgB;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,GAAAlB;AAAA,YACA,SAAQ;AAAA,YACR,YAAY;AAAA,cACV,WACE,gBAAAgB;AAAA,gBAACZ,EAAW;AAAA,gBAAX;AAAA,kBACC,MAAK;AAAA,kBACL,QAAO;AAAA,kBACP,KAAI;AAAA,gBAAA;AAAA,cAAA;AAAA,YACN;AAAA,UAEJ;AAAA,QAAA;AAAA,QAGJ,YAAU;AAAA,QACV,WAAWe;AAAA,QACX,aAAab;AAAA,MAAA;AAAA,IAAA;AAAA,IAEf,gBAAAU;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,OAAOpB,EAAE,mBAAmB;AAAA,QAC5B,aAAaA,EAAE,yBAAyB;AAAA,QACxC,SAASQ;AAAA,QACT,YAAU;AAAA,MAAA;AAAA,IAAA;AAAA,IAEZ,gBAAAQ;AAAA,MAACI;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,OAAOpB,EAAE,wBAAwB;AAAA,QACjC,aACE,gBAAAgB;AAAA,UAACE;AAAA,UAAA;AAAA,YACC,GAAAlB;AAAA,YACA,SAAQ;AAAA,YACR,YAAY;AAAA,cACV,SACE,gBAAAgB;AAAA,gBAACZ,EAAW;AAAA,gBAAX;AAAA,kBACC,MAAK;AAAA,kBACL,QAAO;AAAA,kBACP,KAAI;AAAA,gBAAA;AAAA,cAAA;AAAA,YACN;AAAA,UAEJ;AAAA,QAAA;AAAA,QAGJ,SAASQ;AAAA,QACT,YAAU;AAAA,MAAA;AAAA,IAAA;AAAA,IAEZ,gBAAAI;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,MAAK;AAAA,QACL,OAAOjB,EAAE,sBAAsB;AAAA,QAC/B,aAAaA,EAAE,4BAA4B;AAAA,QAC3C,YAAU;AAAA,QACV,cAAcA,EAAE,sBAAsB;AAAA,MAAA;AAAA,IAAA;AAAA,EACxC,GACF;AAEJ;"}
@@ -1,15 +1,15 @@
1
- import { jsxs as t, jsx as e } from "react/jsx-runtime";
2
- import { useTranslation as o, Trans as i } from "react-i18next";
1
+ import { jsxs as o, jsx as e } from "react/jsx-runtime";
2
+ import { useTranslation as t, Trans as i } from "react-i18next";
3
3
  import { useComponentContext as s } from "../../../contexts/ComponentAdapter/useComponentContext.js";
4
4
  function l() {
5
- const { t: r } = o("Company.FederalTaxes"), n = s();
6
- return /* @__PURE__ */ t("header", { children: [
5
+ const { t: r } = t("Company.FederalTaxes"), n = s();
6
+ return /* @__PURE__ */ o("header", { children: [
7
7
  /* @__PURE__ */ e(n.Heading, { as: "h2", children: r("pageTitle") }),
8
8
  /* @__PURE__ */ e(n.Text, { children: /* @__PURE__ */ e(
9
9
  i,
10
10
  {
11
11
  t: r,
12
- i18nKey: "entity_type_and_legal_name_intro",
12
+ i18nKey: "entityTypeAndLegalNameIntro",
13
13
  components: {
14
14
  einLink: /* @__PURE__ */ e(
15
15
  n.Link,
@@ -1 +1 @@
1
- {"version":3,"file":"Head.js","sources":["../../../../src/components/Company/FederalTaxes/Head.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\nexport function Head() {\n const { t } = useTranslation('Company.FederalTaxes')\n const Components = useComponentContext()\n\n return (\n <header>\n <Components.Heading as=\"h2\">{t('pageTitle')}</Components.Heading>\n <Components.Text>\n <Trans\n t={t}\n i18nKey=\"entity_type_and_legal_name_intro\"\n components={{\n einLink: (\n <Components.Link\n href=\"https://www.irs.gov/businesses/employer-identification-number#lost\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n />\n ),\n }}\n />\n </Components.Text>\n </header>\n )\n}\n"],"names":["Head","t","useTranslation","Components","useComponentContext","jsx","Trans"],"mappings":";;;AAGO,SAASA,IAAO;AACrB,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,sBAAsB,GAC7CC,IAAaC,EAAA;AAEnB,2BACG,UAAA,EACC,UAAA;AAAA,IAAA,gBAAAC,EAACF,EAAW,SAAX,EAAmB,IAAG,MAAM,UAAAF,EAAE,WAAW,GAAE;AAAA,IAC5C,gBAAAI,EAACF,EAAW,MAAX,EACC,UAAA,gBAAAE;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,GAAAL;AAAA,QACA,SAAQ;AAAA,QACR,YAAY;AAAA,UACV,SACE,gBAAAI;AAAA,YAACF,EAAW;AAAA,YAAX;AAAA,cACC,MAAK;AAAA,cACL,QAAO;AAAA,cACP,KAAI;AAAA,YAAA;AAAA,UAAA;AAAA,QACN;AAAA,MAEJ;AAAA,IAAA,EACF,CACF;AAAA,EAAA,GACF;AAEJ;"}
1
+ {"version":3,"file":"Head.js","sources":["../../../../src/components/Company/FederalTaxes/Head.tsx"],"sourcesContent":["import { Trans, useTranslation } from 'react-i18next'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\n\nexport function Head() {\n const { t } = useTranslation('Company.FederalTaxes')\n const Components = useComponentContext()\n\n return (\n <header>\n <Components.Heading as=\"h2\">{t('pageTitle')}</Components.Heading>\n <Components.Text>\n <Trans\n t={t}\n i18nKey=\"entityTypeAndLegalNameIntro\"\n components={{\n einLink: (\n <Components.Link\n href=\"https://www.irs.gov/businesses/employer-identification-number#lost\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n />\n ),\n }}\n />\n </Components.Text>\n </header>\n )\n}\n"],"names":["Head","t","useTranslation","Components","useComponentContext","jsx","Trans"],"mappings":";;;AAGO,SAASA,IAAO;AACrB,QAAM,EAAE,GAAAC,EAAA,IAAMC,EAAe,sBAAsB,GAC7CC,IAAaC,EAAA;AAEnB,2BACG,UAAA,EACC,UAAA;AAAA,IAAA,gBAAAC,EAACF,EAAW,SAAX,EAAmB,IAAG,MAAM,UAAAF,EAAE,WAAW,GAAE;AAAA,IAC5C,gBAAAI,EAACF,EAAW,MAAX,EACC,UAAA,gBAAAE;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,GAAAL;AAAA,QACA,SAAQ;AAAA,QACR,YAAY;AAAA,UACV,SACE,gBAAAI;AAAA,YAACF,EAAW;AAAA,YAAX;AAAA,cACC,MAAK;AAAA,cACL,QAAO;AAAA,cACP,KAAI;AAAA,YAAA;AAAA,UAAA;AAAA,QACN;AAAA,MAEJ;AAAA,IAAA,EACF,CACF;AAAA,EAAA,GACF;AAEJ;"}
@@ -17,31 +17,31 @@ import { CONTRACTOR_TYPE as Y, componentEvents as l } from "../../../shared/cons
17
17
  import z from "../../../assets/icons/trashcan.svg.js";
18
18
  import { useDataView as J } from "../../Common/DataView/useDataView.js";
19
19
  import { DataView as K } from "../../Common/DataView/DataView.js";
20
- function Q({ count: o, handleAdd: i }) {
21
- const { Button: r, Heading: a } = u(), { t: n } = d("Contractor.ContractorList");
20
+ function Q({ count: o, handleAdd: a }) {
21
+ const { Button: r, Heading: i } = u(), { t: n } = d("Contractor.ContractorList");
22
22
  return /* @__PURE__ */ m(f, { alignItems: "center", justifyContent: "space-between", children: [
23
- /* @__PURE__ */ t(a, { as: "h2", children: n("title") }),
24
- o !== 0 && /* @__PURE__ */ t(r, { variant: "secondary", onClick: i, children: n("addAnotherCTA") })
23
+ /* @__PURE__ */ t(i, { as: "h2", children: n("title") }),
24
+ o !== 0 && /* @__PURE__ */ t(r, { variant: "secondary", onClick: a, children: n("addAnotherCta") })
25
25
  ] });
26
26
  }
27
27
  function W({ handleAdd: o }) {
28
- const { Button: i } = u(), { t: r } = d("Contractor.ContractorList");
29
- return /* @__PURE__ */ t(k, { title: r("emptyTableTitle"), description: r("emptyTableDescription"), children: /* @__PURE__ */ t(p, { justifyContent: "center", children: /* @__PURE__ */ t(i, { onClick: o, children: r("addContractorCTA") }) }) });
28
+ const { Button: a } = u(), { t: r } = d("Contractor.ContractorList");
29
+ return /* @__PURE__ */ t(k, { title: r("emptyTableTitle"), description: r("emptyTableDescription"), children: /* @__PURE__ */ t(p, { justifyContent: "center", children: /* @__PURE__ */ t(a, { onClick: o, children: r("addContractorCta") }) }) });
30
30
  }
31
- function Tt(o) {
31
+ function gt(o) {
32
32
  return /* @__PURE__ */ t(q, { ...o, children: /* @__PURE__ */ t(X, { ...o, children: o.children }) });
33
33
  }
34
- function X({ companyId: o, className: i, dictionary: r, successMessage: a }) {
34
+ function X({ companyId: o, className: a, dictionary: r, successMessage: i }) {
35
35
  F("Contractor.ContractorList");
36
- const { t: n } = d("Contractor.ContractorList"), { onEvent: s, baseSubmitHandler: h } = G(), { Alert: T, Button: g } = u(), {
37
- contractors: A,
38
- totalCount: P,
39
- handleNextPage: L,
40
- handleFirstPage: N,
41
- handleLastPage: b,
42
- handlePreviousPage: y,
43
- handleItemsPerPageChange: E,
44
- currentPage: O,
36
+ const { t: n } = d("Contractor.ContractorList"), { onEvent: s, baseSubmitHandler: h } = G(), { Alert: g, Button: T } = u(), {
37
+ contractors: P,
38
+ totalCount: L,
39
+ handleNextPage: N,
40
+ handleFirstPage: b,
41
+ handleLastPage: y,
42
+ handlePreviousPage: E,
43
+ handleItemsPerPageChange: O,
44
+ currentPage: A,
45
45
  totalPages: D,
46
46
  itemsPerPage: R
47
47
  } = H({ companyUuid: o }), { mutateAsync: B, isPending: I } = w(), S = J({
@@ -61,38 +61,38 @@ function X({ companyId: o, className: i, dictionary: r, successMessage: a }) {
61
61
  )
62
62
  }
63
63
  ],
64
- data: A,
64
+ data: P,
65
65
  itemMenu: (e) => /* @__PURE__ */ t(
66
66
  j,
67
67
  {
68
68
  items: [
69
69
  {
70
- label: n("editCTA"),
70
+ label: n("editCta"),
71
71
  icon: /* @__PURE__ */ t(M, { "aria-hidden": !0 }),
72
72
  onClick: () => {
73
73
  _(e.uuid);
74
74
  }
75
75
  },
76
76
  {
77
- label: n("deleteCTA"),
77
+ label: n("deleteCta"),
78
78
  icon: /* @__PURE__ */ t(z, { "aria-hidden": !0 }),
79
79
  onClick: () => {
80
80
  x(e.uuid);
81
81
  }
82
82
  }
83
83
  ],
84
- triggerLabel: n("editCTA"),
84
+ triggerLabel: n("editCta"),
85
85
  isLoading: I
86
86
  }
87
87
  ),
88
88
  emptyState: () => /* @__PURE__ */ t(W, { handleAdd: C }),
89
89
  pagination: {
90
- handleNextPage: L,
91
- handleFirstPage: N,
92
- handleLastPage: b,
93
- handlePreviousPage: y,
94
- handleItemsPerPageChange: E,
95
- currentPage: O,
90
+ handleNextPage: N,
91
+ handleFirstPage: b,
92
+ handleLastPage: y,
93
+ handlePreviousPage: E,
94
+ handleItemsPerPageChange: O,
95
+ currentPage: A,
96
96
  totalPages: D,
97
97
  itemsPerPage: R
98
98
  }
@@ -109,17 +109,17 @@ function X({ companyId: o, className: i, dictionary: r, successMessage: a }) {
109
109
  }), s(l.CONTRACTOR_DELETED, { contractorId: c });
110
110
  });
111
111
  };
112
- return /* @__PURE__ */ m("section", { className: i, children: [
113
- a && /* @__PURE__ */ t(T, { label: a, status: "success" }),
112
+ return /* @__PURE__ */ m("section", { className: a, children: [
113
+ i && /* @__PURE__ */ t(g, { label: i, status: "success" }),
114
114
  /* @__PURE__ */ m(f, { flexDirection: "column", children: [
115
- /* @__PURE__ */ t(Q, { count: P, handleAdd: C }),
115
+ /* @__PURE__ */ t(Q, { count: L, handleAdd: C }),
116
116
  /* @__PURE__ */ t(K, { label: n("contractorListLabel"), ...S }),
117
- /* @__PURE__ */ t(p, { children: /* @__PURE__ */ t(g, { onClick: v, isLoading: !1, children: n("continueCta") }) })
117
+ /* @__PURE__ */ t(p, { children: /* @__PURE__ */ t(T, { onClick: v, isLoading: !1, children: n("continueCta") }) })
118
118
  ] })
119
119
  ] });
120
120
  }
121
121
  export {
122
- Tt as ContractorList,
122
+ gt as ContractorList,
123
123
  W as EmptyDataContractorsList,
124
124
  Q as Head
125
125
  };
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../../../../src/components/Contractor/ContractorList/index.tsx"],"sourcesContent":["import { type Contractor } from '@gusto/embedded-api/models/components/contractor'\nimport { useTranslation } from 'react-i18next'\nimport { useContractorsDeleteMutation } from '@gusto/embedded-api/react-query/contractorsDelete'\nimport { useContractors } from './useContractorList'\nimport { ActionsLayout, DataView, EmptyData, Flex, useDataView } from '@/components/Common'\nimport { firstLastName } from '@/helpers/formattedStrings'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu/HamburgerMenu'\nimport PencilSvg from '@/assets/icons/pencil.svg?react'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { ContractorOnboardingStatusBadge } from '@/components/Common/OnboardingStatusBadge'\nimport { useI18n } from '@/i18n'\nimport {\n BaseComponent,\n useBase,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { componentEvents, CONTRACTOR_TYPE } from '@/shared/constants'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\n\nexport interface HeadProps {\n count: number\n handleAdd: () => void\n}\nexport function Head({ count, handleAdd }: HeadProps) {\n const { Button, Heading } = useComponentContext()\n const { t } = useTranslation('Contractor.ContractorList')\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"space-between\">\n <Heading as=\"h2\">{t('title')}</Heading>\n\n {count !== 0 && (\n <Button variant=\"secondary\" onClick={handleAdd}>\n {t('addAnotherCTA')}\n </Button>\n )}\n </Flex>\n )\n}\n\nexport interface EmptyDataContractorsListProps {\n handleAdd: () => void\n}\nexport function EmptyDataContractorsList({ handleAdd }: EmptyDataContractorsListProps) {\n const { Button } = useComponentContext()\n const { t } = useTranslation('Contractor.ContractorList')\n\n return (\n <EmptyData title={t('emptyTableTitle')} description={t('emptyTableDescription')}>\n <ActionsLayout justifyContent=\"center\">\n <Button onClick={handleAdd}>{t('addContractorCTA')}</Button>\n </ActionsLayout>\n </EmptyData>\n )\n}\n\nexport interface ContractorListProps extends CommonComponentInterface<'Contractor.ContractorList'> {\n companyId: string\n successMessage?: string\n}\n\nexport function ContractorList(props: ContractorListProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ companyId, className, dictionary, successMessage }: ContractorListProps) {\n useI18n('Contractor.ContractorList')\n const { t } = useTranslation('Contractor.ContractorList')\n const { onEvent, baseSubmitHandler } = useBase()\n const { Alert, Button } = useComponentContext()\n const {\n contractors,\n totalCount,\n handleNextPage,\n handleFirstPage,\n handleLastPage,\n handlePreviousPage,\n handleItemsPerPageChange,\n currentPage,\n totalPages,\n itemsPerPage,\n } = useContractors({ companyUuid: companyId })\n const { mutateAsync: deleteContractorMutation, isPending: isPendingDelete } =\n useContractorsDeleteMutation()\n\n const dataViewProps = useDataView<Contractor>({\n columns: [\n {\n title: t('listHeaders.name'),\n render: contractor =>\n contractor.type === CONTRACTOR_TYPE.BUSINESS\n ? contractor.businessName\n : firstLastName({ first_name: contractor.firstName, last_name: contractor.lastName }),\n },\n {\n title: t('listHeaders.status'),\n render: ({ onboarded, onboardingStatus }) => (\n <ContractorOnboardingStatusBadge\n onboarded={onboarded}\n onboardingStatus={onboardingStatus}\n />\n ),\n },\n ],\n data: contractors,\n itemMenu: contractor => (\n <HamburgerMenu\n items={[\n {\n label: t('editCTA'),\n icon: <PencilSvg aria-hidden />,\n onClick: () => {\n handleEdit(contractor.uuid)\n },\n },\n {\n label: t('deleteCTA'),\n icon: <TrashCanSvg aria-hidden />,\n onClick: () => {\n void handleDelete(contractor.uuid)\n },\n },\n ]}\n triggerLabel={t('editCTA')}\n isLoading={isPendingDelete}\n />\n ),\n emptyState: () => <EmptyDataContractorsList handleAdd={handleAdd} />,\n pagination: {\n handleNextPage,\n handleFirstPage,\n handleLastPage,\n handlePreviousPage,\n handleItemsPerPageChange,\n currentPage,\n totalPages,\n itemsPerPage,\n },\n })\n\n const handleAdd = () => {\n onEvent(componentEvents.CONTRACTOR_CREATE)\n }\n\n const handleEdit = (uuid: string) => {\n onEvent(componentEvents.CONTRACTOR_UPDATE, { contractorId: uuid })\n }\n\n const handleContinue = () => {\n onEvent(componentEvents.CONTRACTOR_ONBOARDING_CONTINUE)\n }\n\n const handleDelete = async (uuid: string) => {\n await baseSubmitHandler(uuid, async payload => {\n await deleteContractorMutation({\n request: { contractorUuid: payload },\n })\n\n onEvent(componentEvents.CONTRACTOR_DELETED, { contractorId: payload })\n })\n }\n\n return (\n <section className={className}>\n {successMessage && <Alert label={successMessage} status=\"success\" />}\n <Flex flexDirection=\"column\">\n <Head count={totalCount} handleAdd={handleAdd} />\n <DataView label={t('contractorListLabel')} {...dataViewProps} />\n <ActionsLayout>\n <Button onClick={handleContinue} isLoading={false}>\n {t('continueCta')}\n </Button>\n </ActionsLayout>\n </Flex>\n </section>\n )\n}\n"],"names":["Head","count","handleAdd","Button","Heading","useComponentContext","t","useTranslation","jsxs","Flex","jsx","EmptyDataContractorsList","EmptyData","ActionsLayout","ContractorList","props","BaseComponent","Root","companyId","className","dictionary","successMessage","useI18n","onEvent","baseSubmitHandler","useBase","Alert","contractors","totalCount","handleNextPage","handleFirstPage","handleLastPage","handlePreviousPage","handleItemsPerPageChange","currentPage","totalPages","itemsPerPage","useContractors","deleteContractorMutation","isPendingDelete","useContractorsDeleteMutation","dataViewProps","useDataView","contractor","CONTRACTOR_TYPE","firstLastName","onboarded","onboardingStatus","ContractorOnboardingStatusBadge","HamburgerMenu","PencilSvg","handleEdit","TrashCanSvg","handleDelete","componentEvents","uuid","handleContinue","payload","DataView"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../../../../src/components/Contractor/ContractorList/index.tsx"],"sourcesContent":["import { type Contractor } from '@gusto/embedded-api/models/components/contractor'\nimport { useTranslation } from 'react-i18next'\nimport { useContractorsDeleteMutation } from '@gusto/embedded-api/react-query/contractorsDelete'\nimport { useContractors } from './useContractorList'\nimport { ActionsLayout, DataView, EmptyData, Flex, useDataView } from '@/components/Common'\nimport { firstLastName } from '@/helpers/formattedStrings'\nimport { HamburgerMenu } from '@/components/Common/HamburgerMenu/HamburgerMenu'\nimport PencilSvg from '@/assets/icons/pencil.svg?react'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { ContractorOnboardingStatusBadge } from '@/components/Common/OnboardingStatusBadge'\nimport { useI18n } from '@/i18n'\nimport {\n BaseComponent,\n useBase,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { componentEvents, CONTRACTOR_TYPE } from '@/shared/constants'\nimport TrashCanSvg from '@/assets/icons/trashcan.svg?react'\n\nexport interface HeadProps {\n count: number\n handleAdd: () => void\n}\nexport function Head({ count, handleAdd }: HeadProps) {\n const { Button, Heading } = useComponentContext()\n const { t } = useTranslation('Contractor.ContractorList')\n\n return (\n <Flex alignItems=\"center\" justifyContent=\"space-between\">\n <Heading as=\"h2\">{t('title')}</Heading>\n\n {count !== 0 && (\n <Button variant=\"secondary\" onClick={handleAdd}>\n {t('addAnotherCta')}\n </Button>\n )}\n </Flex>\n )\n}\n\nexport interface EmptyDataContractorsListProps {\n handleAdd: () => void\n}\nexport function EmptyDataContractorsList({ handleAdd }: EmptyDataContractorsListProps) {\n const { Button } = useComponentContext()\n const { t } = useTranslation('Contractor.ContractorList')\n\n return (\n <EmptyData title={t('emptyTableTitle')} description={t('emptyTableDescription')}>\n <ActionsLayout justifyContent=\"center\">\n <Button onClick={handleAdd}>{t('addContractorCta')}</Button>\n </ActionsLayout>\n </EmptyData>\n )\n}\n\nexport interface ContractorListProps extends CommonComponentInterface<'Contractor.ContractorList'> {\n companyId: string\n successMessage?: string\n}\n\nexport function ContractorList(props: ContractorListProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nfunction Root({ companyId, className, dictionary, successMessage }: ContractorListProps) {\n useI18n('Contractor.ContractorList')\n const { t } = useTranslation('Contractor.ContractorList')\n const { onEvent, baseSubmitHandler } = useBase()\n const { Alert, Button } = useComponentContext()\n const {\n contractors,\n totalCount,\n handleNextPage,\n handleFirstPage,\n handleLastPage,\n handlePreviousPage,\n handleItemsPerPageChange,\n currentPage,\n totalPages,\n itemsPerPage,\n } = useContractors({ companyUuid: companyId })\n const { mutateAsync: deleteContractorMutation, isPending: isPendingDelete } =\n useContractorsDeleteMutation()\n\n const dataViewProps = useDataView<Contractor>({\n columns: [\n {\n title: t('listHeaders.name'),\n render: contractor =>\n contractor.type === CONTRACTOR_TYPE.BUSINESS\n ? contractor.businessName\n : firstLastName({ first_name: contractor.firstName, last_name: contractor.lastName }),\n },\n {\n title: t('listHeaders.status'),\n render: ({ onboarded, onboardingStatus }) => (\n <ContractorOnboardingStatusBadge\n onboarded={onboarded}\n onboardingStatus={onboardingStatus}\n />\n ),\n },\n ],\n data: contractors,\n itemMenu: contractor => (\n <HamburgerMenu\n items={[\n {\n label: t('editCta'),\n icon: <PencilSvg aria-hidden />,\n onClick: () => {\n handleEdit(contractor.uuid)\n },\n },\n {\n label: t('deleteCta'),\n icon: <TrashCanSvg aria-hidden />,\n onClick: () => {\n void handleDelete(contractor.uuid)\n },\n },\n ]}\n triggerLabel={t('editCta')}\n isLoading={isPendingDelete}\n />\n ),\n emptyState: () => <EmptyDataContractorsList handleAdd={handleAdd} />,\n pagination: {\n handleNextPage,\n handleFirstPage,\n handleLastPage,\n handlePreviousPage,\n handleItemsPerPageChange,\n currentPage,\n totalPages,\n itemsPerPage,\n },\n })\n\n const handleAdd = () => {\n onEvent(componentEvents.CONTRACTOR_CREATE)\n }\n\n const handleEdit = (uuid: string) => {\n onEvent(componentEvents.CONTRACTOR_UPDATE, { contractorId: uuid })\n }\n\n const handleContinue = () => {\n onEvent(componentEvents.CONTRACTOR_ONBOARDING_CONTINUE)\n }\n\n const handleDelete = async (uuid: string) => {\n await baseSubmitHandler(uuid, async payload => {\n await deleteContractorMutation({\n request: { contractorUuid: payload },\n })\n\n onEvent(componentEvents.CONTRACTOR_DELETED, { contractorId: payload })\n })\n }\n\n return (\n <section className={className}>\n {successMessage && <Alert label={successMessage} status=\"success\" />}\n <Flex flexDirection=\"column\">\n <Head count={totalCount} handleAdd={handleAdd} />\n <DataView label={t('contractorListLabel')} {...dataViewProps} />\n <ActionsLayout>\n <Button onClick={handleContinue} isLoading={false}>\n {t('continueCta')}\n </Button>\n </ActionsLayout>\n </Flex>\n </section>\n )\n}\n"],"names":["Head","count","handleAdd","Button","Heading","useComponentContext","t","useTranslation","jsxs","Flex","jsx","EmptyDataContractorsList","EmptyData","ActionsLayout","ContractorList","props","BaseComponent","Root","companyId","className","dictionary","successMessage","useI18n","onEvent","baseSubmitHandler","useBase","Alert","contractors","totalCount","handleNextPage","handleFirstPage","handleLastPage","handlePreviousPage","handleItemsPerPageChange","currentPage","totalPages","itemsPerPage","useContractors","deleteContractorMutation","isPendingDelete","useContractorsDeleteMutation","dataViewProps","useDataView","contractor","CONTRACTOR_TYPE","firstLastName","onboarded","onboardingStatus","ContractorOnboardingStatusBadge","HamburgerMenu","PencilSvg","handleEdit","TrashCanSvg","handleDelete","componentEvents","uuid","handleContinue","payload","DataView"],"mappings":"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"}
@@ -6,13 +6,13 @@ import { useComponentContext as D } from "../../../contexts/ComponentAdapter/use
6
6
  import { useI18n as I } from "../../../i18n/I18n.js";
7
7
  import { Form as O } from "../../Common/Form/Form.js";
8
8
  import { Grid as n } from "../../Common/Grid/Grid.js";
9
- import { usePlaceholderSSN as x, normalizeSSN as w } from "../../../helpers/ssn.js";
10
- import { usePlaceholderEin as E, normalizeEin as j } from "../../../helpers/federalEin.js";
11
- import { ContractorOnboardingStatus as v } from "../../../shared/constants.js";
9
+ import { Flex as x } from "../../Common/Flex/Flex.js";
10
+ import { usePlaceholderSSN as w, normalizeSSN as E } from "../../../helpers/ssn.js";
11
+ import { usePlaceholderEin as j, normalizeEin as v } from "../../../helpers/federalEin.js";
12
+ import { ContractorOnboardingStatus as G } from "../../../shared/constants.js";
12
13
  import { TextInputField as l } from "../../Common/Fields/TextInputField/TextInputField.js";
13
14
  import { RadioGroupField as d } from "../../Common/Fields/RadioGroupField/RadioGroupField.js";
14
- import { NumberInputField as G } from "../../Common/Fields/NumberInputField/NumberInputField.js";
15
- import { Flex as z } from "../../Common/Flex/Flex.js";
15
+ import { NumberInputField as z } from "../../Common/Fields/NumberInputField/NumberInputField.js";
16
16
  import { SwitchField as A } from "../../Common/Fields/SwitchField/SwitchField.js";
17
17
  import { DatePickerField as B } from "../../Common/Fields/DatePickerField/DatePickerField.js";
18
18
  function re({
@@ -33,7 +33,7 @@ function re({
33
33
  }) {
34
34
  const a = D();
35
35
  I("Contractor.Profile");
36
- const { t: e } = T("Contractor.Profile"), q = x(t?.hasSsn ?? !1), P = E(t?.hasEin ?? !1);
36
+ const { t: e } = T("Contractor.Profile"), q = w(t?.hasSsn ?? !1), P = j(t?.hasEin ?? !1);
37
37
  return /* @__PURE__ */ i("section", { className: F, children: /* @__PURE__ */ i(S, { ...u, children: /* @__PURE__ */ r(O, { onSubmit: f, children: [
38
38
  /* @__PURE__ */ r(n, { gridTemplateColumns: "1fr", gap: 24, className: "mb-8", children: [
39
39
  /* @__PURE__ */ r("header", { children: [
@@ -47,7 +47,7 @@ function re({
47
47
  name: "selfOnboarding",
48
48
  label: e("fields.selfOnboarding.label"),
49
49
  description: e("fields.selfOnboarding.description"),
50
- isDisabled: t && t.onboardingStatus !== v.ADMIN_ONBOARDING_INCOMPLETE
50
+ isDisabled: t && t.onboardingStatus !== G.ADMIN_ONBOARDING_INCOMPLETE
51
51
  }
52
52
  ),
53
53
  p && /* @__PURE__ */ i(
@@ -81,7 +81,7 @@ function re({
81
81
  name: "ssn",
82
82
  label: e("fields.ssn.label"),
83
83
  placeholder: q,
84
- transform: w,
84
+ transform: E,
85
85
  isRequired: !0
86
86
  }
87
87
  )
@@ -101,7 +101,7 @@ function re({
101
101
  name: "ein",
102
102
  label: e("fields.ein.label"),
103
103
  placeholder: P,
104
- transform: j,
104
+ transform: v,
105
105
  isRequired: !0
106
106
  }
107
107
  )
@@ -116,7 +116,7 @@ function re({
116
116
  }
117
117
  ),
118
118
  h && /* @__PURE__ */ i(
119
- G,
119
+ z,
120
120
  {
121
121
  name: "hourlyRate",
122
122
  label: e("fields.hourlyRate.label"),
@@ -135,7 +135,7 @@ function re({
135
135
  }
136
136
  )
137
137
  ] }),
138
- /* @__PURE__ */ i(z, { gap: 12, justifyContent: "flex-end", children: /* @__PURE__ */ i(a.Button, { type: "submit", variant: "primary", isDisabled: o.isSubmitting, children: o.isSubmitting ? e(s ? "buttons.updating" : "buttons.creating") : e(s ? "buttons.update" : "buttons.create") }) })
138
+ /* @__PURE__ */ i(x, { gap: 12, justifyContent: "flex-end", children: /* @__PURE__ */ i(a.Button, { type: "submit", variant: "primary", isDisabled: o.isSubmitting, children: o.isSubmitting ? e(s ? "buttons.updating" : "buttons.creating") : e(s ? "buttons.update" : "buttons.create") }) })
139
139
  ] }) }) });
140
140
  }
141
141
  export {
@@ -5,7 +5,7 @@ import { useContractorsGetOnboardingStatusSuspense as R } from "@gusto/embedded-
5
5
  import { useContractorsGetSuspense as A } from "@gusto/embedded-api/react-query/contractorsGet";
6
6
  import { SubmitDone as E } from "./SubmitDone.js";
7
7
  import { Flex as C } from "../../Common/Flex/Flex.js";
8
- import { useComponentContext as T } from "../../../contexts/ComponentAdapter/useComponentContext.js";
8
+ import { useComponentContext as b } from "../../../contexts/ComponentAdapter/useComponentContext.js";
9
9
  import { useI18n as I } from "../../../i18n/I18n.js";
10
10
  import { BaseComponent as B } from "../../Base/Base.js";
11
11
  import { useBase as v } from "../../Base/useBase.js";
@@ -16,9 +16,9 @@ function K(e) {
16
16
  }
17
17
  const U = ({ contractorId: e, selfOnboarding: c }) => {
18
18
  I("Contractor.Submit");
19
- const { Alert: o, Button: m, UnorderedList: u } = T(), { t: n } = O("Contractor.Submit"), { onEvent: r, baseSubmitHandler: i } = v(), b = Object.values(n("warningItems", { returnObjects: !0 })), { data: S } = R({
19
+ const { Alert: o, Button: m, UnorderedList: u } = b(), { t: n } = O("Contractor.Submit"), { onEvent: r, baseSubmitHandler: i } = v(), S = Object.values(n("warningItems", { returnObjects: !0 })), { data: T } = R({
20
20
  contractorUuid: e
21
- }), l = S.contractorOnboardingStatus?.onboardingStatus, { mutateAsync: f } = _(), D = async () => {
21
+ }), l = T.contractorOnboardingStatus?.onboardingStatus, { mutateAsync: f } = _(), D = async () => {
22
22
  await i(null, async () => {
23
23
  const g = await f({
24
24
  request: {
@@ -42,14 +42,14 @@ const U = ({ contractorId: e, selfOnboarding: c }) => {
42
42
  });
43
43
  };
44
44
  return l === d.ONBOARDING_COMPLETED ? /* @__PURE__ */ t(E, { onDone: h }) : l === d.SELF_ONBOARDING_NOT_INVITED && c ? /* @__PURE__ */ t(M, { onSubmit: N, contractorId: e }) : /* @__PURE__ */ a(p, { children: [
45
- /* @__PURE__ */ t(o, { label: n("title"), status: "warning", children: /* @__PURE__ */ t(u, { items: b }) }),
46
- /* @__PURE__ */ t(C, { flexDirection: "column", alignItems: "flex-end", children: /* @__PURE__ */ t(m, { title: n("submitCTA"), onClick: D, children: n("submitCTA") }) })
45
+ /* @__PURE__ */ t(o, { label: n("title"), status: "warning", children: /* @__PURE__ */ t(u, { items: S }) }),
46
+ /* @__PURE__ */ t(C, { flexDirection: "column", alignItems: "flex-end", children: /* @__PURE__ */ t(m, { title: n("submitCta"), onClick: D, children: n("submitCta") }) })
47
47
  ] });
48
48
  }, M = ({
49
49
  onSubmit: e,
50
50
  contractorId: c
51
51
  }) => {
52
- const { t: o } = O("Contractor.Submit", { keyPrefix: "inviteContractor" }), { Button: m, Heading: u, Text: n } = T(), { data: r } = A({ contractorUuid: c }), i = r.contractor;
52
+ const { t: o } = O("Contractor.Submit", { keyPrefix: "inviteContractor" }), { Button: m, Heading: u, Text: n } = b(), { data: r } = A({ contractorUuid: c }), i = r.contractor;
53
53
  return /* @__PURE__ */ a(C, { flexDirection: "column", children: [
54
54
  /* @__PURE__ */ t(u, { as: "h2", children: o("title") }),
55
55
  /* @__PURE__ */ t(n, { children: o("description") }),
@@ -1 +1 @@
1
- {"version":3,"file":"Submit.js","sources":["../../../../src/components/Contractor/Submit/Submit.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useContractorsUpdateOnboardingStatusMutation } from '@gusto/embedded-api/react-query/contractorsUpdateOnboardingStatus'\nimport { useContractorsGetOnboardingStatusSuspense } from '@gusto/embedded-api/react-query/contractorsGetOnboardingStatus'\nimport { useContractorsGetSuspense } from '@gusto/embedded-api/react-query/contractorsGet'\nimport { SubmitDone } from './SubmitDone'\nimport { Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport {\n BaseComponent,\n useBase,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { componentEvents, ContractorOnboardingStatus } from '@/shared/constants'\nimport { firstLastName } from '@/helpers/formattedStrings'\n\nexport interface ContractorSubmitProps\n extends CommonComponentInterface<'Contractor.ContractorList'> {\n contractorId: string\n selfOnboarding?: boolean\n}\n\nexport function ContractorSubmit(props: ContractorSubmitProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nexport const Root = ({ contractorId, selfOnboarding }: ContractorSubmitProps) => {\n useI18n('Contractor.Submit')\n const { Alert, Button, UnorderedList } = useComponentContext()\n const { t } = useTranslation('Contractor.Submit')\n const { onEvent, baseSubmitHandler } = useBase()\n const items = Object.values(t('warningItems', { returnObjects: true }))\n\n const { data } = useContractorsGetOnboardingStatusSuspense({\n contractorUuid: contractorId,\n })\n const onboardingStatus = data.contractorOnboardingStatus?.onboardingStatus\n\n const { mutateAsync } = useContractorsUpdateOnboardingStatusMutation()\n\n const onSubmit = async () => {\n await baseSubmitHandler(null, async () => {\n const response = await mutateAsync({\n request: {\n contractorUuid: contractorId,\n requestBody: { onboardingStatus: ContractorOnboardingStatus.ONBOARDING_COMPLETED },\n },\n })\n onEvent(\n componentEvents.CONTRACTOR_ONBOARDING_STATUS_UPDATED,\n response.contractorOnboardingStatus,\n )\n onEvent(componentEvents.CONTRACTOR_SUBMIT_DONE, { message: t('submitDone.successMessage') })\n })\n }\n const handleInviteContractor = () => {\n onEvent(componentEvents.CONTRACTOR_INVITE_CONTRACTOR, { contractorId })\n onEvent(componentEvents.CONTRACTOR_SUBMIT_DONE, {\n message: t('inviteContractor.successMessage'),\n })\n }\n\n const handleSubmitDone = () => {\n onEvent(componentEvents.CONTRACTOR_SUBMIT_DONE, {\n onboardingStatus,\n message: t('submitDone.successMessage'),\n })\n }\n\n if (onboardingStatus === ContractorOnboardingStatus.ONBOARDING_COMPLETED) {\n return <SubmitDone onDone={handleSubmitDone} />\n }\n if (\n onboardingStatus === ContractorOnboardingStatus.SELF_ONBOARDING_NOT_INVITED &&\n selfOnboarding\n ) {\n return <InviteContractor onSubmit={handleInviteContractor} contractorId={contractorId} />\n }\n\n return (\n <>\n <Alert label={t('title')} status=\"warning\">\n <UnorderedList items={items} />\n </Alert>\n <Flex flexDirection=\"column\" alignItems=\"flex-end\">\n <Button title={t('submitCTA')} onClick={onSubmit}>\n {t('submitCTA')}\n </Button>\n </Flex>\n </>\n )\n}\n\nconst InviteContractor = ({\n onSubmit,\n contractorId,\n}: {\n onSubmit: () => void\n contractorId: string\n}) => {\n const { t } = useTranslation('Contractor.Submit', { keyPrefix: 'inviteContractor' })\n const { Button, Heading, Text } = useComponentContext()\n\n const { data: contractorData } = useContractorsGetSuspense({ contractorUuid: contractorId })\n const contractor = contractorData.contractor\n\n return (\n <Flex flexDirection=\"column\">\n <Heading as=\"h2\">{t('title')}</Heading>\n <Text>{t('description')}</Text>\n <Flex flexDirection=\"column\">\n <div>\n <Text>\n {firstLastName({\n first_name: contractor?.firstName,\n last_name: contractor?.lastName,\n })}\n </Text>\n <Text>{contractor?.email}</Text>\n </div>\n <div>\n <Text>{t('startDateLabel')}</Text>\n <Text>{contractor?.startDate}</Text>\n </div>\n </Flex>\n <Button title={t('inviteCta')} onClick={onSubmit}>\n {t('inviteCta')}\n </Button>\n </Flex>\n )\n}\n"],"names":["ContractorSubmit","props","jsx","BaseComponent","Root","contractorId","selfOnboarding","useI18n","Alert","Button","UnorderedList","useComponentContext","t","useTranslation","onEvent","baseSubmitHandler","useBase","items","data","useContractorsGetOnboardingStatusSuspense","onboardingStatus","mutateAsync","useContractorsUpdateOnboardingStatusMutation","onSubmit","response","ContractorOnboardingStatus","componentEvents","handleInviteContractor","handleSubmitDone","SubmitDone","InviteContractor","jsxs","Fragment","Flex","Heading","Text","contractorData","useContractorsGetSuspense","contractor","firstLastName"],"mappings":"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"}
1
+ {"version":3,"file":"Submit.js","sources":["../../../../src/components/Contractor/Submit/Submit.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useContractorsUpdateOnboardingStatusMutation } from '@gusto/embedded-api/react-query/contractorsUpdateOnboardingStatus'\nimport { useContractorsGetOnboardingStatusSuspense } from '@gusto/embedded-api/react-query/contractorsGetOnboardingStatus'\nimport { useContractorsGetSuspense } from '@gusto/embedded-api/react-query/contractorsGet'\nimport { SubmitDone } from './SubmitDone'\nimport { Flex } from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport {\n BaseComponent,\n useBase,\n type BaseComponentInterface,\n type CommonComponentInterface,\n} from '@/components/Base'\nimport { componentEvents, ContractorOnboardingStatus } from '@/shared/constants'\nimport { firstLastName } from '@/helpers/formattedStrings'\n\nexport interface ContractorSubmitProps\n extends CommonComponentInterface<'Contractor.ContractorList'> {\n contractorId: string\n selfOnboarding?: boolean\n}\n\nexport function ContractorSubmit(props: ContractorSubmitProps & BaseComponentInterface) {\n return (\n <BaseComponent {...props}>\n <Root {...props}>{props.children}</Root>\n </BaseComponent>\n )\n}\n\nexport const Root = ({ contractorId, selfOnboarding }: ContractorSubmitProps) => {\n useI18n('Contractor.Submit')\n const { Alert, Button, UnorderedList } = useComponentContext()\n const { t } = useTranslation('Contractor.Submit')\n const { onEvent, baseSubmitHandler } = useBase()\n const items = Object.values(t('warningItems', { returnObjects: true }))\n\n const { data } = useContractorsGetOnboardingStatusSuspense({\n contractorUuid: contractorId,\n })\n const onboardingStatus = data.contractorOnboardingStatus?.onboardingStatus\n\n const { mutateAsync } = useContractorsUpdateOnboardingStatusMutation()\n\n const onSubmit = async () => {\n await baseSubmitHandler(null, async () => {\n const response = await mutateAsync({\n request: {\n contractorUuid: contractorId,\n requestBody: { onboardingStatus: ContractorOnboardingStatus.ONBOARDING_COMPLETED },\n },\n })\n onEvent(\n componentEvents.CONTRACTOR_ONBOARDING_STATUS_UPDATED,\n response.contractorOnboardingStatus,\n )\n onEvent(componentEvents.CONTRACTOR_SUBMIT_DONE, { message: t('submitDone.successMessage') })\n })\n }\n const handleInviteContractor = () => {\n onEvent(componentEvents.CONTRACTOR_INVITE_CONTRACTOR, { contractorId })\n onEvent(componentEvents.CONTRACTOR_SUBMIT_DONE, {\n message: t('inviteContractor.successMessage'),\n })\n }\n\n const handleSubmitDone = () => {\n onEvent(componentEvents.CONTRACTOR_SUBMIT_DONE, {\n onboardingStatus,\n message: t('submitDone.successMessage'),\n })\n }\n\n if (onboardingStatus === ContractorOnboardingStatus.ONBOARDING_COMPLETED) {\n return <SubmitDone onDone={handleSubmitDone} />\n }\n if (\n onboardingStatus === ContractorOnboardingStatus.SELF_ONBOARDING_NOT_INVITED &&\n selfOnboarding\n ) {\n return <InviteContractor onSubmit={handleInviteContractor} contractorId={contractorId} />\n }\n\n return (\n <>\n <Alert label={t('title')} status=\"warning\">\n <UnorderedList items={items} />\n </Alert>\n <Flex flexDirection=\"column\" alignItems=\"flex-end\">\n <Button title={t('submitCta')} onClick={onSubmit}>\n {t('submitCta')}\n </Button>\n </Flex>\n </>\n )\n}\n\nconst InviteContractor = ({\n onSubmit,\n contractorId,\n}: {\n onSubmit: () => void\n contractorId: string\n}) => {\n const { t } = useTranslation('Contractor.Submit', { keyPrefix: 'inviteContractor' })\n const { Button, Heading, Text } = useComponentContext()\n\n const { data: contractorData } = useContractorsGetSuspense({ contractorUuid: contractorId })\n const contractor = contractorData.contractor\n\n return (\n <Flex flexDirection=\"column\">\n <Heading as=\"h2\">{t('title')}</Heading>\n <Text>{t('description')}</Text>\n <Flex flexDirection=\"column\">\n <div>\n <Text>\n {firstLastName({\n first_name: contractor?.firstName,\n last_name: contractor?.lastName,\n })}\n </Text>\n <Text>{contractor?.email}</Text>\n </div>\n <div>\n <Text>{t('startDateLabel')}</Text>\n <Text>{contractor?.startDate}</Text>\n </div>\n </Flex>\n <Button title={t('inviteCta')} onClick={onSubmit}>\n {t('inviteCta')}\n </Button>\n </Flex>\n )\n}\n"],"names":["ContractorSubmit","props","jsx","BaseComponent","Root","contractorId","selfOnboarding","useI18n","Alert","Button","UnorderedList","useComponentContext","t","useTranslation","onEvent","baseSubmitHandler","useBase","items","data","useContractorsGetOnboardingStatusSuspense","onboardingStatus","mutateAsync","useContractorsUpdateOnboardingStatusMutation","onSubmit","response","ContractorOnboardingStatus","componentEvents","handleInviteContractor","handleSubmitDone","SubmitDone","InviteContractor","jsxs","Fragment","Flex","Heading","Text","contractorData","useContractorsGetSuspense","contractor","firstLastName"],"mappings":"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"}
@@ -1,15 +1,15 @@
1
1
  import { jsxs as m, jsx as t } from "react/jsx-runtime";
2
2
  import { useTranslation as c } from "react-i18next";
3
3
  import { useComponentContext as s } from "../../../contexts/ComponentAdapter/useComponentContext.js";
4
- import { useI18n as l } from "../../../i18n/I18n.js";
5
- import { Flex as a } from "../../Common/Flex/Flex.js";
4
+ import { useI18n as a } from "../../../i18n/I18n.js";
5
+ import { Flex as l } from "../../Common/Flex/Flex.js";
6
6
  const C = ({ onDone: n }) => {
7
- l("Contractor.Submit");
8
- const { Button: e, Heading: r, Text: i } = s(), { t: o } = c("Contractor.Submit");
9
- return /* @__PURE__ */ m(a, { flexDirection: "column", alignItems: "center", children: [
10
- /* @__PURE__ */ t(r, { as: "h2", children: o("doneTitle") }),
11
- /* @__PURE__ */ t(i, { children: o("doneText") }),
12
- /* @__PURE__ */ t(e, { variant: "secondary", onClick: n, children: o("doneCTA") })
7
+ a("Contractor.Submit");
8
+ const { Button: r, Heading: e, Text: i } = s(), { t: o } = c("Contractor.Submit");
9
+ return /* @__PURE__ */ m(l, { flexDirection: "column", alignItems: "center", children: [
10
+ /* @__PURE__ */ t(e, { as: "h2", children: o("doneTitle") }),
11
+ /* @__PURE__ */ t(i, { children: o("doneDescription") }),
12
+ /* @__PURE__ */ t(r, { variant: "secondary", onClick: n, children: o("doneCta") })
13
13
  ] });
14
14
  };
15
15
  export {
@@ -1 +1 @@
1
- {"version":3,"file":"SubmitDone.js","sources":["../../../../src/components/Contractor/Submit/SubmitDone.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport { Flex } from '@/components/Common/Flex'\n\ninterface SubmitDoneProps {\n onDone: () => void\n}\n\nexport const SubmitDone = ({ onDone }: SubmitDoneProps) => {\n useI18n('Contractor.Submit')\n const { Button, Heading, Text } = useComponentContext()\n const { t } = useTranslation('Contractor.Submit')\n\n return (\n <Flex flexDirection=\"column\" alignItems=\"center\">\n <Heading as=\"h2\">{t('doneTitle')}</Heading>\n <Text>{t('doneText')}</Text>\n <Button variant=\"secondary\" onClick={onDone}>\n {t('doneCTA')}\n </Button>\n </Flex>\n )\n}\n"],"names":["SubmitDone","onDone","useI18n","Button","Heading","Text","useComponentContext","t","useTranslation","jsxs","Flex","jsx"],"mappings":";;;;;AASO,MAAMA,IAAa,CAAC,EAAE,QAAAC,QAA8B;AACzD,EAAAC,EAAQ,mBAAmB;AAC3B,QAAM,EAAE,QAAAC,GAAQ,SAAAC,GAAS,MAAAC,EAAA,IAASC,EAAA,GAC5B,EAAE,GAAAC,EAAA,IAAMC,EAAe,mBAAmB;AAEhD,SACE,gBAAAC,EAACC,GAAA,EAAK,eAAc,UAAS,YAAW,UACtC,UAAA;AAAA,IAAA,gBAAAC,EAACP,GAAA,EAAQ,IAAG,MAAM,UAAAG,EAAE,WAAW,GAAE;AAAA,IACjC,gBAAAI,EAACN,GAAA,EAAM,UAAAE,EAAE,UAAU,EAAA,CAAE;AAAA,IACrB,gBAAAI,EAACR,KAAO,SAAQ,aAAY,SAASF,GAClC,UAAAM,EAAE,SAAS,EAAA,CACd;AAAA,EAAA,GACF;AAEJ;"}
1
+ {"version":3,"file":"SubmitDone.js","sources":["../../../../src/components/Contractor/Submit/SubmitDone.tsx"],"sourcesContent":["import { useTranslation } from 'react-i18next'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { useI18n } from '@/i18n'\nimport { Flex } from '@/components/Common/Flex'\n\ninterface SubmitDoneProps {\n onDone: () => void\n}\n\nexport const SubmitDone = ({ onDone }: SubmitDoneProps) => {\n useI18n('Contractor.Submit')\n const { Button, Heading, Text } = useComponentContext()\n const { t } = useTranslation('Contractor.Submit')\n\n return (\n <Flex flexDirection=\"column\" alignItems=\"center\">\n <Heading as=\"h2\">{t('doneTitle')}</Heading>\n <Text>{t('doneDescription')}</Text>\n <Button variant=\"secondary\" onClick={onDone}>\n {t('doneCta')}\n </Button>\n </Flex>\n )\n}\n"],"names":["SubmitDone","onDone","useI18n","Button","Heading","Text","useComponentContext","t","useTranslation","jsxs","Flex","jsx"],"mappings":";;;;;AASO,MAAMA,IAAa,CAAC,EAAE,QAAAC,QAA8B;AACzD,EAAAC,EAAQ,mBAAmB;AAC3B,QAAM,EAAE,QAAAC,GAAQ,SAAAC,GAAS,MAAAC,EAAA,IAASC,EAAA,GAC5B,EAAE,GAAAC,EAAA,IAAMC,EAAe,mBAAmB;AAEhD,SACE,gBAAAC,EAACC,GAAA,EAAK,eAAc,UAAS,YAAW,UACtC,UAAA;AAAA,IAAA,gBAAAC,EAACP,GAAA,EAAQ,IAAG,MAAM,UAAAG,EAAE,WAAW,GAAE;AAAA,IACjC,gBAAAI,EAACN,GAAA,EAAM,UAAAE,EAAE,iBAAiB,EAAA,CAAE;AAAA,IAC5B,gBAAAI,EAACR,KAAO,SAAQ,aAAY,SAASF,GAClC,UAAAM,EAAE,SAAS,EAAA,CACd;AAAA,EAAA,GACF;AAEJ;"}
@@ -1,5 +1,5 @@
1
1
  import { jsxs as u, Fragment as d, jsx as t } from "react/jsx-runtime";
2
- import { useMemo as F, useEffect as k } from "react";
2
+ import { useMemo as k, useEffect as F } from "react";
3
3
  import { useFormContext as U, useWatch as M } from "react-hook-form";
4
4
  import { useTranslation as P, Trans as I } from "react-i18next";
5
5
  import { useCompensation as R, rateMinimumError as Y, rateExemptThresholdError as w } from "./useCompensation.js";
@@ -15,20 +15,20 @@ import { CheckboxField as q } from "../../Common/Fields/CheckboxField/CheckboxFi
15
15
  import { RadioGroupField as H } from "../../Common/Fields/RadioGroupField/RadioGroupField.js";
16
16
  import { ComboBoxField as $ } from "../../Common/Fields/ComboBoxField/ComboBoxField.js";
17
17
  const ce = () => {
18
- const { t: e } = P("Employee.Compensation"), l = x("currency"), b = j(), S = F(
19
- () => X.map(({ code: o, description: D }) => ({ value: o, label: D })),
18
+ const { t: e } = P("Employee.Compensation"), l = x("currency"), b = j(), S = k(
19
+ () => X.map(({ code: o, description: A }) => ({ value: o, label: A })),
20
20
  []
21
21
  ), {
22
22
  control: f,
23
23
  register: h,
24
24
  setValue: s,
25
- formState: { errors: C, defaultValues: m }
26
- } = U(), i = M({ control: f, name: "flsaStatus" }), _ = M({ control: f, name: "stateWcCovered" }), { currentJob: y, mode: n, minimumWages: E, handleFlsaChange: T, state: W, showTwoPercentStakeholder: v } = R();
27
- if (k(() => {
25
+ formState: { errors: E, defaultValues: m }
26
+ } = U(), i = M({ control: f, name: "flsaStatus" }), _ = M({ control: f, name: "stateWcCovered" }), { currentJob: y, mode: n, minimumWages: C, handleFlsaChange: W, state: L, showTwoPercentStakeholder: T } = R();
27
+ if (F(() => {
28
28
  i === a.OWNER ? s("paymentUnit", "Paycheck") : i === a.COMMISSION_ONLY_NONEXEMPT || i === a.COMMISSION_ONLY_EXEMPT ? (s("paymentUnit", "Year"), s("rate", 0)) : m?.paymentUnit && s("paymentUnit", m.paymentUnit);
29
29
  }, [i, s, m?.paymentUnit]), !(n === "ADD_INITIAL_JOB" || n === "ADD_ADDITIONAL_JOB" || n === "EDIT_INITIAL_JOB" || n === "EDIT_ADDITIONAL_JOB"))
30
30
  return;
31
- const L = Object.keys(a).map(
31
+ const v = Object.keys(a).map(
32
32
  (o) => ({
33
33
  value: a[o],
34
34
  label: e(`flsaStatusLabels.${a[o]}`)
@@ -39,9 +39,9 @@ const ce = () => {
39
39
  { value: r.MONTH, label: e("paymentUnitOptions.Month") },
40
40
  { value: r.YEAR, label: e("paymentUnitOptions.Year") },
41
41
  { value: r.PAYCHECK, label: e("paymentUnitOptions.Paycheck") }
42
- ], p = i !== a.NONEXEMPT || y?.primary || n === "ADD_INITIAL_JOB", A = i === a.NONEXEMPT && E.length > 0;
42
+ ], p = i !== a.NONEXEMPT || y?.primary || n === "ADD_INITIAL_JOB", D = i === a.NONEXEMPT && C.length > 0;
43
43
  let c = e("validations.rate");
44
- return C.rate?.message === Y ? c = e("validations.nonZeroRate") : C.rate?.message === w && (c = e("validations.rateExemptThreshold", {
44
+ return E.rate?.message === Y ? c = e("validations.nonZeroRate") : E.rate?.message === w && (c = e("validations.rateExemptThreshold", {
45
45
  limit: l(N)
46
46
  })), /* @__PURE__ */ u(d, { children: [
47
47
  /* @__PURE__ */ t(
@@ -63,7 +63,7 @@ const ce = () => {
63
63
  I,
64
64
  {
65
65
  t: e,
66
- i18nKey: "classificationCTA",
66
+ i18nKey: "classificationLink",
67
67
  components: {
68
68
  ClassificationLink: /* @__PURE__ */ t(b.Link, {})
69
69
  }
@@ -72,10 +72,10 @@ const ce = () => {
72
72
  errorMessage: e("validations.exemptThreshold", {
73
73
  limit: l(N)
74
74
  }),
75
- options: L,
75
+ options: v,
76
76
  isRequired: !0,
77
77
  isDisabled: !p,
78
- onChange: T
78
+ onChange: W
79
79
  }
80
80
  ),
81
81
  /* @__PURE__ */ t(
@@ -90,7 +90,7 @@ const ce = () => {
90
90
  isDisabled: i === a.COMMISSION_ONLY_NONEXEMPT || i === a.COMMISSION_ONLY_EXEMPT
91
91
  }
92
92
  ),
93
- A && /* @__PURE__ */ u(d, { children: [
93
+ D && /* @__PURE__ */ u(d, { children: [
94
94
  /* @__PURE__ */ t(
95
95
  K,
96
96
  {
@@ -105,7 +105,7 @@ const ce = () => {
105
105
  name: "minimumWageId",
106
106
  label: e("minimumWageLabel"),
107
107
  description: e("minimumWageDescription"),
108
- options: E.map((o) => ({
108
+ options: C.map((o) => ({
109
109
  value: o.uuid,
110
110
  label: `${l(Number(o.wage))} - ${o.authority}: ${o.notes ?? ""}`
111
111
  })),
@@ -125,8 +125,8 @@ const ce = () => {
125
125
  isDisabled: i === a.OWNER || i === a.COMMISSION_ONLY_NONEXEMPT || i === a.COMMISSION_ONLY_EXEMPT
126
126
  }
127
127
  ),
128
- v && /* @__PURE__ */ t(q, { label: e("twoPercentStakeholderLabel"), name: "twoPercentShareholder" }),
129
- W === "WA" && /* @__PURE__ */ u(d, { children: [
128
+ T && /* @__PURE__ */ t(q, { label: e("twoPercentStakeholderLabel"), name: "twoPercentShareholder" }),
129
+ L === "WA" && /* @__PURE__ */ u(d, { children: [
130
130
  /* @__PURE__ */ t(
131
131
  H,
132
132
  {
@@ -1 +1 @@
1
- {"version":3,"file":"Edit.js","sources":["../../../../src/components/Employee/Compensation/Edit.tsx"],"sourcesContent":["import { useEffect, useMemo } from 'react'\nimport { useFormContext, useWatch } from 'react-hook-form'\nimport { Trans, useTranslation } from 'react-i18next'\nimport {\n type CompensationInputs,\n useCompensation,\n rateMinimumError,\n rateExemptThresholdError,\n} from './useCompensation'\nimport { FLSA_OVERTIME_SALARY_LIMIT, FlsaStatus, PAY_PERIODS } from '@/shared/constants'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport {\n NumberInputField,\n SelectField,\n TextInputField,\n SwitchField,\n RadioGroupField,\n ComboBoxField,\n CheckboxField,\n} from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { WA_RISK_CLASS_CODES } from '@/models/WA_RISK_CODES'\n\nexport interface SelectCategory {\n id: string\n name: string\n}\n\nexport const Edit = () => {\n const { t } = useTranslation('Employee.Compensation')\n const format = useNumberFormatter('currency')\n const Components = useComponentContext()\n\n const stateWcRiskOptions = useMemo(\n () => WA_RISK_CLASS_CODES.map(({ code, description }) => ({ value: code, label: description })),\n [],\n )\n\n const {\n control,\n register,\n setValue,\n formState: { errors, defaultValues },\n } = useFormContext<CompensationInputs>()\n\n const watchedFlsaStatus = useWatch({ control, name: 'flsaStatus' })\n const watchedStateWcCovered = useWatch({ control, name: 'stateWcCovered' })\n const { currentJob, mode, minimumWages, handleFlsaChange, state, showTwoPercentStakeholder } =\n useCompensation()\n\n /**Correctly set payment unit selected option and rate based on flsa status, falling back to default */\n useEffect(() => {\n if (watchedFlsaStatus === FlsaStatus.OWNER) {\n setValue('paymentUnit', 'Paycheck')\n } else if (\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_NONEXEMPT ||\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_EXEMPT\n ) {\n setValue('paymentUnit', 'Year')\n setValue('rate', 0)\n } else if (defaultValues?.paymentUnit) {\n setValue('paymentUnit', defaultValues.paymentUnit)\n }\n }, [watchedFlsaStatus, setValue, defaultValues?.paymentUnit])\n\n if (\n !(\n mode === 'ADD_INITIAL_JOB' ||\n mode === 'ADD_ADDITIONAL_JOB' ||\n mode === 'EDIT_INITIAL_JOB' ||\n mode === 'EDIT_ADDITIONAL_JOB'\n )\n )\n return\n\n const classificationOptions = (Object.keys(FlsaStatus) as Array<keyof typeof FlsaStatus>).map(\n key => ({\n value: FlsaStatus[key],\n label: t(`flsaStatusLabels.${FlsaStatus[key]}`),\n }),\n )\n\n const paymentUnitOptions = [\n { value: PAY_PERIODS.HOUR, label: t('paymentUnitOptions.Hour') },\n { value: PAY_PERIODS.WEEK, label: t('paymentUnitOptions.Week') },\n { value: PAY_PERIODS.MONTH, label: t('paymentUnitOptions.Month') },\n { value: PAY_PERIODS.YEAR, label: t('paymentUnitOptions.Year') },\n { value: PAY_PERIODS.PAYCHECK, label: t('paymentUnitOptions.Paycheck') },\n ]\n\n const isFlsaSelectionEnabled =\n watchedFlsaStatus !== FlsaStatus.NONEXEMPT || currentJob?.primary || mode === 'ADD_INITIAL_JOB'\n\n const isAdjustMinimumWageEnabled =\n watchedFlsaStatus === FlsaStatus.NONEXEMPT && minimumWages.length > 0\n\n let rateErrorMessage = t('validations.rate')\n if (errors.rate?.message === rateMinimumError) {\n rateErrorMessage = t('validations.nonZeroRate')\n } else if (errors.rate?.message === rateExemptThresholdError) {\n rateErrorMessage = t('validations.rateExemptThreshold', {\n limit: format(FLSA_OVERTIME_SALARY_LIMIT),\n })\n }\n\n return (\n <>\n <TextInputField\n name=\"jobTitle\"\n label={t('jobTitle')}\n isRequired\n errorMessage={t('validations.title')}\n />\n {/* hiding flsa selection for secondary jobs */}\n {!isFlsaSelectionEnabled && <input type=\"hidden\" {...register('flsaStatus')} />}\n {isFlsaSelectionEnabled && (\n <SelectField\n name=\"flsaStatus\"\n label={t('employeeClassification')}\n description={\n <Trans\n t={t}\n i18nKey=\"classificationCTA\"\n components={{\n ClassificationLink: <Components.Link />,\n }}\n />\n }\n errorMessage={t('validations.exemptThreshold', {\n limit: format(FLSA_OVERTIME_SALARY_LIMIT),\n })}\n options={classificationOptions}\n isRequired\n isDisabled={!isFlsaSelectionEnabled}\n onChange={handleFlsaChange}\n />\n )}\n <NumberInputField\n name=\"rate\"\n label={t('amount')}\n format=\"currency\"\n min={0}\n errorMessage={rateErrorMessage}\n isRequired\n isDisabled={\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_NONEXEMPT ||\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_EXEMPT\n }\n />\n {isAdjustMinimumWageEnabled && (\n <>\n <SwitchField\n name=\"adjustForMinimumWage\"\n label={t('adjustForMinimumWage')}\n description={t('adjustForMinimumWageDescription')}\n />\n <SelectField\n name=\"minimumWageId\"\n label={t('minimumWageLabel')}\n description={t('minimumWageDescription')}\n options={minimumWages.map(wage => ({\n value: wage.uuid,\n label: `${format(Number(wage.wage))} - ${wage.authority}: ${wage.notes ?? ''}`,\n }))}\n errorMessage={t('validations.minimumWage')}\n />\n </>\n )}\n <SelectField\n name=\"paymentUnit\"\n label={t('paymentUnitLabel')}\n description={t('paymentUnitDescription')}\n options={paymentUnitOptions}\n errorMessage={t('validations.paymentUnit')}\n isRequired\n isDisabled={\n watchedFlsaStatus === FlsaStatus.OWNER ||\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_NONEXEMPT ||\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_EXEMPT\n }\n />\n {showTwoPercentStakeholder && (\n <CheckboxField label={t('twoPercentStakeholderLabel')} name=\"twoPercentShareholder\" />\n )}\n {state === 'WA' && (\n <>\n <RadioGroupField\n name=\"stateWcCovered\"\n label={t('stateWcCoveredLabel')}\n description={\n <Trans\n t={t}\n i18nKey=\"stateWcCoveredDescription\"\n components={{\n wcLink: (\n <Components.Link\n href=\"https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n />\n ),\n }}\n />\n }\n options={[\n { label: t('stateWcCoveredOptions.yes'), value: true },\n { label: t('stateWcCoveredOptions.no'), value: false },\n ]}\n />\n {watchedStateWcCovered && (\n <ComboBoxField\n name=\"stateWcClassCode\"\n label={t('stateWcClassCodeLabel')}\n options={stateWcRiskOptions}\n errorMessage={t('validations.stateWcClassCode')}\n placeholder={t('stateWcClassCodeLabel')}\n />\n )}\n </>\n )}\n </>\n )\n}\n"],"names":["Edit","t","useTranslation","format","useNumberFormatter","Components","useComponentContext","stateWcRiskOptions","useMemo","WA_RISK_CLASS_CODES","code","description","control","register","setValue","errors","defaultValues","useFormContext","watchedFlsaStatus","useWatch","watchedStateWcCovered","currentJob","mode","minimumWages","handleFlsaChange","state","showTwoPercentStakeholder","useCompensation","useEffect","FlsaStatus","classificationOptions","key","paymentUnitOptions","PAY_PERIODS","isFlsaSelectionEnabled","isAdjustMinimumWageEnabled","rateErrorMessage","rateMinimumError","rateExemptThresholdError","FLSA_OVERTIME_SALARY_LIMIT","jsxs","Fragment","jsx","TextInputField","SelectField","Trans","NumberInputField","SwitchField","wage","CheckboxField","RadioGroupField","ComboBoxField"],"mappings":"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"}
1
+ {"version":3,"file":"Edit.js","sources":["../../../../src/components/Employee/Compensation/Edit.tsx"],"sourcesContent":["import { useEffect, useMemo } from 'react'\nimport { useFormContext, useWatch } from 'react-hook-form'\nimport { Trans, useTranslation } from 'react-i18next'\nimport {\n type CompensationInputs,\n useCompensation,\n rateMinimumError,\n rateExemptThresholdError,\n} from './useCompensation'\nimport { FLSA_OVERTIME_SALARY_LIMIT, FlsaStatus, PAY_PERIODS } from '@/shared/constants'\nimport useNumberFormatter from '@/hooks/useNumberFormatter'\nimport {\n NumberInputField,\n SelectField,\n TextInputField,\n SwitchField,\n RadioGroupField,\n ComboBoxField,\n CheckboxField,\n} from '@/components/Common'\nimport { useComponentContext } from '@/contexts/ComponentAdapter/useComponentContext'\nimport { WA_RISK_CLASS_CODES } from '@/models/WA_RISK_CODES'\n\nexport interface SelectCategory {\n id: string\n name: string\n}\n\nexport const Edit = () => {\n const { t } = useTranslation('Employee.Compensation')\n const format = useNumberFormatter('currency')\n const Components = useComponentContext()\n\n const stateWcRiskOptions = useMemo(\n () => WA_RISK_CLASS_CODES.map(({ code, description }) => ({ value: code, label: description })),\n [],\n )\n\n const {\n control,\n register,\n setValue,\n formState: { errors, defaultValues },\n } = useFormContext<CompensationInputs>()\n\n const watchedFlsaStatus = useWatch({ control, name: 'flsaStatus' })\n const watchedStateWcCovered = useWatch({ control, name: 'stateWcCovered' })\n const { currentJob, mode, minimumWages, handleFlsaChange, state, showTwoPercentStakeholder } =\n useCompensation()\n\n /**Correctly set payment unit selected option and rate based on flsa status, falling back to default */\n useEffect(() => {\n if (watchedFlsaStatus === FlsaStatus.OWNER) {\n setValue('paymentUnit', 'Paycheck')\n } else if (\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_NONEXEMPT ||\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_EXEMPT\n ) {\n setValue('paymentUnit', 'Year')\n setValue('rate', 0)\n } else if (defaultValues?.paymentUnit) {\n setValue('paymentUnit', defaultValues.paymentUnit)\n }\n }, [watchedFlsaStatus, setValue, defaultValues?.paymentUnit])\n\n if (\n !(\n mode === 'ADD_INITIAL_JOB' ||\n mode === 'ADD_ADDITIONAL_JOB' ||\n mode === 'EDIT_INITIAL_JOB' ||\n mode === 'EDIT_ADDITIONAL_JOB'\n )\n )\n return\n\n const classificationOptions = (Object.keys(FlsaStatus) as Array<keyof typeof FlsaStatus>).map(\n key => ({\n value: FlsaStatus[key],\n label: t(`flsaStatusLabels.${FlsaStatus[key]}`),\n }),\n )\n\n const paymentUnitOptions = [\n { value: PAY_PERIODS.HOUR, label: t('paymentUnitOptions.Hour') },\n { value: PAY_PERIODS.WEEK, label: t('paymentUnitOptions.Week') },\n { value: PAY_PERIODS.MONTH, label: t('paymentUnitOptions.Month') },\n { value: PAY_PERIODS.YEAR, label: t('paymentUnitOptions.Year') },\n { value: PAY_PERIODS.PAYCHECK, label: t('paymentUnitOptions.Paycheck') },\n ]\n\n const isFlsaSelectionEnabled =\n watchedFlsaStatus !== FlsaStatus.NONEXEMPT || currentJob?.primary || mode === 'ADD_INITIAL_JOB'\n\n const isAdjustMinimumWageEnabled =\n watchedFlsaStatus === FlsaStatus.NONEXEMPT && minimumWages.length > 0\n\n let rateErrorMessage = t('validations.rate')\n if (errors.rate?.message === rateMinimumError) {\n rateErrorMessage = t('validations.nonZeroRate')\n } else if (errors.rate?.message === rateExemptThresholdError) {\n rateErrorMessage = t('validations.rateExemptThreshold', {\n limit: format(FLSA_OVERTIME_SALARY_LIMIT),\n })\n }\n\n return (\n <>\n <TextInputField\n name=\"jobTitle\"\n label={t('jobTitle')}\n isRequired\n errorMessage={t('validations.title')}\n />\n {/* hiding flsa selection for secondary jobs */}\n {!isFlsaSelectionEnabled && <input type=\"hidden\" {...register('flsaStatus')} />}\n {isFlsaSelectionEnabled && (\n <SelectField\n name=\"flsaStatus\"\n label={t('employeeClassification')}\n description={\n <Trans\n t={t}\n i18nKey=\"classificationLink\"\n components={{\n ClassificationLink: <Components.Link />,\n }}\n />\n }\n errorMessage={t('validations.exemptThreshold', {\n limit: format(FLSA_OVERTIME_SALARY_LIMIT),\n })}\n options={classificationOptions}\n isRequired\n isDisabled={!isFlsaSelectionEnabled}\n onChange={handleFlsaChange}\n />\n )}\n <NumberInputField\n name=\"rate\"\n label={t('amount')}\n format=\"currency\"\n min={0}\n errorMessage={rateErrorMessage}\n isRequired\n isDisabled={\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_NONEXEMPT ||\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_EXEMPT\n }\n />\n {isAdjustMinimumWageEnabled && (\n <>\n <SwitchField\n name=\"adjustForMinimumWage\"\n label={t('adjustForMinimumWage')}\n description={t('adjustForMinimumWageDescription')}\n />\n <SelectField\n name=\"minimumWageId\"\n label={t('minimumWageLabel')}\n description={t('minimumWageDescription')}\n options={minimumWages.map(wage => ({\n value: wage.uuid,\n label: `${format(Number(wage.wage))} - ${wage.authority}: ${wage.notes ?? ''}`,\n }))}\n errorMessage={t('validations.minimumWage')}\n />\n </>\n )}\n <SelectField\n name=\"paymentUnit\"\n label={t('paymentUnitLabel')}\n description={t('paymentUnitDescription')}\n options={paymentUnitOptions}\n errorMessage={t('validations.paymentUnit')}\n isRequired\n isDisabled={\n watchedFlsaStatus === FlsaStatus.OWNER ||\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_NONEXEMPT ||\n watchedFlsaStatus === FlsaStatus.COMMISSION_ONLY_EXEMPT\n }\n />\n {showTwoPercentStakeholder && (\n <CheckboxField label={t('twoPercentStakeholderLabel')} name=\"twoPercentShareholder\" />\n )}\n {state === 'WA' && (\n <>\n <RadioGroupField\n name=\"stateWcCovered\"\n label={t('stateWcCoveredLabel')}\n description={\n <Trans\n t={t}\n i18nKey=\"stateWcCoveredDescription\"\n components={{\n wcLink: (\n <Components.Link\n href=\"https://www.lni.wa.gov/insurance/rates-risk-classes/risk-classes-for-workers-compensation/risk-class-lookup#/\"\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n />\n ),\n }}\n />\n }\n options={[\n { label: t('stateWcCoveredOptions.yes'), value: true },\n { label: t('stateWcCoveredOptions.no'), value: false },\n ]}\n />\n {watchedStateWcCovered && (\n <ComboBoxField\n name=\"stateWcClassCode\"\n label={t('stateWcClassCodeLabel')}\n options={stateWcRiskOptions}\n errorMessage={t('validations.stateWcClassCode')}\n placeholder={t('stateWcClassCodeLabel')}\n />\n )}\n </>\n )}\n </>\n )\n}\n"],"names":["Edit","t","useTranslation","format","useNumberFormatter","Components","useComponentContext","stateWcRiskOptions","useMemo","WA_RISK_CLASS_CODES","code","description","control","register","setValue","errors","defaultValues","useFormContext","watchedFlsaStatus","useWatch","watchedStateWcCovered","currentJob","mode","minimumWages","handleFlsaChange","state","showTwoPercentStakeholder","useCompensation","useEffect","FlsaStatus","classificationOptions","key","paymentUnitOptions","PAY_PERIODS","isFlsaSelectionEnabled","isAdjustMinimumWageEnabled","rateErrorMessage","rateMinimumError","rateExemptThresholdError","FLSA_OVERTIME_SALARY_LIMIT","jsxs","Fragment","jsx","TextInputField","SelectField","Trans","NumberInputField","SwitchField","wage","CheckboxField","RadioGroupField","ComboBoxField"],"mappings":"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"}