datastake-daf 0.6.798 → 0.6.799

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 (76) hide show
  1. package/dist/components/index.js +3158 -985
  2. package/dist/context/index.js +6 -6
  3. package/dist/pages/index.js +252 -13
  4. package/dist/services/index.js +112 -9
  5. package/dist/utils/index.js +14 -17
  6. package/package.json +1 -1
  7. package/src/@daf/core/components/Screens/Admin/AdminDashboard/components/UserStatistics/TopContributors/hook.js +0 -1
  8. package/src/@daf/core/components/Screens/Admin/AdminDashboard/components/UserStatistics/TopContributors/index.jsx +1 -1
  9. package/src/@daf/core/components/Screens/Admin/AdminDashboard/components/UserStatistics/UserGrowth/hook.js +1 -1
  10. package/src/@daf/core/components/Screens/Admin/AdminDashboard/components/UserStatistics/UserGrowth/index.jsx +1 -1
  11. package/src/@daf/core/components/Screens/Admin/AdminModals/AddUser/index.jsx +0 -1
  12. package/src/@daf/core/components/Screens/Admin/AdminModals/CombineLocation/columns.js +79 -0
  13. package/src/@daf/core/components/Screens/Admin/AdminModals/CombineLocation/helper.js +2 -2
  14. package/src/@daf/core/components/Screens/Admin/AdminModals/CombineLocation/index.jsx +18 -8
  15. package/src/@daf/core/components/Screens/Admin/AdminModals/CombineSubjects/index.jsx +6 -6
  16. package/src/@daf/core/components/Screens/Admin/AdminModals/NewAccount/index.jsx +1 -1
  17. package/src/@daf/core/components/Screens/Admin/AdminModals/NewUser/index.jsx +61 -38
  18. package/src/@daf/core/components/Screens/Admin/AdminScreens/Accounts.jsx +1 -4
  19. package/src/@daf/core/components/Screens/Admin/AdminScreens/AccountsView.jsx +2 -0
  20. package/src/@daf/core/components/Screens/Admin/AdminScreens/Dashboard.jsx +2 -2
  21. package/src/@daf/core/components/Screens/Admin/AdminScreens/Location.jsx +6 -7
  22. package/src/@daf/core/components/Screens/Admin/AdminScreens/Subjects.jsx +2 -3
  23. package/src/@daf/core/components/Screens/Admin/AdminScreens/SubjectsView.jsx +395 -0
  24. package/src/@daf/core/components/Screens/Admin/AdminScreens/index.js +1 -0
  25. package/src/@daf/core/components/Screens/Admin/AdminTables/AccountTable/index.jsx +1 -0
  26. package/src/@daf/core/components/Screens/Admin/AdminTables/LocationTable/column.js +223 -0
  27. package/src/@daf/core/components/Screens/Admin/AdminTables/LocationTable/helper.js +65 -0
  28. package/src/@daf/core/components/Screens/Admin/AdminTables/LocationTable/index.jsx +73 -45
  29. package/src/@daf/core/components/Screens/Admin/AdminTables/SubjectsTable/columns.js +37 -37
  30. package/src/@daf/core/components/Screens/Admin/AdminTables/SubjectsTable/index.jsx +48 -22
  31. package/src/@daf/core/components/Screens/Admin/AdminTables/UserTable/index.jsx +1 -0
  32. package/src/@daf/core/components/Screens/Admin/AdminViews/EditLocation/configTransformer.js +137 -0
  33. package/src/@daf/core/components/Screens/Admin/AdminViews/EditLocation/index.js +9 -0
  34. package/src/@daf/core/components/Screens/Admin/AdminViews/EditLocation/index.jsx +196 -0
  35. package/src/@daf/core/components/Screens/Admin/AdminViews/EditStakeholder/configTransformer.js +216 -0
  36. package/src/@daf/core/components/Screens/Admin/AdminViews/EditStakeholder/index.js +7 -0
  37. package/src/@daf/core/components/Screens/Admin/AdminViews/EditStakeholder/index.jsx +184 -0
  38. package/src/@daf/core/components/Screens/Admin/AdminViews/ViewLocation/config.js +64 -0
  39. package/src/@daf/core/components/Screens/Admin/AdminViews/ViewLocation/helpers.js +13 -0
  40. package/src/@daf/core/components/Screens/Admin/AdminViews/ViewLocation/index.jsx +77 -0
  41. package/src/@daf/core/components/Screens/Admin/AdminViews/ViewStakeholder/config.js +51 -0
  42. package/src/@daf/core/components/Screens/Admin/AdminViews/ViewStakeholder/helpers.js +0 -0
  43. package/src/@daf/core/components/Screens/Admin/AdminViews/ViewStakeholder/index.jsx +75 -0
  44. package/src/@daf/core/components/Screens/Admin/AdminViews/components/Edit/index.jsx +7 -1
  45. package/src/@daf/core/components/Screens/Admin/AdminViews/components/SidebarMenu/index.jsx +5 -3
  46. package/src/@daf/core/components/Screens/Admin/AdminViews/components/Users/helper.js +13 -8
  47. package/src/@daf/core/components/Screens/Admin/AdminViews/components/Users/index.jsx +16 -10
  48. package/src/@daf/core/components/Screens/Admin/AdminViews/components/View/index.jsx +2 -1
  49. package/src/@daf/core/components/Screens/Admin/AdminViews/index.jsx +66 -26
  50. package/src/@daf/core/components/Screens/Admin/AppInvitation/index.jsx +193 -0
  51. package/src/@daf/core/components/Screens/Admin/adminRoutes.js +81 -2
  52. package/src/@daf/layouts/AppLayout/index.jsx +0 -1
  53. package/src/@daf/pages/SelfAssesment/components/AssociatedInformationTable/columns.js +180 -0
  54. package/src/@daf/pages/SelfAssesment/components/AssociatedInformationTable/config.js +0 -0
  55. package/src/@daf/pages/SelfAssesment/components/AssociatedInformationTable/index.jsx +27 -0
  56. package/src/@daf/pages/SelfAssesment/components/OrgInformationTable/columns.js +157 -0
  57. package/src/@daf/pages/SelfAssesment/components/OrgInformationTable/config.js +31 -0
  58. package/src/@daf/pages/SelfAssesment/components/OrgInformationTable/index.js +77 -0
  59. package/src/@daf/pages/SelfAssesment/components/ProductionSiteTable/columns.js +117 -0
  60. package/src/@daf/pages/SelfAssesment/components/ProductionSiteTable/index.jsx +54 -0
  61. package/src/@daf/pages/SelfAssesment/index.jsx +0 -0
  62. package/src/@daf/pages/View/hooks/usePrepareForm.js +11 -1
  63. package/src/@daf/pages/View/index.jsx +13 -2
  64. package/src/@daf/services/AdminService.js +111 -7
  65. package/src/@daf/services/AuthenticationService.js +1 -0
  66. package/src/@daf/services/DashboardService.js +2 -1
  67. package/src/@daf/utils/filters.js +15 -13
  68. package/src/constants/locales/en/translation.js +7 -0
  69. package/src/constants/locales/fr/translation.js +1 -1
  70. package/src/constants/locales/sp/translation.js +1 -1
  71. package/src/index.js +1 -0
  72. package/build/favicon.ico +0 -0
  73. package/build/logo192.png +0 -0
  74. package/build/logo512.png +0 -0
  75. package/build/manifest.json +0 -25
  76. package/build/robots.txt +0 -3
@@ -385,7 +385,7 @@ const assignParamsToUrl = (path, params) => {
385
385
  * @returns storage objects
386
386
  * @class StorageManager
387
387
  */
388
- class StorageManager$1 {
388
+ class StorageManager {
389
389
  /**
390
390
  * @description Set or update given value in localStorage
391
391
  * @static
@@ -520,11 +520,11 @@ class StorageManager$1 {
520
520
  const isProxy = () => {
521
521
  const pathname = window.location.pathname;
522
522
  if (pathname.includes('/proxy/pme') || pathname.includes('/proxy/cadd')) {
523
- return window.opener || !!StorageManager$1.get('proxy_token');
523
+ return window.opener || !!StorageManager.get('proxy_token');
524
524
  }
525
525
  return false;
526
526
  };
527
- const getToken = () => isProxy() ? StorageManager$1.get('proxy_token') : StorageManager$1.get('token');
527
+ const getToken = () => isProxy() ? StorageManager.get('proxy_token') : StorageManager.get('token');
528
528
 
529
529
  /**
530
530
  * Custom params serializer to maintain JSON format for nested objects
@@ -870,7 +870,7 @@ class ErrorService {
870
870
  class BaseService extends BaseHTTPService {
871
871
  constructor() {
872
872
  const errorHandler = createErrorHandler({
873
- getStorageManager: () => StorageManager$1,
873
+ getStorageManager: () => StorageManager,
874
874
  handleError: ({
875
875
  status,
876
876
  statusText,
@@ -890,7 +890,7 @@ class BaseService extends BaseHTTPService {
890
890
  onUnauthorized: () => {
891
891
  console.warn('[BaseService] 401 Unauthorized - Token cleared, redirecting to /');
892
892
  console.trace('[BaseService] Unauthorized call stack:');
893
- StorageManager$1.clearOne('token');
893
+ StorageManager.clearOne('token');
894
894
  if (typeof window !== 'undefined') {
895
895
  window.location.href = '/';
896
896
  }
@@ -907,7 +907,7 @@ class BaseService extends BaseHTTPService {
907
907
  getHeaders: () => {
908
908
  const config = getServicesConfig();
909
909
  return {
910
- Language: StorageManager$1.get('datastakeLng') || 'en',
910
+ Language: StorageManager.get('datastakeLng') || 'en',
911
911
  'ngrok-skip-browser-warning': true,
912
912
  Application: config.application
913
913
  };
@@ -4965,7 +4965,7 @@ Timeframe.propTypes = {
4965
4965
  * @returns storage objects
4966
4966
  * @class StorageManager
4967
4967
  */
4968
- class StorageManager$1 {
4968
+ class StorageManager {
4969
4969
  /**
4970
4970
  * @description Set or update given value in localStorage
4971
4971
  * @static
@@ -5100,11 +5100,11 @@ class StorageManager$1 {
5100
5100
  const isProxy = () => {
5101
5101
  const pathname = window.location.pathname;
5102
5102
  if (pathname.includes('/proxy/pme') || pathname.includes('/proxy/cadd')) {
5103
- return window.opener || !!StorageManager$1.get('proxy_token');
5103
+ return window.opener || !!StorageManager.get('proxy_token');
5104
5104
  }
5105
5105
  return false;
5106
5106
  };
5107
- const getToken = () => isProxy() ? StorageManager$1.get('proxy_token') : StorageManager$1.get('token');
5107
+ const getToken = () => isProxy() ? StorageManager.get('proxy_token') : StorageManager.get('token');
5108
5108
 
5109
5109
  /**
5110
5110
  * @function
@@ -7145,7 +7145,7 @@ class ErrorService {
7145
7145
  class BaseService extends BaseHTTPService {
7146
7146
  constructor() {
7147
7147
  const errorHandler = createErrorHandler({
7148
- getStorageManager: () => StorageManager$1,
7148
+ getStorageManager: () => StorageManager,
7149
7149
  handleError: ({
7150
7150
  status,
7151
7151
  statusText,
@@ -7165,7 +7165,7 @@ class BaseService extends BaseHTTPService {
7165
7165
  onUnauthorized: () => {
7166
7166
  console.warn('[BaseService] 401 Unauthorized - Token cleared, redirecting to /');
7167
7167
  console.trace('[BaseService] Unauthorized call stack:');
7168
- StorageManager$1.clearOne('token');
7168
+ StorageManager.clearOne('token');
7169
7169
  if (typeof window !== 'undefined') {
7170
7170
  window.location.href = '/';
7171
7171
  }
@@ -7182,7 +7182,7 @@ class BaseService extends BaseHTTPService {
7182
7182
  getHeaders: () => {
7183
7183
  const config = getServicesConfig();
7184
7184
  return {
7185
- Language: StorageManager$1.get('datastakeLng') || 'en',
7185
+ Language: StorageManager.get('datastakeLng') || 'en',
7186
7186
  'ngrok-skip-browser-warning': true,
7187
7187
  Application: config.application
7188
7188
  };
@@ -17791,7 +17791,7 @@ const useFilters = ({
17791
17791
  }
17792
17792
  return all;
17793
17793
  }, {});
17794
- const filters = StorageManager$1.saveFilters(module, view, {
17794
+ const filters = StorageManager.saveFilters(module, view, {
17795
17795
  ...filteredFilters
17796
17796
  });
17797
17797
  if (!filters.pageSize) {
@@ -17881,7 +17881,7 @@ const useFilters = ({
17881
17881
  if (isNaN(page.current)) {
17882
17882
  page.current = 1;
17883
17883
  }
17884
- const filters = StorageManager$1.saveFilters(module, view, {
17884
+ const filters = StorageManager.saveFilters(module, view, {
17885
17885
  page: page.current
17886
17886
  }, true);
17887
17887
  updateQuery(filters, page.current);
@@ -44287,7 +44287,7 @@ const useSummary = ({
44287
44287
  label: item?.name,
44288
44288
  value: item?.datastakeId
44289
44289
  })) : [];
44290
- const storedData = StorageManager$1.get(storageKey);
44290
+ const storedData = StorageManager.get(storageKey);
44291
44291
  if (storedData) {
44292
44292
  try {
44293
44293
  const parsedStoredData = JSON.parse(storedData);
@@ -44308,7 +44308,7 @@ const useSummary = ({
44308
44308
  if (isPdf) {
44309
44309
  selectedValue = id;
44310
44310
  } else {
44311
- const storedData = StorageManager$1.get(storageKey);
44311
+ const storedData = StorageManager.get(storageKey);
44312
44312
  if (storedData) {
44313
44313
  try {
44314
44314
  const parsedData = JSON.parse(storedData);
@@ -44339,7 +44339,7 @@ const useSummary = ({
44339
44339
  label: selectedData.name,
44340
44340
  value: selectedData.datastakeId
44341
44341
  };
44342
- StorageManager$1.set(storageKey, JSON.stringify(saved));
44342
+ StorageManager.set(storageKey, JSON.stringify(saved));
44343
44343
  }
44344
44344
  }
44345
44345
  }, [selectedItem, storageKey, data]);
@@ -50765,6 +50765,207 @@ styled__default["default"].div`
50765
50765
  }
50766
50766
  `;
50767
50767
 
50768
+ class AdminService extends BaseService {
50769
+ updateCompany(id, data) {
50770
+ return this.apiPut({
50771
+ url: `/companies/${id}`,
50772
+ data
50773
+ });
50774
+ }
50775
+ getAccount({
50776
+ id
50777
+ }) {
50778
+ return this.apiGet({
50779
+ url: `/accounts/${id}`
50780
+ });
50781
+ }
50782
+ inviteCompanyAccount({
50783
+ companyId,
50784
+ data
50785
+ }) {
50786
+ return this.apiPost({
50787
+ url: `/accounts/${companyId}/invite`,
50788
+ data
50789
+ });
50790
+ }
50791
+ inviteAccount(data) {
50792
+ return this.apiPost({
50793
+ url: `/accounts/inviteAccount`,
50794
+ data
50795
+ });
50796
+ }
50797
+ getAccounts({
50798
+ params
50799
+ }) {
50800
+ return this.apiGet({
50801
+ params,
50802
+ url: `/accounts`
50803
+ });
50804
+ }
50805
+ updateAccount({
50806
+ data,
50807
+ id
50808
+ }) {
50809
+ return this.apiPut({
50810
+ data,
50811
+ url: `/accounts/${id}`
50812
+ });
50813
+ }
50814
+ toggleAccountStatus({
50815
+ id
50816
+ }) {
50817
+ return this.apiPut({
50818
+ url: `/accounts/suspendActivate/${id}`
50819
+ });
50820
+ }
50821
+ transferAdmin({
50822
+ userId,
50823
+ id
50824
+ }) {
50825
+ return this.apiPut({
50826
+ url: `/accounts/transfer-rights/${id}`,
50827
+ data: {
50828
+ userId
50829
+ }
50830
+ });
50831
+ }
50832
+ getUsers({
50833
+ params
50834
+ }) {
50835
+ return this.apiGet({
50836
+ params,
50837
+ url: `/accounts/users`
50838
+ });
50839
+ }
50840
+ impersonate({
50841
+ id
50842
+ }) {
50843
+ return this.apiGet({
50844
+ url: `/accounts/impersonate/${id}`
50845
+ });
50846
+ }
50847
+ cancelInvitation({
50848
+ token
50849
+ }) {
50850
+ return this.apiPut({
50851
+ url: `/accounts/cancelInvitation/${token}`
50852
+ });
50853
+ }
50854
+ getSubjects({
50855
+ subject,
50856
+ params
50857
+ }) {
50858
+ return this.apiGet({
50859
+ url: `/management/subjects/${subject}`,
50860
+ params
50861
+ });
50862
+ }
50863
+ mergeLocations({
50864
+ ids,
50865
+ data
50866
+ }) {
50867
+ const [id1, id2, ...remainingIds] = ids || [];
50868
+ if (!id1 || !id2) {
50869
+ throw new Error('At least two IDs are required for merging');
50870
+ }
50871
+ const url = `/management/merge/location/${id1}/${id2}`;
50872
+ const payload = {
50873
+ ...data
50874
+ };
50875
+ if (remainingIds.length > 0) {
50876
+ payload.additionalIds = remainingIds;
50877
+ }
50878
+ return this.apiPost({
50879
+ url,
50880
+ data: payload
50881
+ });
50882
+ }
50883
+ mergeSubjects({
50884
+ subject,
50885
+ ids,
50886
+ data
50887
+ }) {
50888
+ const [id1, id2, ...remainingIds] = ids || [];
50889
+ if (!id1 || !id2) {
50890
+ throw new Error('At least two IDs are required for merging');
50891
+ }
50892
+ const url = `/management/merge/${subject}/${id1}/${id2}`;
50893
+ const payload = {
50894
+ ...data
50895
+ };
50896
+ if (remainingIds.length > 0) {
50897
+ payload.additionalIds = remainingIds;
50898
+ }
50899
+ return this.apiPost({
50900
+ url,
50901
+ data: payload
50902
+ });
50903
+ }
50904
+ getSubjectForm({
50905
+ subject,
50906
+ scope = 'global'
50907
+ }) {
50908
+ return this.apiGet({
50909
+ url: `/forms/${subject}`,
50910
+ params: {
50911
+ scope
50912
+ }
50913
+ });
50914
+ }
50915
+ getSubjectData({
50916
+ subject,
50917
+ id
50918
+ }) {
50919
+ return this.apiGet({
50920
+ url: `/management/subject/${subject}/${id}`
50921
+ });
50922
+ }
50923
+ viewLocation({
50924
+ id
50925
+ }) {
50926
+ return this.apiGet({
50927
+ url: `/management/subject/location/${id}`
50928
+ });
50929
+ }
50930
+ viewStakeholder({
50931
+ id
50932
+ }) {
50933
+ return this.apiGet({
50934
+ url: `/management/subject/stakeholder/${id}`
50935
+ });
50936
+ }
50937
+ updateSubject({
50938
+ subject,
50939
+ id,
50940
+ data
50941
+ }) {
50942
+ const type = subject === 'location' ? 'location' : 'stakeholder';
50943
+ return this.apiPut({
50944
+ url: `/management/subject/${type}/${id}`,
50945
+ data
50946
+ });
50947
+ }
50948
+ deleteSubject({
50949
+ subject,
50950
+ id
50951
+ }) {
50952
+ const type = subject === 'location' ? 'location' : 'stakeholder';
50953
+ return this.apiDelete({
50954
+ url: `/management/subject/${type}/${id}`
50955
+ });
50956
+ }
50957
+ getUserGrowth(activeFilter) {
50958
+ return this.apiGet({
50959
+ url: `/accounts/dashboard/user-growth`,
50960
+ isUserManager: true,
50961
+ params: {
50962
+ activeFilter
50963
+ }
50964
+ });
50965
+ }
50966
+ }
50967
+ createLazyService(AdminService);
50968
+
50768
50969
  const Styles = styled__default["default"].div`
50769
50970
  width: 100%;
50770
50971
  height: 100vh;
@@ -57517,9 +57718,28 @@ const usePrepareForm$1 = ({
57517
57718
  const [linkingForms, setLinkingForms] = React.useState({});
57518
57719
  const [loading, setLoading] = React.useState(true);
57519
57720
  const [notFound, setNotFound] = React.useState(false);
57721
+ console.log({
57722
+ form,
57723
+ data,
57724
+ groups,
57725
+ linkingForms,
57726
+ loading,
57727
+ notFound
57728
+ });
57520
57729
  const prepareForm = currentView => {
57521
57730
  const dKey = namespaceConfig?.dataKey;
57522
57731
  const nKey = `${APP}-${currentView}`;
57732
+ console.log({
57733
+ dKey,
57734
+ nKey,
57735
+ allData
57736
+ });
57737
+ console.log({
57738
+ condition1: hasKeyInObject(allData, dKey)
57739
+ });
57740
+ console.log({
57741
+ condition2: hasKeyInObject(allData[dKey], nKey)
57742
+ });
57523
57743
  if (hasKeyInObject(allData, dKey) && hasKeyInObject(allData[dKey], nKey)) {
57524
57744
  const {
57525
57745
  form = {},
@@ -57527,7 +57747,9 @@ const usePrepareForm$1 = ({
57527
57747
  config = {},
57528
57748
  linkingForms = {}
57529
57749
  } = JSON.parse(JSON.stringify(allData[dKey][nKey] || {}));
57530
- if (data.datastakeId === id || id === "user") {
57750
+ console.log("here", dKey, nKey);
57751
+ if (data.datastakeId === id || id === "user" || data.id === id) {
57752
+ console.log("here2", data.datastakeId, id, data.id);
57531
57753
  // if (viewConfig.linkingSubjects.includes(namespace)) {
57532
57754
  setForm({
57533
57755
  ...form,
@@ -57555,6 +57777,7 @@ const usePrepareForm$1 = ({
57555
57777
  }
57556
57778
  }
57557
57779
  }
57780
+ console.log('data', data);
57558
57781
  };
57559
57782
  const getCertainData = allData?.[namespaceConfig?.dataKey];
57560
57783
  React.useEffect(() => {
@@ -58310,7 +58533,10 @@ const View = ({
58310
58533
  namespaceOverrides: namespaceOverrides
58311
58534
  });
58312
58535
  const groupForm = React.useMemo(() => {
58313
- const gF = form[group] || {};
58536
+ // If no group is specified, use the first available group
58537
+ const formKeys = Object.keys(form || {});
58538
+ const selectedGroup = group || (formKeys.length > 0 ? formKeys[0] : null);
58539
+ const gF = selectedGroup ? form[selectedGroup] || {} : {};
58314
58540
  if (subsection) {
58315
58541
  const sectionForms = groupSubsections(gF);
58316
58542
  if (sectionForms[subsection]) {
@@ -58408,6 +58634,19 @@ const View = ({
58408
58634
  const actionButtons = React.useMemo(() => {
58409
58635
  return groupForm?.template === "linkingSubjects" ? pageActions.filter(v => v.key !== "edit") : pageActions;
58410
58636
  }, [groupForm, pageActions]);
58637
+ console.log({
58638
+ namespaceConfiguration,
58639
+ namespaceConfig,
58640
+ allData,
58641
+ namespace,
58642
+ id,
58643
+ group,
58644
+ subsection,
58645
+ version,
58646
+ source,
58647
+ isSupported,
58648
+ notFound
58649
+ });
58411
58650
  if (!isSupported || notFound) {
58412
58651
  return /*#__PURE__*/jsxRuntime.jsx(Loading, {});
58413
58652
  }
@@ -50,7 +50,7 @@ const assignParamsToUrl = (path, params) => {
50
50
  * @returns storage objects
51
51
  * @class StorageManager
52
52
  */
53
- class StorageManager$1 {
53
+ class StorageManager {
54
54
  /**
55
55
  * @description Set or update given value in localStorage
56
56
  * @static
@@ -185,11 +185,11 @@ class StorageManager$1 {
185
185
  const isProxy = () => {
186
186
  const pathname = window.location.pathname;
187
187
  if (pathname.includes('/proxy/pme') || pathname.includes('/proxy/cadd')) {
188
- return window.opener || !!StorageManager$1.get('proxy_token');
188
+ return window.opener || !!StorageManager.get('proxy_token');
189
189
  }
190
190
  return false;
191
191
  };
192
- const getToken = () => isProxy() ? StorageManager$1.get('proxy_token') : StorageManager$1.get('token');
192
+ const getToken = () => isProxy() ? StorageManager.get('proxy_token') : StorageManager.get('token');
193
193
 
194
194
  /**
195
195
  * Custom params serializer to maintain JSON format for nested objects
@@ -626,7 +626,7 @@ class ErrorService {
626
626
  class BaseService extends BaseHTTPService {
627
627
  constructor() {
628
628
  const errorHandler = createErrorHandler({
629
- getStorageManager: () => StorageManager$1,
629
+ getStorageManager: () => StorageManager,
630
630
  handleError: ({
631
631
  status,
632
632
  statusText,
@@ -646,7 +646,7 @@ class BaseService extends BaseHTTPService {
646
646
  onUnauthorized: () => {
647
647
  console.warn('[BaseService] 401 Unauthorized - Token cleared, redirecting to /');
648
648
  console.trace('[BaseService] Unauthorized call stack:');
649
- StorageManager$1.clearOne('token');
649
+ StorageManager.clearOne('token');
650
650
  if (typeof window !== 'undefined') {
651
651
  window.location.href = '/';
652
652
  }
@@ -663,7 +663,7 @@ class BaseService extends BaseHTTPService {
663
663
  getHeaders: () => {
664
664
  const config = getServicesConfig();
665
665
  return {
666
- Language: StorageManager$1.get('datastakeLng') || 'en',
666
+ Language: StorageManager.get('datastakeLng') || 'en',
667
667
  'ngrok-skip-browser-warning': true,
668
668
  Application: config.application
669
669
  };
@@ -697,6 +697,15 @@ class AdminService extends BaseService {
697
697
  url: `/accounts/${id}`
698
698
  });
699
699
  }
700
+ inviteCompanyAccount({
701
+ companyId,
702
+ data
703
+ }) {
704
+ return this.apiPost({
705
+ url: `/accounts/${companyId}/invite`,
706
+ data
707
+ });
708
+ }
700
709
  inviteAccount(data) {
701
710
  return this.apiPost({
702
711
  url: `/accounts/inviteAccount`,
@@ -765,19 +774,113 @@ class AdminService extends BaseService {
765
774
  params
766
775
  }) {
767
776
  return this.apiGet({
768
- url: `${subject}`,
777
+ url: `/management/subjects/${subject}`,
769
778
  params
770
779
  });
771
780
  }
781
+ mergeLocations({
782
+ ids,
783
+ data
784
+ }) {
785
+ const [id1, id2, ...remainingIds] = ids || [];
786
+ if (!id1 || !id2) {
787
+ throw new Error('At least two IDs are required for merging');
788
+ }
789
+ const url = `/management/merge/location/${id1}/${id2}`;
790
+ const payload = {
791
+ ...data
792
+ };
793
+ if (remainingIds.length > 0) {
794
+ payload.additionalIds = remainingIds;
795
+ }
796
+ return this.apiPost({
797
+ url,
798
+ data: payload
799
+ });
800
+ }
772
801
  mergeSubjects({
773
802
  subject,
774
- ...data
803
+ ids,
804
+ data
775
805
  }) {
806
+ const [id1, id2, ...remainingIds] = ids || [];
807
+ if (!id1 || !id2) {
808
+ throw new Error('At least two IDs are required for merging');
809
+ }
810
+ const url = `/management/merge/${subject}/${id1}/${id2}`;
811
+ const payload = {
812
+ ...data
813
+ };
814
+ if (remainingIds.length > 0) {
815
+ payload.additionalIds = remainingIds;
816
+ }
776
817
  return this.apiPost({
777
- url: `/merge/${subject}`,
818
+ url,
819
+ data: payload
820
+ });
821
+ }
822
+ getSubjectForm({
823
+ subject,
824
+ scope = 'global'
825
+ }) {
826
+ return this.apiGet({
827
+ url: `/forms/${subject}`,
828
+ params: {
829
+ scope
830
+ }
831
+ });
832
+ }
833
+ getSubjectData({
834
+ subject,
835
+ id
836
+ }) {
837
+ return this.apiGet({
838
+ url: `/management/subject/${subject}/${id}`
839
+ });
840
+ }
841
+ viewLocation({
842
+ id
843
+ }) {
844
+ return this.apiGet({
845
+ url: `/management/subject/location/${id}`
846
+ });
847
+ }
848
+ viewStakeholder({
849
+ id
850
+ }) {
851
+ return this.apiGet({
852
+ url: `/management/subject/stakeholder/${id}`
853
+ });
854
+ }
855
+ updateSubject({
856
+ subject,
857
+ id,
858
+ data
859
+ }) {
860
+ const type = subject === 'location' ? 'location' : 'stakeholder';
861
+ return this.apiPut({
862
+ url: `/management/subject/${type}/${id}`,
778
863
  data
779
864
  });
780
865
  }
866
+ deleteSubject({
867
+ subject,
868
+ id
869
+ }) {
870
+ const type = subject === 'location' ? 'location' : 'stakeholder';
871
+ return this.apiDelete({
872
+ url: `/management/subject/${type}/${id}`
873
+ });
874
+ }
875
+ getUserGrowth(activeFilter) {
876
+ return this.apiGet({
877
+ url: `/accounts/dashboard/user-growth`,
878
+ isUserManager: true,
879
+ params: {
880
+ activeFilter
881
+ }
882
+ });
883
+ }
781
884
  }
782
885
  var AdminService$1 = createLazyService(AdminService);
783
886
 
@@ -7554,15 +7554,14 @@ const getDefaultActiveFilters = (params, selectFiltersConfig, defaultPageSize, d
7554
7554
  });
7555
7555
  return o;
7556
7556
  };
7557
- const NEW_PAGINATION_APPS = ["nashiriki"];
7558
7557
  const filterParams = (value, module) => {
7559
7558
  const {
7560
7559
  activeFilters,
7561
7560
  ...rest
7562
7561
  } = value;
7563
7562
  const {
7564
- page,
7565
- pageSize,
7563
+ page = 1,
7564
+ pageSize = 20,
7566
7565
  sortDir,
7567
7566
  sortBy,
7568
7567
  search,
@@ -7571,9 +7570,10 @@ const filterParams = (value, module) => {
7571
7570
  } = activeFilters || {};
7572
7571
  const params = {};
7573
7572
  params.pagination = JSON.stringify({
7574
- [NEW_PAGINATION_APPS.includes(module) ? "skip" : "page"]: page,
7575
- [NEW_PAGINATION_APPS.includes(module) ? "take" : "pageSize"]: pageSize
7573
+ page,
7574
+ pageSize
7576
7575
  });
7576
+ params.filters = JSON.stringify(filters);
7577
7577
  if (search && searchParams) {
7578
7578
  params.search = JSON.stringify({
7579
7579
  qs: search,
@@ -7586,16 +7586,6 @@ const filterParams = (value, module) => {
7586
7586
  by: sortBy
7587
7587
  });
7588
7588
  }
7589
- if (Object.keys(filters).length) {
7590
- if (value.sourceId && value.sourceId === "overview") {
7591
- params.filters = JSON.stringify(filters);
7592
- } else {
7593
- params.filters = JSON.stringify({
7594
- ...filters,
7595
- authorId: undefined
7596
- });
7597
- }
7598
- }
7599
7589
  return {
7600
7590
  ...rest,
7601
7591
  ...params
@@ -7801,6 +7791,13 @@ function getRedirectPath(user, fallback = '', app, isDatastake) {
7801
7791
 
7802
7792
  const en = {
7803
7793
  "All Data": "All Data",
7794
+ "sbg-admin::remove-user-title": "Remove User Title",
7795
+ "sbg-admin::remove-user-body": "Remove User Body",
7796
+ "Administrative-level-1": "Administrative Level 1",
7797
+ "Administrative-level-2": "Administrative Level 2",
7798
+ "merge-output": "Merge Output",
7799
+ "admin::current_subjects": "Current Subjects",
7800
+ "add-account": "Add Account",
7804
7801
  "Site": "Site",
7805
7802
  "Production Sites": "Production Sites",
7806
7803
  "Type of account": "Type of account",
@@ -9501,7 +9498,7 @@ const fr = {
9501
9498
  Documentation: "Documents",
9502
9499
  "Edit project": "Modifier le projet",
9503
9500
  Name: "Nom",
9504
- Type: "Tapez",
9501
+ Type: "Type",
9505
9502
  type: "Type",
9506
9503
  Province: "Province",
9507
9504
  Territory: "Territoire",
@@ -11313,7 +11310,7 @@ const sp = {
11313
11310
  "Documentation": "Documentos",
11314
11311
  "Edit project": "Modificar proyecto",
11315
11312
  "Name": "Nombre",
11316
- "Type": "Escribe",
11313
+ "Type": "Tipo",
11317
11314
  "type": "Tipo",
11318
11315
  "Province": "Provincia",
11319
11316
  "Territory": "Territorio",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "datastake-daf",
3
- "version": "0.6.798",
3
+ "version": "0.6.799",
4
4
  "dependencies": {
5
5
  "@ant-design/icons": "^5.2.5",
6
6
  "@antv/g2": "^5.1.1",
@@ -10,7 +10,6 @@ const { useToken } = theme;
10
10
  export default function useTopContributors({ container, data = [], t }) {
11
11
  const [mainGraph, setMainGraph] = useState(null);
12
12
  const { token } = useToken();
13
-
14
13
  useEffect(() => {
15
14
  if (container.current) {
16
15
  if (mainGraph) {