datastake-daf 0.6.813 → 0.6.815

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 (70) hide show
  1. package/build/favicon.ico +0 -0
  2. package/build/logo192.png +0 -0
  3. package/build/logo512.png +0 -0
  4. package/build/manifest.json +25 -0
  5. package/build/robots.txt +3 -0
  6. package/dist/components/index.js +3181 -4417
  7. package/dist/hooks/index.js +4 -11
  8. package/dist/layouts/index.js +478 -464
  9. package/dist/pages/index.js +1123 -742
  10. package/dist/services/index.js +6 -56
  11. package/dist/utils/index.js +511 -492
  12. package/package.json +1 -1
  13. package/src/@daf/core/components/AuthForm/index.jsx +3 -12
  14. package/src/@daf/core/components/Dashboard/Map/ChainIcon/index.js +123 -104
  15. package/src/@daf/core/components/Icon/configs/index.js +3 -1
  16. package/src/@daf/core/components/Screens/Admin/AdminDashboard/components/UserStatistics/TopContributors/index.jsx +1 -0
  17. package/src/@daf/core/components/Screens/Admin/AdminDashboard/components/UserStatistics/UserGrowth/hook.js +1 -0
  18. package/src/@daf/core/components/Screens/Admin/AdminDashboard/components/UserStatistics/UserGrowth/index.jsx +3 -1
  19. package/src/@daf/core/components/Screens/Admin/AdminModals/CombineLocation/index.jsx +51 -51
  20. package/src/@daf/core/components/Screens/Admin/AdminModals/CombineSubjects/index.jsx +1 -6
  21. package/src/@daf/core/components/Screens/Admin/AdminModals/NewAccount/index.jsx +31 -56
  22. package/src/@daf/core/components/Screens/Admin/AdminModals/NewUser/index.jsx +10 -36
  23. package/src/@daf/core/components/Screens/Admin/AdminModals/TransferRights/index.jsx +1 -1
  24. package/src/@daf/core/components/Screens/Admin/AdminScreens/Accounts.jsx +10 -37
  25. package/src/@daf/core/components/Screens/Admin/AdminScreens/Dashboard.jsx +2 -2
  26. package/src/@daf/core/components/Screens/Admin/AdminScreens/index.js +0 -2
  27. package/src/@daf/core/components/Screens/Admin/AdminTables/AccountTable/helper.js +30 -22
  28. package/src/@daf/core/components/Screens/Admin/AdminTables/AccountTable/index.jsx +13 -25
  29. package/src/@daf/core/components/Screens/Admin/AdminTables/LocationTable/index.jsx +2 -17
  30. package/src/@daf/core/components/Screens/Admin/AdminTables/SubjectsTable/index.jsx +13 -27
  31. package/src/@daf/core/components/Screens/Admin/AdminTables/UserTable/index.jsx +1 -0
  32. package/src/@daf/core/components/Screens/Admin/AdminTables/components/index.jsx +2 -4
  33. package/src/@daf/core/components/Screens/Admin/AdminTables/hook.js +0 -3
  34. package/src/@daf/core/components/Screens/Admin/AdminViews/components/Edit/index.jsx +9 -12
  35. package/src/@daf/core/components/Screens/Admin/AdminViews/components/Users/index.jsx +4 -16
  36. package/src/@daf/core/components/Screens/Admin/AdminViews/components/View/helpers.js +17 -9
  37. package/src/@daf/core/components/Screens/Admin/AdminViews/index.jsx +8 -9
  38. package/src/@daf/core/components/Screens/Admin/AppInvitation/index.jsx +99 -124
  39. package/src/@daf/core/components/Screens/Admin/adminRoutes.js +1 -48
  40. package/src/@daf/core/components/Table/index.jsx +11 -6
  41. package/src/@daf/hooks/useAdminDashboard.js +4 -7
  42. package/src/@daf/pages/Events/Activities/columns.js +15 -11
  43. package/src/@daf/pages/Events/Incidents/columns.js +15 -11
  44. package/src/@daf/pages/Events/Testimonials/columns.js +173 -0
  45. package/src/@daf/pages/Events/Testimonials/config.js +175 -0
  46. package/src/@daf/pages/Events/columns.js +7 -3
  47. package/src/@daf/pages/Locations/MineSite/columns.js +16 -11
  48. package/src/@daf/pages/Locations/columns.js +7 -3
  49. package/src/@daf/pages/Stakeholders/Operators/columns.js +16 -12
  50. package/src/@daf/pages/Stakeholders/Workers/columns.js +16 -12
  51. package/src/@daf/pages/Stakeholders/columns.js +8 -4
  52. package/src/@daf/pages/TablePage/helper.js +15 -0
  53. package/src/@daf/pages/View/hooks/useViewActions.js +0 -13
  54. package/src/@daf/pages/View/hooks/useViewPermissions.js +0 -16
  55. package/src/@daf/pages/View/index.jsx +4 -29
  56. package/src/@daf/services/AdminService.js +5 -47
  57. package/src/@daf/services/DashboardService.js +3 -3
  58. package/src/@daf/utils/filters.js +15 -13
  59. package/src/constants/locales/en/translation.js +0 -13
  60. package/src/helpers/copyToClipboard.js +0 -60
  61. package/src/helpers/errorHandling.js +142 -74
  62. package/src/utils.js +1 -1
  63. package/src/@daf/core/components/Screens/Admin/AdminScreens/Documents.jsx +0 -81
  64. package/src/@daf/core/components/Screens/Admin/AdminScreens/Events.jsx +0 -77
  65. package/src/@daf/core/components/Screens/Admin/AdminTables/DocumentsTable/column.js +0 -127
  66. package/src/@daf/core/components/Screens/Admin/AdminTables/DocumentsTable/helper.js +0 -43
  67. package/src/@daf/core/components/Screens/Admin/AdminTables/DocumentsTable/index.jsx +0 -201
  68. package/src/@daf/core/components/Screens/Admin/AdminTables/EventsTable/column.js +0 -146
  69. package/src/@daf/core/components/Screens/Admin/AdminTables/EventsTable/helper.js +0 -58
  70. package/src/@daf/core/components/Screens/Admin/AdminTables/EventsTable/index.jsx +0 -176
@@ -1,77 +0,0 @@
1
- import React, { useCallback } from "react";
2
- import { message } from "antd";
3
- import EventsTable from "../AdminTables/EventsTable/index.jsx";
4
- /**
5
- * Admin Location Screen Wrapper
6
- * This is a ready-to-use route component that can be configured per application
7
- *
8
- * @param {Object} config - Application configuration
9
- * @param {string} config.appName - Application name
10
- * @param {string} config.module - Module identifier (APP constant)
11
- * @param {Function} config.goTo - Navigation function
12
- * @param {Function} config.t - Translation function
13
- * @param {Object} config.location - Router location object
14
- * @param {boolean} config.isMobile - Is mobile viewport
15
- * @param {Function} config.getRedirectLink - Function to get redirect links
16
- * @param {Object} config.AdminService - Admin service with methods
17
- * @param {Object} config.options - Options object with categories, countries, etc.
18
- * @param {Function} config.handleError - Error handling function
19
- * @param {number} config.defaultPageSize - Default pagination page size
20
- * @param {string} config.view - View identifier
21
- * @param {string} config.headerTitle - Header title for the table
22
- * @param {Array} config.breadcrumbs - Breadcrumbs configuration
23
- * @param {any} config.refetchTrigger - Trigger to refetch data
24
- * @param {Function} config.getData - Optional custom getData function
25
- */
26
- export default function AdminEventsScreen({ config }) {
27
- const {
28
- appName = "app",
29
- module,
30
- goTo,
31
- t,
32
- location,
33
- isMobile,
34
- getRedirectLink,
35
- AdminService,
36
- options,
37
- handleError,
38
- defaultPageSize = 20,
39
- view,
40
- headerTitle = "events",
41
- breadcrumbs,
42
- refetchTrigger,
43
- getData,
44
- user,
45
- } = config;
46
-
47
-
48
-
49
- const getSubjects = useCallback((params) => {
50
- if (getData) {
51
- return getData(params);
52
- }
53
- return AdminService.getItems({ item: 'event', params });
54
- }, [getData, AdminService]);
55
-
56
- return (
57
- <EventsTable
58
- t={t}
59
- goTo={goTo}
60
- getRedirectLink={getRedirectLink}
61
- location={location}
62
- module={module}
63
- headerTitle={headerTitle}
64
- getData={getSubjects}
65
- isMobile={isMobile}
66
- defaultPageSize={defaultPageSize}
67
- view={view}
68
- breadcrumbs={breadcrumbs}
69
- refetchTrigger={refetchTrigger}
70
- config={{
71
- options:options}}
72
- user={user}
73
- options={options}
74
- />
75
- );
76
- }
77
-
@@ -1,127 +0,0 @@
1
- import { Checkbox, Tooltip, Avatar } from "antd";
2
- import CustomIcon from "../../../../Icon/CustomIcon.jsx";
3
- import { findOptions } from "../../../../../../../helpers/StringHelper.js";
4
- import { renderDateFormatted } from "../../../../../../../helpers/Forms.js";
5
- export const getColumns = ({
6
- t,
7
- goTo = () => {},
8
- show = "show",
9
- getRedirectLink = () => {},
10
- token,
11
- selectedSubjects,
12
- setSelectedSubjects,
13
- selectOptions,
14
- entity,
15
- options,
16
- }) => {
17
- const cols = [
18
- {
19
- title: "",
20
- dataIndex: "select",
21
- key: "select",
22
- width: 50,
23
- show: true,
24
- render: (v, all) => {
25
- if (all.empty) {
26
- return <div className="daf-default-cell" />;
27
- }
28
- return (
29
- <Checkbox
30
- onChange={() =>
31
- setSelectedSubjects((prev) => {
32
- const isSelected = prev?.some((p) => p.id === all.id);
33
- if (isSelected) {
34
- return prev.filter((p) => p.id !== all.id);
35
- }
36
- return [...prev, all];
37
- })
38
- }
39
- checked={selectedSubjects?.some((p) => p.id === all.id)}
40
- disabled={
41
- selectedSubjects?.length >= 3 &&
42
- !selectedSubjects?.some((p) => p.id === all.id)
43
- }
44
- />
45
- );
46
- },
47
- },
48
- {
49
- title: t("ID"),
50
- dataIndex: "datastakeId",
51
- key: "datastakeId",
52
- ellipsis: true,
53
- show: true,
54
- render: (value, all) => {
55
- if (all.empty) {
56
- return <div className="daf-default-cell" />;
57
- }
58
-
59
- return <Tooltip title={value}>{value}</Tooltip>;
60
- },
61
- },
62
- {
63
- title: t("Title"),
64
- dataIndex: "name",
65
- key: "name",
66
- ellipsis: true,
67
- show: true,
68
- render: (value, all) => {
69
- if (all.empty) {
70
- return <div className="daf-default-cell" />;
71
- }
72
-
73
- return <Tooltip title={value}>{value}</Tooltip>;
74
- },
75
- },
76
-
77
- {
78
- title: t("Date"),
79
- dataIndex: "date",
80
- key: "date",
81
- show: true,
82
- render: (value, all) => {
83
- if (all.empty) {
84
- return <div className="daf-default-cell" />;
85
- }
86
- return <Tooltip title={renderDateFormatted(value, "DD MMM YYYY", 'en')}>{renderDateFormatted(value, "DD MMM YYYY", 'en') }</Tooltip>;
87
- },
88
- },
89
- {
90
- title: t("Last Update"),
91
- dataIndex: "updatedAt",
92
- key: "updatedAt",
93
- show: true,
94
- render: (value, all) => {
95
- if (all.empty) {
96
- return <div className="daf-default-cell" />;
97
- }
98
- return <Tooltip title={renderDateFormatted(value, "DD MMM YYYY", 'en')}>{renderDateFormatted(value, "DD MMM YYYY", 'en')}</Tooltip>;
99
- },
100
- },
101
- {
102
- title: "",
103
- dataIndex: "actions",
104
- key: "actions",
105
- width: 60,
106
- show: true,
107
- render: (value, all) => {
108
- if (all.empty) {
109
- return <div className="daf-default-cell" />;
110
- }
111
-
112
- return (
113
- <div
114
- className="cursor-pointer"
115
- onClick={() => {
116
- goTo(getRedirectLink(`/app/view/management-document/${all.id}`));
117
- }}
118
- >
119
- <CustomIcon name="Link" width={18} height={18} />
120
- </div>
121
- );
122
- },
123
- },
124
- ];
125
-
126
- return cols.filter((c) => c[show]);
127
- };
@@ -1,43 +0,0 @@
1
-
2
-
3
- export const selectFiltersConfig = {
4
- category: {
5
- type: "select",
6
- label: "Category",
7
- placeholder: (t) => t("Category"),
8
- style: { flex: 1 },
9
- labelStyle: { flex: 1 },
10
- getLabel: (option) => option.label,
11
- getValue: (option) => option.value,
12
- },
13
- country: {
14
- type: "select",
15
- label: "Country",
16
- placeholder: (t) => t("Country"),
17
- style: { flex: 1 },
18
- labelStyle: { flex: 1 },
19
- getLabel: (option) => option.label,
20
- getValue: (option) => option.value,
21
- },
22
- sources: {
23
- type: "select",
24
- label: "Sources",
25
- placeholder: (t) => t("Sources"),
26
- style: { flex: 1 },
27
- labelStyle: { flex: 1 },
28
- getLabel: (option) => option.label,
29
- getValue: (option) => option.value,
30
- },
31
- };
32
-
33
- export const filtersConfig = {
34
- name: "",
35
- datastakeId: "",
36
- };
37
-
38
- export const defaultUrlParams = { activeTab: "active" };
39
-
40
- export const checkboxConfig = {
41
- name: "Name",
42
- datastakeId: "ID",
43
- };
@@ -1,201 +0,0 @@
1
- import { useState, useMemo } from "react";
2
- import { useAdminTable } from "../hook";
3
- import AdminTable from "../components/index.jsx";
4
- import DAFTable from "../../../../Table/index.jsx";
5
- import { theme, Tag, message } from "antd";
6
- import CustomIcon from "../../../../Icon/CustomIcon.jsx";
7
- import {
8
- selectFiltersConfig,
9
- filtersConfig,
10
- defaultUrlParams,
11
- checkboxConfig,
12
- } from "./helper.js";
13
- import { getColumns } from "./column.js";
14
- const { useToken } = theme;
15
-
16
- export default function DocumentsTable({
17
- t = (text) => text,
18
- isMobile,
19
- goTo,
20
- getRedirectLink,
21
- location,
22
- getData,
23
- module,
24
- config,
25
- defaultPageSize = 20,
26
- view,
27
- headerTitle,
28
- breadcrumbs,
29
- refetchTrigger,
30
- user,
31
- options,
32
- }) {
33
- const [showFilters, setShowFilters] = useState(false);
34
- const [hasError, setHasError] = useState(false);
35
- const [selectedDocuments, setSelectedDocuments] = useState([]);
36
- const { token } = useToken();
37
-
38
- const getDataWithStringPagination = async ({ params }) => {
39
- const { pagination, tab, filters, search, sort, ...otherParams } = params;
40
-
41
- let paginationObj = { page: 1, pageSize: 20 };
42
- if (pagination) {
43
- try {
44
- paginationObj = typeof pagination === 'string' ? JSON.parse(pagination) : pagination;
45
- } catch (e) {
46
- console.error('Failed to parse pagination', e);
47
- }
48
- }
49
-
50
-
51
- const pageSize = Number(paginationObj.pageSize) || Number(paginationObj.take) || 20;
52
-
53
- let pageNumber = 1;
54
-
55
- if (paginationObj.page || paginationObj.current) {
56
- pageNumber = Number(paginationObj.page) || Number(paginationObj.current);
57
- } else if (typeof paginationObj.skip === 'number') {
58
-
59
- pageNumber = Math.floor(paginationObj.skip / pageSize) + 1;
60
- }
61
-
62
- pageNumber = pageNumber || 1;
63
-
64
-
65
- let activeTab = tab || "active";
66
- if (!tab && filters) {
67
- try {
68
- const parsedFilters = typeof filters === 'string' ? JSON.parse(filters) : filters;
69
- activeTab = parsedFilters.activeTab || "active";
70
- } catch (e) {
71
- activeTab = "active";
72
- }
73
- }
74
-
75
- const transformedParams = {
76
- pagination: {
77
- skip: pageNumber,
78
- take: pageSize,
79
- },
80
- tab: activeTab,
81
- };
82
-
83
- return getData({ params: transformedParams });
84
- };
85
-
86
- const {
87
- filter,
88
- activeTab,
89
- canClearSearch,
90
- totalPending,
91
- data,
92
- loading,
93
- initFetchDone,
94
- fetchData,
95
- fetchPendingAccounts,
96
- setLoading,
97
- } = useAdminTable({
98
- goTo,
99
- location,
100
- selectFiltersConfig,
101
- view,
102
- // defaultUrlParams,
103
- module,
104
- defaultPageSize,
105
- filtersConfig,
106
- getRedirectLink,
107
- getData: getDataWithStringPagination,
108
- refetchTrigger,
109
- });
110
-
111
- const selectOptions = useMemo(() => {
112
- return {
113
- category: config.options?.category,
114
- country: config.options?.countries,
115
- sources: [],
116
- };
117
- }, [config.options]);
118
-
119
- const columns = useMemo(() => {
120
- return getColumns({
121
- t,
122
- goTo,
123
- token,
124
- module,
125
- selectedDocuments,
126
- setSelectedDocuments,
127
- getRedirectLink,
128
- selectOptions,
129
- entity: headerTitle,
130
- options,
131
- });
132
- }, [t, goTo, module, token, selectedDocuments, getRedirectLink, selectOptions, headerTitle, options]);
133
-
134
- console.log({data}, "data");
135
-
136
- return (
137
- <>
138
- <AdminTable
139
- filters={filter}
140
- t={t}
141
- headerTitle={headerTitle}
142
- // actionButton={[
143
- // {
144
- // icon: "Merge",
145
- // onClick: () => setIsModalOpen(true),
146
- // tooltip: t("merge-subjects"),
147
- // disabled: selectedDocuments.length < 2,
148
- // },
149
- // ]}
150
- // tabs={getTabs({ t })}
151
- isMobile={isMobile}
152
- // activeTab={activeTab}
153
- showFilters={showFilters}
154
- setShowFilters={setShowFilters}
155
- hasError={hasError}
156
- setHasError={setHasError}
157
- canClearSearch={canClearSearch}
158
- selectOptions={selectOptions}
159
- checkboxConfig={checkboxConfig}
160
- defaultTableFilters={{}}
161
- breadcrumbs={breadcrumbs}
162
- >
163
- {selectedDocuments.length > 0 && (
164
- <div className="flex flex-row ml-6 mt-5" style={{ flexWrap: "wrap", gap: "8px" }}>
165
- {selectedDocuments.map((document) => (
166
- <Tag
167
- key={document.id}
168
- className="flex flex-row gap-2 items-center"
169
- onClick={() =>
170
- setSelectedDocuments((prev) => prev.filter((a) => a.id !== document.id))
171
- }
172
- style={{ cursor: "pointer" }}
173
- >
174
- <span>{document.name}</span>
175
- <CustomIcon name="Close" size={10} />
176
- </Tag>
177
- ))}
178
- </div>
179
- )}
180
- <DAFTable
181
- columns={columns}
182
- data={data}
183
- loading={loading}
184
- hideOnLoading={false}
185
- pagination={filter.pagination}
186
- rowKey="id"
187
- selectOptions={selectOptions}
188
- doEmptyRows
189
- setShowFilters={setShowFilters}
190
- filtersConfig={selectFiltersConfig}
191
- onFilterChange={filter.onFiltersChange}
192
- showFilters={showFilters}
193
- defaultFilters={filter.defaultFilters}
194
- onChange={filter.onTableChange}
195
- />
196
- </AdminTable>
197
-
198
-
199
- </>
200
- );
201
- }
@@ -1,146 +0,0 @@
1
- import { Checkbox, Tooltip, Avatar } from "antd";
2
- import CustomIcon from "../../../../Icon/CustomIcon.jsx";
3
- import { findOptions } from "../../../../../../../helpers/StringHelper.js";
4
-
5
- export const getColumns = ({
6
- t,
7
- goTo = () => {},
8
- show = "show",
9
- getRedirectLink = () => {},
10
- token,
11
- selectedSubjects,
12
- setSelectedSubjects,
13
- selectOptions,
14
- entity,
15
- options,
16
- }) => {
17
- const cols = [
18
- {
19
- title: "",
20
- dataIndex: "select",
21
- key: "select",
22
- width: 50,
23
- show: true,
24
- render: (v, all) => {
25
- if (all.empty) {
26
- return <div className="daf-default-cell" />;
27
- }
28
- return (
29
- <Checkbox
30
- onChange={() =>
31
- setSelectedSubjects((prev) => {
32
- const isSelected = prev?.some((p) => p.id === all.id);
33
- if (isSelected) {
34
- return prev.filter((p) => p.id !== all.id);
35
- }
36
- return [...prev, all];
37
- })
38
- }
39
- checked={selectedSubjects?.some((p) => p.id === all.id)}
40
- disabled={
41
- selectedSubjects?.length >= 3 &&
42
- !selectedSubjects?.some((p) => p.id === all.id)
43
- }
44
- />
45
- );
46
- },
47
- },
48
- {
49
- title: t("ID"),
50
- dataIndex: "datastakeId",
51
- key: "datastakeId",
52
- ellipsis: true,
53
- show: true,
54
- render: (value, all) => {
55
- if (all.empty) {
56
- return <div className="daf-default-cell" />;
57
- }
58
-
59
- return <Tooltip title={value}>{value}</Tooltip>;
60
- },
61
- },
62
- {
63
- title: t("Title"),
64
- dataIndex: "name",
65
- key: "name",
66
- ellipsis: true,
67
- show: true,
68
- render: (value, all) => {
69
- if (all.empty) {
70
- return <div className="daf-default-cell" />;
71
- }
72
-
73
- return <Tooltip title={value}>{value}</Tooltip>;
74
- },
75
- },
76
- {
77
- title: t("type"),
78
- dataIndex: "typeOfEvent",
79
- key: "typeOfEvent",
80
- ellipsis: true,
81
- show: true,
82
- render: (value, all) => {
83
- if (all.empty) {
84
- return <div className="daf-default-cell" />;
85
- }
86
-
87
-
88
- const _categoryOptions = (options?.eventCategoryOptions || options?.categoryOptions || [])?.map((item) => ({
89
- value: item.value,
90
- label: typeof item.label === 'object' ? Object.values(item.label)[1] : item.label,
91
- }))
92
-
93
- const type = findOptions(value, options?.eventsType || []) || "-";
94
-
95
- return <Tooltip title={type}>{type}</Tooltip>;
96
- },
97
- },
98
- {
99
- title: t("Date"),
100
- dataIndex: "date",
101
- key: "date",
102
- render: (value, all) => {
103
- if (all.empty) {
104
- return <div className="daf-default-cell" />;
105
- }
106
- return <Tooltip title={value}>{value}</Tooltip>;
107
- },
108
- },
109
- {
110
- title: t("Scope"),
111
- dataIndex: "scope",
112
- key: "scope",
113
- render: (value, all) => {
114
- if (all.empty) {
115
- return <div className="daf-default-cell" />;
116
- }
117
- return <Tooltip title={value}>{value}</Tooltip>;
118
- },
119
- },
120
- {
121
- title: "",
122
- dataIndex: "actions",
123
- key: "actions",
124
- width: 60,
125
- show: true,
126
- render: (value, all) => {
127
- if (all.empty) {
128
- return <div className="daf-default-cell" />;
129
- }
130
-
131
- return (
132
- <div
133
- className="cursor-pointer"
134
- onClick={() => {
135
- goTo(getRedirectLink(`/app/view/management-event/${all.id}`));
136
- }}
137
- >
138
- <CustomIcon name="Link" width={18} height={18} />
139
- </div>
140
- );
141
- },
142
- },
143
- ];
144
-
145
- return cols.filter((c) => c[show]);
146
- };
@@ -1,58 +0,0 @@
1
- export const getTabs = ({ t }) => {
2
- return [
3
- {
4
- key: "active",
5
- label: t("Active"),
6
- },
7
- {
8
- key: "pending",
9
- label: t("Pending"),
10
- },
11
- {
12
- key: 'suspended',
13
- label: t("Suspended"),
14
- }
15
- ];
16
- };
17
-
18
- export const selectFiltersConfig = {
19
- category: {
20
- type: "select",
21
- label: "Category",
22
- placeholder: (t) => t("Category"),
23
- style: { flex: 1 },
24
- labelStyle: { flex: 1 },
25
- getLabel: (option) => option.label,
26
- getValue: (option) => option.value,
27
- },
28
- country: {
29
- type: "select",
30
- label: "Country",
31
- placeholder: (t) => t("Country"),
32
- style: { flex: 1 },
33
- labelStyle: { flex: 1 },
34
- getLabel: (option) => option.label,
35
- getValue: (option) => option.value,
36
- },
37
- sources: {
38
- type: "select",
39
- label: "Sources",
40
- placeholder: (t) => t("Sources"),
41
- style: { flex: 1 },
42
- labelStyle: { flex: 1 },
43
- getLabel: (option) => option.label,
44
- getValue: (option) => option.value,
45
- },
46
- };
47
-
48
- export const filtersConfig = {
49
- name: "",
50
- datastakeId: "",
51
- };
52
-
53
- export const defaultUrlParams = { activeTab: "active" };
54
-
55
- export const checkboxConfig = {
56
- name: "Name",
57
- datastakeId: "ID",
58
- };