box-ui-elements 23.4.0-beta.26 → 23.4.0-beta.27

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 (52) hide show
  1. package/dist/explorer.js +1 -1
  2. package/dist/openwith.js +1 -1
  3. package/dist/picker.js +1 -1
  4. package/dist/preview.js +1 -1
  5. package/dist/sharing.js +1 -1
  6. package/dist/sidebar.js +1 -1
  7. package/dist/uploader.js +1 -1
  8. package/es/elements/common/sub-header/SubHeader.js +37 -30
  9. package/es/elements/common/sub-header/SubHeader.js.map +1 -1
  10. package/es/elements/common/sub-header/SubHeaderRight.js +17 -3
  11. package/es/elements/common/sub-header/SubHeaderRight.js.map +1 -1
  12. package/es/elements/common/sub-header/messages.js +9 -0
  13. package/es/elements/common/sub-header/messages.js.map +1 -0
  14. package/es/elements/content-explorer/Content.js +3 -3
  15. package/es/elements/content-explorer/Content.js.map +1 -1
  16. package/es/elements/content-explorer/ContentExplorer.js +2 -2
  17. package/es/elements/content-explorer/ContentExplorer.js.map +1 -1
  18. package/es/src/elements/common/sub-header/messages.d.ts +8 -0
  19. package/i18n/bn-IN.js +1 -0
  20. package/i18n/da-DK.js +1 -0
  21. package/i18n/de-DE.js +1 -0
  22. package/i18n/en-AU.js +1 -0
  23. package/i18n/en-CA.js +1 -0
  24. package/i18n/en-GB.js +1 -0
  25. package/i18n/en-US.js +1 -0
  26. package/i18n/en-US.properties +2 -0
  27. package/i18n/en-x-pseudo.js +4 -3
  28. package/i18n/es-419.js +1 -0
  29. package/i18n/es-ES.js +1 -0
  30. package/i18n/fi-FI.js +1 -0
  31. package/i18n/fr-CA.js +1 -0
  32. package/i18n/fr-FR.js +1 -0
  33. package/i18n/hi-IN.js +1 -0
  34. package/i18n/it-IT.js +1 -0
  35. package/i18n/ja-JP.js +1 -0
  36. package/i18n/ko-KR.js +1 -0
  37. package/i18n/nb-NO.js +1 -0
  38. package/i18n/nl-NL.js +1 -0
  39. package/i18n/pl-PL.js +1 -0
  40. package/i18n/pt-BR.js +1 -0
  41. package/i18n/ru-RU.js +1 -0
  42. package/i18n/sv-SE.js +1 -0
  43. package/i18n/tr-TR.js +1 -0
  44. package/i18n/zh-CN.js +1 -0
  45. package/i18n/zh-TW.js +1 -0
  46. package/package.json +1 -1
  47. package/src/elements/common/sub-header/SubHeader.tsx +46 -35
  48. package/src/elements/common/sub-header/SubHeaderRight.tsx +43 -22
  49. package/src/elements/common/sub-header/messages.ts +11 -0
  50. package/src/elements/content-explorer/Content.tsx +3 -5
  51. package/src/elements/content-explorer/ContentExplorer.tsx +24 -26
  52. package/src/elements/content-explorer/__tests__/ContentExplorer.test.tsx +35 -2
@@ -3,7 +3,8 @@ import noop from 'lodash/noop';
3
3
  import { PageHeader } from '@box/blueprint-web';
4
4
  import SubHeaderLeft from './SubHeaderLeft';
5
5
  import SubHeaderRight from './SubHeaderRight';
6
- import { VIEW_MODE_LIST } from '../../../constants';
6
+ import { VIEW_MODE_LIST, VIEW_METADATA } from '../../../constants';
7
+ import { useFeatureEnabled } from '../feature-checking';
7
8
  import './SubHeader.scss';
8
9
  const SubHeader = ({
9
10
  canCreateNewFolder,
@@ -25,34 +26,40 @@ const SubHeader = ({
25
26
  rootName,
26
27
  view,
27
28
  viewMode = VIEW_MODE_LIST
28
- }) => /*#__PURE__*/React.createElement(PageHeader.Root, {
29
- className: "be-sub-header",
30
- "data-testid": "be-sub-header",
31
- variant: "inline"
32
- }, /*#__PURE__*/React.createElement(PageHeader.StartElements, null, /*#__PURE__*/React.createElement(SubHeaderLeft, {
33
- currentCollection: currentCollection,
34
- isSmall: isSmall,
35
- onItemClick: onItemClick,
36
- portalElement: portalElement,
37
- rootId: rootId,
38
- rootName: rootName,
39
- view: view
40
- })), /*#__PURE__*/React.createElement(PageHeader.EndElements, null, /*#__PURE__*/React.createElement(SubHeaderRight, {
41
- canCreateNewFolder: canCreateNewFolder,
42
- canUpload: canUpload,
43
- currentCollection: currentCollection,
44
- gridColumnCount: gridColumnCount,
45
- gridMaxColumns: gridMaxColumns,
46
- gridMinColumns: gridMinColumns,
47
- maxGridColumnCountForWidth: maxGridColumnCountForWidth,
48
- onCreate: onCreate,
49
- onGridViewSliderChange: onGridViewSliderChange,
50
- onSortChange: onSortChange,
51
- onUpload: onUpload,
52
- onViewModeChange: onViewModeChange,
53
- portalElement: portalElement,
54
- view: view,
55
- viewMode: viewMode
56
- })));
29
+ }) => {
30
+ const isMetadataViewV2Feature = useFeatureEnabled('contentExplorer.metadataViewV2');
31
+ if (view === VIEW_METADATA && !isMetadataViewV2Feature) {
32
+ return null;
33
+ }
34
+ return /*#__PURE__*/React.createElement(PageHeader.Root, {
35
+ className: "be-sub-header",
36
+ "data-testid": "be-sub-header",
37
+ variant: "inline"
38
+ }, /*#__PURE__*/React.createElement(PageHeader.StartElements, null, view !== VIEW_METADATA && !isMetadataViewV2Feature && /*#__PURE__*/React.createElement(SubHeaderLeft, {
39
+ currentCollection: currentCollection,
40
+ isSmall: isSmall,
41
+ onItemClick: onItemClick,
42
+ portalElement: portalElement,
43
+ rootId: rootId,
44
+ rootName: rootName,
45
+ view: view
46
+ })), /*#__PURE__*/React.createElement(PageHeader.EndElements, null, /*#__PURE__*/React.createElement(SubHeaderRight, {
47
+ canCreateNewFolder: canCreateNewFolder,
48
+ canUpload: canUpload,
49
+ currentCollection: currentCollection,
50
+ gridColumnCount: gridColumnCount,
51
+ gridMaxColumns: gridMaxColumns,
52
+ gridMinColumns: gridMinColumns,
53
+ maxGridColumnCountForWidth: maxGridColumnCountForWidth,
54
+ onCreate: onCreate,
55
+ onGridViewSliderChange: onGridViewSliderChange,
56
+ onSortChange: onSortChange,
57
+ onUpload: onUpload,
58
+ onViewModeChange: onViewModeChange,
59
+ portalElement: portalElement,
60
+ view: view,
61
+ viewMode: viewMode
62
+ })));
63
+ };
57
64
  export default SubHeader;
58
65
  //# sourceMappingURL=SubHeader.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SubHeader.js","names":["React","noop","PageHeader","SubHeaderLeft","SubHeaderRight","VIEW_MODE_LIST","SubHeader","canCreateNewFolder","canUpload","currentCollection","gridColumnCount","gridMaxColumns","gridMinColumns","maxGridColumnCountForWidth","onGridViewSliderChange","isSmall","onCreate","onItemClick","onSortChange","onUpload","onViewModeChange","portalElement","rootId","rootName","view","viewMode","createElement","Root","className","variant","StartElements","EndElements"],"sources":["../../../../src/elements/common/sub-header/SubHeader.tsx"],"sourcesContent":["import * as React from 'react';\nimport noop from 'lodash/noop';\nimport { PageHeader } from '@box/blueprint-web';\nimport SubHeaderLeft from './SubHeaderLeft';\nimport SubHeaderRight from './SubHeaderRight';\nimport type { ViewMode } from '../flowTypes';\nimport type { View, Collection } from '../../../common/types/core';\nimport { VIEW_MODE_LIST } from '../../../constants';\n\nimport './SubHeader.scss';\n\nexport interface SubHeaderProps {\n canCreateNewFolder: boolean;\n canUpload: boolean;\n currentCollection: Collection;\n gridColumnCount?: number;\n gridMaxColumns?: number;\n gridMinColumns?: number;\n isSmall: boolean;\n maxGridColumnCountForWidth?: number;\n onCreate: () => void;\n onGridViewSliderChange?: (newSliderValue: number) => void;\n onItemClick: (id: string | null, triggerNavigationEvent: boolean | null) => void;\n onSortChange: (sortBy: string, sortDirection: string) => void;\n onUpload: () => void;\n onViewModeChange?: (viewMode: ViewMode) => void;\n portalElement?: HTMLElement;\n rootId: string;\n rootName?: string;\n view: View;\n viewMode?: ViewMode;\n}\n\nconst SubHeader = ({\n canCreateNewFolder,\n canUpload,\n currentCollection,\n gridColumnCount = 0,\n gridMaxColumns = 0,\n gridMinColumns = 0,\n maxGridColumnCountForWidth = 0,\n onGridViewSliderChange = noop,\n isSmall,\n onCreate,\n onItemClick,\n onSortChange,\n onUpload,\n onViewModeChange,\n portalElement,\n rootId,\n rootName,\n view,\n viewMode = VIEW_MODE_LIST,\n}: SubHeaderProps) => (\n <PageHeader.Root className=\"be-sub-header\" data-testid=\"be-sub-header\" variant=\"inline\">\n <PageHeader.StartElements>\n <SubHeaderLeft\n currentCollection={currentCollection}\n isSmall={isSmall}\n onItemClick={onItemClick}\n portalElement={portalElement}\n rootId={rootId}\n rootName={rootName}\n view={view}\n />\n </PageHeader.StartElements>\n <PageHeader.EndElements>\n <SubHeaderRight\n canCreateNewFolder={canCreateNewFolder}\n canUpload={canUpload}\n currentCollection={currentCollection}\n gridColumnCount={gridColumnCount}\n gridMaxColumns={gridMaxColumns}\n gridMinColumns={gridMinColumns}\n maxGridColumnCountForWidth={maxGridColumnCountForWidth}\n onCreate={onCreate}\n onGridViewSliderChange={onGridViewSliderChange}\n onSortChange={onSortChange}\n onUpload={onUpload}\n onViewModeChange={onViewModeChange}\n portalElement={portalElement}\n view={view}\n viewMode={viewMode}\n />\n </PageHeader.EndElements>\n </PageHeader.Root>\n);\n\nexport default SubHeader;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,IAAI,MAAM,aAAa;AAC9B,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,cAAc,MAAM,kBAAkB;AAG7C,SAASC,cAAc,QAAQ,oBAAoB;AAEnD,OAAO,kBAAkB;AAwBzB,MAAMC,SAAS,GAAGA,CAAC;EACfC,kBAAkB;EAClBC,SAAS;EACTC,iBAAiB;EACjBC,eAAe,GAAG,CAAC;EACnBC,cAAc,GAAG,CAAC;EAClBC,cAAc,GAAG,CAAC;EAClBC,0BAA0B,GAAG,CAAC;EAC9BC,sBAAsB,GAAGb,IAAI;EAC7Bc,OAAO;EACPC,QAAQ;EACRC,WAAW;EACXC,YAAY;EACZC,QAAQ;EACRC,gBAAgB;EAChBC,aAAa;EACbC,MAAM;EACNC,QAAQ;EACRC,IAAI;EACJC,QAAQ,GAAGpB;AACC,CAAC,kBACbL,KAAA,CAAA0B,aAAA,CAACxB,UAAU,CAACyB,IAAI;EAACC,SAAS,EAAC,eAAe;EAAC,eAAY,eAAe;EAACC,OAAO,EAAC;AAAQ,gBACnF7B,KAAA,CAAA0B,aAAA,CAACxB,UAAU,CAAC4B,aAAa,qBACrB9B,KAAA,CAAA0B,aAAA,CAACvB,aAAa;EACVM,iBAAiB,EAAEA,iBAAkB;EACrCM,OAAO,EAAEA,OAAQ;EACjBE,WAAW,EAAEA,WAAY;EACzBI,aAAa,EAAEA,aAAc;EAC7BC,MAAM,EAAEA,MAAO;EACfC,QAAQ,EAAEA,QAAS;EACnBC,IAAI,EAAEA;AAAK,CACd,CACqB,CAAC,eAC3BxB,KAAA,CAAA0B,aAAA,CAACxB,UAAU,CAAC6B,WAAW,qBACnB/B,KAAA,CAAA0B,aAAA,CAACtB,cAAc;EACXG,kBAAkB,EAAEA,kBAAmB;EACvCC,SAAS,EAAEA,SAAU;EACrBC,iBAAiB,EAAEA,iBAAkB;EACrCC,eAAe,EAAEA,eAAgB;EACjCC,cAAc,EAAEA,cAAe;EAC/BC,cAAc,EAAEA,cAAe;EAC/BC,0BAA0B,EAAEA,0BAA2B;EACvDG,QAAQ,EAAEA,QAAS;EACnBF,sBAAsB,EAAEA,sBAAuB;EAC/CI,YAAY,EAAEA,YAAa;EAC3BC,QAAQ,EAAEA,QAAS;EACnBC,gBAAgB,EAAEA,gBAAiB;EACnCC,aAAa,EAAEA,aAAc;EAC7BG,IAAI,EAAEA,IAAK;EACXC,QAAQ,EAAEA;AAAS,CACtB,CACmB,CACX,CACpB;AAED,eAAenB,SAAS","ignoreList":[]}
1
+ {"version":3,"file":"SubHeader.js","names":["React","noop","PageHeader","SubHeaderLeft","SubHeaderRight","VIEW_MODE_LIST","VIEW_METADATA","useFeatureEnabled","SubHeader","canCreateNewFolder","canUpload","currentCollection","gridColumnCount","gridMaxColumns","gridMinColumns","maxGridColumnCountForWidth","onGridViewSliderChange","isSmall","onCreate","onItemClick","onSortChange","onUpload","onViewModeChange","portalElement","rootId","rootName","view","viewMode","isMetadataViewV2Feature","createElement","Root","className","variant","StartElements","EndElements"],"sources":["../../../../src/elements/common/sub-header/SubHeader.tsx"],"sourcesContent":["import * as React from 'react';\nimport noop from 'lodash/noop';\nimport { PageHeader } from '@box/blueprint-web';\nimport SubHeaderLeft from './SubHeaderLeft';\nimport SubHeaderRight from './SubHeaderRight';\nimport type { ViewMode } from '../flowTypes';\nimport type { View, Collection } from '../../../common/types/core';\nimport { VIEW_MODE_LIST, VIEW_METADATA } from '../../../constants';\nimport { useFeatureEnabled } from '../feature-checking';\n\nimport './SubHeader.scss';\n\nexport interface SubHeaderProps {\n canCreateNewFolder: boolean;\n canUpload: boolean;\n currentCollection: Collection;\n gridColumnCount?: number;\n gridMaxColumns?: number;\n gridMinColumns?: number;\n isSmall: boolean;\n maxGridColumnCountForWidth?: number;\n onCreate: () => void;\n onGridViewSliderChange?: (newSliderValue: number) => void;\n onItemClick: (id: string | null, triggerNavigationEvent: boolean | null) => void;\n onSortChange: (sortBy: string, sortDirection: string) => void;\n onUpload: () => void;\n onViewModeChange?: (viewMode: ViewMode) => void;\n portalElement?: HTMLElement;\n rootId: string;\n rootName?: string;\n view: View;\n viewMode?: ViewMode;\n}\n\nconst SubHeader = ({\n canCreateNewFolder,\n canUpload,\n currentCollection,\n gridColumnCount = 0,\n gridMaxColumns = 0,\n gridMinColumns = 0,\n maxGridColumnCountForWidth = 0,\n onGridViewSliderChange = noop,\n isSmall,\n onCreate,\n onItemClick,\n onSortChange,\n onUpload,\n onViewModeChange,\n portalElement,\n rootId,\n rootName,\n view,\n viewMode = VIEW_MODE_LIST,\n}: SubHeaderProps) => {\n const isMetadataViewV2Feature = useFeatureEnabled('contentExplorer.metadataViewV2');\n\n if (view === VIEW_METADATA && !isMetadataViewV2Feature) {\n return null;\n }\n\n return (\n <PageHeader.Root className=\"be-sub-header\" data-testid=\"be-sub-header\" variant=\"inline\">\n <PageHeader.StartElements>\n {view !== VIEW_METADATA && !isMetadataViewV2Feature && (\n <SubHeaderLeft\n currentCollection={currentCollection}\n isSmall={isSmall}\n onItemClick={onItemClick}\n portalElement={portalElement}\n rootId={rootId}\n rootName={rootName}\n view={view}\n />\n )}\n </PageHeader.StartElements>\n <PageHeader.EndElements>\n <SubHeaderRight\n canCreateNewFolder={canCreateNewFolder}\n canUpload={canUpload}\n currentCollection={currentCollection}\n gridColumnCount={gridColumnCount}\n gridMaxColumns={gridMaxColumns}\n gridMinColumns={gridMinColumns}\n maxGridColumnCountForWidth={maxGridColumnCountForWidth}\n onCreate={onCreate}\n onGridViewSliderChange={onGridViewSliderChange}\n onSortChange={onSortChange}\n onUpload={onUpload}\n onViewModeChange={onViewModeChange}\n portalElement={portalElement}\n view={view}\n viewMode={viewMode}\n />\n </PageHeader.EndElements>\n </PageHeader.Root>\n );\n};\n\nexport default SubHeader;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,IAAI,MAAM,aAAa;AAC9B,SAASC,UAAU,QAAQ,oBAAoB;AAC/C,OAAOC,aAAa,MAAM,iBAAiB;AAC3C,OAAOC,cAAc,MAAM,kBAAkB;AAG7C,SAASC,cAAc,EAAEC,aAAa,QAAQ,oBAAoB;AAClE,SAASC,iBAAiB,QAAQ,qBAAqB;AAEvD,OAAO,kBAAkB;AAwBzB,MAAMC,SAAS,GAAGA,CAAC;EACfC,kBAAkB;EAClBC,SAAS;EACTC,iBAAiB;EACjBC,eAAe,GAAG,CAAC;EACnBC,cAAc,GAAG,CAAC;EAClBC,cAAc,GAAG,CAAC;EAClBC,0BAA0B,GAAG,CAAC;EAC9BC,sBAAsB,GAAGf,IAAI;EAC7BgB,OAAO;EACPC,QAAQ;EACRC,WAAW;EACXC,YAAY;EACZC,QAAQ;EACRC,gBAAgB;EAChBC,aAAa;EACbC,MAAM;EACNC,QAAQ;EACRC,IAAI;EACJC,QAAQ,GAAGtB;AACC,CAAC,KAAK;EAClB,MAAMuB,uBAAuB,GAAGrB,iBAAiB,CAAC,gCAAgC,CAAC;EAEnF,IAAImB,IAAI,KAAKpB,aAAa,IAAI,CAACsB,uBAAuB,EAAE;IACpD,OAAO,IAAI;EACf;EAEA,oBACI5B,KAAA,CAAA6B,aAAA,CAAC3B,UAAU,CAAC4B,IAAI;IAACC,SAAS,EAAC,eAAe;IAAC,eAAY,eAAe;IAACC,OAAO,EAAC;EAAQ,gBACnFhC,KAAA,CAAA6B,aAAA,CAAC3B,UAAU,CAAC+B,aAAa,QACpBP,IAAI,KAAKpB,aAAa,IAAI,CAACsB,uBAAuB,iBAC/C5B,KAAA,CAAA6B,aAAA,CAAC1B,aAAa;IACVQ,iBAAiB,EAAEA,iBAAkB;IACrCM,OAAO,EAAEA,OAAQ;IACjBE,WAAW,EAAEA,WAAY;IACzBI,aAAa,EAAEA,aAAc;IAC7BC,MAAM,EAAEA,MAAO;IACfC,QAAQ,EAAEA,QAAS;IACnBC,IAAI,EAAEA;EAAK,CACd,CAEiB,CAAC,eAC3B1B,KAAA,CAAA6B,aAAA,CAAC3B,UAAU,CAACgC,WAAW,qBACnBlC,KAAA,CAAA6B,aAAA,CAACzB,cAAc;IACXK,kBAAkB,EAAEA,kBAAmB;IACvCC,SAAS,EAAEA,SAAU;IACrBC,iBAAiB,EAAEA,iBAAkB;IACrCC,eAAe,EAAEA,eAAgB;IACjCC,cAAc,EAAEA,cAAe;IAC/BC,cAAc,EAAEA,cAAe;IAC/BC,0BAA0B,EAAEA,0BAA2B;IACvDG,QAAQ,EAAEA,QAAS;IACnBF,sBAAsB,EAAEA,sBAAuB;IAC/CI,YAAY,EAAEA,YAAa;IAC3BC,QAAQ,EAAEA,QAAS;IACnBC,gBAAgB,EAAEA,gBAAiB;IACnCC,aAAa,EAAEA,aAAc;IAC7BG,IAAI,EAAEA,IAAK;IACXC,QAAQ,EAAEA;EAAS,CACtB,CACmB,CACX,CAAC;AAE1B,CAAC;AAED,eAAenB,SAAS","ignoreList":[]}
@@ -1,9 +1,14 @@
1
1
  import * as React from 'react';
2
+ import { Button } from '@box/blueprint-web';
3
+ import { Pencil } from '@box/blueprint-web-assets/icons/Fill';
4
+ import { useIntl } from 'react-intl';
2
5
  import Sort from './Sort';
3
6
  import Add from './Add';
4
7
  import GridViewSlider from '../../../components/grid-view/GridViewSlider';
5
8
  import ViewModeChangeButton from './ViewModeChangeButton';
6
- import { VIEW_FOLDER, VIEW_MODE_GRID } from '../../../constants';
9
+ import { VIEW_FOLDER, VIEW_MODE_GRID, VIEW_METADATA } from '../../../constants';
10
+ import { useFeatureEnabled } from '../feature-checking';
11
+ import messages from './messages';
7
12
  import './SubHeaderRight.scss';
8
13
  const SubHeaderRight = ({
9
14
  canCreateNewFolder,
@@ -22,6 +27,10 @@ const SubHeaderRight = ({
22
27
  view,
23
28
  viewMode
24
29
  }) => {
30
+ const {
31
+ formatMessage
32
+ } = useIntl();
33
+ const isMetadataViewV2Feature = useFeatureEnabled('contentExplorer.metadataViewV2');
25
34
  const {
26
35
  items = []
27
36
  } = currentCollection;
@@ -30,9 +39,10 @@ const SubHeaderRight = ({
30
39
  const isFolder = view === VIEW_FOLDER;
31
40
  const showSort = isFolder && hasItems;
32
41
  const showAdd = (!!canUpload || !!canCreateNewFolder) && isFolder;
42
+ const isMetadataView = view === VIEW_METADATA;
33
43
  return /*#__PURE__*/React.createElement("div", {
34
44
  className: "be-sub-header-right"
35
- }, hasItems && viewMode === VIEW_MODE_GRID && /*#__PURE__*/React.createElement(GridViewSlider, {
45
+ }, !isMetadataView && /*#__PURE__*/React.createElement(React.Fragment, null, hasItems && viewMode === VIEW_MODE_GRID && /*#__PURE__*/React.createElement(GridViewSlider, {
36
46
  columnCount: gridColumnCount,
37
47
  gridMaxColumns: gridMaxColumns,
38
48
  gridMinColumns: gridMinColumns,
@@ -51,7 +61,11 @@ const SubHeaderRight = ({
51
61
  portalElement: portalElement,
52
62
  showCreate: canCreateNewFolder,
53
63
  showUpload: canUpload
54
- }));
64
+ })), isMetadataView && isMetadataViewV2Feature && /*#__PURE__*/React.createElement(Button, {
65
+ icon: Pencil,
66
+ size: "large",
67
+ variant: "primary"
68
+ }, formatMessage(messages.metadata)));
55
69
  };
56
70
  export default SubHeaderRight;
57
71
  //# sourceMappingURL=SubHeaderRight.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"SubHeaderRight.js","names":["React","Sort","Add","GridViewSlider","ViewModeChangeButton","VIEW_FOLDER","VIEW_MODE_GRID","SubHeaderRight","canCreateNewFolder","canUpload","currentCollection","gridColumnCount","gridMaxColumns","gridMinColumns","maxGridColumnCountForWidth","onCreate","onGridViewSliderChange","onSortChange","onUpload","onViewModeChange","portalElement","view","viewMode","items","hasGridView","hasItems","length","isFolder","showSort","showAdd","createElement","className","columnCount","maxColumnCount","onChange","isDisabled","showCreate","showUpload"],"sources":["../../../../src/elements/common/sub-header/SubHeaderRight.tsx"],"sourcesContent":["import * as React from 'react';\nimport Sort from './Sort';\nimport Add from './Add';\nimport GridViewSlider from '../../../components/grid-view/GridViewSlider';\nimport ViewModeChangeButton from './ViewModeChangeButton';\nimport { VIEW_FOLDER, VIEW_MODE_GRID } from '../../../constants';\nimport type { ViewMode } from '../flowTypes';\nimport type { SortBy, SortDirection, View, Collection } from '../../../common/types/core';\nimport './SubHeaderRight.scss';\n\nexport interface SubHeaderRightProps {\n canCreateNewFolder: boolean;\n canUpload: boolean;\n currentCollection: Collection;\n gridColumnCount: number;\n gridMaxColumns: number;\n gridMinColumns: number;\n maxGridColumnCountForWidth: number;\n onCreate: () => void;\n onGridViewSliderChange: (newSliderValue: number) => void;\n onSortChange: (sortBy: SortBy, sortDirection: SortDirection) => void;\n onUpload: () => void;\n onViewModeChange?: (viewMode: ViewMode) => void;\n portalElement?: HTMLElement;\n view: View;\n viewMode: ViewMode;\n}\n\nconst SubHeaderRight = ({\n canCreateNewFolder,\n canUpload,\n currentCollection,\n gridColumnCount,\n gridMaxColumns,\n gridMinColumns,\n maxGridColumnCountForWidth,\n onCreate,\n onGridViewSliderChange,\n onSortChange,\n onUpload,\n onViewModeChange,\n portalElement,\n view,\n viewMode,\n}: SubHeaderRightProps) => {\n const { items = [] }: Collection = currentCollection;\n const hasGridView: boolean = !!gridColumnCount;\n const hasItems: boolean = items.length > 0;\n const isFolder: boolean = view === VIEW_FOLDER;\n const showSort: boolean = isFolder && hasItems;\n const showAdd: boolean = (!!canUpload || !!canCreateNewFolder) && isFolder;\n return (\n <div className=\"be-sub-header-right\">\n {hasItems && viewMode === VIEW_MODE_GRID && (\n <GridViewSlider\n columnCount={gridColumnCount}\n gridMaxColumns={gridMaxColumns}\n gridMinColumns={gridMinColumns}\n maxColumnCount={maxGridColumnCountForWidth}\n onChange={onGridViewSliderChange}\n />\n )}\n {hasItems && hasGridView && (\n <ViewModeChangeButton viewMode={viewMode} onViewModeChange={onViewModeChange} />\n )}\n {showSort && <Sort onSortChange={onSortChange} portalElement={portalElement} />}\n {showAdd && (\n <Add\n isDisabled={!isFolder}\n onCreate={onCreate}\n onUpload={onUpload}\n portalElement={portalElement}\n showCreate={canCreateNewFolder}\n showUpload={canUpload}\n />\n )}\n </div>\n );\n};\n\nexport default SubHeaderRight;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,GAAG,MAAM,OAAO;AACvB,OAAOC,cAAc,MAAM,8CAA8C;AACzE,OAAOC,oBAAoB,MAAM,wBAAwB;AACzD,SAASC,WAAW,EAAEC,cAAc,QAAQ,oBAAoB;AAGhE,OAAO,uBAAuB;AAoB9B,MAAMC,cAAc,GAAGA,CAAC;EACpBC,kBAAkB;EAClBC,SAAS;EACTC,iBAAiB;EACjBC,eAAe;EACfC,cAAc;EACdC,cAAc;EACdC,0BAA0B;EAC1BC,QAAQ;EACRC,sBAAsB;EACtBC,YAAY;EACZC,QAAQ;EACRC,gBAAgB;EAChBC,aAAa;EACbC,IAAI;EACJC;AACiB,CAAC,KAAK;EACvB,MAAM;IAAEC,KAAK,GAAG;EAAe,CAAC,GAAGb,iBAAiB;EACpD,MAAMc,WAAoB,GAAG,CAAC,CAACb,eAAe;EAC9C,MAAMc,QAAiB,GAAGF,KAAK,CAACG,MAAM,GAAG,CAAC;EAC1C,MAAMC,QAAiB,GAAGN,IAAI,KAAKhB,WAAW;EAC9C,MAAMuB,QAAiB,GAAGD,QAAQ,IAAIF,QAAQ;EAC9C,MAAMI,OAAgB,GAAG,CAAC,CAAC,CAACpB,SAAS,IAAI,CAAC,CAACD,kBAAkB,KAAKmB,QAAQ;EAC1E,oBACI3B,KAAA,CAAA8B,aAAA;IAAKC,SAAS,EAAC;EAAqB,GAC/BN,QAAQ,IAAIH,QAAQ,KAAKhB,cAAc,iBACpCN,KAAA,CAAA8B,aAAA,CAAC3B,cAAc;IACX6B,WAAW,EAAErB,eAAgB;IAC7BC,cAAc,EAAEA,cAAe;IAC/BC,cAAc,EAAEA,cAAe;IAC/BoB,cAAc,EAAEnB,0BAA2B;IAC3CoB,QAAQ,EAAElB;EAAuB,CACpC,CACJ,EACAS,QAAQ,IAAID,WAAW,iBACpBxB,KAAA,CAAA8B,aAAA,CAAC1B,oBAAoB;IAACkB,QAAQ,EAAEA,QAAS;IAACH,gBAAgB,EAAEA;EAAiB,CAAE,CAClF,EACAS,QAAQ,iBAAI5B,KAAA,CAAA8B,aAAA,CAAC7B,IAAI;IAACgB,YAAY,EAAEA,YAAa;IAACG,aAAa,EAAEA;EAAc,CAAE,CAAC,EAC9ES,OAAO,iBACJ7B,KAAA,CAAA8B,aAAA,CAAC5B,GAAG;IACAiC,UAAU,EAAE,CAACR,QAAS;IACtBZ,QAAQ,EAAEA,QAAS;IACnBG,QAAQ,EAAEA,QAAS;IACnBE,aAAa,EAAEA,aAAc;IAC7BgB,UAAU,EAAE5B,kBAAmB;IAC/B6B,UAAU,EAAE5B;EAAU,CACzB,CAEJ,CAAC;AAEd,CAAC;AAED,eAAeF,cAAc","ignoreList":[]}
1
+ {"version":3,"file":"SubHeaderRight.js","names":["React","Button","Pencil","useIntl","Sort","Add","GridViewSlider","ViewModeChangeButton","VIEW_FOLDER","VIEW_MODE_GRID","VIEW_METADATA","useFeatureEnabled","messages","SubHeaderRight","canCreateNewFolder","canUpload","currentCollection","gridColumnCount","gridMaxColumns","gridMinColumns","maxGridColumnCountForWidth","onCreate","onGridViewSliderChange","onSortChange","onUpload","onViewModeChange","portalElement","view","viewMode","formatMessage","isMetadataViewV2Feature","items","hasGridView","hasItems","length","isFolder","showSort","showAdd","isMetadataView","createElement","className","Fragment","columnCount","maxColumnCount","onChange","isDisabled","showCreate","showUpload","icon","size","variant","metadata"],"sources":["../../../../src/elements/common/sub-header/SubHeaderRight.tsx"],"sourcesContent":["import * as React from 'react';\nimport { Button } from '@box/blueprint-web';\nimport { Pencil } from '@box/blueprint-web-assets/icons/Fill';\nimport { useIntl } from 'react-intl';\nimport Sort from './Sort';\nimport Add from './Add';\nimport GridViewSlider from '../../../components/grid-view/GridViewSlider';\nimport ViewModeChangeButton from './ViewModeChangeButton';\nimport { VIEW_FOLDER, VIEW_MODE_GRID, VIEW_METADATA } from '../../../constants';\nimport { useFeatureEnabled } from '../feature-checking';\n\nimport type { ViewMode } from '../flowTypes';\nimport type { SortBy, SortDirection, View, Collection } from '../../../common/types/core';\n\nimport messages from './messages';\n\nimport './SubHeaderRight.scss';\n\nexport interface SubHeaderRightProps {\n canCreateNewFolder: boolean;\n canUpload: boolean;\n currentCollection: Collection;\n gridColumnCount: number;\n gridMaxColumns: number;\n gridMinColumns: number;\n maxGridColumnCountForWidth: number;\n onCreate: () => void;\n onGridViewSliderChange: (newSliderValue: number) => void;\n onSortChange: (sortBy: SortBy, sortDirection: SortDirection) => void;\n onUpload: () => void;\n onViewModeChange?: (viewMode: ViewMode) => void;\n portalElement?: HTMLElement;\n view: View;\n viewMode: ViewMode;\n}\n\nconst SubHeaderRight = ({\n canCreateNewFolder,\n canUpload,\n currentCollection,\n gridColumnCount,\n gridMaxColumns,\n gridMinColumns,\n maxGridColumnCountForWidth,\n onCreate,\n onGridViewSliderChange,\n onSortChange,\n onUpload,\n onViewModeChange,\n portalElement,\n view,\n viewMode,\n}: SubHeaderRightProps) => {\n const { formatMessage } = useIntl();\n const isMetadataViewV2Feature = useFeatureEnabled('contentExplorer.metadataViewV2');\n const { items = [] }: Collection = currentCollection;\n const hasGridView: boolean = !!gridColumnCount;\n const hasItems: boolean = items.length > 0;\n const isFolder: boolean = view === VIEW_FOLDER;\n const showSort: boolean = isFolder && hasItems;\n const showAdd: boolean = (!!canUpload || !!canCreateNewFolder) && isFolder;\n const isMetadataView: boolean = view === VIEW_METADATA;\n return (\n <div className=\"be-sub-header-right\">\n {!isMetadataView && (\n <>\n {hasItems && viewMode === VIEW_MODE_GRID && (\n <GridViewSlider\n columnCount={gridColumnCount}\n gridMaxColumns={gridMaxColumns}\n gridMinColumns={gridMinColumns}\n maxColumnCount={maxGridColumnCountForWidth}\n onChange={onGridViewSliderChange}\n />\n )}\n {hasItems && hasGridView && (\n <ViewModeChangeButton viewMode={viewMode} onViewModeChange={onViewModeChange} />\n )}\n {showSort && <Sort onSortChange={onSortChange} portalElement={portalElement} />}\n {showAdd && (\n <Add\n isDisabled={!isFolder}\n onCreate={onCreate}\n onUpload={onUpload}\n portalElement={portalElement}\n showCreate={canCreateNewFolder}\n showUpload={canUpload}\n />\n )}\n </>\n )}\n\n {isMetadataView && isMetadataViewV2Feature && (\n <Button icon={Pencil} size=\"large\" variant=\"primary\">\n {formatMessage(messages.metadata)}\n </Button>\n )}\n </div>\n );\n};\n\nexport default SubHeaderRight;\n"],"mappings":"AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,MAAM,QAAQ,oBAAoB;AAC3C,SAASC,MAAM,QAAQ,sCAAsC;AAC7D,SAASC,OAAO,QAAQ,YAAY;AACpC,OAAOC,IAAI,MAAM,QAAQ;AACzB,OAAOC,GAAG,MAAM,OAAO;AACvB,OAAOC,cAAc,MAAM,8CAA8C;AACzE,OAAOC,oBAAoB,MAAM,wBAAwB;AACzD,SAASC,WAAW,EAAEC,cAAc,EAAEC,aAAa,QAAQ,oBAAoB;AAC/E,SAASC,iBAAiB,QAAQ,qBAAqB;AAKvD,OAAOC,QAAQ,MAAM,YAAY;AAEjC,OAAO,uBAAuB;AAoB9B,MAAMC,cAAc,GAAGA,CAAC;EACpBC,kBAAkB;EAClBC,SAAS;EACTC,iBAAiB;EACjBC,eAAe;EACfC,cAAc;EACdC,cAAc;EACdC,0BAA0B;EAC1BC,QAAQ;EACRC,sBAAsB;EACtBC,YAAY;EACZC,QAAQ;EACRC,gBAAgB;EAChBC,aAAa;EACbC,IAAI;EACJC;AACiB,CAAC,KAAK;EACvB,MAAM;IAAEC;EAAc,CAAC,GAAG1B,OAAO,CAAC,CAAC;EACnC,MAAM2B,uBAAuB,GAAGnB,iBAAiB,CAAC,gCAAgC,CAAC;EACnF,MAAM;IAAEoB,KAAK,GAAG;EAAe,CAAC,GAAGf,iBAAiB;EACpD,MAAMgB,WAAoB,GAAG,CAAC,CAACf,eAAe;EAC9C,MAAMgB,QAAiB,GAAGF,KAAK,CAACG,MAAM,GAAG,CAAC;EAC1C,MAAMC,QAAiB,GAAGR,IAAI,KAAKnB,WAAW;EAC9C,MAAM4B,QAAiB,GAAGD,QAAQ,IAAIF,QAAQ;EAC9C,MAAMI,OAAgB,GAAG,CAAC,CAAC,CAACtB,SAAS,IAAI,CAAC,CAACD,kBAAkB,KAAKqB,QAAQ;EAC1E,MAAMG,cAAuB,GAAGX,IAAI,KAAKjB,aAAa;EACtD,oBACIV,KAAA,CAAAuC,aAAA;IAAKC,SAAS,EAAC;EAAqB,GAC/B,CAACF,cAAc,iBACZtC,KAAA,CAAAuC,aAAA,CAAAvC,KAAA,CAAAyC,QAAA,QACKR,QAAQ,IAAIL,QAAQ,KAAKnB,cAAc,iBACpCT,KAAA,CAAAuC,aAAA,CAACjC,cAAc;IACXoC,WAAW,EAAEzB,eAAgB;IAC7BC,cAAc,EAAEA,cAAe;IAC/BC,cAAc,EAAEA,cAAe;IAC/BwB,cAAc,EAAEvB,0BAA2B;IAC3CwB,QAAQ,EAAEtB;EAAuB,CACpC,CACJ,EACAW,QAAQ,IAAID,WAAW,iBACpBhC,KAAA,CAAAuC,aAAA,CAAChC,oBAAoB;IAACqB,QAAQ,EAAEA,QAAS;IAACH,gBAAgB,EAAEA;EAAiB,CAAE,CAClF,EACAW,QAAQ,iBAAIpC,KAAA,CAAAuC,aAAA,CAACnC,IAAI;IAACmB,YAAY,EAAEA,YAAa;IAACG,aAAa,EAAEA;EAAc,CAAE,CAAC,EAC9EW,OAAO,iBACJrC,KAAA,CAAAuC,aAAA,CAAClC,GAAG;IACAwC,UAAU,EAAE,CAACV,QAAS;IACtBd,QAAQ,EAAEA,QAAS;IACnBG,QAAQ,EAAEA,QAAS;IACnBE,aAAa,EAAEA,aAAc;IAC7BoB,UAAU,EAAEhC,kBAAmB;IAC/BiC,UAAU,EAAEhC;EAAU,CACzB,CAEP,CACL,EAEAuB,cAAc,IAAIR,uBAAuB,iBACtC9B,KAAA,CAAAuC,aAAA,CAACtC,MAAM;IAAC+C,IAAI,EAAE9C,MAAO;IAAC+C,IAAI,EAAC,OAAO;IAACC,OAAO,EAAC;EAAS,GAC/CrB,aAAa,CAACjB,QAAQ,CAACuC,QAAQ,CAC5B,CAEX,CAAC;AAEd,CAAC;AAED,eAAetC,cAAc","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ import { defineMessages } from 'react-intl';
2
+ const messages = defineMessages({
3
+ metadata: {
4
+ "id": "boxui.subHeader.metadata",
5
+ "defaultMessage": "Metadata"
6
+ }
7
+ });
8
+ export default messages;
9
+ //# sourceMappingURL=messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.js","names":["defineMessages","messages","metadata"],"sources":["../../../../src/elements/common/sub-header/messages.ts"],"sourcesContent":["import { defineMessages } from 'react-intl';\n\nconst messages = defineMessages({\n metadata: {\n defaultMessage: 'Metadata',\n description: 'Text for metadata button that will open the metadata side panel',\n id: 'boxui.subHeader.metadata',\n },\n});\n\nexport default messages;\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,YAAY;AAE3C,MAAMC,QAAQ,GAAGD,cAAc,CAAC;EAC5BE,QAAQ;IAAA;IAAA;EAAA;AAKZ,CAAC,CAAC;AAEF,eAAeD,QAAQ","ignoreList":[]}
@@ -49,7 +49,7 @@ const Content = _ref => {
49
49
  const isMetadataBasedView = view === VIEW_METADATA;
50
50
  const isListView = !isMetadataBasedView && viewMode === VIEW_MODE_LIST; // Folder view or Recents view
51
51
  const isGridView = !isMetadataBasedView && viewMode === VIEW_MODE_GRID; // Folder view or Recents view
52
-
52
+ const isMetadataViewV2Feature = isFeatureEnabled(features, 'contentExplorer.metadataViewV2');
53
53
  return /*#__PURE__*/React.createElement("div", {
54
54
  className: "bce-content"
55
55
  }, view === VIEW_ERROR || view === VIEW_SELECTED ? null : /*#__PURE__*/React.createElement(ProgressBar, {
@@ -57,11 +57,11 @@ const Content = _ref => {
57
57
  }), isViewEmpty && /*#__PURE__*/React.createElement(EmptyView, {
58
58
  view: view,
59
59
  isLoading: percentLoaded !== 100
60
- }), !isFeatureEnabled(features, 'contentExplorer.metadataViewV2') && !isViewEmpty && isMetadataBasedView && /*#__PURE__*/React.createElement(MetadataBasedItemList, _extends({
60
+ }), !isMetadataViewV2Feature && !isViewEmpty && isMetadataBasedView && /*#__PURE__*/React.createElement(MetadataBasedItemList, _extends({
61
61
  currentCollection: currentCollection,
62
62
  fieldsToShow: fieldsToShow,
63
63
  onMetadataUpdate: onMetadataUpdate
64
- }, rest)), isFeatureEnabled(features, 'contentExplorer.metadataViewV2') && !isViewEmpty && isMetadataBasedView && /*#__PURE__*/React.createElement(MetadataView, null), !isViewEmpty && isListView && /*#__PURE__*/React.createElement(ItemList, _extends({
64
+ }, rest)), isMetadataViewV2Feature && !isViewEmpty && isMetadataBasedView && /*#__PURE__*/React.createElement(MetadataView, null), !isViewEmpty && isListView && /*#__PURE__*/React.createElement(ItemList, _extends({
65
65
  items: items,
66
66
  onSortChange: onSortChange,
67
67
  sortBy: sortBy,
@@ -1 +1 @@
1
- {"version":3,"file":"Content.js","names":["React","EmptyView","ItemGrid","ItemList","ProgressBar","MetadataBasedItemList","MetadataView","isFeatureEnabled","VIEW_ERROR","VIEW_METADATA","VIEW_MODE_LIST","VIEW_MODE_GRID","VIEW_SELECTED","isEmpty","view","currentCollection","fieldsToShow","items","length","Content","_ref","features","gridColumnCount","onMetadataUpdate","onSortChange","viewMode","rest","_objectWithoutProperties","_excluded","percentLoaded","sortBy","sortDirection","isViewEmpty","isMetadataBasedView","isListView","isGridView","createElement","className","percent","isLoading","_extends"],"sources":["../../../src/elements/content-explorer/Content.tsx"],"sourcesContent":["import * as React from 'react';\nimport EmptyView from '../common/empty-view';\nimport ItemGrid from '../common/item-grid';\nimport ItemList from '../common/item-list';\nimport ProgressBar from '../common/progress-bar';\nimport MetadataBasedItemList from '../../features/metadata-based-view';\nimport MetadataView from './MetadataView';\nimport { isFeatureEnabled, type FeatureConfig } from '../common/feature-checking';\nimport { VIEW_ERROR, VIEW_METADATA, VIEW_MODE_LIST, VIEW_MODE_GRID, VIEW_SELECTED } from '../../constants';\nimport type { ViewMode } from '../common/flowTypes';\nimport type { ItemAction, ItemEventHandlers, ItemEventPermissions } from '../common/item';\nimport type { FieldsToShow } from '../../common/types/metadataQueries';\nimport type { BoxItem, Collection, View } from '../../common/types/core';\nimport type { MetadataFieldValue } from '../../common/types/metadata';\nimport './Content.scss';\n\n/**\n * Determines if we should show the empty state\n *\n * @param {string} view the current view\n * @param {Object} currentCollection the current collection\n * @param {FieldsToShow} fieldsToShow list of metadata template fields to show\n * @return {boolean} empty or not\n */\nfunction isEmpty(view: View, currentCollection: Collection, fieldsToShow: FieldsToShow): boolean {\n const { items = [] }: Collection = currentCollection;\n return view === VIEW_ERROR || !items.length || (view === VIEW_METADATA && !fieldsToShow.length);\n}\n\nexport interface ContentProps extends Required<ItemEventHandlers>, Required<ItemEventPermissions> {\n currentCollection: Collection;\n features?: FeatureConfig;\n fieldsToShow?: FieldsToShow;\n gridColumnCount?: number;\n isMedium: boolean;\n isSmall: boolean;\n isTouch: boolean;\n itemActions?: ItemAction[];\n onMetadataUpdate: (\n item: BoxItem,\n field: string,\n currentValue: MetadataFieldValue,\n editedValue: MetadataFieldValue,\n ) => void;\n onSortChange: (sortBy: string, sortDirection: string) => void;\n portalElement: HTMLElement;\n view: View;\n viewMode?: ViewMode;\n}\n\nconst Content = ({\n currentCollection,\n features,\n fieldsToShow = [],\n gridColumnCount,\n onMetadataUpdate,\n onSortChange,\n view,\n viewMode = VIEW_MODE_LIST,\n ...rest\n}: ContentProps) => {\n const { items, percentLoaded, sortBy, sortDirection } = currentCollection;\n\n const isViewEmpty = isEmpty(view, currentCollection, fieldsToShow);\n const isMetadataBasedView = view === VIEW_METADATA;\n const isListView = !isMetadataBasedView && viewMode === VIEW_MODE_LIST; // Folder view or Recents view\n const isGridView = !isMetadataBasedView && viewMode === VIEW_MODE_GRID; // Folder view or Recents view\n\n return (\n <div className=\"bce-content\">\n {view === VIEW_ERROR || view === VIEW_SELECTED ? null : <ProgressBar percent={percentLoaded} />}\n\n {isViewEmpty && <EmptyView view={view} isLoading={percentLoaded !== 100} />}\n {!isFeatureEnabled(features, 'contentExplorer.metadataViewV2') && !isViewEmpty && isMetadataBasedView && (\n <MetadataBasedItemList\n currentCollection={currentCollection}\n fieldsToShow={fieldsToShow}\n onMetadataUpdate={onMetadataUpdate}\n {...rest}\n />\n )}\n {isFeatureEnabled(features, 'contentExplorer.metadataViewV2') && !isViewEmpty && isMetadataBasedView && (\n <MetadataView />\n )}\n {!isViewEmpty && isListView && (\n <ItemList\n items={items}\n onSortChange={onSortChange}\n sortBy={sortBy}\n sortDirection={sortDirection}\n view={view}\n {...rest}\n />\n )}\n {!isViewEmpty && isGridView && (\n <ItemGrid gridColumnCount={gridColumnCount} items={items} view={view} {...rest} />\n )}\n </div>\n );\n};\n\nexport default Content;\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"Content.js","names":["React","EmptyView","ItemGrid","ItemList","ProgressBar","MetadataBasedItemList","MetadataView","isFeatureEnabled","VIEW_ERROR","VIEW_METADATA","VIEW_MODE_LIST","VIEW_MODE_GRID","VIEW_SELECTED","isEmpty","view","currentCollection","fieldsToShow","items","length","Content","_ref","features","gridColumnCount","onMetadataUpdate","onSortChange","viewMode","rest","_objectWithoutProperties","_excluded","percentLoaded","sortBy","sortDirection","isViewEmpty","isMetadataBasedView","isListView","isGridView","isMetadataViewV2Feature","createElement","className","percent","isLoading","_extends"],"sources":["../../../src/elements/content-explorer/Content.tsx"],"sourcesContent":["import * as React from 'react';\nimport EmptyView from '../common/empty-view';\nimport ItemGrid from '../common/item-grid';\nimport ItemList from '../common/item-list';\nimport ProgressBar from '../common/progress-bar';\nimport MetadataBasedItemList from '../../features/metadata-based-view';\nimport MetadataView from './MetadataView';\nimport { isFeatureEnabled, type FeatureConfig } from '../common/feature-checking';\nimport { VIEW_ERROR, VIEW_METADATA, VIEW_MODE_LIST, VIEW_MODE_GRID, VIEW_SELECTED } from '../../constants';\nimport type { ViewMode } from '../common/flowTypes';\nimport type { ItemAction, ItemEventHandlers, ItemEventPermissions } from '../common/item';\nimport type { FieldsToShow } from '../../common/types/metadataQueries';\nimport type { BoxItem, Collection, View } from '../../common/types/core';\nimport type { MetadataFieldValue } from '../../common/types/metadata';\nimport './Content.scss';\n\n/**\n * Determines if we should show the empty state\n *\n * @param {string} view the current view\n * @param {Object} currentCollection the current collection\n * @param {FieldsToShow} fieldsToShow list of metadata template fields to show\n * @return {boolean} empty or not\n */\nfunction isEmpty(view: View, currentCollection: Collection, fieldsToShow: FieldsToShow): boolean {\n const { items = [] }: Collection = currentCollection;\n return view === VIEW_ERROR || !items.length || (view === VIEW_METADATA && !fieldsToShow.length);\n}\n\nexport interface ContentProps extends Required<ItemEventHandlers>, Required<ItemEventPermissions> {\n currentCollection: Collection;\n features?: FeatureConfig;\n fieldsToShow?: FieldsToShow;\n gridColumnCount?: number;\n isMedium: boolean;\n isSmall: boolean;\n isTouch: boolean;\n itemActions?: ItemAction[];\n onMetadataUpdate: (\n item: BoxItem,\n field: string,\n currentValue: MetadataFieldValue,\n editedValue: MetadataFieldValue,\n ) => void;\n onSortChange: (sortBy: string, sortDirection: string) => void;\n portalElement: HTMLElement;\n view: View;\n viewMode?: ViewMode;\n}\n\nconst Content = ({\n currentCollection,\n features,\n fieldsToShow = [],\n gridColumnCount,\n onMetadataUpdate,\n onSortChange,\n view,\n viewMode = VIEW_MODE_LIST,\n ...rest\n}: ContentProps) => {\n const { items, percentLoaded, sortBy, sortDirection } = currentCollection;\n\n const isViewEmpty = isEmpty(view, currentCollection, fieldsToShow);\n const isMetadataBasedView = view === VIEW_METADATA;\n const isListView = !isMetadataBasedView && viewMode === VIEW_MODE_LIST; // Folder view or Recents view\n const isGridView = !isMetadataBasedView && viewMode === VIEW_MODE_GRID; // Folder view or Recents view\n const isMetadataViewV2Feature = isFeatureEnabled(features, 'contentExplorer.metadataViewV2');\n return (\n <div className=\"bce-content\">\n {view === VIEW_ERROR || view === VIEW_SELECTED ? null : <ProgressBar percent={percentLoaded} />}\n\n {isViewEmpty && <EmptyView view={view} isLoading={percentLoaded !== 100} />}\n {!isMetadataViewV2Feature && !isViewEmpty && isMetadataBasedView && (\n <MetadataBasedItemList\n currentCollection={currentCollection}\n fieldsToShow={fieldsToShow}\n onMetadataUpdate={onMetadataUpdate}\n {...rest}\n />\n )}\n {isMetadataViewV2Feature && !isViewEmpty && isMetadataBasedView && <MetadataView />}\n {!isViewEmpty && isListView && (\n <ItemList\n items={items}\n onSortChange={onSortChange}\n sortBy={sortBy}\n sortDirection={sortDirection}\n view={view}\n {...rest}\n />\n )}\n {!isViewEmpty && isGridView && (\n <ItemGrid gridColumnCount={gridColumnCount} items={items} view={view} {...rest} />\n )}\n </div>\n );\n};\n\nexport default Content;\n"],"mappings":"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","ignoreList":[]}
@@ -1541,7 +1541,7 @@ class ContentExplorer extends Component {
1541
1541
  className: "be-app-element",
1542
1542
  onKeyDown: this.onKeyDown,
1543
1543
  tabIndex: 0
1544
- }, !isDefaultViewMetadata && /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Header, {
1544
+ }, !isDefaultViewMetadata && /*#__PURE__*/React.createElement(Header, {
1545
1545
  view: view,
1546
1546
  logoUrl: logoUrl,
1547
1547
  onSearch: this.search
@@ -1565,7 +1565,7 @@ class ContentExplorer extends Component {
1565
1565
  onSortChange: this.sort,
1566
1566
  onViewModeChange: this.changeViewMode,
1567
1567
  portalElement: this.rootElement
1568
- })), /*#__PURE__*/React.createElement(Content, {
1568
+ }), /*#__PURE__*/React.createElement(Content, {
1569
1569
  canDelete: canDelete,
1570
1570
  canDownload: canDownload,
1571
1571
  canPreview: canPreview,