@bigbinary/neeto-team-members-frontend 5.0.21 → 5.0.23

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 (78) hide show
  1. package/app/javascript/src/translations/ar.json +4 -2
  2. package/app/javascript/src/translations/bg.json +4 -2
  3. package/app/javascript/src/translations/ca.json +4 -2
  4. package/app/javascript/src/translations/cs.json +4 -2
  5. package/app/javascript/src/translations/da.json +4 -2
  6. package/app/javascript/src/translations/de.json +4 -2
  7. package/app/javascript/src/translations/es-MX.json +4 -2
  8. package/app/javascript/src/translations/es.json +4 -2
  9. package/app/javascript/src/translations/et.json +4 -2
  10. package/app/javascript/src/translations/fi.json +4 -2
  11. package/app/javascript/src/translations/fil.json +4 -2
  12. package/app/javascript/src/translations/fr.json +4 -2
  13. package/app/javascript/src/translations/he.json +4 -2
  14. package/app/javascript/src/translations/hi.json +4 -2
  15. package/app/javascript/src/translations/hr.json +4 -2
  16. package/app/javascript/src/translations/hu.json +4 -2
  17. package/app/javascript/src/translations/id.json +4 -2
  18. package/app/javascript/src/translations/it.json +4 -2
  19. package/app/javascript/src/translations/ja.json +4 -2
  20. package/app/javascript/src/translations/ko.json +4 -2
  21. package/app/javascript/src/translations/nl.json +4 -2
  22. package/app/javascript/src/translations/pl.json +4 -2
  23. package/app/javascript/src/translations/pt-BR.json +4 -2
  24. package/app/javascript/src/translations/pt.json +4 -2
  25. package/app/javascript/src/translations/ro.json +4 -2
  26. package/app/javascript/src/translations/ru.json +4 -2
  27. package/app/javascript/src/translations/sk.json +4 -2
  28. package/app/javascript/src/translations/sl.json +4 -2
  29. package/app/javascript/src/translations/sv.json +4 -2
  30. package/app/javascript/src/translations/th.json +4 -2
  31. package/app/javascript/src/translations/tr.json +4 -2
  32. package/app/javascript/src/translations/uk.json +4 -2
  33. package/app/javascript/src/translations/vi.json +4 -2
  34. package/app/javascript/src/translations/zh-CN.json +4 -2
  35. package/app/javascript/src/translations/zh-TW.json +4 -2
  36. package/dist/{Permissions-B_03wP2E.js → Permissions-Ceuhkolc.js} +20 -12
  37. package/dist/{Permissions-B_03wP2E.js.map → Permissions-Ceuhkolc.js.map} +1 -1
  38. package/dist/{ProfileImage-NrUFZWFQ.js → ProfileImage-DLfKHCcF.js} +27 -16
  39. package/dist/{ProfileImage-NrUFZWFQ.js.map → ProfileImage-DLfKHCcF.js.map} +1 -1
  40. package/dist/{RolesRadioGroup-BCrw7ji3.js → RolesRadioGroup-C3dcGoEC.js} +30 -18
  41. package/dist/{RolesRadioGroup-BCrw7ji3.js.map → RolesRadioGroup-C3dcGoEC.js.map} +1 -1
  42. package/dist/cjs/Groups.js +83 -57
  43. package/dist/cjs/Groups.js.map +1 -1
  44. package/dist/cjs/ManageMember.js +5 -5
  45. package/dist/cjs/MembersDropdown.js +22 -11
  46. package/dist/cjs/MembersDropdown.js.map +1 -1
  47. package/dist/cjs/MembersInvite.js +28 -16
  48. package/dist/cjs/MembersInvite.js.map +1 -1
  49. package/dist/cjs/Permissions.js +1 -1
  50. package/dist/cjs/Profile.js +76 -53
  51. package/dist/cjs/Profile.js.map +1 -1
  52. package/dist/cjs/Roles.js +79 -49
  53. package/dist/cjs/Roles.js.map +1 -1
  54. package/dist/cjs/RolesRadioGroup.js +1 -1
  55. package/dist/cjs/TeamMembers.js +90 -65
  56. package/dist/cjs/TeamMembers.js.map +1 -1
  57. package/dist/cjs/TeamsAndMembersDropdown.js +29 -16
  58. package/dist/cjs/TeamsAndMembersDropdown.js.map +1 -1
  59. package/dist/cjs/TeamsDropdown.js +15 -7
  60. package/dist/cjs/TeamsDropdown.js.map +1 -1
  61. package/dist/cjs/hooks.js +2 -2
  62. package/dist/cjs/index.js +9 -9
  63. package/dist/cjs/utils.js +1 -1
  64. package/dist/{index-Dn1xXV16.js → index-Bvg5FEih.js} +20 -13
  65. package/dist/index-Bvg5FEih.js.map +1 -0
  66. package/dist/{index-Dpeqvj1R.js → index-CFoRG9Vv.js} +115 -84
  67. package/dist/{index-Dpeqvj1R.js.map → index-CFoRG9Vv.js.map} +1 -1
  68. package/dist/{index-RSeSsrSE.js → index-CTzzFXjr.js} +31 -19
  69. package/dist/{index-RSeSsrSE.js.map → index-CTzzFXjr.js.map} +1 -1
  70. package/dist/{useMembersSidenav-I2hDeiRw.js → useMembersSidenav-8pnJCxfV.js} +6 -2
  71. package/dist/{useMembersSidenav-I2hDeiRw.js.map → useMembersSidenav-8pnJCxfV.js.map} +1 -1
  72. package/dist/{useTeamsApi-BDvsXvSN.js → useTeamsApi-BNNfSa_t.js} +21 -14
  73. package/dist/useTeamsApi-BNNfSa_t.js.map +1 -0
  74. package/dist/{withReactQuery-C7a_pGxf.js → withReactQuery-DmoRX7nd.js} +6 -2
  75. package/dist/{withReactQuery-C7a_pGxf.js.map → withReactQuery-DmoRX7nd.js.map} +1 -1
  76. package/package.json +1 -1
  77. package/dist/index-Dn1xXV16.js.map +0 -1
  78. package/dist/useTeamsApi-BDvsXvSN.js.map +0 -1
@@ -78,7 +78,8 @@
78
78
  "subscriptionType": "{{subscription}} แผน",
79
79
  "takeAction": "ดำเนินการ",
80
80
  "timeZone": "Etc/UTC",
81
- "inviteViaLink": "เชิญผ่านลิงก์"
81
+ "inviteViaLink": "เชิญผ่านลิงก์",
82
+ "imageUploadFailed": "การอัพโหลดรูปภาพล้มเหลว กรุณาลองอีกครั้ง。"
82
83
  },
83
84
  "downloadPane": {
84
85
  "description": {
@@ -109,7 +110,8 @@
109
110
  "themeSelector": "ตัวเลือกธีม",
110
111
  "whyIsItDisabled": "ทำไมถึงถูกปิดใช้งาน?",
111
112
  "invitationTitle": "คุณได้รับเชิญ!",
112
- "invitationMessage": "คุณได้รับเชิญให้เข้าร่วม <strong>{{organization, anyCase}}</strong> กรุณากรอกอีเมลของคุณเพื่อยอมรับคำเชิญ。"
113
+ "invitationMessage": "คุณได้รับเชิญให้เข้าร่วม <strong>{{organization, anyCase}}</strong> กรุณากรอกอีเมลของคุณเพื่อยอมรับคำเชิญ。",
114
+ "editPaneSubtitle": "การเปลี่ยนแปลงที่ทำจะถูกส่งผลไปยังผลิตภัณฑ์ Neeto ทั้งหมด."
113
115
  },
114
116
  "labels": {
115
117
  "addNewRole": "เพิ่มบทบาทใหม่",
@@ -78,7 +78,8 @@
78
78
  "subscriptionType": "{{subscription}} planı",
79
79
  "takeAction": "Eylem al",
80
80
  "timeZone": "Etc/UTC",
81
- "inviteViaLink": "Bağlantı ile davet et"
81
+ "inviteViaLink": "Bağlantı ile davet et",
82
+ "imageUploadFailed": "Görüntü yükleme başarısız oldu. Lütfen tekrar deneyin."
82
83
  },
83
84
  "downloadPane": {
84
85
  "description": {
@@ -109,7 +110,8 @@
109
110
  "themeSelector": "Tema seçici",
110
111
  "whyIsItDisabled": "Neden devre dışı bırakıldı?",
111
112
  "invitationTitle": "Davet edildiniz!",
112
- "invitationMessage": "Sizi <strong>{{organization, anyCase}}</strong>'ye katılmaya davet ediyoruz. Daveti kabul etmek için lütfen e-posta adresinizi girin."
113
+ "invitationMessage": "Sizi <strong>{{organization, anyCase}}</strong>'ye katılmaya davet ediyoruz. Daveti kabul etmek için lütfen e-posta adresinizi girin.",
114
+ "editPaneSubtitle": "Yapılan değişiklikler tüm Neeto ürünlerinde yansıyacaktır."
113
115
  },
114
116
  "labels": {
115
117
  "addNewRole": "Yeni rol ekle",
@@ -78,7 +78,8 @@
78
78
  "subscriptionType": "{{subscription}} план",
79
79
  "takeAction": "Вжити заходів",
80
80
  "timeZone": "Etc/UTC",
81
- "inviteViaLink": "Запросити через посилання"
81
+ "inviteViaLink": "Запросити через посилання",
82
+ "imageUploadFailed": "Не вдалося завантажити зображення. Будь ласка, спробуйте ще раз."
82
83
  },
83
84
  "downloadPane": {
84
85
  "description": {
@@ -109,7 +110,8 @@
109
110
  "themeSelector": "Вибір теми",
110
111
  "whyIsItDisabled": "Чому це вимкнуто?",
111
112
  "invitationTitle": "Вас запрошено!",
112
- "invitationMessage": "Ви були запрошені приєднатися до <strong>{{organization, anyCase}}</strong>. Будь ласка, введіть свою електронну пошту, щоб прийняти запрошення."
113
+ "invitationMessage": "Ви були запрошені приєднатися до <strong>{{organization, anyCase}}</strong>. Будь ласка, введіть свою електронну пошту, щоб прийняти запрошення.",
114
+ "editPaneSubtitle": "Зроблені зміни відобразяться у всіх продуктах Neeto."
113
115
  },
114
116
  "labels": {
115
117
  "addNewRole": "Додати нову роль",
@@ -78,7 +78,8 @@
78
78
  "subscriptionType": "Gói {{subscription}}",
79
79
  "takeAction": "Thực hiện hành động",
80
80
  "timeZone": "Etc/UTC",
81
- "inviteViaLink": "Mời qua liên kết"
81
+ "inviteViaLink": "Mời qua liên kết",
82
+ "imageUploadFailed": "Tải lên ảnh thất bại. Vui lòng thử lại."
82
83
  },
83
84
  "downloadPane": {
84
85
  "description": {
@@ -109,7 +110,8 @@
109
110
  "themeSelector": "Chọn chủ đề",
110
111
  "whyIsItDisabled": "Tại sao nó bị vô hiệu hóa?",
111
112
  "invitationTitle": "Bạn đã được mời!",
112
- "invitationMessage": "Bạn đã được mời tham gia <strong>{{organization, anyCase}}</strong>. Vui lòng nhập email của bạn để chấp nhận lời mời."
113
+ "invitationMessage": "Bạn đã được mời tham gia <strong>{{organization, anyCase}}</strong>. Vui lòng nhập email của bạn để chấp nhận lời mời.",
114
+ "editPaneSubtitle": "Các thay đổi được thực hiện sẽ được phản ánh trên tất cả các sản phẩm của Neeto."
113
115
  },
114
116
  "labels": {
115
117
  "addNewRole": "Thêm vai trò mới",
@@ -78,7 +78,8 @@
78
78
  "subscriptionType": "{{subscription}} 计划",
79
79
  "takeAction": "采取行动",
80
80
  "timeZone": "Etc/UTC",
81
- "inviteViaLink": "通过链接邀请"
81
+ "inviteViaLink": "通过链接邀请",
82
+ "imageUploadFailed": "图片上传失败。请再试一次。"
82
83
  },
83
84
  "downloadPane": {
84
85
  "description": {
@@ -109,7 +110,8 @@
109
110
  "themeSelector": "主题选择器",
110
111
  "whyIsItDisabled": "为什么会禁用?",
111
112
  "invitationTitle": "您被邀请了!",
112
- "invitationMessage": "您已被邀请加入 <strong>{{organization, anyCase}}</strong>。请输入您的电子邮件以接受邀请。"
113
+ "invitationMessage": "您已被邀请加入 <strong>{{organization, anyCase}}</strong>。请输入您的电子邮件以接受邀请。",
114
+ "editPaneSubtitle": "所做的更改将在所有 Neeto 产品中反映。"
113
115
  },
114
116
  "labels": {
115
117
  "addNewRole": "添加新角色",
@@ -78,7 +78,8 @@
78
78
  "subscriptionType": "{{subscription}} 計劃",
79
79
  "takeAction": "採取行動",
80
80
  "timeZone": "Etc/UTC",
81
- "inviteViaLink": "通過鏈接邀請"
81
+ "inviteViaLink": "通過鏈接邀請",
82
+ "imageUploadFailed": "圖片上傳失敗。請再試一次。"
82
83
  },
83
84
  "downloadPane": {
84
85
  "description": {
@@ -109,7 +110,8 @@
109
110
  "themeSelector": "主題選擇器",
110
111
  "whyIsItDisabled": "為什麼它被禁用?",
111
112
  "invitationTitle": "您被邀請了!",
112
- "invitationMessage": "您已被邀請加入 <strong>{{organization, anyCase}}</strong>。請輸入您的電子郵件以接受邀請。"
113
+ "invitationMessage": "您已被邀請加入 <strong>{{organization, anyCase}}</strong>。請輸入您的電子郵件以接受邀請。",
114
+ "editPaneSubtitle": "所做的變更將會反映在所有 Neeto 產品中。"
113
115
  },
114
116
  "labels": {
115
117
  "addNewRole": "添加新角色",
@@ -14,11 +14,19 @@ var reactI18next = require('react-i18next');
14
14
  var injectCss = require('./inject-css-vQvjPR2x.js');
15
15
  var jsxRuntime = require('react/jsx-runtime');
16
16
 
17
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
18
+
19
+ var _defineProperty__default = /*#__PURE__*/_interopDefault(_defineProperty);
20
+ var _toConsumableArray__default = /*#__PURE__*/_interopDefault(_toConsumableArray);
21
+ var Typography__default = /*#__PURE__*/_interopDefault(Typography);
22
+ var Checkbox__default = /*#__PURE__*/_interopDefault(Checkbox);
23
+ var Tooltip__default = /*#__PURE__*/_interopDefault(Tooltip);
24
+
17
25
  var css = ".ntm-roles-pane__body{margin-bottom:1.5rem;width:100%}.ntm-roles-pane__body-wrapper>*+*{margin-top:1rem}.ntm-roles-pane__body>*+*{margin-top:1.5rem}.ntm-roles-pane__footer{display:flex;gap:.5rem}.ntm-roles-permission__heading{padding-top:.5rem}.ntm-roles-permission__card{background-color:rgb(var(--neeto-ui-white));display:flex;flex-direction:column;gap:.75rem;padding:.4rem 0;position:relative}.ntm-roles-permission__card:after{background-color:rgb(var(--neeto-ui-gray-300));content:\"\";height:1px;inset-inline-start:-.9375rem;position:absolute;top:.875rem;width:.625rem}.ntm-roles-permission__card--description{flex-grow:1}.ntm-roles-permission__card--checkbox{padding:0 .5rem}.ntm-roles-permission__card .neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container{align-items:flex-start}.ntm-roles-permission__card .neeto-ui-checkbox__wrapper .neeto-ui-checkbox__container .neeto-ui-checkbox[type=checkbox]:disabled+.neeto-ui-label{cursor:not-allowed;opacity:.5}.ntm-roles-permission__sub-blocks{position:relative}.ntm-roles-permission__sub-blocks:before{background-color:rgb(var(--neeto-ui-gray-300));content:\"\";height:calc(100% - .875rem);inset-inline-start:.5rem;position:absolute;top:0;width:.0625rem}.ntm-roles-permission__sub-blocks:empty{display:none}.ntm-roles-permission-category-card{border:1px solid rgb(var(--neeto-ui-gray-200));border-radius:var(--neeto-ui-rounded);padding:.625rem 1.25rem;transition:all .3s}.ntm-roles-permission-category-card--active{background-color:rgba(var(--neeto-ui-primary-50),1);border-color:rgb(var(--neeto-ui-primary-500));outline:1px solid rgb(var(--neeto-ui-primary-500))}.ntm-roles-permission-category-card--active .ntm-roles-permission__card{background-color:transparent}.ntm-roles-permission-category-card>.ntm-roles-permission__card:after{display:none}.ntm-roles-permission__card>.neeto-ui-checkbox__wrapper .neeto-ui-label{font-weight:400}.ntm-roles-permission-category-card>.ntm-roles-permission__card>.neeto-ui-checkbox__wrapper .neeto-ui-label{font-size:.9375rem}@keyframes ntm-roles-permission-blink{0%,to{color:inherit}50%{color:rgb(var(--neeto-ui-primary-500));font-weight:700}}.ntm-roles-permission__card--blink>.neeto-ui-checkbox__wrapper .neeto-ui-label{animation:ntm-roles-permission-blink .6s ease-in-out 0s 3}\n/*# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImFwcC9qYXZhc2NyaXB0L3NyYy9zdHlsZXNoZWV0cy9jb21wb25lbnRzL3JvbGVzLXBlcm1pc3Npb25zLmNzcyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxzQkFFRSxvQkFBcUIsQ0FEckIsVUFFRixDQUVBLGtDQUNFLGVBQ0YsQ0FFQSwwQkFDRSxpQkFDRixDQUVBLHdCQUNFLFlBQWEsQ0FDYixTQUNGLENBRUEsK0JBQ0UsaUJBQ0YsQ0FFQSw0QkFDRSwyQ0FBNEMsQ0FFNUMsWUFBYSxDQUNiLHFCQUFzQixDQUN0QixVQUFZLENBQ1osZUFBaUIsQ0FKakIsaUJBS0YsQ0FFQSxrQ0FDRSw4Q0FBK0MsQ0FDL0MsVUFBVyxDQUNYLFVBQVcsQ0FDWCw0QkFBOEIsQ0FDOUIsaUJBQWtCLENBQ2xCLFdBQWEsQ0FDYixhQUNGLENBRUEseUNBQ0UsV0FDRixDQUVBLHNDQUNFLGVBQ0YsQ0FFQSxzRkFDRSxzQkFDRixDQUVBLGlKQUVFLGtCQUFtQixDQURuQixVQUVGLENBRUEsa0NBQ0UsaUJBQ0YsQ0FFQSx5Q0FDRSw4Q0FBK0MsQ0FFL0MsVUFBVyxDQUNYLDJCQUE2QixDQUM3Qix3QkFBMEIsQ0FDMUIsaUJBQWtCLENBSmxCLEtBQU0sQ0FLTixjQUNGLENBRUEsd0NBQ0UsWUFDRixDQUVBLG9DQUdFLDhDQUErQyxDQUQvQyxxQ0FBc0MsQ0FEdEMsdUJBQXlCLENBR3pCLGtCQUNGLENBRUEsNENBR0UsbURBQXFELENBRnJELDZDQUE4QyxDQUM5QyxrREFFRixDQUVBLHdFQUNFLDRCQUNGLENBRUEsc0VBQ0UsWUFDRixDQUVBLHdFQUNFLGVBQ0YsQ0FFQSw0R0FDRSxrQkFDRixDQUVBLHNDQUVFLE1BRUUsYUFDRixDQUVBLElBQ0Usc0NBQXVDLENBQ3ZDLGVBQ0YsQ0FDRixDQUVBLCtFQUNFLHlEQUNGIiwic291cmNlc0NvbnRlbnQiOlsiLm50bS1yb2xlcy1wYW5lX19ib2R5IHtcbiAgd2lkdGg6IDEwMCU7XG4gIG1hcmdpbi1ib3R0b206IDEuNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wYW5lX19ib2R5LXdyYXBwZXI+KisqIHtcbiAgbWFyZ2luLXRvcDogMXJlbTtcbn1cblxuLm50bS1yb2xlcy1wYW5lX19ib2R5PiorKiB7XG4gIG1hcmdpbi10b3A6IDEuNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wYW5lX19mb290ZXIge1xuICBkaXNwbGF5OiBmbGV4O1xuICBnYXA6IDAuNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19oZWFkaW5nIHtcbiAgcGFkZGluZy10b3A6IDAuNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkIHtcbiAgYmFja2dyb3VuZC1jb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLXdoaXRlKSk7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbiAgZGlzcGxheTogZmxleDtcbiAgZmxleC1kaXJlY3Rpb246IGNvbHVtbjtcbiAgZ2FwOiAwLjc1cmVtO1xuICBwYWRkaW5nOiAwLjRyZW0gMDtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkOjphZnRlciB7XG4gIGJhY2tncm91bmQtY29sb3I6IHJnYih2YXIoLS1uZWV0by11aS1ncmF5LTMwMCkpO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IDFweDtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiAtMC45Mzc1cmVtO1xuICBwb3NpdGlvbjogYWJzb2x1dGU7XG4gIHRvcDogMC44NzVyZW07XG4gIHdpZHRoOiAwLjYyNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkLS1kZXNjcmlwdGlvbiB7XG4gIGZsZXgtZ3JvdzogMTtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkLS1jaGVja2JveCB7XG4gIHBhZGRpbmc6IDAgMC41cmVtO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQgLm5lZXRvLXVpLWNoZWNrYm94X193cmFwcGVyIC5uZWV0by11aS1jaGVja2JveF9fY29udGFpbmVyIHtcbiAgYWxpZ24taXRlbXM6IGZsZXgtc3RhcnQ7XG59XG5cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fY2FyZCAubmVldG8tdWktY2hlY2tib3hfX3dyYXBwZXIgLm5lZXRvLXVpLWNoZWNrYm94X19jb250YWluZXIgLm5lZXRvLXVpLWNoZWNrYm94W3R5cGU9XCJjaGVja2JveFwiXTpkaXNhYmxlZCsubmVldG8tdWktbGFiZWwge1xuICBvcGFjaXR5OiAwLjU7XG4gIGN1cnNvcjogbm90LWFsbG93ZWQ7XG59XG5cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fc3ViLWJsb2NrcyB7XG4gIHBvc2l0aW9uOiByZWxhdGl2ZTtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19zdWItYmxvY2tzOjpiZWZvcmUge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktZ3JheS0zMDApKTtcbiAgdG9wOiAwO1xuICBjb250ZW50OiBcIlwiO1xuICBoZWlnaHQ6IGNhbGMoMTAwJSAtIDAuODc1cmVtKTtcbiAgaW5zZXQtaW5saW5lLXN0YXJ0OiAwLjVyZW07XG4gIHBvc2l0aW9uOiBhYnNvbHV0ZTtcbiAgd2lkdGg6IDAuMDYyNXJlbTtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19zdWItYmxvY2tzOmVtcHR5IHtcbiAgZGlzcGxheTogbm9uZTtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uLWNhdGVnb3J5LWNhcmQge1xuICBwYWRkaW5nOiAwLjYyNXJlbSAxLjI1cmVtO1xuICBib3JkZXItcmFkaXVzOiB2YXIoLS1uZWV0by11aS1yb3VuZGVkKTtcbiAgYm9yZGVyOiAxcHggc29saWQgcmdiKHZhcigtLW5lZXRvLXVpLWdyYXktMjAwKSk7XG4gIHRyYW5zaXRpb246IGFsbCAwLjNzO1xufVxuXG4ubnRtLXJvbGVzLXBlcm1pc3Npb24tY2F0ZWdvcnktY2FyZC0tYWN0aXZlIHtcbiAgYm9yZGVyLWNvbG9yOiByZ2IodmFyKC0tbmVldG8tdWktcHJpbWFyeS01MDApKTtcbiAgb3V0bGluZTogMXB4IHNvbGlkIHJnYih2YXIoLS1uZWV0by11aS1wcmltYXJ5LTUwMCkpO1xuICBiYWNrZ3JvdW5kLWNvbG9yOiByZ2JhKHZhcigtLW5lZXRvLXVpLXByaW1hcnktNTApLCAxKTtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uLWNhdGVnb3J5LWNhcmQtLWFjdGl2ZSAubnRtLXJvbGVzLXBlcm1pc3Npb25fX2NhcmQge1xuICBiYWNrZ3JvdW5kLWNvbG9yOiB0cmFuc3BhcmVudDtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uLWNhdGVnb3J5LWNhcmQ+Lm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkOjphZnRlciB7XG4gIGRpc3BsYXk6IG5vbmU7XG59XG5cbi5udG0tcm9sZXMtcGVybWlzc2lvbl9fY2FyZD4ubmVldG8tdWktY2hlY2tib3hfX3dyYXBwZXIgLm5lZXRvLXVpLWxhYmVsIHtcbiAgZm9udC13ZWlnaHQ6IG5vcm1hbDtcbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uLWNhdGVnb3J5LWNhcmQ+Lm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkPi5uZWV0by11aS1jaGVja2JveF9fd3JhcHBlciAubmVldG8tdWktbGFiZWwge1xuICBmb250LXNpemU6IDAuOTM3NXJlbTtcbn1cblxuQGtleWZyYW1lcyBudG0tcm9sZXMtcGVybWlzc2lvbi1ibGluayB7XG5cbiAgMCUsXG4gIDEwMCUge1xuICAgIGNvbG9yOiBpbmhlcml0O1xuICB9XG5cbiAgNTAlIHtcbiAgICBjb2xvcjogcmdiKHZhcigtLW5lZXRvLXVpLXByaW1hcnktNTAwKSk7XG4gICAgZm9udC13ZWlnaHQ6IGJvbGQ7XG4gIH1cbn1cblxuLm50bS1yb2xlcy1wZXJtaXNzaW9uX19jYXJkLS1ibGluaz4ubmVldG8tdWktY2hlY2tib3hfX3dyYXBwZXIgLm5lZXRvLXVpLWxhYmVsIHtcbiAgYW5pbWF0aW9uOiBudG0tcm9sZXMtcGVybWlzc2lvbi1ibGluayA2MDBtcyBlYXNlLWluLW91dCAwcyAzO1xufVxuIl19 */";
18
26
  injectCss.n(css,{});
19
27
 
20
28
  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; }
21
- 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(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; }
29
+ 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; }
22
30
  var sortPermissionsBySequence = function sortPermissionsBySequence() {
23
31
  var _permissions$;
24
32
  var permissions = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : [];
@@ -93,7 +101,7 @@ var getChildrenRemovedFromRoot = function getChildrenRemovedFromRoot(_ref3) {
93
101
  };
94
102
 
95
103
  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; }
96
- 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(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; }
104
+ 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; }
97
105
  var Permissions = function Permissions(_ref) {
98
106
  var _ref$permissions = _ref.permissions,
99
107
  permissions = _ref$permissions === void 0 ? [] : _ref$permissions,
@@ -117,7 +125,7 @@ var Permissions = function Permissions(_ref) {
117
125
  if (permissionRelationConfig[permission.name]) {
118
126
  childIds = _findChildIdsRecursively(permission, permissionsNameMap, permissionRelationConfig);
119
127
  }
120
- var permissionIdsToBeUnchecked = [permissionId].concat(_toConsumableArray(childIds));
128
+ var permissionIdsToBeUnchecked = [permissionId].concat(_toConsumableArray__default.default(childIds));
121
129
  nextPermissionIds = permissionIds.filter(function (id) {
122
130
  return !permissionIdsToBeUnchecked.includes(id);
123
131
  });
@@ -132,10 +140,10 @@ var Permissions = function Permissions(_ref) {
132
140
  return _findChildIdsRecursively(permission, permissionsNameMap, permissionRelationConfig);
133
141
  });
134
142
  var uncheckedPermissionIds = ramda.pluck("id", uncheckOnSelectPermissions);
135
- var _permissionIdsToBeUnchecked = [].concat(_toConsumableArray(uncheckedPermissionIds), _toConsumableArray(_childIds));
136
- nextPermissionIds = uncheckOnSelect ? [].concat(_toConsumableArray(permissionIds.filter(function (id) {
143
+ var _permissionIdsToBeUnchecked = [].concat(_toConsumableArray__default.default(uncheckedPermissionIds), _toConsumableArray__default.default(_childIds));
144
+ nextPermissionIds = uncheckOnSelect ? [].concat(_toConsumableArray__default.default(permissionIds.filter(function (id) {
137
145
  return !_permissionIdsToBeUnchecked.includes(id);
138
- })), [permissionId]) : [].concat(_toConsumableArray(permissionIds), [permissionId]);
146
+ })), [permissionId]) : [].concat(_toConsumableArray__default.default(permissionIds), [permissionId]);
139
147
  }
140
148
  setFieldValue("permissionIds", nextPermissionIds.sort());
141
149
  };
@@ -169,7 +177,7 @@ var Permissions = function Permissions(_ref) {
169
177
  }).join(", ")
170
178
  });
171
179
  return /*#__PURE__*/jsxRuntime.jsx(React.Fragment, {
172
- children: /*#__PURE__*/jsxRuntime.jsx(Tooltip, {
180
+ children: /*#__PURE__*/jsxRuntime.jsx(Tooltip__default.default, {
173
181
  content: tooltipMessage,
174
182
  disabled: !tooltipMessage || isChecked,
175
183
  position: "left-start",
@@ -177,7 +185,7 @@ var Permissions = function Permissions(_ref) {
177
185
  className: "ntm-roles-permission__card",
178
186
  "data-testid": "ntm-roles-permission-sub-category-card-".concat(index),
179
187
  id: "ntm-role-permission-".concat(id),
180
- children: [/*#__PURE__*/jsxRuntime.jsx(Checkbox, {
188
+ children: [/*#__PURE__*/jsxRuntime.jsx(Checkbox__default.default, {
181
189
  checked: isChecked,
182
190
  className: "grow-0",
183
191
  "data-testid": "ntm-roles-permission-checkbox",
@@ -202,12 +210,12 @@ var Permissions = function Permissions(_ref) {
202
210
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
203
211
  className: "ntm-roles-pane__body-wrapper",
204
212
  children: [/*#__PURE__*/jsxRuntime.jsxs("div", {
205
- children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
213
+ children: [/*#__PURE__*/jsxRuntime.jsx(Typography__default.default, {
206
214
  lineHeight: "normal",
207
215
  style: "h3",
208
216
  weight: "semibold",
209
217
  children: t("neetoTeamMembers.common.permission", constants.SINGULAR)
210
- }), /*#__PURE__*/jsxRuntime.jsx(Typography, {
218
+ }), /*#__PURE__*/jsxRuntime.jsx(Typography__default.default, {
211
219
  lineHeight: "normal",
212
220
  style: "body2",
213
221
  children: t("neetoTeamMembers.helpers.configPermissions")
@@ -217,7 +225,7 @@ var Permissions = function Permissions(_ref) {
217
225
  className: "ntm-roles-permission",
218
226
  "data-testid": "ntm-roles-permission-card",
219
227
  id: "ntm-role-permission-category-".concat(neetoCist.hyphenate(category)),
220
- children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
228
+ children: [/*#__PURE__*/jsxRuntime.jsx(Typography__default.default, {
221
229
  className: "ntm-roles-permission__heading neeto-ui-mb-2",
222
230
  "data-testid": "ntm-roles-permission-category-title",
223
231
  lineHeight: "normal",
@@ -238,4 +246,4 @@ exports.getChildrenRemovedFromRoot = getChildrenRemovedFromRoot;
238
246
  exports.getModifiedPermissions = getModifiedPermissions;
239
247
  exports.getPermissionGroups = getPermissionGroups;
240
248
  exports.sortPermissionsBySequence = sortPermissionsBySequence;
241
- //# sourceMappingURL=Permissions-B_03wP2E.js.map
249
+ //# sourceMappingURL=Permissions-Ceuhkolc.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Permissions-B_03wP2E.js","sources":["../app/javascript/src/components/Roles/utils.js","../app/javascript/src/components/Roles/Permissions.jsx"],"sourcesContent":["import { findById } from \"neetocist\";\nimport { append, concat, equals, prop } from \"ramda\";\n\nexport const sortPermissionsBySequence = (permissions = []) =>\n permissions?.[0]?.sequence\n ? permissions.sort((first, second) => first.sequence - second.sequence)\n : permissions;\n\nexport const getPermissionGroups = (permissions = []) => {\n const sortBySequence = sortPermissionsBySequence(permissions);\n\n const groupedPermissions = new Map();\n (\"\");\n sortBySequence.forEach(permission => {\n if (groupedPermissions.has(permission?.category)) {\n const category = groupedPermissions.get(permission.category);\n const currentPermissions = category.get(\"permissions\");\n const permissions = append(permission, currentPermissions);\n category.set(\"permissions\", permissions);\n } else {\n const value = new Map();\n value.set(\"permissions\", append(permission, []));\n value.set(\"isPermissionVisible\", true);\n groupedPermissions.set(permission?.category, value);\n }\n });\n\n return groupedPermissions;\n};\n\nexport const getModifiedPermissions = (roles = [], modifiedRoles = []) =>\n modifiedRoles\n .map(role => {\n const oldPermissions = findById(role.id, roles).permissionIds;\n if (equals(oldPermissions, role.permissionIds)) return false;\n\n return { id: role.id, permissionIds: role.permissionIds };\n })\n .filter(Boolean);\n\nexport const attachChildrenRecursively = (\n permission,\n permissionsNameMap,\n permissionRelationConfig\n) => {\n const { children } = permissionRelationConfig[permission.name] || {};\n\n return children\n ? {\n ...permission,\n children: children.flatMap(childName => {\n const childPermission = permissionsNameMap[childName]?.[0];\n if (!childPermission) return [];\n\n return attachChildrenRecursively(\n childPermission,\n permissionsNameMap,\n permissionRelationConfig\n );\n }),\n }\n : permission;\n};\n\nexport const findChildIdsRecursively = (\n permission,\n permissionsNameMap,\n permissionRelationConfig\n) => {\n const { children } = permissionRelationConfig[permission.name] || {};\n\n return children\n ? concat(\n children.flatMap(childName => {\n const childPermission = permissionsNameMap[childName]?.[0];\n if (!childPermission) return [];\n\n return findChildIdsRecursively(\n childPermission,\n permissionsNameMap,\n permissionRelationConfig\n );\n }),\n [permission.id]\n )\n : [permission.id];\n};\n\nexport const getChildrenRemovedFromRoot = ({\n permissions,\n permissionsNameMap,\n permissionRelationConfig,\n}) => {\n const permissionsWithChildren = permissions.map(permission =>\n attachChildrenRecursively(\n permission,\n permissionsNameMap,\n permissionRelationConfig\n )\n );\n\n const childPermissions = Object.values(permissionRelationConfig).flatMap(\n prop(\"children\")\n );\n\n return permissionsWithChildren.filter(\n permission => !childPermissions.includes(permission.name)\n );\n};\n","import { Fragment, useMemo } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { findById, hyphenate, isNotEmpty } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Typography, Checkbox, Tooltip } from \"neetoui\";\nimport { groupBy, pluck, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\n// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/components/roles-permissions.css\";\n\nimport {\n findChildIdsRecursively,\n getChildrenRemovedFromRoot,\n sortPermissionsBySequence,\n} from \"./utils\";\n\nconst Permissions = ({\n permissions = [],\n isDisabled = false,\n permissionRelationConfig = {},\n}) => {\n const { t } = useTranslation();\n\n const { setFieldValue, values } = useFormikContext();\n const { permissionIds = [] } = values;\n const permissionsNameMap = groupBy(prop(\"name\"))(permissions);\n\n const handleTogglePermission = permissionId => {\n const permission = findById(permissionId, permissions);\n let nextPermissionIds = [];\n if (permissionIds.includes(permissionId)) {\n let childIds = [];\n if (permissionRelationConfig[permission.name]) {\n childIds = findChildIdsRecursively(\n permission,\n permissionsNameMap,\n permissionRelationConfig\n );\n }\n\n const permissionIdsToBeUnchecked = [permissionId, ...childIds];\n\n nextPermissionIds = permissionIds.filter(\n id => !permissionIdsToBeUnchecked.includes(id)\n );\n } else {\n const { uncheckOnSelect } =\n permissionRelationConfig[permission.name] || {};\n\n const uncheckOnSelectPermissions =\n uncheckOnSelect?.flatMap(name => permissionsNameMap[name]) ?? [];\n\n const childIds = uncheckOnSelectPermissions.flatMap(permission =>\n findChildIdsRecursively(\n permission,\n permissionsNameMap,\n permissionRelationConfig\n )\n );\n\n const uncheckedPermissionIds = pluck(\"id\", uncheckOnSelectPermissions);\n const permissionIdsToBeUnchecked = [\n ...uncheckedPermissionIds,\n ...childIds,\n ];\n\n nextPermissionIds = uncheckOnSelect\n ? [\n ...permissionIds.filter(\n id => !permissionIdsToBeUnchecked.includes(id)\n ),\n permissionId,\n ]\n : [...permissionIds, permissionId];\n }\n\n setFieldValue(\"permissionIds\", nextPermissionIds.sort());\n };\n\n const groupedPermissions = useMemo(() => {\n const childrenRemovedFromRoot = getChildrenRemovedFromRoot({\n permissions,\n permissionsNameMap,\n permissionRelationConfig,\n });\n\n return groupBy(prop(\"category\"))(childrenRemovedFromRoot);\n }, [permissions]); // eslint-disable-line react-hooks/exhaustive-deps\n\n const renderPermission = ({\n id,\n name,\n description,\n children,\n isParentChecked = true,\n index = 1,\n }) => {\n const sortedChildren = children && sortPermissionsBySequence(children);\n\n const isCheckingDisabled = !isParentChecked || isDisabled;\n const isChecked = permissionIds.includes(id);\n\n const permissionsToBeUnchecked =\n permissionRelationConfig[name]?.uncheckOnSelect;\n\n const hasUnCheckOnSelect =\n permissionsToBeUnchecked && isNotEmpty(permissionsToBeUnchecked);\n\n const tooltipMessage =\n hasUnCheckOnSelect &&\n t(\"neetoTeamMembers.tooltips.uncheckOnSelectPermissions\", {\n permissions: permissionsToBeUnchecked\n .flatMap(name => pluck(\"description\", permissionsNameMap[name]))\n .join(\", \"),\n });\n\n return (\n <Fragment key={id}>\n <Tooltip\n content={tooltipMessage}\n disabled={!tooltipMessage || isChecked}\n position=\"left-start\"\n >\n <div\n className=\"ntm-roles-permission__card\"\n data-testid={`ntm-roles-permission-sub-category-card-${index}`}\n id={`ntm-role-permission-${id}`}\n >\n <Checkbox\n checked={isChecked}\n className=\"grow-0\"\n data-testid=\"ntm-roles-permission-checkbox\"\n disabled={isCheckingDisabled}\n label={description}\n onChange={() => handleTogglePermission(id)}\n />\n <div className=\"ntm-roles-permission__sub-blocks neeto-ui-relative neeto-ui-pl-6\">\n {sortedChildren?.map(childPermission =>\n renderPermission({\n ...childPermission,\n isParentChecked: isChecked,\n index: index + 1,\n })\n )}\n </div>\n </div>\n </Tooltip>\n </Fragment>\n );\n };\n\n return (\n <div className=\"ntm-roles-pane__body-wrapper\">\n <div>\n <Typography lineHeight=\"normal\" style=\"h3\" weight=\"semibold\">\n {t(\"neetoTeamMembers.common.permission\", SINGULAR)}\n </Typography>\n <Typography lineHeight=\"normal\" style=\"body2\">\n {t(\"neetoTeamMembers.helpers.configPermissions\")}\n </Typography>\n </div>\n {Object.keys(groupedPermissions).map(category => (\n <div\n className=\"ntm-roles-permission\"\n data-testid=\"ntm-roles-permission-card\"\n id={`ntm-role-permission-category-${hyphenate(category)}`}\n key={category}\n >\n <Typography\n className=\"ntm-roles-permission__heading neeto-ui-mb-2\"\n data-testid=\"ntm-roles-permission-category-title\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {category}\n </Typography>\n <div className=\"ntm-roles-permission-category-card\">\n {groupedPermissions[category].map(renderPermission)}\n </div>\n </div>\n ))}\n </div>\n );\n};\n\nexport default Permissions;\n"],"names":["sortPermissionsBySequence","_permissions$","permissions","arguments","length","undefined","sequence","sort","first","second","getPermissionGroups","sortBySequence","groupedPermissions","Map","forEach","permission","has","category","get","currentPermissions","append","set","value","getModifiedPermissions","roles","modifiedRoles","map","role","oldPermissions","findById","id","permissionIds","equals","filter","Boolean","attachChildrenRecursively","permissionsNameMap","permissionRelationConfig","_ref","name","children","_objectSpread","flatMap","childName","_permissionsNameMap$c","childPermission","findChildIdsRecursively","_ref2","concat","_permissionsNameMap$c2","getChildrenRemovedFromRoot","_ref3","permissionsWithChildren","childPermissions","Object","values","prop","includes","Permissions","_ref$permissions","_ref$isDisabled","isDisabled","_ref$permissionRelati","_useTranslation","useTranslation","t","_useFormikContext","useFormikContext","setFieldValue","_values$permissionIds","groupBy","handleTogglePermission","permissionId","nextPermissionIds","childIds","permissionIdsToBeUnchecked","_toConsumableArray","_uncheckOnSelect$flat","uncheckOnSelect","uncheckOnSelectPermissions","uncheckedPermissionIds","pluck","useMemo","childrenRemovedFromRoot","renderPermission","_permissionRelationCo","description","_ref3$isParentChecked","isParentChecked","_ref3$index","index","sortedChildren","isCheckingDisabled","isChecked","permissionsToBeUnchecked","hasUnCheckOnSelect","isNotEmpty","tooltipMessage","join","_jsx","Fragment","Tooltip","content","disabled","position","_jsxs","className","Checkbox","checked","label","onChange","Typography","lineHeight","style","weight","SINGULAR","keys","hyphenate"],"mappings":"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"}
1
+ {"version":3,"file":"Permissions-Ceuhkolc.js","sources":["../app/javascript/src/components/Roles/utils.js","../app/javascript/src/components/Roles/Permissions.jsx"],"sourcesContent":["import { findById } from \"neetocist\";\nimport { append, concat, equals, prop } from \"ramda\";\n\nexport const sortPermissionsBySequence = (permissions = []) =>\n permissions?.[0]?.sequence\n ? permissions.sort((first, second) => first.sequence - second.sequence)\n : permissions;\n\nexport const getPermissionGroups = (permissions = []) => {\n const sortBySequence = sortPermissionsBySequence(permissions);\n\n const groupedPermissions = new Map();\n (\"\");\n sortBySequence.forEach(permission => {\n if (groupedPermissions.has(permission?.category)) {\n const category = groupedPermissions.get(permission.category);\n const currentPermissions = category.get(\"permissions\");\n const permissions = append(permission, currentPermissions);\n category.set(\"permissions\", permissions);\n } else {\n const value = new Map();\n value.set(\"permissions\", append(permission, []));\n value.set(\"isPermissionVisible\", true);\n groupedPermissions.set(permission?.category, value);\n }\n });\n\n return groupedPermissions;\n};\n\nexport const getModifiedPermissions = (roles = [], modifiedRoles = []) =>\n modifiedRoles\n .map(role => {\n const oldPermissions = findById(role.id, roles).permissionIds;\n if (equals(oldPermissions, role.permissionIds)) return false;\n\n return { id: role.id, permissionIds: role.permissionIds };\n })\n .filter(Boolean);\n\nexport const attachChildrenRecursively = (\n permission,\n permissionsNameMap,\n permissionRelationConfig\n) => {\n const { children } = permissionRelationConfig[permission.name] || {};\n\n return children\n ? {\n ...permission,\n children: children.flatMap(childName => {\n const childPermission = permissionsNameMap[childName]?.[0];\n if (!childPermission) return [];\n\n return attachChildrenRecursively(\n childPermission,\n permissionsNameMap,\n permissionRelationConfig\n );\n }),\n }\n : permission;\n};\n\nexport const findChildIdsRecursively = (\n permission,\n permissionsNameMap,\n permissionRelationConfig\n) => {\n const { children } = permissionRelationConfig[permission.name] || {};\n\n return children\n ? concat(\n children.flatMap(childName => {\n const childPermission = permissionsNameMap[childName]?.[0];\n if (!childPermission) return [];\n\n return findChildIdsRecursively(\n childPermission,\n permissionsNameMap,\n permissionRelationConfig\n );\n }),\n [permission.id]\n )\n : [permission.id];\n};\n\nexport const getChildrenRemovedFromRoot = ({\n permissions,\n permissionsNameMap,\n permissionRelationConfig,\n}) => {\n const permissionsWithChildren = permissions.map(permission =>\n attachChildrenRecursively(\n permission,\n permissionsNameMap,\n permissionRelationConfig\n )\n );\n\n const childPermissions = Object.values(permissionRelationConfig).flatMap(\n prop(\"children\")\n );\n\n return permissionsWithChildren.filter(\n permission => !childPermissions.includes(permission.name)\n );\n};\n","import { Fragment, useMemo } from \"react\";\n\nimport { useFormikContext } from \"formik\";\nimport { findById, hyphenate, isNotEmpty } from \"neetocist\";\nimport { SINGULAR } from \"neetocommons/constants\";\nimport { Typography, Checkbox, Tooltip } from \"neetoui\";\nimport { groupBy, pluck, prop } from \"ramda\";\nimport { useTranslation } from \"react-i18next\";\n\n// eslint-disable-next-line import/extensions\nimport \"src/stylesheets/components/roles-permissions.css\";\n\nimport {\n findChildIdsRecursively,\n getChildrenRemovedFromRoot,\n sortPermissionsBySequence,\n} from \"./utils\";\n\nconst Permissions = ({\n permissions = [],\n isDisabled = false,\n permissionRelationConfig = {},\n}) => {\n const { t } = useTranslation();\n\n const { setFieldValue, values } = useFormikContext();\n const { permissionIds = [] } = values;\n const permissionsNameMap = groupBy(prop(\"name\"))(permissions);\n\n const handleTogglePermission = permissionId => {\n const permission = findById(permissionId, permissions);\n let nextPermissionIds = [];\n if (permissionIds.includes(permissionId)) {\n let childIds = [];\n if (permissionRelationConfig[permission.name]) {\n childIds = findChildIdsRecursively(\n permission,\n permissionsNameMap,\n permissionRelationConfig\n );\n }\n\n const permissionIdsToBeUnchecked = [permissionId, ...childIds];\n\n nextPermissionIds = permissionIds.filter(\n id => !permissionIdsToBeUnchecked.includes(id)\n );\n } else {\n const { uncheckOnSelect } =\n permissionRelationConfig[permission.name] || {};\n\n const uncheckOnSelectPermissions =\n uncheckOnSelect?.flatMap(name => permissionsNameMap[name]) ?? [];\n\n const childIds = uncheckOnSelectPermissions.flatMap(permission =>\n findChildIdsRecursively(\n permission,\n permissionsNameMap,\n permissionRelationConfig\n )\n );\n\n const uncheckedPermissionIds = pluck(\"id\", uncheckOnSelectPermissions);\n const permissionIdsToBeUnchecked = [\n ...uncheckedPermissionIds,\n ...childIds,\n ];\n\n nextPermissionIds = uncheckOnSelect\n ? [\n ...permissionIds.filter(\n id => !permissionIdsToBeUnchecked.includes(id)\n ),\n permissionId,\n ]\n : [...permissionIds, permissionId];\n }\n\n setFieldValue(\"permissionIds\", nextPermissionIds.sort());\n };\n\n const groupedPermissions = useMemo(() => {\n const childrenRemovedFromRoot = getChildrenRemovedFromRoot({\n permissions,\n permissionsNameMap,\n permissionRelationConfig,\n });\n\n return groupBy(prop(\"category\"))(childrenRemovedFromRoot);\n }, [permissions]); // eslint-disable-line react-hooks/exhaustive-deps\n\n const renderPermission = ({\n id,\n name,\n description,\n children,\n isParentChecked = true,\n index = 1,\n }) => {\n const sortedChildren = children && sortPermissionsBySequence(children);\n\n const isCheckingDisabled = !isParentChecked || isDisabled;\n const isChecked = permissionIds.includes(id);\n\n const permissionsToBeUnchecked =\n permissionRelationConfig[name]?.uncheckOnSelect;\n\n const hasUnCheckOnSelect =\n permissionsToBeUnchecked && isNotEmpty(permissionsToBeUnchecked);\n\n const tooltipMessage =\n hasUnCheckOnSelect &&\n t(\"neetoTeamMembers.tooltips.uncheckOnSelectPermissions\", {\n permissions: permissionsToBeUnchecked\n .flatMap(name => pluck(\"description\", permissionsNameMap[name]))\n .join(\", \"),\n });\n\n return (\n <Fragment key={id}>\n <Tooltip\n content={tooltipMessage}\n disabled={!tooltipMessage || isChecked}\n position=\"left-start\"\n >\n <div\n className=\"ntm-roles-permission__card\"\n data-testid={`ntm-roles-permission-sub-category-card-${index}`}\n id={`ntm-role-permission-${id}`}\n >\n <Checkbox\n checked={isChecked}\n className=\"grow-0\"\n data-testid=\"ntm-roles-permission-checkbox\"\n disabled={isCheckingDisabled}\n label={description}\n onChange={() => handleTogglePermission(id)}\n />\n <div className=\"ntm-roles-permission__sub-blocks neeto-ui-relative neeto-ui-pl-6\">\n {sortedChildren?.map(childPermission =>\n renderPermission({\n ...childPermission,\n isParentChecked: isChecked,\n index: index + 1,\n })\n )}\n </div>\n </div>\n </Tooltip>\n </Fragment>\n );\n };\n\n return (\n <div className=\"ntm-roles-pane__body-wrapper\">\n <div>\n <Typography lineHeight=\"normal\" style=\"h3\" weight=\"semibold\">\n {t(\"neetoTeamMembers.common.permission\", SINGULAR)}\n </Typography>\n <Typography lineHeight=\"normal\" style=\"body2\">\n {t(\"neetoTeamMembers.helpers.configPermissions\")}\n </Typography>\n </div>\n {Object.keys(groupedPermissions).map(category => (\n <div\n className=\"ntm-roles-permission\"\n data-testid=\"ntm-roles-permission-card\"\n id={`ntm-role-permission-category-${hyphenate(category)}`}\n key={category}\n >\n <Typography\n className=\"ntm-roles-permission__heading neeto-ui-mb-2\"\n data-testid=\"ntm-roles-permission-category-title\"\n lineHeight=\"normal\"\n style=\"h4\"\n weight=\"semibold\"\n >\n {category}\n </Typography>\n <div className=\"ntm-roles-permission-category-card\">\n {groupedPermissions[category].map(renderPermission)}\n </div>\n </div>\n ))}\n </div>\n );\n};\n\nexport default Permissions;\n"],"names":["sortPermissionsBySequence","_permissions$","permissions","arguments","length","undefined","sequence","sort","first","second","getPermissionGroups","sortBySequence","groupedPermissions","Map","forEach","permission","has","category","get","currentPermissions","append","set","value","getModifiedPermissions","roles","modifiedRoles","map","role","oldPermissions","findById","id","permissionIds","equals","filter","Boolean","attachChildrenRecursively","permissionsNameMap","permissionRelationConfig","_ref","name","children","_objectSpread","flatMap","childName","_permissionsNameMap$c","childPermission","findChildIdsRecursively","_ref2","concat","_permissionsNameMap$c2","getChildrenRemovedFromRoot","_ref3","permissionsWithChildren","childPermissions","Object","values","prop","includes","Permissions","_ref$permissions","_ref$isDisabled","isDisabled","_ref$permissionRelati","_useTranslation","useTranslation","t","_useFormikContext","useFormikContext","setFieldValue","_values$permissionIds","groupBy","handleTogglePermission","permissionId","nextPermissionIds","childIds","permissionIdsToBeUnchecked","_toConsumableArray","_uncheckOnSelect$flat","uncheckOnSelect","uncheckOnSelectPermissions","uncheckedPermissionIds","pluck","useMemo","childrenRemovedFromRoot","renderPermission","_permissionRelationCo","description","_ref3$isParentChecked","isParentChecked","_ref3$index","index","sortedChildren","isCheckingDisabled","isChecked","permissionsToBeUnchecked","hasUnCheckOnSelect","isNotEmpty","tooltipMessage","join","_jsx","Fragment","Tooltip","content","disabled","position","_jsxs","className","Checkbox","checked","label","onChange","Typography","lineHeight","style","weight","SINGULAR","keys","hyphenate"],"mappings":"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"}
@@ -20,7 +20,10 @@ var i18next = require('i18next');
20
20
  var yup = require('yup');
21
21
  var jsxRuntime = require('react/jsx-runtime');
22
22
 
23
- function _interopNamespaceDefault(e) {
23
+ function _interopDefault (e) { return e && e.__esModule ? e : { default: e }; }
24
+
25
+ function _interopNamespace(e) {
26
+ if (e && e.__esModule) return e;
24
27
  var n = Object.create(null);
25
28
  if (e) {
26
29
  Object.keys(e).forEach(function (k) {
@@ -37,18 +40,26 @@ function _interopNamespaceDefault(e) {
37
40
  return Object.freeze(n);
38
41
  }
39
42
 
40
- var yup__namespace = /*#__PURE__*/_interopNamespaceDefault(yup);
43
+ var _slicedToArray__default = /*#__PURE__*/_interopDefault(_slicedToArray);
44
+ var _defineProperty__default = /*#__PURE__*/_interopDefault(_defineProperty);
45
+ var axios__default = /*#__PURE__*/_interopDefault(axios);
46
+ var Edit__default = /*#__PURE__*/_interopDefault(Edit);
47
+ var Avatar__default = /*#__PURE__*/_interopDefault(Avatar);
48
+ var Dropdown__default = /*#__PURE__*/_interopDefault(Dropdown);
49
+ var Toastr__default = /*#__PURE__*/_interopDefault(Toastr);
50
+ var Typography__default = /*#__PURE__*/_interopDefault(Typography);
51
+ var yup__namespace = /*#__PURE__*/_interopNamespace(yup);
41
52
 
42
53
  var fetchCountries = function fetchCountries() {
43
- return axios.get("".concat(constants.BASE_URL, "/profile/countries"));
54
+ return axios__default.default.get("".concat(constants.BASE_URL, "/profile/countries"));
44
55
  };
45
56
  var fetchUserDetails = function fetchUserDetails() {
46
- return axios.get("".concat(constants.BASE_URL, "/profile/user"));
57
+ return axios__default.default.get("".concat(constants.BASE_URL, "/profile/user"));
47
58
  };
48
59
  var updateUser = function updateUser(_ref) {
49
60
  var id = _ref.id,
50
61
  payload = _ref.payload;
51
- return axios.put("".concat(constants.BASE_URL, "/profile/user/").concat(id), payload);
62
+ return axios__default.default.put("".concat(constants.BASE_URL, "/profile/user/").concat(id), payload);
52
63
  };
53
64
  var profileApi = {
54
65
  fetchCountries: fetchCountries,
@@ -78,7 +89,7 @@ var DEFAULT_POPOVER_VALUES = {
78
89
  };
79
90
 
80
91
  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; }
81
- 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(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; }
92
+ 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; }
82
93
  var useFetchCountries = function useFetchCountries(options) {
83
94
  return reactQuery.useQuery(_objectSpread({
84
95
  queryKey: [constants.QUERY_KEYS.COUNTRIES_LIST],
@@ -89,7 +100,7 @@ var useFetchCountries = function useFetchCountries(options) {
89
100
 
90
101
  var useCountries = function useCountries() {
91
102
  var _useState = React.useState(null),
92
- _useState2 = _slicedToArray(_useState, 2),
103
+ _useState2 = _slicedToArray__default.default(_useState, 2),
93
104
  selectedCountryOption = _useState2[0],
94
105
  setSelectedCountryOption = _useState2[1];
95
106
  var _useFetchCountries = useFetchCountries(),
@@ -122,14 +133,14 @@ var useCountries = function useCountries() {
122
133
  };
123
134
  };
124
135
 
125
- var Menu = Dropdown.Menu,
126
- MenuItem = Dropdown.MenuItem;
136
+ var Menu = Dropdown__default.default.Menu,
137
+ MenuItem = Dropdown__default.default.MenuItem;
127
138
  var ProfileImage = function ProfileImage() {
128
139
  var _useTranslation = reactI18next.useTranslation(),
129
140
  t = _useTranslation.t;
130
141
  var fileInputRef = React.useRef(null);
131
142
  var _useField = formik.useField("avatar"),
132
- _useField2 = _slicedToArray(_useField, 3),
143
+ _useField2 = _slicedToArray__default.default(_useField, 3),
133
144
  field = _useField2[0];
134
145
  _useField2[1];
135
146
  var helpers = _useField2[2];
@@ -141,7 +152,7 @@ var ProfileImage = function ProfileImage() {
141
152
  var imageFile = event.target.files[0];
142
153
  var validationError = validateProfileImage(imageFile);
143
154
  if (validationError) {
144
- Toastr.error(validationError);
155
+ Toastr__default.default.error(validationError);
145
156
  return validationError;
146
157
  }
147
158
  return setValue({
@@ -177,7 +188,7 @@ var ProfileImage = function ProfileImage() {
177
188
  className: "relative shrink-0",
178
189
  children: [/*#__PURE__*/jsxRuntime.jsx("div", {
179
190
  className: "absolute bottom-0 end-0 z-10",
180
- children: /*#__PURE__*/jsxRuntime.jsx(Dropdown
191
+ children: /*#__PURE__*/jsxRuntime.jsx(Dropdown__default.default
181
192
  // eslint-disable-next-line @bigbinary/neeto/use-neetoui-classes
182
193
  , {
183
194
  buttonProps: {
@@ -185,7 +196,7 @@ var ProfileImage = function ProfileImage() {
185
196
  },
186
197
  buttonSize: "small",
187
198
  buttonStyle: "tertiary",
188
- icon: Edit,
199
+ icon: Edit__default.default,
189
200
  children: /*#__PURE__*/jsxRuntime.jsxs(Menu, {
190
201
  children: [/*#__PURE__*/jsxRuntime.jsx(MenuItem.Button, {
191
202
  "data-testid": "profile-image-upload-button",
@@ -198,13 +209,13 @@ var ProfileImage = function ProfileImage() {
198
209
  })]
199
210
  })
200
211
  })
201
- }), /*#__PURE__*/jsxRuntime.jsx(Avatar, {
212
+ }), /*#__PURE__*/jsxRuntime.jsx(Avatar__default.default, {
202
213
  size: "extraLarge",
203
214
  user: avatarDetails
204
215
  })]
205
216
  }), /*#__PURE__*/jsxRuntime.jsxs("div", {
206
217
  className: "flex flex-col items-center",
207
- children: [/*#__PURE__*/jsxRuntime.jsx(Typography, {
218
+ children: [/*#__PURE__*/jsxRuntime.jsx(Typography__default.default, {
208
219
  className: "neeto-ui-text-gray-600 text-center",
209
220
  style: "body3",
210
221
  children: /*#__PURE__*/jsxRuntime.jsx(reactI18next.Trans, {
@@ -233,4 +244,4 @@ exports.PROFILE_VALIDATION_SCHEMA = PROFILE_VALIDATION_SCHEMA;
233
244
  exports.ProfileImage = ProfileImage;
234
245
  exports.profileApi = profileApi;
235
246
  exports.useCountries = useCountries;
236
- //# sourceMappingURL=ProfileImage-NrUFZWFQ.js.map
247
+ //# sourceMappingURL=ProfileImage-DLfKHCcF.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProfileImage-NrUFZWFQ.js","sources":["../app/javascript/src/apis/profile.js","../app/javascript/src/components/Profile/constants.js","../app/javascript/src/hooks/profile/useCountriesApi.js","../app/javascript/src/components/Profile/hooks/useCountries.js","../app/javascript/src/components/Profile/ProfileImage.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/common/constants\";\n\nconst fetchCountries = () => axios.get(`${BASE_URL}/profile/countries`);\n\nconst fetchUserDetails = () => axios.get(`${BASE_URL}/profile/user`);\n\nconst updateUser = ({ id, payload }) =>\n axios.put(`${BASE_URL}/profile/user/${id}`, payload);\n\nconst profileApi = { fetchCountries, fetchUserDetails, updateUser };\n\nexport default profileApi;\n","import { t } from \"i18next\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport * as yup from \"yup\";\n\nexport const PROFILE_VALIDATION_SCHEMA = yup.object().shape({\n firstName: yup\n .string()\n .trim()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.firstName\"))\n .matches(\n /^[\\p{L}\\p{N} ,'-áéíóúÁÉÍÓÚ]+$/iu,\n t(\"neetoTeamMembers.profile.form.invalidName\")\n )\n .matches(/^[^.]+$/i, t(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n lastName: yup\n .string()\n .trim()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.lastName\"))\n .matches(\n /^[\\p{L}\\p{N} ,'-áéíóúÁÉÍÓÚ]+$/iu,\n t(\"neetoTeamMembers.profile.form.invalidName\")\n )\n .matches(/^[^.]+$/i, t(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n dateFormat: yup\n .string()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.dateFormat\")),\n});\n\nexport const MY_PROFILE_PATH = \"/auth/profile/edit\";\n\nexport const ALLOWED_PROFILE_IMAGE_MIME_TYPES = [\"image/jpeg\", \"image/png\"];\nexport const IMAGE_DELETE_BUTTON_SIZE = 16;\nexport const STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES =\n globalProps.endUserUploadedFileSizeLimitInMb * 1024 * 1024;\n\nexport const VALIDATION_ERRORS = {\n invalid_type: t(\"neetoTeamMembers.profile.file.invalidType.image\"),\n corrupted_file: t(\"neetoTeamMembers.profile.file.corrupted\"),\n file_limit_exceeded: t(\"neetoTeamMembers.profile.file.limitExceeded\", {\n maxSize: globalProps.endUserUploadedFileSizeLimitInMb,\n }),\n};\n\nexport const DEFAULT_POPOVER_VALUES = {\n preferredDateFormat: {},\n preferredTimeFormat: {},\n timeZone: {},\n};\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\n\nimport profileApi from \"src/apis/profile\";\nimport { QUERY_KEYS } from \"src/common/constants\";\n\nconst useFetchCountries = options =>\n useQuery({\n queryKey: [QUERY_KEYS.COUNTRIES_LIST],\n queryFn: profileApi.fetchCountries,\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n });\n\nexport { useFetchCountries };\n","import { useCallback, useMemo, useState } from \"react\";\n\nimport { findById } from \"neetocist\";\n\nimport { useFetchCountries } from \"hooks/profile/useCountriesApi\";\n\nconst useCountries = () => {\n const [selectedCountryOption, setSelectedCountryOption] = useState(null);\n\n const { data: { countries = [] } = {}, isLoading } = useFetchCountries();\n\n const formatCountryOption = country => ({\n label: country?.name,\n value: country?.id,\n });\n\n const countryDropdownOptions = useMemo(\n () => countries.map(formatCountryOption),\n [countries]\n );\n\n const handleCountryChange = useCallback(\n countryOption => {\n setSelectedCountryOption(countryOption);\n\n const dependentFields = {};\n const selectedCountry = findById(countryOption.value, countries);\n\n dependentFields.dateFormat = selectedCountry.dateFormat;\n\n return dependentFields;\n },\n [countries]\n );\n\n return {\n countryDropdownOptions,\n selectedCountryOption,\n isFetchingCountriesList: isLoading,\n handleCountryChange,\n };\n};\n\nexport default useCountries;\n","import { useRef } from \"react\";\n\nimport { useField } from \"formik\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Edit } from \"neetoicons\";\nimport { Avatar, Dropdown, Toastr, Typography } from \"neetoui\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport {\n ALLOWED_PROFILE_IMAGE_MIME_TYPES,\n STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES,\n VALIDATION_ERRORS,\n} from \"./constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst ProfileImage = () => {\n const { t } = useTranslation();\n const fileInputRef = useRef(null);\n\n const [field, _, helpers] = useField(\"avatar\");\n const { setValue } = helpers;\n\n const avatarDetails = { imageUrl: field.value.imageUrl };\n\n const onProfileImageChange = event => {\n const imageFile = event.target.files[0];\n const validationError = validateProfileImage(imageFile);\n\n if (validationError) {\n Toastr.error(validationError);\n\n return validationError;\n }\n\n return setValue({\n imageUrl: URL.createObjectURL(imageFile),\n file: imageFile,\n });\n };\n\n const handleChangeImage = () => fileInputRef.current?.click();\n\n const handleRemoveImage = () => setValue({ imageUrl: \"\", file: \"_destroy\" });\n\n const validateProfileImage = imageFile => {\n const { type, size } = imageFile;\n\n if (!ALLOWED_PROFILE_IMAGE_MIME_TYPES.includes(type)) {\n return VALIDATION_ERRORS.invalid_type;\n }\n\n if (size === 0) return VALIDATION_ERRORS.corrupted_file;\n\n if (size > STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES) {\n return VALIDATION_ERRORS.file_limit_exceeded;\n }\n\n return null;\n };\n\n return (\n <div className=\"mb-4 flex flex-col items-center gap-2\">\n <div className=\"relative shrink-0\">\n <div className=\"absolute bottom-0 end-0 z-10\">\n <Dropdown\n // eslint-disable-next-line @bigbinary/neeto/use-neetoui-classes\n buttonProps={{ className: \"rounded-full\" }}\n buttonSize=\"small\"\n buttonStyle=\"tertiary\"\n icon={Edit}\n >\n <Menu>\n <MenuItem.Button\n data-testid=\"profile-image-upload-button\"\n onClick={handleChangeImage}\n >\n {avatarDetails?.imageUrl\n ? t(\"neetoTeamMembers.profile.avatar.changeProfilePicture\")\n : t(\"neetoTeamMembers.profile.avatar.uploadProfilePicture\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-testid=\"profile-image-remove-button\"\n onClick={handleRemoveImage}\n >\n {t(\"neetoTeamMembers.buttons.remove\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n <Avatar size=\"extraLarge\" user={avatarDetails} />\n </div>\n <div className=\"flex flex-col items-center\">\n <Typography\n className=\"neeto-ui-text-gray-600 text-center\"\n style=\"body3\"\n >\n <Trans\n i18nKey=\"neetoTeamMembers.profile.avatar.profilePictureUploadMessage\"\n values={{\n limit: globalProps.endUserUploadedFileSizeLimitInMb,\n }}\n />\n </Typography>\n <input\n hidden\n accept=\"image/*\"\n data-testid=\"profile-image-upload-file-field\"\n id=\"uploadProfileImage\"\n key={avatarDetails?.imageUrl}\n name=\"profile_image_path\"\n ref={fileInputRef}\n type=\"file\"\n onChange={onProfileImageChange}\n />\n </div>\n </div>\n );\n};\n\nexport default ProfileImage;\n"],"names":["fetchCountries","axios","get","concat","BASE_URL","fetchUserDetails","updateUser","_ref","id","payload","put","profileApi","PROFILE_VALIDATION_SCHEMA","yup","object","shape","firstName","string","trim","required","t","matches","lastName","dateFormat","MY_PROFILE_PATH","ALLOWED_PROFILE_IMAGE_MIME_TYPES","STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES","globalProps","endUserUploadedFileSizeLimitInMb","VALIDATION_ERRORS","invalid_type","corrupted_file","file_limit_exceeded","maxSize","DEFAULT_POPOVER_VALUES","preferredDateFormat","preferredTimeFormat","timeZone","useFetchCountries","options","useQuery","_objectSpread","queryKey","QUERY_KEYS","COUNTRIES_LIST","queryFn","staleTime","DEFAULT_STALE_TIME","useCountries","_useState","useState","_useState2","_slicedToArray","selectedCountryOption","setSelectedCountryOption","_useFetchCountries","_useFetchCountries$da","data","_useFetchCountries$da2","_useFetchCountries$da3","countries","isLoading","formatCountryOption","country","label","name","value","countryDropdownOptions","useMemo","map","handleCountryChange","useCallback","countryOption","dependentFields","selectedCountry","findById","isFetchingCountriesList","Menu","Dropdown","MenuItem","ProfileImage","_useTranslation","useTranslation","fileInputRef","useRef","_useField","useField","_useField2","field","_","helpers","setValue","avatarDetails","imageUrl","onProfileImageChange","event","imageFile","target","files","validationError","validateProfileImage","Toastr","error","URL","createObjectURL","file","handleChangeImage","_fileInputRef$current","current","click","handleRemoveImage","type","size","includes","_jsxs","className","children","_jsx","buttonProps","buttonSize","buttonStyle","icon","Edit","Button","onClick","Avatar","user","Typography","style","Trans","i18nKey","values","limit","hidden","accept","ref","onChange"],"mappings":"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"}
1
+ {"version":3,"file":"ProfileImage-DLfKHCcF.js","sources":["../app/javascript/src/apis/profile.js","../app/javascript/src/components/Profile/constants.js","../app/javascript/src/hooks/profile/useCountriesApi.js","../app/javascript/src/components/Profile/hooks/useCountries.js","../app/javascript/src/components/Profile/ProfileImage.jsx"],"sourcesContent":["import axios from \"axios\";\n\nimport { BASE_URL } from \"src/common/constants\";\n\nconst fetchCountries = () => axios.get(`${BASE_URL}/profile/countries`);\n\nconst fetchUserDetails = () => axios.get(`${BASE_URL}/profile/user`);\n\nconst updateUser = ({ id, payload }) =>\n axios.put(`${BASE_URL}/profile/user/${id}`, payload);\n\nconst profileApi = { fetchCountries, fetchUserDetails, updateUser };\n\nexport default profileApi;\n","import { t } from \"i18next\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport * as yup from \"yup\";\n\nexport const PROFILE_VALIDATION_SCHEMA = yup.object().shape({\n firstName: yup\n .string()\n .trim()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.firstName\"))\n .matches(\n /^[\\p{L}\\p{N} ,'-áéíóúÁÉÍÓÚ]+$/iu,\n t(\"neetoTeamMembers.profile.form.invalidName\")\n )\n .matches(/^[^.]+$/i, t(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n lastName: yup\n .string()\n .trim()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.lastName\"))\n .matches(\n /^[\\p{L}\\p{N} ,'-áéíóúÁÉÍÓÚ]+$/iu,\n t(\"neetoTeamMembers.profile.form.invalidName\")\n )\n .matches(/^[^.]+$/i, t(\"neetoTeamMembers.profile.form.dotsNotAllowed\")),\n dateFormat: yup\n .string()\n .required(t(\"neetoTeamMembers.profile.form.isRequired.dateFormat\")),\n});\n\nexport const MY_PROFILE_PATH = \"/auth/profile/edit\";\n\nexport const ALLOWED_PROFILE_IMAGE_MIME_TYPES = [\"image/jpeg\", \"image/png\"];\nexport const IMAGE_DELETE_BUTTON_SIZE = 16;\nexport const STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES =\n globalProps.endUserUploadedFileSizeLimitInMb * 1024 * 1024;\n\nexport const VALIDATION_ERRORS = {\n invalid_type: t(\"neetoTeamMembers.profile.file.invalidType.image\"),\n corrupted_file: t(\"neetoTeamMembers.profile.file.corrupted\"),\n file_limit_exceeded: t(\"neetoTeamMembers.profile.file.limitExceeded\", {\n maxSize: globalProps.endUserUploadedFileSizeLimitInMb,\n }),\n};\n\nexport const DEFAULT_POPOVER_VALUES = {\n preferredDateFormat: {},\n preferredTimeFormat: {},\n timeZone: {},\n};\n","import { useQuery } from \"@tanstack/react-query\";\nimport { DEFAULT_STALE_TIME } from \"neetocommons/constants\";\n\nimport profileApi from \"src/apis/profile\";\nimport { QUERY_KEYS } from \"src/common/constants\";\n\nconst useFetchCountries = options =>\n useQuery({\n queryKey: [QUERY_KEYS.COUNTRIES_LIST],\n queryFn: profileApi.fetchCountries,\n staleTime: DEFAULT_STALE_TIME,\n ...options,\n });\n\nexport { useFetchCountries };\n","import { useCallback, useMemo, useState } from \"react\";\n\nimport { findById } from \"neetocist\";\n\nimport { useFetchCountries } from \"hooks/profile/useCountriesApi\";\n\nconst useCountries = () => {\n const [selectedCountryOption, setSelectedCountryOption] = useState(null);\n\n const { data: { countries = [] } = {}, isLoading } = useFetchCountries();\n\n const formatCountryOption = country => ({\n label: country?.name,\n value: country?.id,\n });\n\n const countryDropdownOptions = useMemo(\n () => countries.map(formatCountryOption),\n [countries]\n );\n\n const handleCountryChange = useCallback(\n countryOption => {\n setSelectedCountryOption(countryOption);\n\n const dependentFields = {};\n const selectedCountry = findById(countryOption.value, countries);\n\n dependentFields.dateFormat = selectedCountry.dateFormat;\n\n return dependentFields;\n },\n [countries]\n );\n\n return {\n countryDropdownOptions,\n selectedCountryOption,\n isFetchingCountriesList: isLoading,\n handleCountryChange,\n };\n};\n\nexport default useCountries;\n","import { useRef } from \"react\";\n\nimport { useField } from \"formik\";\nimport { globalProps } from \"neetocommons/initializers\";\nimport { Edit } from \"neetoicons\";\nimport { Avatar, Dropdown, Toastr, Typography } from \"neetoui\";\nimport { useTranslation, Trans } from \"react-i18next\";\n\nimport {\n ALLOWED_PROFILE_IMAGE_MIME_TYPES,\n STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES,\n VALIDATION_ERRORS,\n} from \"./constants\";\n\nconst { Menu, MenuItem } = Dropdown;\n\nconst ProfileImage = () => {\n const { t } = useTranslation();\n const fileInputRef = useRef(null);\n\n const [field, _, helpers] = useField(\"avatar\");\n const { setValue } = helpers;\n\n const avatarDetails = { imageUrl: field.value.imageUrl };\n\n const onProfileImageChange = event => {\n const imageFile = event.target.files[0];\n const validationError = validateProfileImage(imageFile);\n\n if (validationError) {\n Toastr.error(validationError);\n\n return validationError;\n }\n\n return setValue({\n imageUrl: URL.createObjectURL(imageFile),\n file: imageFile,\n });\n };\n\n const handleChangeImage = () => fileInputRef.current?.click();\n\n const handleRemoveImage = () => setValue({ imageUrl: \"\", file: \"_destroy\" });\n\n const validateProfileImage = imageFile => {\n const { type, size } = imageFile;\n\n if (!ALLOWED_PROFILE_IMAGE_MIME_TYPES.includes(type)) {\n return VALIDATION_ERRORS.invalid_type;\n }\n\n if (size === 0) return VALIDATION_ERRORS.corrupted_file;\n\n if (size > STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES) {\n return VALIDATION_ERRORS.file_limit_exceeded;\n }\n\n return null;\n };\n\n return (\n <div className=\"mb-4 flex flex-col items-center gap-2\">\n <div className=\"relative shrink-0\">\n <div className=\"absolute bottom-0 end-0 z-10\">\n <Dropdown\n // eslint-disable-next-line @bigbinary/neeto/use-neetoui-classes\n buttonProps={{ className: \"rounded-full\" }}\n buttonSize=\"small\"\n buttonStyle=\"tertiary\"\n icon={Edit}\n >\n <Menu>\n <MenuItem.Button\n data-testid=\"profile-image-upload-button\"\n onClick={handleChangeImage}\n >\n {avatarDetails?.imageUrl\n ? t(\"neetoTeamMembers.profile.avatar.changeProfilePicture\")\n : t(\"neetoTeamMembers.profile.avatar.uploadProfilePicture\")}\n </MenuItem.Button>\n <MenuItem.Button\n data-testid=\"profile-image-remove-button\"\n onClick={handleRemoveImage}\n >\n {t(\"neetoTeamMembers.buttons.remove\")}\n </MenuItem.Button>\n </Menu>\n </Dropdown>\n </div>\n <Avatar size=\"extraLarge\" user={avatarDetails} />\n </div>\n <div className=\"flex flex-col items-center\">\n <Typography\n className=\"neeto-ui-text-gray-600 text-center\"\n style=\"body3\"\n >\n <Trans\n i18nKey=\"neetoTeamMembers.profile.avatar.profilePictureUploadMessage\"\n values={{\n limit: globalProps.endUserUploadedFileSizeLimitInMb,\n }}\n />\n </Typography>\n <input\n hidden\n accept=\"image/*\"\n data-testid=\"profile-image-upload-file-field\"\n id=\"uploadProfileImage\"\n key={avatarDetails?.imageUrl}\n name=\"profile_image_path\"\n ref={fileInputRef}\n type=\"file\"\n onChange={onProfileImageChange}\n />\n </div>\n </div>\n );\n};\n\nexport default ProfileImage;\n"],"names":["fetchCountries","axios","get","concat","BASE_URL","fetchUserDetails","updateUser","_ref","id","payload","put","profileApi","PROFILE_VALIDATION_SCHEMA","yup","object","shape","firstName","string","trim","required","t","matches","lastName","dateFormat","MY_PROFILE_PATH","ALLOWED_PROFILE_IMAGE_MIME_TYPES","STATIC_PROFILE_IMAGE_MAX_SIZE_IN_BYTES","globalProps","endUserUploadedFileSizeLimitInMb","VALIDATION_ERRORS","invalid_type","corrupted_file","file_limit_exceeded","maxSize","DEFAULT_POPOVER_VALUES","preferredDateFormat","preferredTimeFormat","timeZone","useFetchCountries","options","useQuery","_objectSpread","queryKey","QUERY_KEYS","COUNTRIES_LIST","queryFn","staleTime","DEFAULT_STALE_TIME","useCountries","_useState","useState","_useState2","_slicedToArray","selectedCountryOption","setSelectedCountryOption","_useFetchCountries","_useFetchCountries$da","data","_useFetchCountries$da2","_useFetchCountries$da3","countries","isLoading","formatCountryOption","country","label","name","value","countryDropdownOptions","useMemo","map","handleCountryChange","useCallback","countryOption","dependentFields","selectedCountry","findById","isFetchingCountriesList","Menu","Dropdown","MenuItem","ProfileImage","_useTranslation","useTranslation","fileInputRef","useRef","_useField","useField","_useField2","field","_","helpers","setValue","avatarDetails","imageUrl","onProfileImageChange","event","imageFile","target","files","validationError","validateProfileImage","Toastr","error","URL","createObjectURL","file","handleChangeImage","_fileInputRef$current","current","click","handleRemoveImage","type","size","includes","_jsxs","className","children","_jsx","buttonProps","buttonSize","buttonStyle","icon","Edit","Button","onClick","Avatar","user","Typography","style","Trans","i18nKey","values","limit","hidden","accept","ref","onChange"],"mappings":"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"}