datastake-daf 0.6.749 → 0.6.750

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.
Binary file
Binary file
Binary file
@@ -0,0 +1,25 @@
1
+ {
2
+ "short_name": "React App",
3
+ "name": "Create React App Sample",
4
+ "icons": [
5
+ {
6
+ "src": "favicon.ico",
7
+ "sizes": "64x64 32x32 24x24 16x16",
8
+ "type": "image/x-icon"
9
+ },
10
+ {
11
+ "src": "logo192.png",
12
+ "type": "image/png",
13
+ "sizes": "192x192"
14
+ },
15
+ {
16
+ "src": "logo512.png",
17
+ "type": "image/png",
18
+ "sizes": "512x512"
19
+ }
20
+ ],
21
+ "start_url": ".",
22
+ "display": "standalone",
23
+ "theme_color": "#000000",
24
+ "background_color": "#ffffff"
25
+ }
@@ -0,0 +1,3 @@
1
+ # https://www.robotstxt.org/robotstxt.html
2
+ User-agent: *
3
+ Disallow:
@@ -8143,7 +8143,7 @@ const {
8143
8143
  Paragraph: Paragraph$1
8144
8144
  } = antd.Typography;
8145
8145
  const checkHasActiveFilterValues = filtersConfig => {
8146
- if (!(filtersConfig !== null && filtersConfig !== void 0 && filtersConfig.filtersConfig) || !(filtersConfig !== null && filtersConfig !== void 0 && filtersConfig.selectedFilters)) return false;
8146
+ if (!filtersConfig?.filtersConfig || !filtersConfig?.selectedFilters) return false;
8147
8147
  const filterConfigKeys = Object.keys(filtersConfig.filtersConfig);
8148
8148
  const selectedFilters = filtersConfig.selectedFilters;
8149
8149
  return filterConfigKeys.some(key => {
@@ -8151,28 +8151,27 @@ const checkHasActiveFilterValues = filtersConfig => {
8151
8151
  return value !== undefined && value !== null && value !== "";
8152
8152
  });
8153
8153
  };
8154
- const useHeader = _ref => {
8155
- let {
8156
- title = "",
8157
- tooltip = "",
8158
- supportText = "",
8159
- tags = [],
8160
- actionButtons: _actionButtons = [],
8161
- titleTooltip,
8162
- className,
8163
- addedHeader = null,
8164
- addedHeaderFirst,
8165
- extraButtons: _extraButtons = [],
8166
- onDownload,
8167
- downloadDisabled,
8168
- goBackTo,
8169
- loading,
8170
- renderExtraComponents,
8171
- app = "",
8172
- isViewMode = false,
8173
- filtersConfig = {}
8174
- } = _ref;
8175
- const hasActiveFilterValues = React.useMemo(() => checkHasActiveFilterValues(filtersConfig), [filtersConfig === null || filtersConfig === void 0 ? void 0 : filtersConfig.filtersConfig, filtersConfig === null || filtersConfig === void 0 ? void 0 : filtersConfig.selectedFilters]);
8154
+ const useHeader = ({
8155
+ title = "",
8156
+ tooltip = "",
8157
+ supportText = "",
8158
+ tags = [],
8159
+ actionButtons: _actionButtons = [],
8160
+ titleTooltip,
8161
+ className,
8162
+ addedHeader = null,
8163
+ addedHeaderFirst,
8164
+ extraButtons: _extraButtons = [],
8165
+ onDownload,
8166
+ downloadDisabled,
8167
+ goBackTo,
8168
+ loading,
8169
+ renderExtraComponents,
8170
+ app = "",
8171
+ isViewMode = false,
8172
+ filtersConfig = {}
8173
+ }) => {
8174
+ const hasActiveFilterValues = React.useMemo(() => checkHasActiveFilterValues(filtersConfig), [filtersConfig?.filtersConfig, filtersConfig?.selectedFilters]);
8176
8175
  const [showFilters, setShowFilters] = React.useState(() => checkHasActiveFilterValues(filtersConfig));
8177
8176
  const hasFilters = filtersConfig && Object.keys(filtersConfig).length > 0;
8178
8177
  React.useEffect(() => {
@@ -8214,9 +8213,9 @@ const useHeader = _ref => {
8214
8213
  const buttonCont = React.useRef();
8215
8214
  const [mainContWidth, setMainContWidth] = React.useState(600);
8216
8215
  const [buttonContWidth, setButtonContWidth] = React.useState(0);
8217
- const hasSupportText = !!(supportText !== null && supportText !== void 0 && supportText.length);
8218
- const hasTags = !!(tags !== null && tags !== void 0 && tags.length);
8219
- const hasButtons = React.useMemo(() => !!(actionButtons !== null && actionButtons !== void 0 && actionButtons.length || extraButtons !== null && extraButtons !== void 0 && extraButtons.length), [actionButtons, extraButtons]);
8216
+ const hasSupportText = !!supportText?.length;
8217
+ const hasTags = !!tags?.length;
8218
+ const hasButtons = React.useMemo(() => !!(actionButtons?.length || extraButtons?.length), [actionButtons, extraButtons]);
8220
8219
  React.useEffect(() => {
8221
8220
  const mainContObserver = new ResizeObserver(entries => {
8222
8221
  const _mainEntry = entries[0];
@@ -8376,22 +8375,20 @@ const useHeader = _ref => {
8376
8375
  const {
8377
8376
  useToken: useToken$m
8378
8377
  } = antd.theme;
8379
- function BreadCrumbs(_ref) {
8380
- let {
8381
- breadcrumbs = [],
8382
- mainContWidth = 0
8383
- } = _ref;
8378
+ function BreadCrumbs({
8379
+ breadcrumbs = [],
8380
+ mainContWidth = 0
8381
+ }) {
8384
8382
  const [splitIndex, setSplitIndex] = React.useState(0);
8385
8383
  const {
8386
8384
  token
8387
8385
  } = useToken$m();
8388
- const _renderBreadcrumb = function (b, i, isLast) {
8389
- let noOnClickLast = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : false;
8386
+ const _renderBreadcrumb = (b, i, isLast, noOnClickLast = false) => {
8390
8387
  return /*#__PURE__*/jsxRuntime.jsxs("div", {
8391
8388
  className: "flex breadcrumb-item",
8392
- onClick: noOnClickLast && isLast ? undefined : b === null || b === void 0 ? void 0 : b.onClick,
8389
+ onClick: noOnClickLast && isLast ? undefined : b?.onClick,
8393
8390
  children: [/*#__PURE__*/jsxRuntime.jsx("span", {
8394
- children: b === null || b === void 0 ? void 0 : b.label
8391
+ children: b?.label
8395
8392
  }), !isLast && /*#__PURE__*/jsxRuntime.jsx("div", {
8396
8393
  className: "flex flex-column justify-content-center",
8397
8394
  children: /*#__PURE__*/jsxRuntime.jsx(CustomIcon, {
@@ -8401,7 +8398,7 @@ function BreadCrumbs(_ref) {
8401
8398
  color: token.baseGray50
8402
8399
  })
8403
8400
  })]
8404
- }, "breadcrumb-item-".concat(i));
8401
+ }, `breadcrumb-item-${i}`);
8405
8402
  };
8406
8403
  React.useEffect(() => {
8407
8404
  const _placeholderCont = document.getElementById("header-breadcrumbs");
@@ -8444,7 +8441,7 @@ function BreadCrumbs(_ref) {
8444
8441
  placement: "bottomRight",
8445
8442
  menu: {
8446
8443
  items: groupedBreadCrumbs[2].map((it, i) => ({
8447
- key: "items-".concat(i),
8444
+ key: `items-${i}`,
8448
8445
  label: it.label,
8449
8446
  onClick: it.onClick
8450
8447
  }))
@@ -10070,37 +10067,42 @@ const handleDataLinkGroupWithTableKeys = _ref2 => {
10070
10067
  }
10071
10068
  };
10072
10069
 
10073
- const handleDataLinkWithTableKeys = ({
10074
- inputConfig,
10075
- inputKey,
10076
- value,
10077
- level,
10078
- t,
10079
- rootForm,
10080
- allData,
10081
- user,
10082
- getApiBaseUrl = () => {},
10083
- getAppHeader = () => {},
10084
- app,
10085
- TreeNodeComponent
10086
- }) => {
10087
- if (inputConfig?.type !== 'dataLink' || !inputConfig?.meta?.tableKeys) {
10070
+ const handleDataLinkWithTableKeys = _ref => {
10071
+ var _inputConfig$meta, _inputConfig$meta3, _inputConfig$meta4, _inputConfig$meta5;
10072
+ let {
10073
+ inputConfig,
10074
+ inputKey,
10075
+ value,
10076
+ level,
10077
+ t,
10078
+ rootForm,
10079
+ allData,
10080
+ user,
10081
+ getApiBaseUrl = () => {},
10082
+ getAppHeader = () => {},
10083
+ app,
10084
+ TreeNodeComponent
10085
+ } = _ref;
10086
+ if ((inputConfig === null || inputConfig === void 0 ? void 0 : inputConfig.type) !== 'dataLink' || !(inputConfig !== null && inputConfig !== void 0 && (_inputConfig$meta = inputConfig.meta) !== null && _inputConfig$meta !== void 0 && _inputConfig$meta.tableKeys)) {
10088
10087
  return null;
10089
10088
  }
10090
10089
  const tableKeys = inputConfig.meta.tableKeys;
10091
- const isAjaxModal = React.useMemo(() => !!inputConfig?.meta?.namespace, [inputConfig]);
10090
+ const isAjaxModal = React.useMemo(() => {
10091
+ var _inputConfig$meta2;
10092
+ return !!(inputConfig !== null && inputConfig !== void 0 && (_inputConfig$meta2 = inputConfig.meta) !== null && _inputConfig$meta2 !== void 0 && _inputConfig$meta2.namespace);
10093
+ }, [inputConfig]);
10092
10094
  const ajaxModalValues = useAjaxModal$2({
10093
10095
  name: inputKey,
10094
10096
  user,
10095
- namespace: inputConfig?.meta?.namespace,
10096
- skipFetch: inputConfig?.meta?.skipFetch,
10097
+ namespace: inputConfig === null || inputConfig === void 0 || (_inputConfig$meta3 = inputConfig.meta) === null || _inputConfig$meta3 === void 0 ? void 0 : _inputConfig$meta3.namespace,
10098
+ skipFetch: inputConfig === null || inputConfig === void 0 || (_inputConfig$meta4 = inputConfig.meta) === null || _inputConfig$meta4 === void 0 ? void 0 : _inputConfig$meta4.skipFetch,
10097
10099
  isAjaxModal,
10098
- formScope: inputConfig?.meta?.formScope,
10100
+ formScope: inputConfig === null || inputConfig === void 0 || (_inputConfig$meta5 = inputConfig.meta) === null || _inputConfig$meta5 === void 0 ? void 0 : _inputConfig$meta5.formScope,
10099
10101
  APP: app,
10100
10102
  apiBaseUrl: getApiBaseUrl(),
10101
10103
  _getAppHeader: getAppHeader
10102
10104
  });
10103
- const dataLinkForm = ajaxModalValues?.form;
10105
+ const dataLinkForm = ajaxModalValues === null || ajaxModalValues === void 0 ? void 0 : ajaxModalValues.form;
10104
10106
  const createInputsAndValues = item => {
10105
10107
  const inputs = {};
10106
10108
  const values = {};
@@ -10113,19 +10115,20 @@ const handleDataLinkWithTableKeys = ({
10113
10115
  };
10114
10116
  const isUploadFieldEmpty = (fieldKey, itemToCheck) => {
10115
10117
  if (uploadTypeFields.includes(fieldKey)) {
10116
- const itemValue = itemToCheck?.[fieldKey];
10118
+ const itemValue = itemToCheck === null || itemToCheck === void 0 ? void 0 : itemToCheck[fieldKey];
10117
10119
  return itemValue === undefined || itemValue === null || Array.isArray(itemValue) && itemValue.length === 0;
10118
10120
  }
10119
10121
  return false;
10120
10122
  };
10121
10123
  const processedTableKeys = processConditionalTableKeys(tableKeys, item);
10122
10124
  processedTableKeys.filter(tableKey => tableKey !== 'datastakeId').filter(tableKey => !isUploadFieldEmpty(tableKey, item)).forEach(tableKey => {
10123
- const formInputConfig = dataLinkForm?.[tableKey] || dataLinkForm?.['identification']?.[tableKey];
10125
+ var _dataLinkForm$identif;
10126
+ const formInputConfig = (dataLinkForm === null || dataLinkForm === void 0 ? void 0 : dataLinkForm[tableKey]) || (dataLinkForm === null || dataLinkForm === void 0 || (_dataLinkForm$identif = dataLinkForm['identification']) === null || _dataLinkForm$identif === void 0 ? void 0 : _dataLinkForm$identif[tableKey]);
10124
10127
  if (formInputConfig) {
10125
- inputs[tableKey] = {
10126
- ...formInputConfig,
10128
+ var _item$linking, _formInputConfig$meta, _formInputConfig$tabl;
10129
+ inputs[tableKey] = _objectSpread2(_objectSpread2({}, formInputConfig), {}, {
10127
10130
  label: uploadTypeFields.includes(tableKey) ? uploadTypeLabels[tableKey] : formInputConfig.label || formInputConfig.tableLabel || tableKey
10128
- };
10131
+ });
10129
10132
  if (formInputConfig.label && typeof formInputConfig.label === 'object') {
10130
10133
  const dynamicLabelKeys = Object.keys(formInputConfig.label);
10131
10134
  let resolvedLabel = null;
@@ -10133,7 +10136,7 @@ const handleDataLinkWithTableKeys = ({
10133
10136
  const parts = labelKey.split(' is ');
10134
10137
  if (parts.length === 2) {
10135
10138
  const [conditionKey, conditionValue] = parts;
10136
- if (item?.[conditionKey] === conditionValue) {
10139
+ if ((item === null || item === void 0 ? void 0 : item[conditionKey]) === conditionValue) {
10137
10140
  resolvedLabel = formInputConfig.label[labelKey];
10138
10141
  break;
10139
10142
  }
@@ -10141,16 +10144,17 @@ const handleDataLinkWithTableKeys = ({
10141
10144
  }
10142
10145
  inputs[tableKey].label = resolvedLabel || Object.values(formInputConfig.label)[0] || (uploadTypeFields.includes(tableKey) ? uploadTypeLabels[tableKey] : tableKey);
10143
10146
  }
10144
- values[tableKey] = item?.linking?.SCL?.[item?.[tableKey]]?.name || item[formInputConfig?.meta?.onNewSetValueKey] || item?.[formInputConfig?.tableLabel?.toLowerCase()] || item?.[tableKey];
10147
+ values[tableKey] = (item === null || item === void 0 || (_item$linking = item.linking) === null || _item$linking === void 0 || (_item$linking = _item$linking.SCL) === null || _item$linking === void 0 || (_item$linking = _item$linking[item === null || item === void 0 ? void 0 : item[tableKey]]) === null || _item$linking === void 0 ? void 0 : _item$linking.name) || item[formInputConfig === null || formInputConfig === void 0 || (_formInputConfig$meta = formInputConfig.meta) === null || _formInputConfig$meta === void 0 ? void 0 : _formInputConfig$meta.onNewSetValueKey] || (item === null || item === void 0 ? void 0 : item[formInputConfig === null || formInputConfig === void 0 || (_formInputConfig$tabl = formInputConfig.tableLabel) === null || _formInputConfig$tabl === void 0 ? void 0 : _formInputConfig$tabl.toLowerCase()]) || (item === null || item === void 0 ? void 0 : item[tableKey]);
10145
10148
  } else {
10149
+ var _item$linking2;
10146
10150
  inputs[tableKey] = {
10147
10151
  label: uploadTypeFields.includes(tableKey) ? uploadTypeLabels[tableKey] : tableKey,
10148
- type: inputConfig?.type
10152
+ type: inputConfig === null || inputConfig === void 0 ? void 0 : inputConfig.type
10149
10153
  };
10150
- values[tableKey] = item?.linking?.SCL?.[item?.[tableKey]]?.name || item?.[tableKey];
10154
+ values[tableKey] = (item === null || item === void 0 || (_item$linking2 = item.linking) === null || _item$linking2 === void 0 || (_item$linking2 = _item$linking2.SCL) === null || _item$linking2 === void 0 || (_item$linking2 = _item$linking2[item === null || item === void 0 ? void 0 : item[tableKey]]) === null || _item$linking2 === void 0 ? void 0 : _item$linking2.name) || (item === null || item === void 0 ? void 0 : item[tableKey]);
10151
10155
  }
10152
10156
  });
10153
- if (dataLinkForm?.identification && typeof dataLinkForm.identification === 'object') {
10157
+ if (dataLinkForm !== null && dataLinkForm !== void 0 && dataLinkForm.identification && typeof dataLinkForm.identification === 'object') {
10154
10158
  Object.keys(dataLinkForm.identification).filter(fieldKey => {
10155
10159
  if (uploadTypeFields.includes(fieldKey)) {
10156
10160
  return !isUploadFieldEmpty(fieldKey, item);
@@ -10160,11 +10164,11 @@ const handleDataLinkWithTableKeys = ({
10160
10164
  const formInputConfig = dataLinkForm.identification[fieldKey];
10161
10165
  return formInputConfig && typeof formInputConfig === 'object' && !Array.isArray(formInputConfig);
10162
10166
  }).forEach(fieldKey => {
10167
+ var _item$linking3, _formInputConfig$tabl2;
10163
10168
  const formInputConfig = dataLinkForm.identification[fieldKey];
10164
- inputs[fieldKey] = {
10165
- ...formInputConfig,
10169
+ inputs[fieldKey] = _objectSpread2(_objectSpread2({}, formInputConfig), {}, {
10166
10170
  label: uploadTypeFields.includes(fieldKey) ? uploadTypeLabels[fieldKey] : formInputConfig.label || formInputConfig.tableLabel || fieldKey
10167
- };
10171
+ });
10168
10172
  if (formInputConfig.label && typeof formInputConfig.label === 'object') {
10169
10173
  const dynamicLabelKeys = Object.keys(formInputConfig.label);
10170
10174
  let resolvedLabel = null;
@@ -10172,7 +10176,7 @@ const handleDataLinkWithTableKeys = ({
10172
10176
  const parts = labelKey.split(' is ');
10173
10177
  if (parts.length === 2) {
10174
10178
  const [conditionKey, conditionValue] = parts;
10175
- if (item?.[conditionKey] === conditionValue) {
10179
+ if ((item === null || item === void 0 ? void 0 : item[conditionKey]) === conditionValue) {
10176
10180
  resolvedLabel = formInputConfig.label[labelKey];
10177
10181
  break;
10178
10182
  }
@@ -10180,7 +10184,7 @@ const handleDataLinkWithTableKeys = ({
10180
10184
  }
10181
10185
  inputs[fieldKey].label = resolvedLabel || Object.values(formInputConfig.label)[0] || (uploadTypeFields.includes(fieldKey) ? uploadTypeLabels[fieldKey] : fieldKey);
10182
10186
  }
10183
- values[fieldKey] = item?.linking?.SCL?.[item?.[fieldKey]]?.name || item?.[formInputConfig?.tableLabel?.toLowerCase()] || item?.[fieldKey];
10187
+ values[fieldKey] = (item === null || item === void 0 || (_item$linking3 = item.linking) === null || _item$linking3 === void 0 || (_item$linking3 = _item$linking3.SCL) === null || _item$linking3 === void 0 || (_item$linking3 = _item$linking3[item === null || item === void 0 ? void 0 : item[fieldKey]]) === null || _item$linking3 === void 0 ? void 0 : _item$linking3.name) || (item === null || item === void 0 ? void 0 : item[formInputConfig === null || formInputConfig === void 0 || (_formInputConfig$tabl2 = formInputConfig.tableLabel) === null || _formInputConfig$tabl2 === void 0 ? void 0 : _formInputConfig$tabl2.toLowerCase()]) || (item === null || item === void 0 ? void 0 : item[fieldKey]);
10184
10188
  });
10185
10189
  }
10186
10190
  return {
@@ -10190,7 +10194,7 @@ const handleDataLinkWithTableKeys = ({
10190
10194
  };
10191
10195
  if (Array.isArray(value)) {
10192
10196
  return value.map((item, itemIndex) => {
10193
- const datastakeIdValue = item?.datastakeId;
10197
+ const datastakeIdValue = item === null || item === void 0 ? void 0 : item.datastakeId;
10194
10198
  const {
10195
10199
  inputs,
10196
10200
  values
@@ -10199,9 +10203,9 @@ const handleDataLinkWithTableKeys = ({
10199
10203
  return null;
10200
10204
  }
10201
10205
  return /*#__PURE__*/jsxRuntime.jsx(TreeNodeComponent, {
10202
- nodeKey: datastakeIdValue || t(`No ID ${itemIndex + 1}`),
10206
+ nodeKey: datastakeIdValue || t("No ID ".concat(itemIndex + 1)),
10203
10207
  config: {
10204
- label: datastakeIdValue || t(`No ID ${itemIndex + 1}`),
10208
+ label: datastakeIdValue || t("No ID ".concat(itemIndex + 1)),
10205
10209
  type: 'custom-datalink',
10206
10210
  inputs: inputs
10207
10211
  },
@@ -10215,10 +10219,10 @@ const handleDataLinkWithTableKeys = ({
10215
10219
  getApiBaseUrl: getApiBaseUrl,
10216
10220
  getAppHeader: getAppHeader,
10217
10221
  app: app
10218
- }, `${inputKey}-${itemIndex}`);
10222
+ }, "".concat(inputKey, "-").concat(itemIndex));
10219
10223
  });
10220
10224
  } else {
10221
- const datastakeIdValue = value?.datastakeId;
10225
+ const datastakeIdValue = value === null || value === void 0 ? void 0 : value.datastakeId;
10222
10226
  const {
10223
10227
  inputs,
10224
10228
  values
@@ -10243,7 +10247,7 @@ const handleDataLinkWithTableKeys = ({
10243
10247
  getApiBaseUrl: getApiBaseUrl,
10244
10248
  getAppHeader: getAppHeader,
10245
10249
  app: app
10246
- }, `${inputKey}-single`);
10250
+ }, "".concat(inputKey, "-single"));
10247
10251
  }
10248
10252
  };
10249
10253
 
@@ -10424,11 +10428,12 @@ const AjaxSubGroup$2 = ({
10424
10428
  };
10425
10429
 
10426
10430
  const handleAjaxSubGroupChildren = props => {
10427
- var _props$config;
10428
- if (((_props$config = props.config) === null || _props$config === void 0 ? void 0 : _props$config.type) !== 'ajaxSubGroup' || !Array.isArray(props.value)) {
10431
+ if (props.config?.type !== 'ajaxSubGroup' || !Array.isArray(props.value)) {
10429
10432
  return null;
10430
10433
  }
10431
- return [/*#__PURE__*/jsxRuntime.jsx(AjaxSubGroup$2, _objectSpread2({}, props), "ajax-subgroup")];
10434
+ return [/*#__PURE__*/jsxRuntime.jsx(AjaxSubGroup$2, {
10435
+ ...props
10436
+ }, "ajax-subgroup")];
10432
10437
  };
10433
10438
 
10434
10439
  const TreeNode = _ref => {
@@ -44920,7 +44925,6 @@ const modules = [{
44920
44925
  description: "Submit any query to gain crowdsourced wisdom from hard-to-reach territories."
44921
44926
  }];
44922
44927
 
44923
- /* eslint-disable no-unused-vars */
44924
44928
  const featureIsNotAvailable = (t, isDemo) => {
44925
44929
  antd.Modal.error({
44926
44930
  title: t("Feature not available"),
@@ -45060,12 +45064,7 @@ function SidenavMenu(_ref) {
45060
45064
  }
45061
45065
  });
45062
45066
  },
45063
- label: t(subitem.name),
45064
- icon: /*#__PURE__*/jsxRuntime.jsx(CustomIcon, {
45065
- width: 15,
45066
- height: 15,
45067
- name: subitem.icon
45068
- })
45067
+ label: t(subitem.name)
45069
45068
  }))].filter(v => !!v)
45070
45069
  });
45071
45070
  React.useEffect(() => {
@@ -45268,7 +45267,7 @@ function SidenavMenu(_ref) {
45268
45267
  className: "title",
45269
45268
  label: t(item.name),
45270
45269
  key: "".concat(item.name, "-link")
45271
- } : null, ...item.items.filter(item => item.visible ? item.visible(user, project) : false).map((subitem, j) => subitem.items ? renderSubMenu(subitem, "".concat(subitem.name)) : {
45270
+ } : null, ...item.items.filter(item => item.visible ? item.visible(user, project) : false).map((subitem, j) => subitem.items ? renderSubMenu(subitem, "".concat(subitem.name)) : _objectSpread2(_objectSpread2({
45272
45271
  label: /*#__PURE__*/jsxRuntime.jsx(antd.Typography.Text, {
45273
45272
  ellipsis: {
45274
45273
  tooltip: t(subitem.name)
@@ -45281,12 +45280,14 @@ function SidenavMenu(_ref) {
45281
45280
  className: formatClassname([typeof selectedKeys[0] === "string" ? !!(selectedKeys[0].includes(subitem.path) || (subitem.subPath || []).find(p => matchPath(p, selectedKeys[0]))) && "selected-label" : ""]),
45282
45281
  children: t(subitem.name)
45283
45282
  }),
45284
- style: subitem.style ? subitem.style : {},
45283
+ style: subitem.style ? subitem.style : {}
45284
+ }, (subitem === null || subitem === void 0 ? void 0 : subitem.icon) && {
45285
45285
  icon: /*#__PURE__*/jsxRuntime.jsx(CustomIcon, {
45286
45286
  width: 15,
45287
45287
  height: 15,
45288
- name: subitem === null || subitem === void 0 ? void 0 : subitem.icon
45289
- }),
45288
+ name: subitem.icon
45289
+ })
45290
+ }), {}, {
45290
45291
  key: "".concat(subitem.path, "-link-").concat(j),
45291
45292
  disabled: item.isDisabled || subitem.isDisabled,
45292
45293
  className: formatClassname([typeof selectedKeys[0] === "string" ? !!(selectedKeys[0].includes(subitem.path) || (subitem.subPath || []).find(p => matchPath(p, selectedKeys[0]))) && "selected-it" : ""]),
@@ -45305,7 +45306,7 @@ function SidenavMenu(_ref) {
45305
45306
  }
45306
45307
  });
45307
45308
  }
45308
- })].filter(v => !!v)
45309
+ }))].filter(v => !!v)
45309
45310
  })
45310
45311
  });
45311
45312
  return /*#__PURE__*/jsxRuntime.jsxs(jsxRuntime.Fragment, {
@@ -4676,12 +4676,7 @@ function SidenavMenu({
4676
4676
  }
4677
4677
  });
4678
4678
  },
4679
- label: t(subitem.name),
4680
- icon: /*#__PURE__*/jsxRuntime.jsx(CustomIcon, {
4681
- width: 15,
4682
- height: 15,
4683
- name: subitem.icon
4684
- })
4679
+ label: t(subitem.name)
4685
4680
  }))].filter(v => !!v)
4686
4681
  });
4687
4682
  React.useEffect(() => {
@@ -4897,10 +4892,12 @@ function SidenavMenu({
4897
4892
  children: t(subitem.name)
4898
4893
  }),
4899
4894
  style: subitem.style ? subitem.style : {},
4900
- icon: /*#__PURE__*/jsxRuntime.jsx(CustomIcon, {
4901
- width: 15,
4902
- height: 15,
4903
- name: subitem?.icon
4895
+ ...(subitem?.icon && {
4896
+ icon: /*#__PURE__*/jsxRuntime.jsx(CustomIcon, {
4897
+ width: 15,
4898
+ height: 15,
4899
+ name: subitem.icon
4900
+ })
4904
4901
  }),
4905
4902
  key: `${subitem.path}-link-${j}`,
4906
4903
  disabled: item.isDisabled || subitem.isDisabled,
@@ -0,0 +1,330 @@
1
+ /* Isolated Mapbox GL CSS - Scoped to prevent Leaflet conflicts */
2
+
3
+ /* Mapbox GL Core Styles - Scoped with .mapbox-gl-scope */
4
+ .mapbox-gl-scope .mapboxgl-map {
5
+ font: 12px/20px Helvetica Neue, Arial, Helvetica, sans-serif;
6
+ overflow: hidden;
7
+ position: relative;
8
+ -webkit-tap-highlight-color: rgb(0 0 0/0);
9
+ }
10
+
11
+ .mapbox-gl-scope .mapboxgl-canvas {
12
+ left: 0;
13
+ position: absolute;
14
+ top: 0;
15
+ }
16
+
17
+ .mapbox-gl-scope .mapboxgl-map:-webkit-full-screen {
18
+ height: 100%;
19
+ width: 100%;
20
+ }
21
+
22
+ .mapbox-gl-scope .mapboxgl-canary {
23
+ background-color: salmon;
24
+ }
25
+
26
+ .mapbox-gl-scope .mapboxgl-canvas-container.mapboxgl-interactive,
27
+ .mapbox-gl-scope .mapboxgl-ctrl-group button.mapboxgl-ctrl-compass {
28
+ cursor: grab;
29
+ -webkit-user-select: none;
30
+ user-select: none;
31
+ }
32
+
33
+ .mapbox-gl-scope .mapboxgl-canvas-container.mapboxgl-interactive.mapboxgl-track-pointer {
34
+ cursor: pointer;
35
+ }
36
+
37
+ .mapbox-gl-scope .mapboxgl-canvas-container.mapboxgl-interactive:active,
38
+ .mapbox-gl-scope .mapboxgl-ctrl-group button.mapboxgl-ctrl-compass:active {
39
+ cursor: grabbing;
40
+ }
41
+
42
+ .mapbox-gl-scope .mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate,
43
+ .mapbox-gl-scope .mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate .mapboxgl-canvas {
44
+ touch-action: pan-x pan-y;
45
+ }
46
+
47
+ .mapbox-gl-scope .mapboxgl-canvas-container.mapboxgl-touch-drag-pan,
48
+ .mapbox-gl-scope .mapboxgl-canvas-container.mapboxgl-touch-drag-pan .mapboxgl-canvas {
49
+ touch-action: pinch-zoom;
50
+ }
51
+
52
+ .mapbox-gl-scope .mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan,
53
+ .mapbox-gl-scope .mapboxgl-canvas-container.mapboxgl-touch-zoom-rotate.mapboxgl-touch-drag-pan .mapboxgl-canvas {
54
+ touch-action: none;
55
+ }
56
+
57
+ /* Control positioning */
58
+ .mapbox-gl-scope .mapboxgl-ctrl-bottom,
59
+ .mapbox-gl-scope .mapboxgl-ctrl-bottom-left,
60
+ .mapbox-gl-scope .mapboxgl-ctrl-bottom-right,
61
+ .mapbox-gl-scope .mapboxgl-ctrl-left,
62
+ .mapbox-gl-scope .mapboxgl-ctrl-right,
63
+ .mapbox-gl-scope .mapboxgl-ctrl-top,
64
+ .mapbox-gl-scope .mapboxgl-ctrl-top-left,
65
+ .mapbox-gl-scope .mapboxgl-ctrl-top-right {
66
+ pointer-events: none;
67
+ position: absolute;
68
+ z-index: 2;
69
+ }
70
+
71
+ .mapbox-gl-scope .mapboxgl-ctrl-top-left {
72
+ left: 0;
73
+ top: 0;
74
+ }
75
+
76
+ .mapbox-gl-scope .mapboxgl-ctrl-top {
77
+ left: 50%;
78
+ top: 0;
79
+ transform: translateX(-50%);
80
+ }
81
+
82
+ .mapbox-gl-scope .mapboxgl-ctrl-top-right {
83
+ right: 0;
84
+ top: 0;
85
+ }
86
+
87
+ .mapbox-gl-scope .mapboxgl-ctrl-right {
88
+ right: 0;
89
+ top: 50%;
90
+ transform: translateY(-50%);
91
+ }
92
+
93
+ .mapbox-gl-scope .mapboxgl-ctrl-bottom-right {
94
+ bottom: 0;
95
+ right: 0;
96
+ }
97
+
98
+ .mapbox-gl-scope .mapboxgl-ctrl-bottom {
99
+ bottom: 0;
100
+ left: 50%;
101
+ transform: translateX(-50%);
102
+ }
103
+
104
+ .mapbox-gl-scope .mapboxgl-ctrl-bottom-left {
105
+ bottom: 0;
106
+ left: 0;
107
+ }
108
+
109
+ .mapbox-gl-scope .mapboxgl-ctrl-left {
110
+ left: 0;
111
+ top: 50%;
112
+ transform: translateY(-50%);
113
+ }
114
+
115
+ .mapbox-gl-scope .mapboxgl-ctrl {
116
+ clear: both;
117
+ pointer-events: auto;
118
+ transform: translate(0);
119
+ }
120
+
121
+ .mapbox-gl-scope .mapboxgl-ctrl-top-left .mapboxgl-ctrl {
122
+ float: left;
123
+ margin: 10px 0 0 10px;
124
+ }
125
+
126
+ .mapbox-gl-scope .mapboxgl-ctrl-top .mapboxgl-ctrl {
127
+ float: left;
128
+ margin: 10px 0;
129
+ }
130
+
131
+ .mapbox-gl-scope .mapboxgl-ctrl-top-right .mapboxgl-ctrl {
132
+ float: right;
133
+ margin: 10px 10px 0 0;
134
+ }
135
+
136
+ .mapbox-gl-scope .mapboxgl-ctrl-bottom-right .mapboxgl-ctrl,
137
+ .mapbox-gl-scope .mapboxgl-ctrl-right .mapboxgl-ctrl {
138
+ float: right;
139
+ margin: 0 10px 10px 0;
140
+ }
141
+
142
+ .mapbox-gl-scope .mapboxgl-ctrl-bottom .mapboxgl-ctrl {
143
+ float: left;
144
+ margin: 10px 0;
145
+ }
146
+
147
+ .mapbox-gl-scope .mapboxgl-ctrl-bottom-left .mapboxgl-ctrl,
148
+ .mapbox-gl-scope .mapboxgl-ctrl-left .mapboxgl-ctrl {
149
+ float: left;
150
+ margin: 0 0 10px 10px;
151
+ }
152
+
153
+ /* Control group styling */
154
+ .mapbox-gl-scope .mapboxgl-ctrl-group {
155
+ background: #fff;
156
+ border-radius: 4px;
157
+ }
158
+
159
+ .mapbox-gl-scope .mapboxgl-ctrl-group:not(:empty) {
160
+ box-shadow: 0 0 0 2px #0000001a;
161
+ }
162
+
163
+ .mapbox-gl-scope .mapboxgl-ctrl-group button {
164
+ background-color: initial;
165
+ border: 0;
166
+ box-sizing: border-box;
167
+ cursor: pointer;
168
+ display: block;
169
+ height: 29px;
170
+ outline: none;
171
+ overflow: hidden;
172
+ padding: 0;
173
+ width: 29px;
174
+ }
175
+
176
+ .mapbox-gl-scope .mapboxgl-ctrl-group button+button {
177
+ border-top: 1px solid #ddd;
178
+ }
179
+
180
+ .mapbox-gl-scope .mapboxgl-ctrl button .mapboxgl-ctrl-icon {
181
+ background-position: 50%;
182
+ background-repeat: no-repeat;
183
+ display: block;
184
+ height: 100%;
185
+ width: 100%;
186
+ }
187
+
188
+ .mapbox-gl-scope .mapboxgl-ctrl-attrib-button:focus,
189
+ .mapbox-gl-scope .mapboxgl-ctrl-group button:focus {
190
+ box-shadow: 0 0 2px 2px #0096ff;
191
+ }
192
+
193
+ .mapbox-gl-scope .mapboxgl-ctrl button:disabled {
194
+ cursor: not-allowed;
195
+ }
196
+
197
+ .mapbox-gl-scope .mapboxgl-ctrl button:disabled .mapboxgl-ctrl-icon {
198
+ opacity: .25;
199
+ }
200
+
201
+ .mapbox-gl-scope .mapboxgl-ctrl-group button:first-child {
202
+ border-radius: 4px 4px 0 0;
203
+ }
204
+
205
+ .mapbox-gl-scope .mapboxgl-ctrl-group button:last-child {
206
+ border-radius: 0 0 4px 4px;
207
+ }
208
+
209
+ .mapbox-gl-scope .mapboxgl-ctrl-group button:only-child {
210
+ border-radius: inherit;
211
+ }
212
+
213
+ .mapbox-gl-scope .mapboxgl-ctrl button:not(:disabled):hover {
214
+ background-color: #0000000d;
215
+ }
216
+
217
+ /* Marker styles */
218
+ .mapbox-gl-scope .mapboxgl-marker {
219
+ position: absolute;
220
+ z-index: 1;
221
+ }
222
+
223
+ .mapbox-gl-scope .mapboxgl-marker svg {
224
+ display: block;
225
+ }
226
+
227
+ /* Popup styles */
228
+ .mapbox-gl-scope .mapboxgl-popup {
229
+ position: absolute;
230
+ text-align: center;
231
+ margin-bottom: 20px;
232
+ }
233
+
234
+ .mapbox-gl-scope .mapboxgl-popup-content-wrapper {
235
+ padding: 1px;
236
+ text-align: left;
237
+ border-radius: 12px;
238
+ }
239
+
240
+ .mapbox-gl-scope .mapboxgl-popup-content {
241
+ margin: 13px 24px 13px 20px;
242
+ line-height: 1.3;
243
+ font-size: 13px;
244
+ min-height: 1px;
245
+ }
246
+
247
+ .mapbox-gl-scope .mapboxgl-popup-content p {
248
+ margin: 17px 0;
249
+ }
250
+
251
+ .mapbox-gl-scope .mapboxgl-popup-tip-container {
252
+ width: 40px;
253
+ height: 20px;
254
+ position: absolute;
255
+ left: 50%;
256
+ margin-top: -1px;
257
+ margin-left: -20px;
258
+ overflow: hidden;
259
+ pointer-events: none;
260
+ }
261
+
262
+ .mapbox-gl-scope .mapboxgl-popup-tip {
263
+ width: 17px;
264
+ height: 17px;
265
+ padding: 1px;
266
+ margin: -10px auto 0;
267
+ pointer-events: auto;
268
+ -webkit-transform: rotate(45deg);
269
+ -moz-transform: rotate(45deg);
270
+ -ms-transform: rotate(45deg);
271
+ transform: rotate(45deg);
272
+ }
273
+
274
+ .mapbox-gl-scope .mapboxgl-popup-content-wrapper,
275
+ .mapbox-gl-scope .mapboxgl-popup-tip {
276
+ background: white;
277
+ color: #333;
278
+ box-shadow: 0 3px 14px rgba(0, 0, 0, 0.4);
279
+ }
280
+
281
+ .mapbox-gl-scope .mapboxgl-popup-close-button {
282
+ position: absolute;
283
+ top: 0;
284
+ right: 0;
285
+ border: none;
286
+ text-align: center;
287
+ width: 24px;
288
+ height: 24px;
289
+ font: 16px/24px Tahoma, Verdana, sans-serif;
290
+ color: #757575;
291
+ text-decoration: none;
292
+ background: transparent;
293
+ }
294
+
295
+ .mapbox-gl-scope .mapboxgl-popup-close-button:hover,
296
+ .mapbox-gl-scope .mapboxgl-popup-close-button:focus {
297
+ color: #585858;
298
+ }
299
+
300
+ /* Attribution */
301
+ .mapbox-gl-scope .mapboxgl-ctrl-attribution {
302
+ background: #fff;
303
+ background: rgba(255, 255, 255, 0.8);
304
+ margin: 0;
305
+ }
306
+
307
+ .mapbox-gl-scope .mapboxgl-ctrl-attribution,
308
+ .mapbox-gl-scope .mapboxgl-ctrl-scale-line {
309
+ padding: 0 5px;
310
+ color: #333;
311
+ line-height: 1.4;
312
+ }
313
+
314
+ .mapbox-gl-scope .mapboxgl-ctrl-attribution a {
315
+ text-decoration: none;
316
+ }
317
+
318
+ .mapbox-gl-scope .mapboxgl-ctrl-attribution a:hover,
319
+ .mapbox-gl-scope .mapboxgl-ctrl-attribution a:focus {
320
+ text-decoration: underline;
321
+ }
322
+
323
+ /* Hide attribution by default */
324
+ .mapbox-gl-scope .mapboxgl-ctrl-attribution {
325
+ display: none !important;
326
+ }
327
+
328
+ .mapbox-gl-scope .mapboxgl-ctrl-logo {
329
+ display: none !important;
330
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "datastake-daf",
3
- "version": "0.6.749",
3
+ "version": "0.6.750",
4
4
  "dependencies": {
5
5
  "@ant-design/icons": "^5.2.5",
6
6
  "@antv/g2": "^5.1.1",
@@ -189,7 +189,6 @@ export default function SidenavMenu({
189
189
  });
190
190
  },
191
191
  label: t(subitem.name),
192
- icon: <CustomIcon width={15} height={15} name={subitem.icon} />,
193
192
  })),
194
193
  ].filter((v) => !!v),
195
194
  });
@@ -481,13 +480,15 @@ export default function SidenavMenu({
481
480
  </Typography.Text>
482
481
  ),
483
482
  style: subitem.style ? subitem.style : {},
484
- icon: (
485
- <CustomIcon
486
- width={15}
487
- height={15}
488
- name={subitem?.icon}
489
- />
490
- ),
483
+ ...(subitem?.icon && {
484
+ icon: (
485
+ <CustomIcon
486
+ width={15}
487
+ height={15}
488
+ name={subitem.icon}
489
+ />
490
+ ),
491
+ }),
491
492
  key: `${subitem.path}-link-${j}`,
492
493
  disabled: item.isDisabled || subitem.isDisabled,
493
494
  className: formatClassname([