@leav/ui 0.3.6-dd8d51c → 0.3.6-df40eff

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 (135) hide show
  1. package/dist/__mocks__/common/attribute.js +2 -1
  2. package/dist/__mocks__/common/attribute.js.map +1 -1
  3. package/dist/__mocks__/common/form.js +2 -2
  4. package/dist/__mocks__/common/form.js.map +1 -1
  5. package/dist/_gqlTypes/index.d.ts +88 -0
  6. package/dist/_gqlTypes/index.js +41 -0
  7. package/dist/_gqlTypes/index.js.map +1 -1
  8. package/dist/_queries/records/getRecordFormQuery.js +2 -0
  9. package/dist/_queries/records/getRecordFormQuery.js.map +1 -1
  10. package/dist/_queries/records/getRecordPropertiesQuery.js +2 -0
  11. package/dist/_queries/records/getRecordPropertiesQuery.js.map +1 -1
  12. package/dist/_queries/records/recordFormAttributeFragment.js +2 -0
  13. package/dist/_queries/records/recordFormAttributeFragment.js.map +1 -1
  14. package/dist/components/Explorer/DataView.d.ts +2 -1
  15. package/dist/components/Explorer/DataView.js +8 -26
  16. package/dist/components/Explorer/DataView.js.map +1 -1
  17. package/dist/components/Explorer/Explorer.d.ts +6 -4
  18. package/dist/components/Explorer/Explorer.js +30 -9
  19. package/dist/components/Explorer/Explorer.js.map +1 -1
  20. package/dist/components/Explorer/ExplorerTitle.d.ts +7 -0
  21. package/dist/components/Explorer/ExplorerTitle.js +30 -0
  22. package/dist/components/Explorer/ExplorerTitle.js.map +1 -0
  23. package/dist/components/Explorer/TableCell.d.ts +7 -0
  24. package/dist/components/Explorer/TableCell.js +40 -0
  25. package/dist/components/Explorer/TableCell.js.map +1 -0
  26. package/dist/components/Explorer/_queries/useExplorerData.d.ts +11 -0
  27. package/dist/components/Explorer/_queries/useExplorerData.js +42 -0
  28. package/dist/components/Explorer/_queries/useExplorerData.js.map +1 -0
  29. package/dist/components/Explorer/{types.d.ts → _types.d.ts} +11 -0
  30. package/dist/components/Explorer/_types.js +2 -0
  31. package/dist/components/Explorer/_types.js.map +1 -0
  32. package/dist/components/Explorer/edit-settings/ColumnItem.d.ts +12 -0
  33. package/dist/components/Explorer/edit-settings/ColumnItem.js +78 -0
  34. package/dist/components/Explorer/edit-settings/ColumnItem.js.map +1 -0
  35. package/dist/components/Explorer/edit-settings/DisplayMode.d.ts +6 -0
  36. package/dist/components/Explorer/edit-settings/DisplayMode.js +34 -0
  37. package/dist/components/Explorer/edit-settings/DisplayMode.js.map +1 -0
  38. package/dist/components/Explorer/edit-settings/DisplayModeTable.d.ts +6 -0
  39. package/dist/components/Explorer/edit-settings/DisplayModeTable.js +89 -0
  40. package/dist/components/Explorer/edit-settings/DisplayModeTable.js.map +1 -0
  41. package/dist/components/Explorer/edit-settings/EditSettingsContext.d.ts +14 -0
  42. package/dist/components/Explorer/edit-settings/EditSettingsContext.js +15 -0
  43. package/dist/components/Explorer/edit-settings/EditSettingsContext.js.map +1 -0
  44. package/dist/components/Explorer/edit-settings/EditSettingsContextProvider.d.ts +7 -0
  45. package/dist/components/Explorer/edit-settings/EditSettingsContextProvider.js +17 -0
  46. package/dist/components/Explorer/edit-settings/EditSettingsContextProvider.js.map +1 -0
  47. package/dist/components/Explorer/edit-settings/SettingItem.d.ts +9 -0
  48. package/dist/components/Explorer/edit-settings/SettingItem.js +55 -0
  49. package/dist/components/Explorer/edit-settings/SettingItem.js.map +1 -0
  50. package/dist/components/Explorer/edit-settings/SettingsPanel.d.ts +7 -0
  51. package/dist/components/Explorer/edit-settings/SettingsPanel.js +53 -0
  52. package/dist/components/Explorer/edit-settings/SettingsPanel.js.map +1 -0
  53. package/dist/components/Explorer/edit-settings/SidePanel.d.ts +2 -0
  54. package/dist/components/Explorer/edit-settings/SidePanel.js +19 -0
  55. package/dist/components/Explorer/edit-settings/SidePanel.js.map +1 -0
  56. package/dist/components/Explorer/edit-settings/ViewSetingsContext.d.ts +7 -0
  57. package/dist/components/Explorer/edit-settings/ViewSetingsContext.js +15 -0
  58. package/dist/components/Explorer/edit-settings/ViewSetingsContext.js.map +1 -0
  59. package/dist/components/Explorer/edit-settings/useEditSettings.d.ts +1 -0
  60. package/dist/components/Explorer/edit-settings/useEditSettings.js +7 -0
  61. package/dist/components/Explorer/edit-settings/useEditSettings.js.map +1 -0
  62. package/dist/components/Explorer/edit-settings/useGetLibraryColumns.d.ts +10 -0
  63. package/dist/components/Explorer/edit-settings/useGetLibraryColumns.js +24 -0
  64. package/dist/components/Explorer/edit-settings/useGetLibraryColumns.js.map +1 -0
  65. package/dist/components/Explorer/edit-settings/useOpenSettings.d.ts +1 -0
  66. package/dist/components/Explorer/edit-settings/useOpenSettings.js +19 -0
  67. package/dist/components/Explorer/edit-settings/useOpenSettings.js.map +1 -0
  68. package/dist/components/Explorer/edit-settings/useViewSettingsContext.d.ts +4 -0
  69. package/dist/components/Explorer/edit-settings/useViewSettingsContext.js +7 -0
  70. package/dist/components/Explorer/edit-settings/useViewSettingsContext.js.map +1 -0
  71. package/dist/components/Explorer/edit-settings/viewSettingsReducer.d.ts +43 -0
  72. package/dist/components/Explorer/edit-settings/viewSettingsReducer.js +58 -0
  73. package/dist/components/Explorer/edit-settings/viewSettingsReducer.js.map +1 -0
  74. package/dist/components/Explorer/index.d.ts +11 -1
  75. package/dist/components/Explorer/index.js +8 -1
  76. package/dist/components/Explorer/index.js.map +1 -1
  77. package/dist/components/Explorer/{useCreateMainAction.d.ts → useCreateAction.d.ts} +3 -3
  78. package/dist/components/Explorer/{useCreateMainAction.js → useCreateAction.js} +11 -7
  79. package/dist/components/Explorer/useCreateAction.js.map +1 -0
  80. package/dist/components/Explorer/useDeactivateAction.d.ts +1 -1
  81. package/dist/components/Explorer/useDeactivateAction.js +1 -1
  82. package/dist/components/Explorer/useDeactivateAction.js.map +1 -1
  83. package/dist/components/Explorer/useEditAction.d.ts +1 -1
  84. package/dist/components/Explorer/useEditAction.js +2 -2
  85. package/dist/components/Explorer/useEditAction.js.map +1 -1
  86. package/dist/components/Explorer/usePrimaryActions.d.ts +20 -0
  87. package/dist/components/Explorer/usePrimaryActions.js +29 -0
  88. package/dist/components/Explorer/usePrimaryActions.js.map +1 -0
  89. package/dist/components/RecordEdition/EditRecord/EditRecord.js +1 -1
  90. package/dist/components/RecordEdition/EditRecord/EditRecord.js.map +1 -1
  91. package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js +1 -1
  92. package/dist/components/RecordEdition/EditRecordContent/EditRecordContent.js.map +1 -1
  93. package/dist/components/RecordEdition/EditRecordContent/_types.d.ts +2 -2
  94. package/dist/components/RecordEdition/EditRecordContent/hooks/useRunActionsListAndFormatOnValue.js +3 -0
  95. package/dist/components/RecordEdition/EditRecordContent/hooks/useRunActionsListAndFormatOnValue.js.map +1 -1
  96. package/dist/components/RecordEdition/EditRecordContent/reducers/standardFieldReducer/standardFieldReducer.d.ts +2 -2
  97. package/dist/components/RecordEdition/EditRecordContent/reducers/standardFieldReducer/standardFieldReducer.js +3 -9
  98. package/dist/components/RecordEdition/EditRecordContent/reducers/standardFieldReducer/standardFieldReducer.js.map +1 -1
  99. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSBooleanWrapper.js +3 -0
  100. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSBooleanWrapper.js.map +1 -1
  101. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSColorPickerWrapper.js +3 -0
  102. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSColorPickerWrapper.js.map +1 -1
  103. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSDatePickerWrapper.js +3 -0
  104. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSDatePickerWrapper.js.map +1 -1
  105. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputEncryptedWrapper.js +3 -0
  106. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputEncryptedWrapper.js.map +1 -1
  107. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputWrapper.js +3 -0
  108. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSInputWrapper.js.map +1 -1
  109. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRangePickerWrapper.js +3 -0
  110. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRangePickerWrapper.js.map +1 -1
  111. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRichTextWrapper.js +3 -0
  112. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/DSRichTextWrapper.js.map +1 -1
  113. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValueDisplayHandler/StandardFieldValueDisplayHandler.d.ts +2 -2
  114. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValueDisplayHandler/StandardFieldValueDisplayHandler.js +39 -29
  115. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValueDisplayHandler/StandardFieldValueDisplayHandler.js.map +1 -1
  116. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValueDisplayHandler/StandardFieldValueRead/StandardFieldValueRead.js +5 -1
  117. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/StandardFieldValueDisplayHandler/StandardFieldValueRead/StandardFieldValueRead.js.map +1 -1
  118. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/MonoValueSelect.d.ts +3 -0
  119. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/MonoValueSelect.js +145 -0
  120. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/MonoValueSelect.js.map +1 -0
  121. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/_types.d.ts +17 -0
  122. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/_types.js +2 -0
  123. package/dist/components/RecordEdition/EditRecordContent/uiElements/StandardField/StandardFieldValue/ValuesList/_types.js.map +1 -0
  124. package/dist/components/index.d.ts +1 -0
  125. package/dist/components/index.js +1 -0
  126. package/dist/components/index.js.map +1 -1
  127. package/dist/locales/en/shared.json +21 -3
  128. package/dist/locales/fr/shared.json +21 -3
  129. package/package.json +4 -2
  130. package/dist/components/Explorer/types.js +0 -2
  131. package/dist/components/Explorer/types.js.map +0 -1
  132. package/dist/components/Explorer/useCreateMainAction.js.map +0 -1
  133. package/dist/components/Explorer/useExplorerData.d.ts +0 -11
  134. package/dist/components/Explorer/useExplorerData.js +0 -23
  135. package/dist/components/Explorer/useExplorerData.js.map +0 -1
@@ -30,12 +30,14 @@ export const getRecordFormQuery = gql `
30
30
  ... on StandardStringValuesListConf {
31
31
  enable
32
32
  allowFreeEntry
33
+ allowListUpdate
33
34
  values
34
35
  }
35
36
 
36
37
  ... on StandardDateRangeValuesListConf {
37
38
  enable
38
39
  allowFreeEntry
40
+ allowListUpdate
39
41
  dateRangeValues: values {
40
42
  from
41
43
  to
@@ -1 +1 @@
1
- {"version":3,"file":"getRecordFormQuery.js","sourceRoot":"","sources":["../../../src/_queries/records/getRecordFormQuery.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,2BAA2B,EAAC,MAAM,+BAA+B,CAAC;AAE1E,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAA;MAC/B,oBAAoB;MACpB,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAoDhC,CAAC"}
1
+ {"version":3,"file":"getRecordFormQuery.js","sourceRoot":"","sources":["../../../src/_queries/records/getRecordFormQuery.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AACnC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,2BAA2B,EAAC,MAAM,+BAA+B,CAAC;AAE1E,MAAM,CAAC,MAAM,kBAAkB,GAAG,GAAG,CAAA;MAC/B,oBAAoB;MACpB,2BAA2B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAsDhC,CAAC"}
@@ -14,6 +14,8 @@ const _getFieldLinkedLibraryPart = (field) => field.linkedLibrary
14
14
  const _getFieldQueryPart = (field) => `
15
15
  ${field.attributeId}: property(attribute: "${field.attributeId}") {
16
16
  id_value
17
+ isInherited
18
+ isCalculated
17
19
  created_at
18
20
  modified_at
19
21
  version {
@@ -1 +1 @@
1
- {"version":3,"file":"getRecordPropertiesQuery.js","sourceRoot":"","sources":["../../../src/_queries/records/getRecordPropertiesQuery.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,6BAA6B,EAAC,MAAM,aAAa,CAAC;AAC1D,OAAO,EAGH,qBAAqB,EAIxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AACxC,OAAO,EAAC,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAG1D,OAAO,EAAC,4BAA4B,EAAC,MAAM,iCAAiC,CAAC;AAkG7E,MAAM,0BAA0B,GAAG,CAAC,KAA6B,EAAU,EAAE,CACzE,KAAK,CAAC,aAAa;IACf,CAAC,CAAC,UAAU,6BAA6B,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;cAC3D,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;UAC3E;IACF,CAAC,CAAC,EAAE,CAAC;AAEb,MAAM,kBAAkB,GAAG,CAAC,KAA6B,EAAU,EAAE,CAAC;MAChE,KAAK,CAAC,WAAW,0BAA0B,KAAK,CAAC,WAAW;;;;;;;;;;;;;;;;;;;;;;;kBAuBhD,0BAA0B,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;CAmBlD,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,MAAgC,EAAE,EAAE,CAAC,YAAY,CAAA;UAChF,sBAAsB;UACtB,4BAA4B;;;;;qDAKe,qBAAqB,CAAC,KAAK;;;;;;;;;;;sBAW1D,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;;;;KAI/F,CAAC"}
1
+ {"version":3,"file":"getRecordPropertiesQuery.js","sourceRoot":"","sources":["../../../src/_queries/records/getRecordPropertiesQuery.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,6BAA6B,EAAC,MAAM,aAAa,CAAC;AAC1D,OAAO,EAGH,qBAAqB,EAIxB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,YAAY,EAAC,MAAM,YAAY,CAAC;AACxC,OAAO,EAAC,sBAAsB,EAAC,MAAM,oBAAoB,CAAC;AAG1D,OAAO,EAAC,4BAA4B,EAAC,MAAM,iCAAiC,CAAC;AAkG7E,MAAM,0BAA0B,GAAG,CAAC,KAA6B,EAAU,EAAE,CACzE,KAAK,CAAC,aAAa;IACf,CAAC,CAAC,UAAU,6BAA6B,CAAC,KAAK,CAAC,aAAa,CAAC,EAAE,CAAC;cAC3D,KAAK,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI;UAC3E;IACF,CAAC,CAAC,EAAE,CAAC;AAEb,MAAM,kBAAkB,GAAG,CAAC,KAA6B,EAAU,EAAE,CAAC;MAChE,KAAK,CAAC,WAAW,0BAA0B,KAAK,CAAC,WAAW;;;;;;;;;;;;;;;;;;;;;;;;;kBAyBhD,0BAA0B,CAAC,KAAK,CAAC;;;;;;;;;;;;;;;;;;;CAmBlD,CAAC;AAEF,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,MAAgC,EAAE,EAAE,CAAC,YAAY,CAAA;UAChF,sBAAsB;UACtB,4BAA4B;;;;;qDAKe,qBAAqB,CAAC,KAAK;;;;;;;;;;;sBAW1D,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE;;;;KAI/F,CAAC"}
@@ -65,6 +65,7 @@ export const recordFormAttributeFragment = gql `
65
65
  linkValuesList: values_list {
66
66
  enable
67
67
  allowFreeEntry
68
+ allowListUpdate
68
69
  values {
69
70
  ...RecordIdentity
70
71
  }
@@ -79,6 +80,7 @@ export const recordFormAttributeFragment = gql `
79
80
  treeValuesList: values_list {
80
81
  enable
81
82
  allowFreeEntry
83
+ allowListUpdate
82
84
  values {
83
85
  id
84
86
  record {
@@ -1 +1 @@
1
- {"version":3,"file":"recordFormAttributeFragment.js","sourceRoot":"","sources":["../../../src/_queries/records/recordFormAttributeFragment.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AAEnC,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2F7C,CAAC"}
1
+ {"version":3,"file":"recordFormAttributeFragment.js","sourceRoot":"","sources":["../../../src/_queries/records/recordFormAttributeFragment.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,GAAG,EAAC,MAAM,gBAAgB,CAAC;AAEnC,MAAM,CAAC,MAAM,2BAA2B,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA6F7C,CAAC"}
@@ -1,8 +1,9 @@
1
1
  import { FunctionComponent } from 'react';
2
- import { IItemAction, IItemData } from './types';
2
+ import { IExplorerData, IItemAction, IItemData } from './_types';
3
3
  interface IDataViewProps {
4
4
  dataGroupedFilteredSorted: IItemData[];
5
5
  itemActions: IItemAction[];
6
+ columnsLabels: IExplorerData['attributes'];
6
7
  attributesToDisplay: string[];
7
8
  }
8
9
  export declare const DataView: FunctionComponent<IDataViewProps>;
@@ -6,7 +6,7 @@ import { cloneElement } from 'react';
6
6
  import { KitButton, KitDropDown, KitIdCard, KitSpace, KitTable } from 'aristid-ds';
7
7
  import { FaEllipsisH } from 'react-icons/fa';
8
8
  import { useSharedTranslation } from '../../hooks/useSharedTranslation';
9
- import { AttributeType } from '../../_gqlTypes';
9
+ import { TableCell } from './TableCell';
10
10
  const USELESS = '';
11
11
  const _getIdCard = ({ id, label, library, preview, subLabel }) => {
12
12
  const avatarProps = { label: label ?? undefined };
@@ -15,11 +15,11 @@ const _getIdCard = ({ id, label, library, preview, subLabel }) => {
15
15
  }
16
16
  return _jsx(KitIdCard, { avatarProps: avatarProps, title: label ?? id, description: subLabel ?? library.id });
17
17
  };
18
- export const DataView = ({ dataGroupedFilteredSorted, attributesToDisplay, itemActions }) => {
18
+ export const DataView = ({ dataGroupedFilteredSorted, attributesToDisplay, columnsLabels, itemActions }) => {
19
19
  const { t } = useSharedTranslation();
20
20
  const _getActionButtons = (actions) => {
21
21
  const isLessThanFourActions = actions.length < 4;
22
- return isLessThanFourActions ? (_jsx(KitSpace, { children: actions.map(({ label, icon, isDanger, callback }) => (_jsx(KitButton, { title: label, icon: icon, onClick: callback, danger: isDanger, children: label }))) })) : (_jsxs(_Fragment, { children: [_jsx(KitButton, { type: "tertiary", icon: actions[0].icon, onClick: actions[0].callback, title: actions[0].label, danger: actions[0].isDanger }), _jsx(KitButton, { type: "tertiary", icon: actions[1].icon, onClick: actions[1].callback, title: actions[1].label, danger: actions[1].isDanger }), _jsx(KitDropDown, { menu: {
22
+ return isLessThanFourActions ? (_jsx(KitSpace, { children: actions.map(({ label, icon, isDanger, callback }, index) => (_jsx(KitButton, { title: label, icon: icon, onClick: callback, danger: isDanger, children: label }, index))) })) : (_jsxs(_Fragment, { children: [_jsx(KitButton, { type: "tertiary", icon: actions[0].icon, onClick: actions[0].callback, title: actions[0].label, danger: actions[0].isDanger }), _jsx(KitButton, { type: "tertiary", icon: actions[1].icon, onClick: actions[1].callback, title: actions[1].label, danger: actions[1].isDanger }), _jsx(KitDropDown, { menu: {
23
23
  items: actions.slice(2).map(({ callback, icon, label, isDanger }) => ({
24
24
  key: label,
25
25
  title: label,
@@ -30,31 +30,12 @@ export const DataView = ({ dataGroupedFilteredSorted, attributesToDisplay, itemA
30
30
  }))
31
31
  }, children: _jsx(KitButton, { title: t('explorer.more-actions') ?? undefined, type: "tertiary", icon: _jsx(FaEllipsisH, {}) }) })] }));
32
32
  };
33
- const renderCell = (propertiesById, attributeName) => {
34
- // TODO: handle inherited and calculated values
35
- const isLinkValue = (v) => [AttributeType.simple_link, AttributeType.advanced_link].includes(v.attribute.type);
36
- const isTreeValue = (v) => [AttributeType.tree].includes(v.attribute.type);
37
- const isStandardValue = (v) => [AttributeType.simple, AttributeType.advanced].includes(v.attribute.type);
38
- const defaultValue = '';
39
- return propertiesById[attributeName]
40
- .map(value => {
41
- if (isStandardValue(value)) {
42
- return value.valuePayload;
43
- }
44
- if (isTreeValue(value)) {
45
- return value.treePayload?.record.id ?? defaultValue;
46
- }
47
- if (isLinkValue(value)) {
48
- return value.linkPayload?.id ?? defaultValue;
49
- }
50
- })
51
- .join(', ');
52
- };
33
+ const _getColumnName = (attributeName) => columnsLabels?.[attributeName] ?? attributeName;
53
34
  const columns = attributesToDisplay
54
35
  .map(attributeName => ({
55
- title: attributeName,
36
+ title: attributeName === 'whoAmI' ? '' : _getColumnName(attributeName),
56
37
  dataIndex: USELESS,
57
- render: (_, { whoAmI, propertiesById }) => attributeName === 'whoAmI' ? _getIdCard(whoAmI) : renderCell(propertiesById, attributeName)
38
+ render: (_, { whoAmI, propertiesById }) => attributeName === 'whoAmI' ? _getIdCard(whoAmI) : _jsx(TableCell, { values: propertiesById[attributeName] })
58
39
  }))
59
40
  .concat(itemActions.length === 0
60
41
  ? []
@@ -69,6 +50,7 @@ export const DataView = ({ dataGroupedFilteredSorted, attributesToDisplay, itemA
69
50
  })))
70
51
  }
71
52
  ]);
72
- return _jsx(KitTable, { columns: columns, pagination: false, dataSource: dataGroupedFilteredSorted });
53
+ //TODO: handle columns width based on attribute type/format
54
+ return _jsx(KitTable, { columns: columns, pagination: false, dataSource: dataGroupedFilteredSorted, tableLayout: "fixed" });
73
55
  };
74
56
  //# sourceMappingURL=DataView.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"DataView.js","sourceRoot":"","sources":["../../../src/components/Explorer/DataView.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"DataView.js","sourceRoot":"","sources":["../../../src/components/Explorer/DataView.tsx"],"names":[],"mappings":"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"}
@@ -1,10 +1,12 @@
1
1
  import { FunctionComponent } from 'react';
2
- import { IItemAction } from './types';
2
+ import { IItemAction, IPrimaryAction } from './_types';
3
3
  interface IExplorerProps {
4
4
  library: string;
5
- itemActions: IItemAction[];
6
- defaultActionsForItem?: [] | ['deactivate'] | ['edit'] | ['edit', 'deactivate'] | ['deactivate', 'edit'] | undefined;
7
- defaultMainActions?: [] | ['create'];
5
+ itemActions?: IItemAction[];
6
+ primaryActions?: IPrimaryAction[];
7
+ title?: string;
8
+ defaultActionsForItem?: Array<'edit' | 'deactivate'>;
9
+ defaultPrimaryActions?: Array<'create'>;
8
10
  }
9
11
  export declare const Explorer: FunctionComponent<IExplorerProps>;
10
12
  export {};
@@ -1,11 +1,23 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- import { KitTypography } from 'aristid-ds';
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import { useReducer } from 'react';
6
+ import { KitSpace, KitTypography } from 'aristid-ds';
3
7
  import styled from 'styled-components';
4
8
  import { DataView } from './DataView';
5
- import { useExplorerData } from './useExplorerData';
9
+ import { useOpenSettings } from './edit-settings/useOpenSettings';
10
+ import { useExplorerData } from './_queries/useExplorerData';
6
11
  import { useDeactivateAction } from './useDeactivateAction';
7
12
  import { useEditAction } from './useEditAction';
8
- import { useCreateMainAction } from './useCreateMainAction';
13
+ import { usePrimaryActionsButton as usePrimaryActionsButton } from './usePrimaryActions';
14
+ import { ExplorerTitle } from './ExplorerTitle';
15
+ import { useCreateAction } from './useCreateAction';
16
+ import { createPortal } from 'react-dom';
17
+ import { SidePanel } from './edit-settings/SidePanel';
18
+ import { useEditSettings } from './edit-settings/useEditSettings';
19
+ import ViewSettingsReducer from './edit-settings/viewSettingsReducer';
20
+ import { ViewSettingsContext, viewSettingsInitialState } from './edit-settings/ViewSetingsContext';
9
21
  const isNotEmpty = (union) => union.length > 0;
10
22
  const ExplorerHeaderDivStyled = styled.div `
11
23
  display: flex;
@@ -13,20 +25,29 @@ const ExplorerHeaderDivStyled = styled.div `
13
25
  align-items: center;
14
26
  padding-bottom: calc(var(--general-spacing-xs) * 1px);
15
27
  `;
16
- export const Explorer = ({ library, itemActions, defaultActionsForItem = ['edit', 'deactivate'], defaultMainActions = ['create'] }) => {
17
- const currentAttribute = 'id';
18
- const { data, loading, refetch } = useExplorerData(library, [currentAttribute]); // TODO: refresh when go back on page
28
+ export const Explorer = ({ library, itemActions, primaryActions, title, defaultActionsForItem = ['edit', 'deactivate'], defaultPrimaryActions = ['create'] }) => {
29
+ const { panelElement } = useEditSettings();
30
+ const [view, dispatch] = useReducer(ViewSettingsReducer, viewSettingsInitialState);
31
+ const { data, loading, refetch } = useExplorerData(library, view.fields); // TODO: refresh when go back on page
19
32
  const { deactivateAction } = useDeactivateAction({
20
33
  isEnabled: isNotEmpty(defaultActionsForItem) && defaultActionsForItem.includes('deactivate')
21
34
  });
22
35
  const { editAction, editModal } = useEditAction({
23
36
  isEnabled: isNotEmpty(defaultActionsForItem) && defaultActionsForItem.includes('edit')
24
37
  });
25
- const { createButton, createModal } = useCreateMainAction({
26
- isEnabled: isNotEmpty(defaultMainActions) && defaultMainActions.includes('create'),
38
+ const { createAction, createModal } = useCreateAction({
39
+ isEnabled: isNotEmpty(defaultPrimaryActions) && defaultPrimaryActions.includes('create'),
27
40
  library,
28
41
  refetch
29
42
  });
30
- return (_jsxs(_Fragment, { children: [loading ? ('Loading...') : (_jsxs(_Fragment, { children: [_jsxs(ExplorerHeaderDivStyled, { children: [_jsx(KitTypography.Title, { level: "h1", children: library /* TODO: get correct name from backend */ }), createButton] }), _jsx(DataView, { dataGroupedFilteredSorted: data ?? [], attributesToDisplay: [currentAttribute, 'whoAmI'], itemActions: [editAction, deactivateAction, ...itemActions].filter(Boolean) })] })), editModal, createModal] }));
43
+ // TODO: move to `useCreateAction` directly?
44
+ const enabledDefaultActions = createAction ? [createAction] : [];
45
+ const { primaryButton } = usePrimaryActionsButton([...enabledDefaultActions, ...(primaryActions ?? [])]);
46
+ // TODO: harmonize to other hook signature that return only object
47
+ const settingsButton = useOpenSettings(library);
48
+ // TODO: remove SET
49
+ const dedupItemActions = [...new Set([editAction, deactivateAction, ...(itemActions ?? [])].filter(Boolean))];
50
+ return (_jsxs(ViewSettingsContext.Provider, { value: { view, dispatch }, children: [loading ? ('Loading...' // TODO: handle loading properly
51
+ ) : (_jsxs(_Fragment, { children: [_jsxs(ExplorerHeaderDivStyled, { children: [_jsx(KitTypography.Title, { level: "h1", children: _jsx(ExplorerTitle, { library: library, title: title }) }), _jsxs(KitSpace, { size: "xs", children: [settingsButton, primaryButton] })] }), _jsx(DataView, { dataGroupedFilteredSorted: data?.records ?? [], itemActions: dedupItemActions, columnsLabels: data?.attributes ?? {}, attributesToDisplay: ['whoAmI', ...view.fields] })] })), panelElement && createPortal(_jsx(SidePanel, {}), panelElement), editModal, createModal] }));
31
52
  };
32
53
  //# sourceMappingURL=Explorer.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Explorer.js","sourceRoot":"","sources":["../../../src/components/Explorer/Explorer.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AACzC,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AACpC,OAAO,EAAC,eAAe,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAC1D,OAAO,EAAC,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAC9C,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAC;AAe1D,MAAM,UAAU,GAAG,CAAsB,KAAQ,EAA2B,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;AAEhG,MAAM,uBAAuB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;CAKzC,CAAC;AAEF,MAAM,CAAC,MAAM,QAAQ,GAAsC,CAAC,EACxD,OAAO,EACP,WAAW,EACX,qBAAqB,GAAG,CAAC,MAAM,EAAE,YAAY,CAAC,EAC9C,kBAAkB,GAAG,CAAC,QAAQ,CAAC,EAClC,EAAE,EAAE;IACD,MAAM,gBAAgB,GAAG,IAAI,CAAC;IAE9B,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAC,GAAG,eAAe,CAAC,OAAO,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,qCAAqC;IAEpH,MAAM,EAAC,gBAAgB,EAAC,GAAG,mBAAmB,CAAC;QAC3C,SAAS,EAAE,UAAU,CAAC,qBAAqB,CAAC,IAAI,qBAAqB,CAAC,QAAQ,CAAC,YAAY,CAAC;KAC/F,CAAC,CAAC;IAEH,MAAM,EAAC,UAAU,EAAE,SAAS,EAAC,GAAG,aAAa,CAAC;QAC1C,SAAS,EAAE,UAAU,CAAC,qBAAqB,CAAC,IAAI,qBAAqB,CAAC,QAAQ,CAAC,MAAM,CAAC;KACzF,CAAC,CAAC;IAEH,MAAM,EAAC,YAAY,EAAE,WAAW,EAAC,GAAG,mBAAmB,CAAC;QACpD,SAAS,EAAE,UAAU,CAAC,kBAAkB,CAAC,IAAI,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC;QAClF,OAAO;QACP,OAAO;KACV,CAAC,CAAC;IAEH,OAAO,CACH,8BACK,OAAO,CAAC,CAAC,CAAC,CACP,YAAY,CACf,CAAC,CAAC,CAAC,CACA,8BACI,MAAC,uBAAuB,eACpB,KAAC,aAAa,CAAC,KAAK,IAAC,KAAK,EAAC,IAAI,YAC1B,OAAO,CAAC,yCAAyC,GAChC,EACrB,YAAY,IACS,EAC1B,KAAC,QAAQ,IACL,yBAAyB,EAAE,IAAI,IAAI,EAAE,EACrC,mBAAmB,EAAE,CAAC,gBAAgB,EAAE,QAAQ,CAAC,EACjD,WAAW,EAAE,CAAC,UAAU,EAAE,gBAAgB,EAAE,GAAG,WAAW,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,GAC7E,IACH,CACN,EACA,SAAS,EACT,WAAW,IACb,CACN,CAAC;AACN,CAAC,CAAC"}
1
+ {"version":3,"file":"Explorer.js","sourceRoot":"","sources":["../../../src/components/Explorer/Explorer.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,7 @@
1
+ import { FunctionComponent } from 'react';
2
+ interface IExplorerTitleProps {
3
+ title?: string;
4
+ library: string;
5
+ }
6
+ export declare const ExplorerTitle: FunctionComponent<IExplorerTitleProps>;
7
+ export {};
@@ -0,0 +1,30 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import { localizedTranslation } from '@leav/utils';
6
+ import { useExplorerLibraryDataQuery } from '../../_gqlTypes';
7
+ import useLang from '../../hooks/useLang';
8
+ import { AntSkeleton } from 'aristid-ds';
9
+ // TODO: use <h1 /> tag
10
+ export const ExplorerTitle = ({ title, library }) => {
11
+ const { data, loading, error } = useExplorerLibraryDataQuery({ variables: { libraryId: library }, skip: !!title });
12
+ const { lang } = useLang();
13
+ if (title) {
14
+ return _jsx("span", { children: title });
15
+ }
16
+ if (loading) {
17
+ return _jsx(AntSkeleton.Input, { style: { width: 400 }, active: true });
18
+ }
19
+ // TODO: handle error and bad library ID
20
+ if (error) {
21
+ return _jsx("span", { children: error.message });
22
+ }
23
+ const libraryData = data?.libraries?.list[0];
24
+ if (!libraryData) {
25
+ // TODO: make it i18n
26
+ return _jsx("span", { children: "Unknown library" });
27
+ }
28
+ return _jsx("span", { children: localizedTranslation(libraryData.label, lang) });
29
+ };
30
+ //# sourceMappingURL=ExplorerTitle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExplorerTitle.js","sourceRoot":"","sources":["../../../src/components/Explorer/ExplorerTitle.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,oBAAoB,EAAC,MAAM,aAAa,CAAC;AACjD,OAAO,EAAC,2BAA2B,EAAC,MAAM,eAAe,CAAC;AAC1D,OAAO,OAAO,MAAM,mBAAmB,CAAC;AACxC,OAAO,EAAC,WAAW,EAAC,MAAM,YAAY,CAAC;AAQvC,uBAAuB;AACvB,MAAM,CAAC,MAAM,aAAa,GAA2C,CAAC,EAAC,KAAK,EAAE,OAAO,EAAC,EAAE,EAAE;IACtF,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,KAAK,EAAC,GAAG,2BAA2B,CAAC,EAAC,SAAS,EAAE,EAAC,SAAS,EAAE,OAAO,EAAC,EAAE,IAAI,EAAE,CAAC,CAAC,KAAK,EAAC,CAAC,CAAC;IAC7G,MAAM,EAAC,IAAI,EAAC,GAAG,OAAO,EAAE,CAAC;IAEzB,IAAI,KAAK,EAAE,CAAC;QACR,OAAO,yBAAO,KAAK,GAAQ,CAAC;IAChC,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACV,OAAO,KAAC,WAAW,CAAC,KAAK,IAAC,KAAK,EAAE,EAAC,KAAK,EAAE,GAAG,EAAC,EAAE,MAAM,SAAG,CAAC;IAC7D,CAAC;IAED,wCAAwC;IACxC,IAAI,KAAK,EAAE,CAAC;QACR,OAAO,yBAAO,KAAK,CAAC,OAAO,GAAQ,CAAC;IACxC,CAAC;IAED,MAAM,WAAW,GAAG,IAAI,EAAE,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC;IAE7C,IAAI,CAAC,WAAW,EAAE,CAAC;QACf,qBAAqB;QACrB,OAAO,6CAA4B,CAAC;IACxC,CAAC;IAED,OAAO,yBAAO,oBAAoB,CAAC,WAAW,CAAC,KAAK,EAAE,IAAI,CAAC,GAAQ,CAAC;AACxE,CAAC,CAAC"}
@@ -0,0 +1,7 @@
1
+ import { PropertyValueFragment } from '../../_gqlTypes';
2
+ import { FunctionComponent } from 'react';
3
+ interface ITableCellProps {
4
+ values: PropertyValueFragment[];
5
+ }
6
+ export declare const TableCell: FunctionComponent<ITableCellProps>;
7
+ export {};
@@ -0,0 +1,40 @@
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import { AttributeFormat, AttributeType } from '../../_gqlTypes';
6
+ import { useSharedTranslation } from '../../hooks/useSharedTranslation';
7
+ import { KitTag, KitTypography } from 'aristid-ds';
8
+ import styled from 'styled-components';
9
+ const isLinkValue = (v) => [AttributeType.simple_link, AttributeType.advanced_link].includes(v.attribute.type);
10
+ const isTreeValue = (v) => [AttributeType.tree].includes(v.attribute.type);
11
+ const isStandardValue = (v) => [AttributeType.simple, AttributeType.advanced].includes(v.attribute.type);
12
+ const StyledCenteringWrapper = styled.div `
13
+ display: flex;
14
+ align-items: center;
15
+ `;
16
+ export const TableCell = ({ values }) => {
17
+ const { t } = useSharedTranslation();
18
+ return (_jsx(StyledCenteringWrapper, { children: values.map((value) => {
19
+ if (isStandardValue(value)) {
20
+ switch (value.attribute.format) {
21
+ case AttributeFormat.boolean:
22
+ const valueToDisplay = value.valuePayload ? t('global.yes') : t('global.no');
23
+ return (_jsx(KitTag, { type: !!value.valuePayload ? 'primary' : 'neutral', idCardProps: { description: valueToDisplay } }, value.attribute.id));
24
+ default:
25
+ const valueContent = value.attribute.format === AttributeFormat.encrypted
26
+ ? '●●●●●●●●●●●●'
27
+ : value.valuePayload;
28
+ return (_jsx(KitTypography.Text, { ellipsis: { tooltip: valueContent }, children: valueContent }, value.attribute.id));
29
+ }
30
+ }
31
+ const defaultValue = '';
32
+ if (isTreeValue(value)) {
33
+ return value.treePayload?.record.id ?? defaultValue;
34
+ }
35
+ if (isLinkValue(value)) {
36
+ return value.linkPayload?.id ?? defaultValue;
37
+ }
38
+ }) }));
39
+ };
40
+ //# sourceMappingURL=TableCell.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"TableCell.js","sourceRoot":"","sources":["../../../src/components/Explorer/TableCell.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EACH,eAAe,EACf,aAAa,EAKhB,MAAM,eAAe,CAAC;AACvB,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,MAAM,EAAE,aAAa,EAAC,MAAM,YAAY,CAAC;AAEjD,OAAO,MAAM,MAAM,mBAAmB,CAAC;AAEvC,MAAM,WAAW,GAAG,CAAC,CAAwB,EAAuC,EAAE,CAClF,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,aAAa,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AACxF,MAAM,WAAW,GAAG,CAAC,CAAwB,EAAuC,EAAE,CAClF,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AACpD,MAAM,eAAe,GAAG,CAAC,CAAwB,EAAmC,EAAE,CAClF,CAAC,aAAa,CAAC,MAAM,EAAE,aAAa,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;AAE9E,MAAM,sBAAsB,GAAG,MAAM,CAAC,GAAG,CAAA;;;CAGxC,CAAC;AAMF,MAAM,CAAC,MAAM,SAAS,GAAuC,CAAC,EAAC,MAAM,EAAC,EAAE,EAAE;IACtE,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IAEnC,OAAO,CACH,KAAC,sBAAsB,cAClB,MAAM,CAAC,GAAG,CAAC,CAAC,KAA4B,EAAE,EAAE;YACzC,IAAI,eAAe,CAAC,KAAK,CAAC,EAAE,CAAC;gBACzB,QAAQ,KAAK,CAAC,SAAS,CAAC,MAAM,EAAE,CAAC;oBAC7B,KAAK,eAAe,CAAC,OAAO;wBACxB,MAAM,cAAc,GAAG,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC;wBAC7E,OAAO,CACH,KAAC,MAAM,IAEH,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,EAClD,WAAW,EAAE,EAAC,WAAW,EAAE,cAAc,EAAC,IAFrC,KAAK,CAAC,SAAS,CAAC,EAAE,CAGzB,CACL,CAAC;oBACN;wBACI,MAAM,YAAY,GACd,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,eAAe,CAAC,SAAS;4BAChD,CAAC,CAAC,cAAc;4BAChB,CAAC,CAAC,KAAK,CAAC,YAAY,CAAC;wBAC7B,OAAO,CACH,KAAC,aAAa,CAAC,IAAI,IAA0B,QAAQ,EAAE,EAAC,OAAO,EAAE,YAAY,EAAC,YACzE,YAAY,IADQ,KAAK,CAAC,SAAS,CAAC,EAAE,CAEtB,CACxB,CAAC;gBACV,CAAC;YACL,CAAC;YAED,MAAM,YAAY,GAAG,EAAE,CAAC;YACxB,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,OAAO,KAAK,CAAC,WAAW,EAAE,MAAM,CAAC,EAAE,IAAI,YAAY,CAAC;YACxD,CAAC;YAED,IAAI,WAAW,CAAC,KAAK,CAAC,EAAE,CAAC;gBACrB,OAAO,KAAK,CAAC,WAAW,EAAE,EAAE,IAAI,YAAY,CAAC;YACjD,CAAC;QACL,CAAC,CAAC,GACmB,CAC5B,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,11 @@
1
+ import { IExplorerData } from '../_types';
2
+ import { ExplorerQuery } from '../../../_gqlTypes';
3
+ export declare const useExplorerData: (libraryId: string, attributeIds: string[]) => {
4
+ data: IExplorerData;
5
+ loading: boolean;
6
+ refetch: (variables?: Partial<import("../../../_gqlTypes").Exact<{
7
+ libraryId: import("../../../_gqlTypes").Scalars["ID"];
8
+ attributeIds: Array<import("../../../_gqlTypes").Scalars["ID"]> | import("../../../_gqlTypes").Scalars["ID"];
9
+ filters?: import("../../../_gqlTypes").InputMaybe<Array<import("../../../_gqlTypes").InputMaybe<import("../../../_gqlTypes").RecordFilterInput>> | import("../../../_gqlTypes").InputMaybe<import("../../../_gqlTypes").RecordFilterInput>>;
10
+ }>>) => Promise<import("@apollo/client").ApolloQueryResult<ExplorerQuery>>;
11
+ };
@@ -0,0 +1,42 @@
1
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
2
+ // This file is released under LGPL V3
3
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
4
+ import { localizedTranslation } from '@leav/utils';
5
+ import { useExplorerQuery } from '../../../_gqlTypes';
6
+ import { useLang } from '../../../hooks';
7
+ const _mapping = (data, libraryId, availableLangs) => {
8
+ const attributes = {};
9
+ // TODO: can we use `Array.reduce` method?
10
+ if (data.records.list.length > 0) {
11
+ data.records.list[0].properties.forEach(({ attributeId, values }) => {
12
+ attributes[attributeId] = localizedTranslation(values[0].attribute.label, availableLangs);
13
+ });
14
+ }
15
+ const records = data.records.list.map(({ whoAmI, properties }) => ({
16
+ libraryId,
17
+ key: whoAmI.id, // For <KitTable /> only
18
+ itemId: whoAmI.id, // For <KitTable /> only
19
+ whoAmI: {
20
+ label: null,
21
+ subLabel: null,
22
+ color: null,
23
+ preview: null,
24
+ ...whoAmI
25
+ },
26
+ propertiesById: properties.reduce((acc, { attributeId, values }) => ({ ...acc, [attributeId]: values }), {})
27
+ }));
28
+ return {
29
+ attributes,
30
+ records
31
+ };
32
+ };
33
+ export const useExplorerData = (libraryId, attributeIds) => {
34
+ const { lang: availableLangs } = useLang();
35
+ const { data, loading, refetch } = useExplorerQuery({ variables: { libraryId, attributeIds } });
36
+ return {
37
+ data: data !== undefined ? _mapping(data, libraryId, availableLangs) : null,
38
+ loading,
39
+ refetch
40
+ };
41
+ };
42
+ //# sourceMappingURL=useExplorerData.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"useExplorerData.js","sourceRoot":"","sources":["../../../../src/components/Explorer/_queries/useExplorerData.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,oBAAoB,EAAC,MAAM,aAAa,CAAC;AAEjD,OAAO,EAAgB,gBAAgB,EAAC,MAAM,eAAe,CAAC;AAC9D,OAAO,EAAC,OAAO,EAAC,MAAM,WAAW,CAAC;AAElC,MAAM,QAAQ,GAAG,CAAC,IAAmB,EAAE,SAAiB,EAAE,cAAwB,EAAiB,EAAE;IACjG,MAAM,UAAU,GAAG,EAAE,CAAC;IACtB,0CAA0C;IAC1C,IAAI,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC/B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC,EAAC,WAAW,EAAE,MAAM,EAAC,EAAE,EAAE;YAC9D,UAAU,CAAC,WAAW,CAAC,GAAG,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,KAAK,EAAE,cAAc,CAAC,CAAC;QAC9F,CAAC,CAAC,CAAC;IACP,CAAC;IACD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAC,MAAM,EAAE,UAAU,EAAC,EAAE,EAAE,CAAC,CAAC;QAC7D,SAAS;QACT,GAAG,EAAE,MAAM,CAAC,EAAE,EAAE,wBAAwB;QACxC,MAAM,EAAE,MAAM,CAAC,EAAE,EAAE,wBAAwB;QAC3C,MAAM,EAAE;YACJ,KAAK,EAAE,IAAI;YACX,QAAQ,EAAE,IAAI;YACd,KAAK,EAAE,IAAI;YACX,OAAO,EAAE,IAAI;YACb,GAAG,MAAM;SACZ;QACD,cAAc,EAAE,UAAU,CAAC,MAAM,CAAC,CAAC,GAAG,EAAE,EAAC,WAAW,EAAE,MAAM,EAAC,EAAE,EAAE,CAAC,CAAC,EAAC,GAAG,GAAG,EAAE,CAAC,WAAW,CAAC,EAAE,MAAM,EAAC,CAAC,EAAE,EAAE,CAAC;KAC3G,CAAC,CAAC,CAAC;IAEJ,OAAO;QACH,UAAU;QACV,OAAO;KACV,CAAC;AACN,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,SAAiB,EAAE,YAAsB,EAAE,EAAE;IACzE,MAAM,EAAC,IAAI,EAAE,cAAc,EAAC,GAAG,OAAO,EAAE,CAAC;IACzC,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAC,GAAG,gBAAgB,CAAC,EAAC,SAAS,EAAE,EAAC,SAAS,EAAE,YAAY,EAAC,EAAC,CAAC,CAAC;IAE1F,OAAO;QACH,IAAI,EAAE,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,IAAI;QAC3E,OAAO;QACP,OAAO;KACV,CAAC;AACN,CAAC,CAAC"}
@@ -1,6 +1,12 @@
1
1
  import { PropertyValueFragment, RecordIdentityFragment } from '../../_gqlTypes';
2
2
  import { ReactElement } from 'react';
3
3
  export type ItemWhoAmI = Required<RecordIdentityFragment['whoAmI']>;
4
+ export interface IExplorerData {
5
+ attributes: {
6
+ [attributeId: string]: string;
7
+ };
8
+ records: IItemData[];
9
+ }
4
10
  export interface IItemData {
5
11
  libraryId: string;
6
12
  key: string;
@@ -16,6 +22,11 @@ export interface IItemAction {
16
22
  label: string;
17
23
  isDanger?: boolean;
18
24
  }
25
+ export interface IPrimaryAction {
26
+ callback: () => void;
27
+ icon: ReactElement;
28
+ label: string;
29
+ }
19
30
  export type ActionHook<T = {}> = {
20
31
  isEnabled: boolean;
21
32
  } & T;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=_types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_types.js","sourceRoot":"","sources":["../../../src/components/Explorer/_types.ts"],"names":[],"mappings":""}
@@ -0,0 +1,12 @@
1
+ import { FunctionComponent, ReactNode } from 'react';
2
+ interface IColumnItemProps {
3
+ itemId: string;
4
+ dragHandler?: ReactNode;
5
+ visible: boolean;
6
+ title: string;
7
+ onVisibilityClick?: () => void;
8
+ disabled?: boolean;
9
+ value?: string;
10
+ }
11
+ export declare const ColumnItem: FunctionComponent<IColumnItemProps>;
12
+ export {};
@@ -0,0 +1,78 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import { KitTypography } from 'aristid-ds';
6
+ import { FaEye, FaEyeSlash } from 'react-icons/fa';
7
+ import styled from 'styled-components';
8
+ import { useSortable } from '@dnd-kit/sortable';
9
+ import { CSS } from '@dnd-kit/utilities';
10
+ import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
11
+ const StyledValue = styled(KitTypography.Text) `
12
+ color: var(--general-utilities-disabled);
13
+ `;
14
+ const StyledConfigurationItem = styled.li `
15
+ list-style: none;
16
+ color: var(--general-utilities-text-primary);
17
+ display: flex;
18
+ width: 100%;
19
+ height: 40px;
20
+ padding: 0 calc(var(--general-spacing-xs) * 1px);
21
+ align-items: center;
22
+ gap: calc(var(--general-spacing-xs) * 1px);
23
+ border-radius: calc(var(--general-spacing-xs) * 1px);
24
+ text-align: left;
25
+
26
+ &:first-child {
27
+ margin-top: calc(var(--general-spacing-xs) * 1px);
28
+ }
29
+
30
+ &:hover {
31
+ background: var(--general-utilities-main-light);
32
+
33
+ ${StyledValue} {
34
+ color: var(--general-utilities-text-primary);
35
+ }
36
+ }
37
+
38
+ .title {
39
+ flex: 1 1 auto;
40
+ }
41
+
42
+ > svg {
43
+ flex: 0 0 calc(var(--general-spacing-s) * 1px);
44
+ }
45
+
46
+ > button {
47
+ border: none;
48
+ background: transparent;
49
+ padding: 0;
50
+ &:not([disabled]) {
51
+ cursor: pointer;
52
+ }
53
+ }
54
+ `;
55
+ const StyledFaEye = styled(FaEye) `
56
+ color: currentColor;
57
+ `;
58
+ const StyledEyeSlash = styled(FaEyeSlash) `
59
+ color: var(--general-utilities-disabled);
60
+ `;
61
+ const StyledDragHandle = styled.span `
62
+ cursor: ${props => (props.$isDragging ? 'grabbing' : 'grab')};
63
+ `;
64
+ const StyledEmptyIcon = styled.div `
65
+ width: calc(var(--general-spacing-s) * 1px);
66
+ `;
67
+ export const ColumnItem = ({ itemId, dragHandler, title, disabled, visible, onVisibilityClick }) => {
68
+ const { t } = useSharedTranslation();
69
+ const { attributes, listeners, setNodeRef, transform, transition, isDragging } = useSortable({ id: itemId });
70
+ const style = {
71
+ transform: CSS.Transform.toString(transform),
72
+ transition
73
+ };
74
+ const _handleClick = () => onVisibilityClick?.();
75
+ const visibilityButtonLabel = visible ? t('explorer.hide') : t('explorer.show');
76
+ return (_jsxs(StyledConfigurationItem, { className: disabled ? 'disabled' : '', ref: setNodeRef, style: style, children: [dragHandler ? (_jsx(StyledDragHandle, { ...attributes, ...listeners, "$isDragging": isDragging, children: dragHandler })) : (_jsx(StyledEmptyIcon, {})), _jsx(KitTypography.Text, { size: "fontSize5", ellipsis: true, className: "title", children: title }), _jsx("button", { disabled: disabled, onClick: _handleClick, title: visibilityButtonLabel, "aria-label": visibilityButtonLabel, children: visible ? _jsx(StyledFaEye, {}) : _jsx(StyledEyeSlash, {}) })] }));
77
+ };
78
+ //# sourceMappingURL=ColumnItem.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ColumnItem.js","sourceRoot":"","sources":["../../../../src/components/Explorer/edit-settings/ColumnItem.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAEzC,OAAO,EAAC,KAAK,EAAE,UAAU,EAAC,MAAM,gBAAgB,CAAC;AACjD,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,WAAW,EAAC,MAAM,mBAAmB,CAAC;AAC9C,OAAO,EAAC,GAAG,EAAC,MAAM,oBAAoB,CAAC;AACvC,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AAEpE,MAAM,WAAW,GAAG,MAAM,CAAC,aAAa,CAAC,IAAI,CAAC,CAAA;;CAE7C,CAAC;AAEF,MAAM,uBAAuB,GAAG,MAAM,CAAC,EAAE,CAAA;;;;;;;;;;;;;;;;;;;UAmB/B,WAAW;;;;;;;;;;;;;;;;;;;;;CAqBpB,CAAC;AAEF,MAAM,WAAW,GAAG,MAAM,CAAC,KAAK,CAAC,CAAA;;CAEhC,CAAC;AAEF,MAAM,cAAc,GAAG,MAAM,CAAC,UAAU,CAAC,CAAA;;CAExC,CAAC;AAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC,IAAI,CAAwB;cAC9C,KAAK,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;CAC/D,CAAC;AAEF,MAAM,eAAe,GAAG,MAAM,CAAC,GAAG,CAAA;;CAEjC,CAAC;AAYF,MAAM,CAAC,MAAM,UAAU,GAAwC,CAAC,EAC5D,MAAM,EACN,WAAW,EACX,KAAK,EACL,QAAQ,EACR,OAAO,EACP,iBAAiB,EACpB,EAAE,EAAE;IACD,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,SAAS,EAAE,UAAU,EAAE,UAAU,EAAC,GAAG,WAAW,CAAC,EAAC,EAAE,EAAE,MAAM,EAAC,CAAC,CAAC;IACzG,MAAM,KAAK,GAAG;QACV,SAAS,EAAE,GAAG,CAAC,SAAS,CAAC,QAAQ,CAAC,SAAS,CAAC;QAC5C,UAAU;KACb,CAAC;IAEF,MAAM,YAAY,GAAG,GAAG,EAAE,CAAC,iBAAiB,EAAE,EAAE,CAAC;IAEjD,MAAM,qBAAqB,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,eAAe,CAAC,CAAC;IAChF,OAAO,CACH,MAAC,uBAAuB,IAAC,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,EAAE,GAAG,EAAE,UAAU,EAAE,KAAK,EAAE,KAAK,aACxF,WAAW,CAAC,CAAC,CAAC,CACX,KAAC,gBAAgB,OAAK,UAAU,KAAM,SAAS,iBAAe,UAAU,YACnE,WAAW,GACG,CACtB,CAAC,CAAC,CAAC,CACA,KAAC,eAAe,KAAG,CACtB,EACD,KAAC,aAAa,CAAC,IAAI,IAAC,IAAI,EAAC,WAAW,EAAC,QAAQ,QAAC,SAAS,EAAC,OAAO,YAC1D,KAAK,GACW,EACrB,iBACI,QAAQ,EAAE,QAAQ,EAClB,OAAO,EAAE,YAAY,EACrB,KAAK,EAAE,qBAAqB,gBAChB,qBAAqB,YAEhC,OAAO,CAAC,CAAC,CAAC,KAAC,WAAW,KAAG,CAAC,CAAC,CAAC,KAAC,cAAc,KAAG,GAC1C,IACa,CAC7B,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { FunctionComponent } from 'react';
2
+ interface IDisplayModeProps {
3
+ library: string;
4
+ }
5
+ export declare const DisplayMode: FunctionComponent<IDisplayModeProps>;
6
+ export {};
@@ -0,0 +1,34 @@
1
+ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
+ // Copyright LEAV Solutions 2017 until 2023/11/05, Copyright Aristid from 2023/11/06
3
+ // This file is released under LGPL V3
4
+ // License text available at https://www.gnu.org/licenses/lgpl-3.0.txt
5
+ import { useSharedTranslation } from '../../../hooks/useSharedTranslation';
6
+ import { KitRadio, KitSpace, KitTag } from 'aristid-ds';
7
+ import styled from 'styled-components';
8
+ import { DisplayModeTable } from './DisplayModeTable';
9
+ import { ViewSettingsActionTypes } from './viewSettingsReducer';
10
+ import { useViewSettingsContext } from './useViewSettingsContext';
11
+ const StyledWrapperDiv = styled.div `
12
+ display: flex;
13
+ flex-direction: column;
14
+ gap: calc(var(--general-spacing-l) * 1px);
15
+
16
+ .ant-radio-wrapper {
17
+ padding: calc(var(--general-spacing-xs) * 1px);
18
+ }
19
+ `;
20
+ export const DisplayMode = ({ library }) => {
21
+ const { t } = useSharedTranslation();
22
+ const { view, dispatch } = useViewSettingsContext();
23
+ const _handleDisplayModeChange = (event) => {
24
+ dispatch({
25
+ type: ViewSettingsActionTypes.CHANGE_DISPLAY_MODE,
26
+ payload: {
27
+ displayMode: event.target.value
28
+ }
29
+ });
30
+ };
31
+ const comingSoonTag = _jsx(KitTag, { type: "secondary", idCardProps: { description: String(t('explorer.coming-soon')) } });
32
+ return (_jsxs(StyledWrapperDiv, { children: [_jsx(KitRadio.Group, { value: view.displayMode, onChange: _handleDisplayModeChange, children: _jsxs(KitSpace, { direction: "vertical", size: 0, children: [_jsx(KitRadio, { value: "list", disabled: true, children: _jsxs(KitSpace, { children: [t('explorer.display-mode-list'), " ", comingSoonTag] }) }), _jsx(KitRadio, { value: "table", children: t('explorer.display-mode-table') }), _jsx(KitRadio, { value: "mosaic", disabled: true, children: _jsxs(KitSpace, { children: [t('explorer.display-mode-mosaic'), " ", comingSoonTag] }) }), _jsx(KitRadio, { value: "planning", disabled: true, children: _jsxs(KitSpace, { children: [t('explorer.display-mode-planning'), " ", comingSoonTag] }) })] }) }), view.displayMode === 'table' && _jsx(DisplayModeTable, { library: library })] }));
33
+ };
34
+ //# sourceMappingURL=DisplayMode.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DisplayMode.js","sourceRoot":"","sources":["../../../../src/components/Explorer/edit-settings/DisplayMode.tsx"],"names":[],"mappings":";AAAA,oFAAoF;AACpF,sCAAsC;AACtC,sEAAsE;AACtE,OAAO,EAAC,oBAAoB,EAAC,MAAM,gCAAgC,CAAC;AACpE,OAAO,EAAC,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAC,MAAM,YAAY,CAAC;AAGtD,OAAO,MAAM,MAAM,mBAAmB,CAAC;AACvC,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAC,uBAAuB,EAAC,MAAM,uBAAuB,CAAC;AAC9D,OAAO,EAAC,sBAAsB,EAAC,MAAM,0BAA0B,CAAC;AAEhE,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;;;CAQlC,CAAC;AAMF,MAAM,CAAC,MAAM,WAAW,GAAyC,CAAC,EAAC,OAAO,EAAC,EAAE,EAAE;IAC3E,MAAM,EAAC,CAAC,EAAC,GAAG,oBAAoB,EAAE,CAAC;IACnC,MAAM,EAAC,IAAI,EAAE,QAAQ,EAAC,GAAG,sBAAsB,EAAE,CAAC;IAElD,MAAM,wBAAwB,GAAG,CAAC,KAAuB,EAAE,EAAE;QACzD,QAAQ,CAAC;YACL,IAAI,EAAE,uBAAuB,CAAC,mBAAmB;YACjD,OAAO,EAAE;gBACL,WAAW,EAAE,KAAK,CAAC,MAAM,CAAC,KAAK;aAClC;SACJ,CAAC,CAAC;IACP,CAAC,CAAC;IAEF,MAAM,aAAa,GAAG,KAAC,MAAM,IAAC,IAAI,EAAC,WAAW,EAAC,WAAW,EAAE,EAAC,WAAW,EAAE,MAAM,CAAC,CAAC,CAAC,sBAAsB,CAAC,CAAC,EAAC,GAAI,CAAC;IAEjH,OAAO,CACH,MAAC,gBAAgB,eACb,KAAC,QAAQ,CAAC,KAAK,IAAC,KAAK,EAAE,IAAI,CAAC,WAAW,EAAE,QAAQ,EAAE,wBAAwB,YACvE,MAAC,QAAQ,IAAC,SAAS,EAAC,UAAU,EAAC,IAAI,EAAE,CAAC,aAClC,KAAC,QAAQ,IAAC,KAAK,EAAC,MAAM,EAAC,QAAQ,kBAC3B,MAAC,QAAQ,eACJ,CAAC,CAAC,4BAA4B,CAAC,OAAG,aAAa,IACzC,GACJ,EACX,KAAC,QAAQ,IAAC,KAAK,EAAC,OAAO,YAAE,CAAC,CAAC,6BAA6B,CAAC,GAAY,EACrE,KAAC,QAAQ,IAAC,KAAK,EAAC,QAAQ,EAAC,QAAQ,kBAC7B,MAAC,QAAQ,eACJ,CAAC,CAAC,8BAA8B,CAAC,OAAG,aAAa,IAC3C,GACJ,EACX,KAAC,QAAQ,IAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,kBAC/B,MAAC,QAAQ,eACJ,CAAC,CAAC,gCAAgC,CAAC,OAAG,aAAa,IAC7C,GACJ,IACJ,GACE,EAChB,IAAI,CAAC,WAAW,KAAK,OAAO,IAAI,KAAC,gBAAgB,IAAC,OAAO,EAAE,OAAO,GAAI,IACxD,CACtB,CAAC;AACN,CAAC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { FunctionComponent } from 'react';
2
+ interface IDisplayModeTableProps {
3
+ library: string;
4
+ }
5
+ export declare const DisplayModeTable: FunctionComponent<IDisplayModeTableProps>;
6
+ export {};