@stssocialst-stp/fe-payroll 0.2.3 → 0.2.5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -41,6 +41,14 @@ var PhotoCameraOutlinedIcon = require('@material-ui/icons/PhotoCameraOutlined');
41
41
  var LinearProgress = require('@material-ui/core/LinearProgress');
42
42
  var DownloadIcon = require('@material-ui/icons/CloudDownload');
43
43
  var Chip = require('@material-ui/core/Chip');
44
+ var Paper = require('@material-ui/core/Paper');
45
+ var TextField = require('@material-ui/core/TextField');
46
+ var Box = require('@material-ui/core/Box');
47
+ var Divider = require('@material-ui/core/Divider');
48
+ var CircularProgress = require('@material-ui/core/CircularProgress');
49
+ var FormControlLabel = require('@material-ui/core/FormControlLabel');
50
+ var Checkbox = require('@material-ui/core/Checkbox');
51
+ var lab = require('@material-ui/lab');
44
52
 
45
53
  function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
46
54
 
@@ -74,10 +82,19 @@ var PhotoCameraOutlinedIcon__default = /*#__PURE__*/_interopDefaultLegacy(PhotoC
74
82
  var LinearProgress__default = /*#__PURE__*/_interopDefaultLegacy(LinearProgress);
75
83
  var DownloadIcon__default = /*#__PURE__*/_interopDefaultLegacy(DownloadIcon);
76
84
  var Chip__default = /*#__PURE__*/_interopDefaultLegacy(Chip);
85
+ var Paper__default = /*#__PURE__*/_interopDefaultLegacy(Paper);
86
+ var TextField__default = /*#__PURE__*/_interopDefaultLegacy(TextField);
87
+ var Box__default = /*#__PURE__*/_interopDefaultLegacy(Box);
88
+ var Divider__default = /*#__PURE__*/_interopDefaultLegacy(Divider);
89
+ var CircularProgress__default = /*#__PURE__*/_interopDefaultLegacy(CircularProgress);
90
+ var FormControlLabel__default = /*#__PURE__*/_interopDefaultLegacy(FormControlLabel);
91
+ var Checkbox__default = /*#__PURE__*/_interopDefaultLegacy(Checkbox);
77
92
 
78
93
  // TODO: Change to proper rights after BE implementation
79
94
  var RIGHT_PAYROLL_SEARCH = 202001;
80
95
  var RIGHT_PAYROLL_CREATE = 202002;
96
+ // TODO: Change to proper right after BE implementation
97
+ var RIGHT_BENEFICIARY_MANAGEMENT = 202010;
81
98
  var PAYROLL_PAYMENT_POINT_ROUTE = 'payroll.route.paymentPoint';
82
99
  var PAYROLL_PAYROLL_ROUTE = 'payroll.route.payroll';
83
100
  var RIGHT_PAYMENT_POINT_SEARCH = 201001;
@@ -722,7 +739,28 @@ var messages_en = {
722
739
  "payroll.bistp.status.pending": "Sent to Bank",
723
740
  "payroll.bistp.status.skippedNib": "No NIB",
724
741
  "payroll.bistp.status.sendFailed": "Send Failed",
725
- "payroll.bistp.progress": "BISTP Progress"
742
+ "payroll.bistp.progress": "BISTP Progress",
743
+ "payroll.route.beneficiariesManagement": "Beneficiary Management",
744
+ "payroll.beneficiaries.management.title": "Beneficiary Management",
745
+ "payroll.beneficiaries.management.noPermission": "You do not have permission to manage beneficiaries.",
746
+ "payroll.beneficiaries.backup.title": "Backup",
747
+ "payroll.beneficiaries.payrollId.optional": "Payroll UUID (optional)",
748
+ "payroll.beneficiaries.backup.button": "Download Backup",
749
+ "payroll.beneficiaries.limpar.title": "Clean Beneficiaries",
750
+ "payroll.beneficiaries.limpar.forceSkipFinancial": "Force / skip protected financial records",
751
+ "payroll.beneficiaries.limpar.dryRun": "Simulate (dry-run)",
752
+ "payroll.beneficiaries.limpar.execute": "Execute Cleanup",
753
+ "payroll.beneficiaries.limpar.confirm.title": "Confirm cleanup",
754
+ "payroll.beneficiaries.limpar.confirm.message": "This will soft-delete all active beneficiaries. This action cannot be undone without a previous backup.",
755
+ "payroll.beneficiaries.limpar.confirm.forceNote": "Protected RECONCILED / APPROVE_FOR_PAYMENT records will be skipped.",
756
+ "payroll.beneficiaries.cancel": "Cancel",
757
+ "payroll.beneficiaries.confirm": "Confirm",
758
+ "payroll.beneficiaries.import.title": "Import from Excel",
759
+ "payroll.beneficiaries.import.button": "Import",
760
+ "payroll.beneficiaries.restore.title": "Restore from Backup",
761
+ "payroll.beneficiaries.restore.button": "Restore",
762
+ "payroll.beneficiaries.dryRun": "Dry-run (simulate only)",
763
+ "payroll.beneficiaries.output": "Command output"
726
764
  };
727
765
 
728
766
  // eslint-disable-next-line import/prefer-default-export
@@ -959,7 +997,7 @@ var PaymentPointHeadPanel = /*#__PURE__*/function (_FormPanel) {
959
997
  }(feCore.FormPanel);
960
998
  var PaymentPointHeadPanel$1 = feCore.withModulesManager(reactIntl.injectIntl(styles$6.withTheme(styles$6.withStyles(styles$5)(PaymentPointHeadPanel))));
961
999
 
962
- var useStyles$e = styles$7.makeStyles(function (theme) {
1000
+ var useStyles$f = styles$7.makeStyles(function (theme) {
963
1001
  return {
964
1002
  page: theme.page,
965
1003
  lockedPage: theme.page.locked
@@ -980,7 +1018,7 @@ function PaymentPointPage(_ref) {
980
1018
  coreConfirm = _ref.coreConfirm,
981
1019
  clearConfirm = _ref.clearConfirm;
982
1020
  var modulesManager = feCore.useModulesManager();
983
- var classes = useStyles$e();
1021
+ var classes = useStyles$f();
984
1022
  var history = feCore.useHistory();
985
1023
  var _useTranslations = feCore.useTranslations(MODULE_NAME, modulesManager),
986
1024
  formatMessage = _useTranslations.formatMessage,
@@ -1107,7 +1145,7 @@ var mapStateToProps$h = function mapStateToProps(state, props) {
1107
1145
  };
1108
1146
  var PaymentPointPage$1 = reactRedux.connect(mapStateToProps$h, mapDispatchToProps$h)(PaymentPointPage);
1109
1147
 
1110
- var useStyles$d = styles$7.makeStyles(function (theme) {
1148
+ var useStyles$e = styles$7.makeStyles(function (theme) {
1111
1149
  return {
1112
1150
  form: {
1113
1151
  padding: '0 0 10px 0',
@@ -1122,7 +1160,7 @@ function PaymentPointFilter(_ref) {
1122
1160
  var _filters$isDeleted;
1123
1161
  var filters = _ref.filters,
1124
1162
  onChangeFilters = _ref.onChangeFilters;
1125
- var classes = useStyles$d();
1163
+ var classes = useStyles$e();
1126
1164
  var modulesManager = feCore.useModulesManager();
1127
1165
  var _useTranslations = feCore.useTranslations(MODULE_NAME, modulesManager),
1128
1166
  formatMessage = _useTranslations.formatMessage;
@@ -1394,7 +1432,7 @@ var mapDispatchToProps$g = function mapDispatchToProps(dispatch) {
1394
1432
  };
1395
1433
  var PaymentPointSearcher$1 = reactRedux.connect(mapStateToProps$g, mapDispatchToProps$g)(PaymentPointSearcher);
1396
1434
 
1397
- var useStyles$c = styles$7.makeStyles(function (theme) {
1435
+ var useStyles$d = styles$7.makeStyles(function (theme) {
1398
1436
  return {
1399
1437
  page: theme.page,
1400
1438
  fab: theme.fab
@@ -1402,7 +1440,7 @@ var useStyles$c = styles$7.makeStyles(function (theme) {
1402
1440
  });
1403
1441
  function PaymentPointsPage() {
1404
1442
  var modulesManager = feCore.useModulesManager();
1405
- var classes = useStyles$c();
1443
+ var classes = useStyles$d();
1406
1444
  var history = feCore.useHistory();
1407
1445
  var rights = reactRedux.useSelector(function (store) {
1408
1446
  var _store$core$user$i_us;
@@ -2200,7 +2238,7 @@ var mapDispatchToProps$d = function mapDispatchToProps(dispatch) {
2200
2238
  };
2201
2239
  var PayrollPaymentDataUploadDialog$1 = reactIntl.injectIntl(styles$6.withTheme(styles$6.withStyles(styles$1)(reactRedux.connect(mapStateToProps$d, mapDispatchToProps$d)(PayrollPaymentDataUploadDialog))));
2202
2240
 
2203
- var useStyles$b = styles$7.makeStyles(function (theme) {
2241
+ var useStyles$c = styles$7.makeStyles(function (theme) {
2204
2242
  return {
2205
2243
  form: {
2206
2244
  padding: 0
@@ -2214,7 +2252,7 @@ function BenefitConsumptionFilterModal(_ref) {
2214
2252
  var filters = _ref.filters,
2215
2253
  onChangeFilters = _ref.onChangeFilters;
2216
2254
  var modulesManager = feCore.useModulesManager();
2217
- var classes = useStyles$b();
2255
+ var classes = useStyles$c();
2218
2256
  var _useTranslations = feCore.useTranslations('payroll', modulesManager),
2219
2257
  formatMessage = _useTranslations.formatMessage;
2220
2258
  var debouncedOnChangeFilters = _debounce__default["default"](onChangeFilters, DEFAULT_DEBOUNCE_TIME);
@@ -2474,7 +2512,7 @@ var mapDispatchToProps$c = function mapDispatchToProps(dispatch) {
2474
2512
  var AdditionalFieldsDialog$1 = reactIntl.injectIntl(styles$6.withTheme(styles$6.withStyles(styles)(reactRedux.connect(mapStateToProps$c, mapDispatchToProps$c)(AdditionalFieldsDialog))));
2475
2513
 
2476
2514
  /* eslint-disable max-len */
2477
- var useStyles$a = styles$7.makeStyles(function () {
2515
+ var useStyles$b = styles$7.makeStyles(function () {
2478
2516
  return {
2479
2517
  topHeader: {
2480
2518
  display: 'flex',
@@ -2541,7 +2579,7 @@ var useStyles$a = styles$7.makeStyles(function () {
2541
2579
  var PayrollBenefitPrintTemplate = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
2542
2580
  var benefitAttachments = _ref.benefitAttachments;
2543
2581
  if (!benefitAttachments) return null;
2544
- var classes = useStyles$a();
2582
+ var classes = useStyles$b();
2545
2583
  var modulesManager = feCore.useModulesManager();
2546
2584
  var _useTranslations = feCore.useTranslations(modulesManager, MODULE_NAME),
2547
2585
  formatMessage = _useTranslations.formatMessage;
@@ -3086,6 +3124,16 @@ function PaymentApproveForPaymentDialog(_ref) {
3086
3124
  marginBottom: '15px'
3087
3125
  }
3088
3126
  }, formatMessage('payroll.summary.approveAndClose')), /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
3127
+ onClick: function onClick() {
3128
+ return makePaymentForPayrollCallback();
3129
+ },
3130
+ variant: "contained",
3131
+ color: "primary",
3132
+ style: {
3133
+ margin: '0 16px',
3134
+ marginBottom: '15px'
3135
+ }
3136
+ }, payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT ? formatMessage('payroll.bistp.submitPayment') : formatMessage('payroll.summary.makePayment')), /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
3089
3137
  onClick: function onClick() {
3090
3138
  return downloadPayrollData(payrollDetail.id, payrollDetail.name);
3091
3139
  },
@@ -3110,16 +3158,7 @@ function PaymentApproveForPaymentDialog(_ref) {
3110
3158
  "float": 'right',
3111
3159
  paddingRight: '16px'
3112
3160
  }
3113
- }, (payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_ONLINE_PAYMENT || payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT) && /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
3114
- onClick: function onClick() {
3115
- return makePaymentForPayrollCallback();
3116
- },
3117
- variant: "contained",
3118
- color: "primary",
3119
- style: {
3120
- margin: '0 16px'
3121
- }
3122
- }, payrollDetail.paymentMethod === PAYMENT_METHOD.STRATEGY_BISTP_PAYMENT ? formatMessage('payroll.bistp.submitPayment') : formatMessage('payroll.summary.makePayment')), /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
3161
+ }, /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
3123
3162
  onClick: handleClose,
3124
3163
  variant: "outlined",
3125
3164
  autoFocus: true,
@@ -3145,7 +3184,7 @@ var mapDispatchToProps$a = function mapDispatchToProps(dispatch) {
3145
3184
  };
3146
3185
  var PaymentApproveForPaymentSummary = reactRedux.connect(mapStateToProps$a, mapDispatchToProps$a)(PaymentApproveForPaymentDialog);
3147
3186
 
3148
- var useStyles$9 = styles$7.makeStyles(function (theme) {
3187
+ var useStyles$a = styles$7.makeStyles(function (theme) {
3149
3188
  return {
3150
3189
  paper: theme.paper.paper,
3151
3190
  tableTitle: theme.table.title,
@@ -3174,7 +3213,7 @@ function PayrollTab(_ref) {
3174
3213
  isInTask = _ref.isInTask,
3175
3214
  payroll = _ref.payroll,
3176
3215
  isPayrollFromFailedInvoices = _ref.isPayrollFromFailedInvoices;
3177
- var classes = useStyles$9();
3216
+ var classes = useStyles$a();
3178
3217
  var _useState = React.useState(BENEFIT_CONSUMPTION_LIST_TAB_VALUE),
3179
3218
  _useState2 = _slicedToArray__default["default"](_useState, 2),
3180
3219
  activeTab = _useState2[0],
@@ -3251,7 +3290,7 @@ function PayrollTab(_ref) {
3251
3290
 
3252
3291
  function ownKeys$1(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3253
3292
  function _objectSpread$1(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys$1(Object(t), !0).forEach(function (r) { _defineProperty__default["default"](e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys$1(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
3254
- var useStyles$8 = styles$7.makeStyles(function (theme) {
3293
+ var useStyles$9 = styles$7.makeStyles(function (theme) {
3255
3294
  return {
3256
3295
  page: theme.page
3257
3296
  };
@@ -3272,7 +3311,7 @@ function PayrollPage(_ref) {
3272
3311
  journalize = _ref.journalize,
3273
3312
  benefitPlanId = _ref.benefitPlanId;
3274
3313
  var modulesManager = feCore.useModulesManager();
3275
- var classes = useStyles$8();
3314
+ var classes = useStyles$9();
3276
3315
  var history = feCore.useHistory();
3277
3316
  var _useTranslations = feCore.useTranslations(MODULE_NAME, modulesManager),
3278
3317
  formatMessage = _useTranslations.formatMessage,
@@ -3435,7 +3474,7 @@ var mapStateToProps$9 = function mapStateToProps(state, props) {
3435
3474
  };
3436
3475
  var PayrollPage$1 = reactRedux.connect(mapStateToProps$9, mapDispatchToProps$9)(PayrollPage);
3437
3476
 
3438
- var useStyles$7 = styles$7.makeStyles(function (theme) {
3477
+ var useStyles$8 = styles$7.makeStyles(function (theme) {
3439
3478
  return {
3440
3479
  form: {
3441
3480
  padding: '0 0 10px 0',
@@ -3452,7 +3491,7 @@ function PayrollFilter(_ref) {
3452
3491
  onChangeFilters = _ref.onChangeFilters,
3453
3492
  _ref$statusReadOnly = _ref.statusReadOnly,
3454
3493
  statusReadOnly = _ref$statusReadOnly === void 0 ? false : _ref$statusReadOnly;
3455
- var classes = useStyles$7();
3494
+ var classes = useStyles$8();
3456
3495
  var modulesManager = feCore.useModulesManager();
3457
3496
  var _useTranslations = feCore.useTranslations(MODULE_NAME, modulesManager),
3458
3497
  formatMessage = _useTranslations.formatMessage;
@@ -3792,7 +3831,7 @@ var mapDispatchToProps$8 = function mapDispatchToProps(dispatch) {
3792
3831
  };
3793
3832
  var PayrollSearcher$1 = reactRedux.connect(mapStateToProps$8, mapDispatchToProps$8)(PayrollSearcher);
3794
3833
 
3795
- var useStyles$6 = styles$7.makeStyles(function (theme) {
3834
+ var useStyles$7 = styles$7.makeStyles(function (theme) {
3796
3835
  return {
3797
3836
  page: theme.page,
3798
3837
  fab: theme.fab
@@ -3800,7 +3839,7 @@ var useStyles$6 = styles$7.makeStyles(function (theme) {
3800
3839
  });
3801
3840
  function PayrollsPage() {
3802
3841
  var modulesManager = feCore.useModulesManager();
3803
- var classes = useStyles$6();
3842
+ var classes = useStyles$7();
3804
3843
  var history = feCore.useHistory();
3805
3844
  var rights = reactRedux.useSelector(function (store) {
3806
3845
  var _store$core$user$i_us;
@@ -4157,7 +4196,7 @@ var mapDispatchToProps$6 = function mapDispatchToProps(dispatch) {
4157
4196
  };
4158
4197
  var PayrollSearcherApproved$1 = reactRedux.connect(mapStateToProps$6, mapDispatchToProps$6)(PayrollSearcherApproved);
4159
4198
 
4160
- var useStyles$5 = styles$7.makeStyles(function (theme) {
4199
+ var useStyles$6 = styles$7.makeStyles(function (theme) {
4161
4200
  return {
4162
4201
  page: theme.page,
4163
4202
  fab: theme.fab
@@ -4165,7 +4204,7 @@ var useStyles$5 = styles$7.makeStyles(function (theme) {
4165
4204
  });
4166
4205
  function ApprovedPayrollsPage() {
4167
4206
  var modulesManager = feCore.useModulesManager();
4168
- var classes = useStyles$5();
4207
+ var classes = useStyles$6();
4169
4208
  var rights = reactRedux.useSelector(function (store) {
4170
4209
  var _store$core$user$i_us;
4171
4210
  return (_store$core$user$i_us = store.core.user.i_user.rights) !== null && _store$core$user$i_us !== void 0 ? _store$core$user$i_us : [];
@@ -4566,7 +4605,7 @@ var mapDispatchToProps$4 = function mapDispatchToProps(dispatch) {
4566
4605
  };
4567
4606
  var PayrollSearcherReconciled$1 = reactRedux.connect(mapStateToProps$4, mapDispatchToProps$4)(PayrollSearcherReconciled);
4568
4607
 
4569
- var useStyles$4 = styles$7.makeStyles(function (theme) {
4608
+ var useStyles$5 = styles$7.makeStyles(function (theme) {
4570
4609
  return {
4571
4610
  page: theme.page,
4572
4611
  fab: theme.fab
@@ -4574,7 +4613,7 @@ var useStyles$4 = styles$7.makeStyles(function (theme) {
4574
4613
  });
4575
4614
  function ReconciledPayrollsPage() {
4576
4615
  var modulesManager = feCore.useModulesManager();
4577
- var classes = useStyles$4();
4616
+ var classes = useStyles$5();
4578
4617
  var rights = reactRedux.useSelector(function (store) {
4579
4618
  var _store$core$user$i_us;
4580
4619
  return (_store$core$user$i_us = store.core.user.i_user.rights) !== null && _store$core$user$i_us !== void 0 ? _store$core$user$i_us : [];
@@ -4671,7 +4710,7 @@ function BenefitConsumptionStatusPicker(props) {
4671
4710
  });
4672
4711
  }
4673
4712
 
4674
- var useStyles$3 = styles$7.makeStyles(function (theme) {
4713
+ var useStyles$4 = styles$7.makeStyles(function (theme) {
4675
4714
  return {
4676
4715
  form: {
4677
4716
  padding: 0
@@ -4686,7 +4725,7 @@ function BenefitConsumptionPayrollFilter(_ref) {
4686
4725
  onChangeFilters = _ref.onChangeFilters,
4687
4726
  benefitPlan = _ref.benefitPlan;
4688
4727
  var modulesManager = feCore.useModulesManager();
4689
- var classes = useStyles$3();
4728
+ var classes = useStyles$4();
4690
4729
  var _useTranslations = feCore.useTranslations('payroll', modulesManager),
4691
4730
  formatMessage = _useTranslations.formatMessage;
4692
4731
  var debouncedOnChangeFilters = _debounce__default["default"](onChangeFilters, DEFAULT_DEBOUNCE_TIME);
@@ -5094,7 +5133,7 @@ var PayrollReconciliationTaskItemFormatters = function PayrollReconciliationTask
5094
5133
  return [];
5095
5134
  };
5096
5135
 
5097
- var useStyles$2 = styles$7.makeStyles(function (theme) {
5136
+ var useStyles$3 = styles$7.makeStyles(function (theme) {
5098
5137
  return {
5099
5138
  form: {
5100
5139
  padding: 0
@@ -5108,7 +5147,7 @@ function BenefitConsumptionFilter(_ref) {
5108
5147
  var filters = _ref.filters,
5109
5148
  onChangeFilters = _ref.onChangeFilters;
5110
5149
  var modulesManager = feCore.useModulesManager();
5111
- var classes = useStyles$2();
5150
+ var classes = useStyles$3();
5112
5151
  var _useTranslations = feCore.useTranslations('payroll', modulesManager),
5113
5152
  formatMessage = _useTranslations.formatMessage;
5114
5153
  var debouncedOnChangeFilters = _debounce__default["default"](onChangeFilters, DEFAULT_DEBOUNCE_TIME);
@@ -5251,7 +5290,7 @@ function BenefitConsumptionFilter(_ref) {
5251
5290
  }
5252
5291
 
5253
5292
  /* eslint-disable max-len */
5254
- var useStyles$1 = styles$7.makeStyles(function () {
5293
+ var useStyles$2 = styles$7.makeStyles(function () {
5255
5294
  return {
5256
5295
  topHeader: {
5257
5296
  display: 'flex',
@@ -5318,7 +5357,7 @@ var useStyles$1 = styles$7.makeStyles(function () {
5318
5357
  var PayrollPrintTemplate = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
5319
5358
  var benefitConsumptions = _ref.benefitConsumptions;
5320
5359
  if (!benefitConsumptions) return null;
5321
- var classes = useStyles$1();
5360
+ var classes = useStyles$2();
5322
5361
  var modulesManager = feCore.useModulesManager();
5323
5362
  var _useTranslations = feCore.useTranslations(modulesManager, MODULE_NAME),
5324
5363
  formatMessage = _useTranslations.formatMessage;
@@ -6137,7 +6176,7 @@ var mapDispatchToProps = function mapDispatchToProps(dispatch) {
6137
6176
  };
6138
6177
  var PayrollSearcherPending$1 = reactRedux.connect(mapStateToProps, mapDispatchToProps)(PayrollSearcherPending);
6139
6178
 
6140
- var useStyles = styles$7.makeStyles(function (theme) {
6179
+ var useStyles$1 = styles$7.makeStyles(function (theme) {
6141
6180
  return {
6142
6181
  page: theme.page,
6143
6182
  fab: theme.fab
@@ -6145,7 +6184,7 @@ var useStyles = styles$7.makeStyles(function (theme) {
6145
6184
  });
6146
6185
  function PendingPayrollsPage() {
6147
6186
  var modulesManager = feCore.useModulesManager();
6148
- var classes = useStyles();
6187
+ var classes = useStyles$1();
6149
6188
  var rights = reactRedux.useSelector(function (store) {
6150
6189
  var _store$core$user$i_us;
6151
6190
  return (_store$core$user$i_us = store.core.user.i_user.rights) !== null && _store$core$user$i_us !== void 0 ? _store$core$user$i_us : [];
@@ -6161,6 +6200,605 @@ function PendingPayrollsPage() {
6161
6200
  }));
6162
6201
  }
6163
6202
 
6203
+ var BASE = "".concat(feCore.baseApiUrl, "/payroll/beneficiarios");
6204
+ function buildHeaders() {
6205
+ return {
6206
+ 'Content-Type': 'application/json'
6207
+ };
6208
+ }
6209
+ function useBeneficiarios() {
6210
+ var _useState = React.useState(false),
6211
+ _useState2 = _slicedToArray__default["default"](_useState, 2),
6212
+ loading = _useState2[0],
6213
+ setLoading = _useState2[1];
6214
+ var _useState3 = React.useState(''),
6215
+ _useState4 = _slicedToArray__default["default"](_useState3, 2),
6216
+ output = _useState4[0],
6217
+ setOutput = _useState4[1];
6218
+ var _useState5 = React.useState(null),
6219
+ _useState6 = _slicedToArray__default["default"](_useState5, 2),
6220
+ error = _useState6[0],
6221
+ setError = _useState6[1];
6222
+ function request(_x) {
6223
+ return _request.apply(this, arguments);
6224
+ }
6225
+ function _request() {
6226
+ _request = _asyncToGenerator__default["default"](/*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee(path) {
6227
+ var _ref,
6228
+ _ref$multipart,
6229
+ multipart,
6230
+ _ref$body,
6231
+ body,
6232
+ init,
6233
+ response,
6234
+ data,
6235
+ contentType,
6236
+ _data,
6237
+ message,
6238
+ _args = arguments,
6239
+ _t;
6240
+ return _regeneratorRuntime__default["default"].wrap(function (_context) {
6241
+ while (1) switch (_context.prev = _context.next) {
6242
+ case 0:
6243
+ _ref = _args.length > 1 && _args[1] !== undefined ? _args[1] : {}, _ref$multipart = _ref.multipart, multipart = _ref$multipart === void 0 ? false : _ref$multipart, _ref$body = _ref.body, body = _ref$body === void 0 ? null : _ref$body;
6244
+ setLoading(true);
6245
+ setError(null);
6246
+ _context.prev = 1;
6247
+ init = {
6248
+ method: 'POST',
6249
+ credentials: 'same-origin'
6250
+ };
6251
+ if (multipart) {
6252
+ init.body = body;
6253
+ } else {
6254
+ init.headers = buildHeaders();
6255
+ if (body) init.body = JSON.stringify(body);
6256
+ }
6257
+ _context.next = 2;
6258
+ return fetch("".concat(BASE).concat(path), init);
6259
+ case 2:
6260
+ response = _context.sent;
6261
+ data = null;
6262
+ contentType = response.headers.get('content-type') || '';
6263
+ if (!contentType.includes('application/json')) {
6264
+ _context.next = 4;
6265
+ break;
6266
+ }
6267
+ _context.next = 3;
6268
+ return response.json();
6269
+ case 3:
6270
+ data = _context.sent;
6271
+ case 4:
6272
+ if (response.ok) {
6273
+ _context.next = 5;
6274
+ break;
6275
+ }
6276
+ message = ((_data = data) === null || _data === void 0 ? void 0 : _data.message) || "HTTP ".concat(response.status);
6277
+ setError(message);
6278
+ return _context.abrupt("return", {
6279
+ ok: false,
6280
+ message: message,
6281
+ data: data
6282
+ });
6283
+ case 5:
6284
+ return _context.abrupt("return", {
6285
+ ok: true,
6286
+ data: data
6287
+ });
6288
+ case 6:
6289
+ _context.prev = 6;
6290
+ _t = _context["catch"](1);
6291
+ setError(_t.message);
6292
+ return _context.abrupt("return", {
6293
+ ok: false,
6294
+ message: _t.message
6295
+ });
6296
+ case 7:
6297
+ _context.prev = 7;
6298
+ setLoading(false);
6299
+ return _context.finish(7);
6300
+ case 8:
6301
+ case "end":
6302
+ return _context.stop();
6303
+ }
6304
+ }, _callee, null, [[1, 6, 7, 8]]);
6305
+ }));
6306
+ return _request.apply(this, arguments);
6307
+ }
6308
+ function backup() {
6309
+ return _backup.apply(this, arguments);
6310
+ }
6311
+ function _backup() {
6312
+ _backup = _asyncToGenerator__default["default"](/*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee2() {
6313
+ var payrollId,
6314
+ _yield$request,
6315
+ ok,
6316
+ data,
6317
+ blob,
6318
+ a,
6319
+ _args2 = arguments;
6320
+ return _regeneratorRuntime__default["default"].wrap(function (_context2) {
6321
+ while (1) switch (_context2.prev = _context2.next) {
6322
+ case 0:
6323
+ payrollId = _args2.length > 0 && _args2[0] !== undefined ? _args2[0] : null;
6324
+ _context2.next = 1;
6325
+ return request('/backup/', {
6326
+ body: payrollId ? {
6327
+ payroll_id: payrollId
6328
+ } : {}
6329
+ });
6330
+ case 1:
6331
+ _yield$request = _context2.sent;
6332
+ ok = _yield$request.ok;
6333
+ data = _yield$request.data;
6334
+ if (ok) {
6335
+ blob = new Blob([JSON.stringify(data, null, 2)], {
6336
+ type: 'application/json'
6337
+ });
6338
+ a = document.createElement('a');
6339
+ a.href = URL.createObjectURL(blob);
6340
+ a.download = "backup_beneficiarios_".concat(new Date().toISOString().slice(0, 19).replace(/:/g, '-'), ".json");
6341
+ document.body.appendChild(a);
6342
+ a.click();
6343
+ document.body.removeChild(a);
6344
+ URL.revokeObjectURL(a.href);
6345
+ setOutput("Backup conclu\xEDdo: ".concat(JSON.stringify(data.counts)));
6346
+ }
6347
+ return _context2.abrupt("return", {
6348
+ ok: ok,
6349
+ data: data
6350
+ });
6351
+ case 2:
6352
+ case "end":
6353
+ return _context2.stop();
6354
+ }
6355
+ }, _callee2);
6356
+ }));
6357
+ return _backup.apply(this, arguments);
6358
+ }
6359
+ function limpar() {
6360
+ return _limpar.apply(this, arguments);
6361
+ }
6362
+ function _limpar() {
6363
+ _limpar = _asyncToGenerator__default["default"](/*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee3() {
6364
+ var _ref2,
6365
+ _ref2$dryRun,
6366
+ dryRun,
6367
+ _ref2$forceSkipFinanc,
6368
+ forceSkipFinancial,
6369
+ _yield$request2,
6370
+ ok,
6371
+ data,
6372
+ _args3 = arguments;
6373
+ return _regeneratorRuntime__default["default"].wrap(function (_context3) {
6374
+ while (1) switch (_context3.prev = _context3.next) {
6375
+ case 0:
6376
+ _ref2 = _args3.length > 0 && _args3[0] !== undefined ? _args3[0] : {}, _ref2$dryRun = _ref2.dryRun, dryRun = _ref2$dryRun === void 0 ? true : _ref2$dryRun, _ref2$forceSkipFinanc = _ref2.forceSkipFinancial, forceSkipFinancial = _ref2$forceSkipFinanc === void 0 ? false : _ref2$forceSkipFinanc;
6377
+ _context3.next = 1;
6378
+ return request('/limpar/', {
6379
+ body: {
6380
+ username: 'admin',
6381
+ dry_run: dryRun,
6382
+ force_skip_financial: forceSkipFinancial
6383
+ }
6384
+ });
6385
+ case 1:
6386
+ _yield$request2 = _context3.sent;
6387
+ ok = _yield$request2.ok;
6388
+ data = _yield$request2.data;
6389
+ if (ok) setOutput(data.output);
6390
+ return _context3.abrupt("return", {
6391
+ ok: ok,
6392
+ data: data
6393
+ });
6394
+ case 2:
6395
+ case "end":
6396
+ return _context3.stop();
6397
+ }
6398
+ }, _callee3);
6399
+ }));
6400
+ return _limpar.apply(this, arguments);
6401
+ }
6402
+ function importar(_x2) {
6403
+ return _importar.apply(this, arguments);
6404
+ }
6405
+ function _importar() {
6406
+ _importar = _asyncToGenerator__default["default"](/*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee4(file) {
6407
+ var _ref3,
6408
+ _ref3$dryRun,
6409
+ dryRun,
6410
+ payrollId,
6411
+ benefitPlanId,
6412
+ benefitType,
6413
+ sheet,
6414
+ fd,
6415
+ _yield$request3,
6416
+ ok,
6417
+ data,
6418
+ _args4 = arguments;
6419
+ return _regeneratorRuntime__default["default"].wrap(function (_context4) {
6420
+ while (1) switch (_context4.prev = _context4.next) {
6421
+ case 0:
6422
+ _ref3 = _args4.length > 1 && _args4[1] !== undefined ? _args4[1] : {}, _ref3$dryRun = _ref3.dryRun, dryRun = _ref3$dryRun === void 0 ? false : _ref3$dryRun, payrollId = _ref3.payrollId, benefitPlanId = _ref3.benefitPlanId, benefitType = _ref3.benefitType, sheet = _ref3.sheet;
6423
+ fd = new FormData();
6424
+ fd.append('file', file);
6425
+ fd.append('username', 'admin');
6426
+ fd.append('dry_run', String(dryRun));
6427
+ if (payrollId) fd.append('payroll_id', payrollId);
6428
+ if (benefitPlanId) fd.append('benefit_plan_id', benefitPlanId);
6429
+ if (benefitType) fd.append('benefit_type', benefitType);
6430
+ if (sheet) fd.append('sheet', sheet);
6431
+ _context4.next = 1;
6432
+ return request('/importar/', {
6433
+ multipart: true,
6434
+ body: fd
6435
+ });
6436
+ case 1:
6437
+ _yield$request3 = _context4.sent;
6438
+ ok = _yield$request3.ok;
6439
+ data = _yield$request3.data;
6440
+ if (ok) setOutput(data.output);
6441
+ return _context4.abrupt("return", {
6442
+ ok: ok,
6443
+ data: data
6444
+ });
6445
+ case 2:
6446
+ case "end":
6447
+ return _context4.stop();
6448
+ }
6449
+ }, _callee4);
6450
+ }));
6451
+ return _importar.apply(this, arguments);
6452
+ }
6453
+ function restore(_x3) {
6454
+ return _restore.apply(this, arguments);
6455
+ }
6456
+ function _restore() {
6457
+ _restore = _asyncToGenerator__default["default"](/*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee5(file) {
6458
+ var _ref4,
6459
+ _ref4$dryRun,
6460
+ dryRun,
6461
+ _ref4$skipPhases,
6462
+ skipPhases,
6463
+ fd,
6464
+ _yield$request4,
6465
+ ok,
6466
+ data,
6467
+ _args5 = arguments;
6468
+ return _regeneratorRuntime__default["default"].wrap(function (_context5) {
6469
+ while (1) switch (_context5.prev = _context5.next) {
6470
+ case 0:
6471
+ _ref4 = _args5.length > 1 && _args5[1] !== undefined ? _args5[1] : {}, _ref4$dryRun = _ref4.dryRun, dryRun = _ref4$dryRun === void 0 ? true : _ref4$dryRun, _ref4$skipPhases = _ref4.skipPhases, skipPhases = _ref4$skipPhases === void 0 ? [] : _ref4$skipPhases;
6472
+ fd = new FormData();
6473
+ fd.append('file', file);
6474
+ fd.append('username', 'admin');
6475
+ fd.append('dry_run', String(dryRun));
6476
+ if (skipPhases.length) fd.append('skip_phases', skipPhases.join(','));
6477
+ _context5.next = 1;
6478
+ return request('/restore/', {
6479
+ multipart: true,
6480
+ body: fd
6481
+ });
6482
+ case 1:
6483
+ _yield$request4 = _context5.sent;
6484
+ ok = _yield$request4.ok;
6485
+ data = _yield$request4.data;
6486
+ if (ok) setOutput(data.output);
6487
+ return _context5.abrupt("return", {
6488
+ ok: ok,
6489
+ data: data
6490
+ });
6491
+ case 2:
6492
+ case "end":
6493
+ return _context5.stop();
6494
+ }
6495
+ }, _callee5);
6496
+ }));
6497
+ return _restore.apply(this, arguments);
6498
+ }
6499
+ return {
6500
+ backup: backup,
6501
+ limpar: limpar,
6502
+ importar: importar,
6503
+ restore: restore,
6504
+ loading: loading,
6505
+ output: output,
6506
+ error: error,
6507
+ setOutput: setOutput,
6508
+ setError: setError
6509
+ };
6510
+ }
6511
+
6512
+ var useStyles = styles$7.makeStyles(function (theme) {
6513
+ return {
6514
+ page: theme.page,
6515
+ card: {
6516
+ padding: theme.spacing(3),
6517
+ marginBottom: theme.spacing(3)
6518
+ },
6519
+ sectionTitle: {
6520
+ marginBottom: theme.spacing(2)
6521
+ },
6522
+ field: {
6523
+ marginBottom: theme.spacing(2)
6524
+ },
6525
+ output: {
6526
+ marginTop: theme.spacing(2),
6527
+ padding: theme.spacing(2),
6528
+ backgroundColor: '#1e1e1e',
6529
+ color: '#d4d4d4',
6530
+ fontFamily: 'monospace',
6531
+ fontSize: 12,
6532
+ whiteSpace: 'pre-wrap',
6533
+ maxHeight: 320,
6534
+ overflow: 'auto',
6535
+ borderRadius: 4
6536
+ },
6537
+ actions: {
6538
+ display: 'flex',
6539
+ gap: theme.spacing(1),
6540
+ flexWrap: 'wrap'
6541
+ }
6542
+ };
6543
+ });
6544
+ function Card(_ref) {
6545
+ var title = _ref.title,
6546
+ children = _ref.children,
6547
+ classes = _ref.classes;
6548
+ return /*#__PURE__*/React__default["default"].createElement(Paper__default["default"], {
6549
+ className: classes.card
6550
+ }, /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
6551
+ variant: "h6",
6552
+ className: classes.sectionTitle
6553
+ }, title), children);
6554
+ }
6555
+ function BeneficiaryManagementPage() {
6556
+ var classes = useStyles();
6557
+ var modulesManager = feCore.useModulesManager();
6558
+ var _useTranslations = feCore.useTranslations(MODULE_NAME, modulesManager),
6559
+ formatMessage = _useTranslations.formatMessage;
6560
+ var rights = reactRedux.useSelector(function (store) {
6561
+ var _store$core$user$i_us, _store$core$user;
6562
+ return (_store$core$user$i_us = (_store$core$user = store.core.user) === null || _store$core$user === void 0 || (_store$core$user = _store$core$user.i_user) === null || _store$core$user === void 0 ? void 0 : _store$core$user.rights) !== null && _store$core$user$i_us !== void 0 ? _store$core$user$i_us : [];
6563
+ });
6564
+ var _useBeneficiarios = useBeneficiarios(),
6565
+ backup = _useBeneficiarios.backup,
6566
+ limpar = _useBeneficiarios.limpar,
6567
+ importar = _useBeneficiarios.importar,
6568
+ restore = _useBeneficiarios.restore,
6569
+ loading = _useBeneficiarios.loading,
6570
+ output = _useBeneficiarios.output,
6571
+ error = _useBeneficiarios.error,
6572
+ setError = _useBeneficiarios.setError;
6573
+ var _useState = React.useState(''),
6574
+ _useState2 = _slicedToArray__default["default"](_useState, 2);
6575
+ _useState2[0];
6576
+ _useState2[1];
6577
+ var _useState3 = React.useState(''),
6578
+ _useState4 = _slicedToArray__default["default"](_useState3, 2),
6579
+ backupPayrollId = _useState4[0],
6580
+ setBackupPayrollId = _useState4[1];
6581
+ var _useState5 = React.useState(false),
6582
+ _useState6 = _slicedToArray__default["default"](_useState5, 2),
6583
+ limparForce = _useState6[0],
6584
+ setLimparForce = _useState6[1];
6585
+ var _useState7 = React.useState(false),
6586
+ _useState8 = _slicedToArray__default["default"](_useState7, 2),
6587
+ confirmLimpar = _useState8[0],
6588
+ setConfirmLimpar = _useState8[1];
6589
+ var _useState9 = React.useState(null),
6590
+ _useState0 = _slicedToArray__default["default"](_useState9, 2),
6591
+ importFile = _useState0[0],
6592
+ setImportFile = _useState0[1];
6593
+ var _useState1 = React.useState(''),
6594
+ _useState10 = _slicedToArray__default["default"](_useState1, 2),
6595
+ importPayrollId = _useState10[0],
6596
+ setImportPayrollId = _useState10[1];
6597
+ var _useState11 = React.useState(''),
6598
+ _useState12 = _slicedToArray__default["default"](_useState11, 2),
6599
+ importBenefitPlanId = _useState12[0],
6600
+ setImportBenefitPlanId = _useState12[1];
6601
+ var _useState13 = React.useState(false),
6602
+ _useState14 = _slicedToArray__default["default"](_useState13, 2),
6603
+ importDryRun = _useState14[0],
6604
+ setImportDryRun = _useState14[1];
6605
+ var _useState15 = React.useState(null),
6606
+ _useState16 = _slicedToArray__default["default"](_useState15, 2),
6607
+ restoreFile = _useState16[0],
6608
+ setRestoreFile = _useState16[1];
6609
+ var _useState17 = React.useState(true),
6610
+ _useState18 = _slicedToArray__default["default"](_useState17, 2),
6611
+ restoreDryRun = _useState18[0],
6612
+ setRestoreDryRun = _useState18[1];
6613
+ if (!rights.includes(RIGHT_BENEFICIARY_MANAGEMENT)) {
6614
+ return /*#__PURE__*/React__default["default"].createElement("div", {
6615
+ className: classes.page
6616
+ }, /*#__PURE__*/React__default["default"].createElement(feCore.Helmet, {
6617
+ title: formatMessage('payroll.beneficiaries.management.title')
6618
+ }), /*#__PURE__*/React__default["default"].createElement(lab.Alert, {
6619
+ severity: "warning"
6620
+ }, formatMessage('payroll.beneficiaries.management.noPermission')));
6621
+ }
6622
+ return /*#__PURE__*/React__default["default"].createElement("div", {
6623
+ className: classes.page
6624
+ }, /*#__PURE__*/React__default["default"].createElement(feCore.Helmet, {
6625
+ title: formatMessage('payroll.beneficiaries.management.title')
6626
+ }), /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
6627
+ variant: "h5",
6628
+ className: classes.sectionTitle
6629
+ }, formatMessage('payroll.beneficiaries.management.title')), error && /*#__PURE__*/React__default["default"].createElement(lab.Alert, {
6630
+ severity: "error",
6631
+ onClose: function onClose() {
6632
+ return setError(null);
6633
+ },
6634
+ className: classes.field
6635
+ }, error), /*#__PURE__*/React__default["default"].createElement(Card, {
6636
+ title: formatMessage('payroll.beneficiaries.backup.title'),
6637
+ classes: classes
6638
+ }, /*#__PURE__*/React__default["default"].createElement(TextField__default["default"], {
6639
+ className: classes.field,
6640
+ fullWidth: true,
6641
+ label: formatMessage('payroll.beneficiaries.payrollId.optional'),
6642
+ value: backupPayrollId,
6643
+ onChange: function onChange(e) {
6644
+ return setBackupPayrollId(e.target.value);
6645
+ }
6646
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
6647
+ className: classes.actions
6648
+ }, /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
6649
+ variant: "contained",
6650
+ color: "primary",
6651
+ disabled: loading,
6652
+ onClick: function onClick() {
6653
+ return backup(backupPayrollId || null);
6654
+ }
6655
+ }, formatMessage('payroll.beneficiaries.backup.button')))), /*#__PURE__*/React__default["default"].createElement(Card, {
6656
+ title: formatMessage('payroll.beneficiaries.limpar.title'),
6657
+ classes: classes
6658
+ }, /*#__PURE__*/React__default["default"].createElement(FormControlLabel__default["default"], {
6659
+ control: /*#__PURE__*/React__default["default"].createElement(Checkbox__default["default"], {
6660
+ checked: limparForce,
6661
+ onChange: function onChange(e) {
6662
+ return setLimparForce(e.target.checked);
6663
+ }
6664
+ }),
6665
+ label: formatMessage('payroll.beneficiaries.limpar.forceSkipFinancial')
6666
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
6667
+ className: classes.actions
6668
+ }, /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
6669
+ variant: "outlined",
6670
+ disabled: loading,
6671
+ onClick: function onClick() {
6672
+ return limpar({
6673
+ dryRun: true,
6674
+ forceSkipFinancial: limparForce
6675
+ });
6676
+ }
6677
+ }, formatMessage('payroll.beneficiaries.limpar.dryRun')), /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
6678
+ variant: "contained",
6679
+ color: "secondary",
6680
+ disabled: loading,
6681
+ onClick: function onClick() {
6682
+ return setConfirmLimpar(true);
6683
+ }
6684
+ }, formatMessage('payroll.beneficiaries.limpar.execute'))), /*#__PURE__*/React__default["default"].createElement(Dialog__default["default"], {
6685
+ open: confirmLimpar,
6686
+ onClose: function onClose() {
6687
+ return setConfirmLimpar(false);
6688
+ }
6689
+ }, /*#__PURE__*/React__default["default"].createElement(DialogTitle__default["default"], null, formatMessage('payroll.beneficiaries.limpar.confirm.title')), /*#__PURE__*/React__default["default"].createElement(DialogContent__default["default"], null, /*#__PURE__*/React__default["default"].createElement(DialogContentText__default["default"], null, formatMessage('payroll.beneficiaries.limpar.confirm.message'), limparForce && " ".concat(formatMessage('payroll.beneficiaries.limpar.confirm.forceNote')))), /*#__PURE__*/React__default["default"].createElement(DialogActions__default["default"], null, /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
6690
+ onClick: function onClick() {
6691
+ return setConfirmLimpar(false);
6692
+ }
6693
+ }, formatMessage('payroll.beneficiaries.cancel')), /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
6694
+ color: "secondary",
6695
+ variant: "contained",
6696
+ onClick: /*#__PURE__*/_asyncToGenerator__default["default"](/*#__PURE__*/_regeneratorRuntime__default["default"].mark(function _callee() {
6697
+ return _regeneratorRuntime__default["default"].wrap(function (_context) {
6698
+ while (1) switch (_context.prev = _context.next) {
6699
+ case 0:
6700
+ setConfirmLimpar(false);
6701
+ _context.next = 1;
6702
+ return limpar({
6703
+ dryRun: false,
6704
+ forceSkipFinancial: limparForce
6705
+ });
6706
+ case 1:
6707
+ case "end":
6708
+ return _context.stop();
6709
+ }
6710
+ }, _callee);
6711
+ }))
6712
+ }, formatMessage('payroll.beneficiaries.confirm'))))), /*#__PURE__*/React__default["default"].createElement(Card, {
6713
+ title: formatMessage('payroll.beneficiaries.import.title'),
6714
+ classes: classes
6715
+ }, /*#__PURE__*/React__default["default"].createElement("input", {
6716
+ className: classes.field,
6717
+ type: "file",
6718
+ accept: ".xlsx",
6719
+ onChange: function onChange(e) {
6720
+ return setImportFile(e.target.files[0]);
6721
+ }
6722
+ }), /*#__PURE__*/React__default["default"].createElement(TextField__default["default"], {
6723
+ className: classes.field,
6724
+ fullWidth: true,
6725
+ label: "Payroll UUID",
6726
+ value: importPayrollId,
6727
+ onChange: function onChange(e) {
6728
+ return setImportPayrollId(e.target.value);
6729
+ }
6730
+ }), /*#__PURE__*/React__default["default"].createElement(TextField__default["default"], {
6731
+ className: classes.field,
6732
+ fullWidth: true,
6733
+ label: "Benefit Plan UUID",
6734
+ value: importBenefitPlanId,
6735
+ onChange: function onChange(e) {
6736
+ return setImportBenefitPlanId(e.target.value);
6737
+ }
6738
+ }), /*#__PURE__*/React__default["default"].createElement(FormControlLabel__default["default"], {
6739
+ control: /*#__PURE__*/React__default["default"].createElement(Checkbox__default["default"], {
6740
+ checked: importDryRun,
6741
+ onChange: function onChange(e) {
6742
+ return setImportDryRun(e.target.checked);
6743
+ }
6744
+ }),
6745
+ label: formatMessage('payroll.beneficiaries.dryRun')
6746
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
6747
+ className: classes.actions
6748
+ }, /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
6749
+ variant: "contained",
6750
+ color: "primary",
6751
+ disabled: loading || !importFile,
6752
+ onClick: function onClick() {
6753
+ return importar(importFile, {
6754
+ dryRun: importDryRun,
6755
+ payrollId: importPayrollId || null,
6756
+ benefitPlanId: importBenefitPlanId || null
6757
+ });
6758
+ }
6759
+ }, formatMessage('payroll.beneficiaries.import.button')))), /*#__PURE__*/React__default["default"].createElement(Card, {
6760
+ title: formatMessage('payroll.beneficiaries.restore.title'),
6761
+ classes: classes
6762
+ }, /*#__PURE__*/React__default["default"].createElement("input", {
6763
+ className: classes.field,
6764
+ type: "file",
6765
+ accept: ".json",
6766
+ onChange: function onChange(e) {
6767
+ return setRestoreFile(e.target.files[0]);
6768
+ }
6769
+ }), /*#__PURE__*/React__default["default"].createElement(FormControlLabel__default["default"], {
6770
+ control: /*#__PURE__*/React__default["default"].createElement(Checkbox__default["default"], {
6771
+ checked: restoreDryRun,
6772
+ onChange: function onChange(e) {
6773
+ return setRestoreDryRun(e.target.checked);
6774
+ }
6775
+ }),
6776
+ label: formatMessage('payroll.beneficiaries.dryRun')
6777
+ }), /*#__PURE__*/React__default["default"].createElement("div", {
6778
+ className: classes.actions
6779
+ }, /*#__PURE__*/React__default["default"].createElement(Button__default["default"], {
6780
+ variant: "contained",
6781
+ color: "primary",
6782
+ disabled: loading || !restoreFile,
6783
+ onClick: function onClick() {
6784
+ return restore(restoreFile, {
6785
+ dryRun: restoreDryRun
6786
+ });
6787
+ }
6788
+ }, formatMessage('payroll.beneficiaries.restore.button')))), output && /*#__PURE__*/React__default["default"].createElement(Paper__default["default"], {
6789
+ className: classes.card
6790
+ }, /*#__PURE__*/React__default["default"].createElement(Typography__default["default"], {
6791
+ variant: "subtitle1",
6792
+ className: classes.sectionTitle
6793
+ }, formatMessage('payroll.beneficiaries.output')), /*#__PURE__*/React__default["default"].createElement(Divider__default["default"], {
6794
+ className: classes.field
6795
+ }), loading && /*#__PURE__*/React__default["default"].createElement(CircularProgress__default["default"], {
6796
+ size: 18
6797
+ }), /*#__PURE__*/React__default["default"].createElement(Box__default["default"], {
6798
+ className: classes.output
6799
+ }, output)));
6800
+ }
6801
+
6164
6802
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
6165
6803
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty__default["default"](e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
6166
6804
  var ROUTE_PAYMENT_POINTS = 'paymentPoints';
@@ -6169,6 +6807,7 @@ var ROUTE_PAYROLLS = 'payrolls';
6169
6807
  var ROUTE_PAYROLLS_APPROVED = 'payrollsApproved';
6170
6808
  var ROUTE_PAYROLLS_PENDING = 'payrollsPending';
6171
6809
  var ROUTE_PAYROLLS_RECONCILED = 'payrollsReconciled';
6810
+ var ROUTE_BENEFICIARIES_MANAGEMENT = 'beneficiariesManagement';
6172
6811
  var ROUTE_PAYROLL = 'payrolls/payroll';
6173
6812
  var DEFAULT_CONFIG = {
6174
6813
  translations: [{
@@ -6197,6 +6836,9 @@ var DEFAULT_CONFIG = {
6197
6836
  }, {
6198
6837
  key: 'payroll.route.payrollsReconciled',
6199
6838
  ref: ROUTE_PAYROLLS_RECONCILED
6839
+ }, {
6840
+ key: 'payroll.route.beneficiariesManagement',
6841
+ ref: ROUTE_BENEFICIARIES_MANAGEMENT
6200
6842
  }, {
6201
6843
  key: 'payroll.route.payroll',
6202
6844
  ref: ROUTE_PAYROLL
@@ -6231,6 +6873,9 @@ var DEFAULT_CONFIG = {
6231
6873
  }, {
6232
6874
  path: ROUTE_PAYROLLS_RECONCILED,
6233
6875
  component: ReconciledPayrollsPage
6876
+ }, {
6877
+ path: ROUTE_BENEFICIARIES_MANAGEMENT,
6878
+ component: BeneficiaryManagementPage
6234
6879
  }, {
6235
6880
  path: "".concat(ROUTE_PAYROLL, "/:payroll_uuid?/:createPayrollFromFailedInvoices?/:benefitPlanId?"),
6236
6881
  component: PayrollPage$1
@@ -6290,6 +6935,17 @@ var DEFAULT_CONFIG = {
6290
6935
  return rights.includes(RIGHT_PAYROLL_SEARCH);
6291
6936
  },
6292
6937
  id: 'legalAndFinance.payrollsReconciled'
6938
+ }, {
6939
+ text: /*#__PURE__*/React__default["default"].createElement(feCore.FormattedMessage, {
6940
+ module: "payroll",
6941
+ id: "payroll.route.beneficiariesManagement"
6942
+ }),
6943
+ icon: /*#__PURE__*/React__default["default"].createElement(MonetizationOnIcon__default["default"], null),
6944
+ route: "/".concat(ROUTE_BENEFICIARIES_MANAGEMENT),
6945
+ filter: function filter(rights) {
6946
+ return rights.includes(RIGHT_BENEFICIARY_MANAGEMENT);
6947
+ },
6948
+ id: 'legalAndFinance.beneficiariesManagement'
6293
6949
  }],
6294
6950
  'payroll.TabPanel.label': [BenefitConsumptionsTabLabel, PayrollTaskTabLabel, PayrollPaymentFilesTabLabel],
6295
6951
  'payroll.TabPanel.panel': [BenefitConsumptionsTabPanel, PayrollTaskTabPanel, PayrollPaymentFilesTabPanel],