@webiny/app-admin 0.0.0-unstable.d65ec29d44 → 0.0.0-unstable.df6d94b531

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 (113) hide show
  1. package/assets/icons/add-18px.svg +1 -1
  2. package/assets/icons/arrow_drop_down-24px.svg +1 -1
  3. package/assets/icons/filter-24px.svg +1 -1
  4. package/assets/icons/highlight-24px.svg +1 -1
  5. package/assets/icons/info.svg +1 -1
  6. package/assets/icons/insert_drive_file-24px.svg +1 -1
  7. package/assets/icons/insert_photo-24px.svg +1 -1
  8. package/assets/icons/label-24px.svg +1 -1
  9. package/assets/icons/round-account_circle-24px.svg +1 -1
  10. package/assets/icons/round-arrow_drop_down-24px.svg +1 -1
  11. package/assets/icons/round-help-24px.svg +1 -1
  12. package/assets/icons/round-settings-24px.svg +1 -1
  13. package/assets/icons/today-24px.svg +1 -1
  14. package/assets/icons/touch_app.svg +1 -1
  15. package/base/Base.js +6 -25
  16. package/base/Base.js.map +1 -1
  17. package/base/plugins/AddGraphQLQuerySelection.js +5 -1
  18. package/base/plugins/AddGraphQLQuerySelection.js.map +1 -1
  19. package/base/ui/FileManager.d.ts +67 -0
  20. package/base/ui/FileManager.js +61 -0
  21. package/base/ui/FileManager.js.map +1 -0
  22. package/components/AppInstaller/AppInstaller.js +2 -34
  23. package/components/AppInstaller/AppInstaller.js.map +1 -1
  24. package/components/AppInstaller/Sidebar.js +2 -12
  25. package/components/AppInstaller/Sidebar.js.map +1 -1
  26. package/components/AppInstaller/styled.d.ts +17 -5
  27. package/components/AppInstaller/useInstaller.d.ts +1 -7
  28. package/components/AppInstaller/useInstaller.js +16 -71
  29. package/components/AppInstaller/useInstaller.js.map +1 -1
  30. package/components/EmptyView.js +1 -1
  31. package/components/EmptyView.js.map +1 -1
  32. package/components/FileManager/BottomInfoBar/SupportedFileTypes.js +14 -0
  33. package/components/FileManager/BottomInfoBar/SupportedFileTypes.js.map +1 -1
  34. package/components/FileManager/BottomInfoBar/UploadStatus.js +9 -0
  35. package/components/FileManager/BottomInfoBar/UploadStatus.js.map +1 -1
  36. package/components/FileManager/BottomInfoBar.js +12 -0
  37. package/components/FileManager/BottomInfoBar.js.map +1 -1
  38. package/components/FileManager/DropFilesHere.js +12 -3
  39. package/components/FileManager/DropFilesHere.js.map +1 -1
  40. package/components/FileManager/File.js +18 -5
  41. package/components/FileManager/File.js.map +1 -1
  42. package/components/FileManager/FileDetails/Name.js +75 -45
  43. package/components/FileManager/FileDetails/Name.js.map +1 -1
  44. package/components/FileManager/FileDetails/Tags.js +138 -85
  45. package/components/FileManager/FileDetails/Tags.js.map +1 -1
  46. package/components/FileManager/FileDetails.js +161 -94
  47. package/components/FileManager/FileDetails.js.map +1 -1
  48. package/components/FileManager/FileManagerContext.js +45 -12
  49. package/components/FileManager/FileManagerContext.js.map +1 -1
  50. package/components/FileManager/FileManagerView.js +295 -185
  51. package/components/FileManager/FileManagerView.js.map +1 -1
  52. package/components/FileManager/LeftSidebar.js +29 -10
  53. package/components/FileManager/LeftSidebar.js.map +1 -1
  54. package/components/FileManager/NoPermissionView.js +13 -0
  55. package/components/FileManager/NoPermissionView.js.map +1 -1
  56. package/components/FileManager/NoResults.js +6 -0
  57. package/components/FileManager/NoResults.js.map +1 -1
  58. package/components/FileManager/getFileTypePlugin.js +15 -9
  59. package/components/FileManager/getFileTypePlugin.js.map +1 -1
  60. package/components/FileManager/getFileUploader.js +5 -0
  61. package/components/FileManager/getFileUploader.js.map +1 -1
  62. package/components/FileManager/graphql.js +14 -3
  63. package/components/FileManager/graphql.js.map +1 -1
  64. package/components/FileManager/outputFileSelectionError.js +14 -0
  65. package/components/FileManager/outputFileSelectionError.js.map +1 -1
  66. package/components/FileManager.js +43 -17
  67. package/components/FileManager.js.map +1 -1
  68. package/components/FloatingActionButton.js +2 -2
  69. package/components/FloatingActionButton.js.map +1 -1
  70. package/components/OverlayLayout/OverlayLayout.js +1 -1
  71. package/components/OverlayLayout/OverlayLayout.js.map +1 -1
  72. package/components/SearchUI.js +2 -2
  73. package/components/SearchUI.js.map +1 -1
  74. package/components/SingleImageUpload.d.ts +1 -1
  75. package/components/SingleImageUpload.js +2 -2
  76. package/components/SingleImageUpload.js.map +1 -1
  77. package/components/SplitView/SplitView.js +1 -0
  78. package/components/SplitView/SplitView.js.map +1 -1
  79. package/components/index.d.ts +1 -1
  80. package/components/index.js +1 -1
  81. package/components/index.js.map +1 -1
  82. package/index.d.ts +2 -3
  83. package/index.js +1 -13
  84. package/index.js.map +1 -1
  85. package/package.json +19 -29
  86. package/plugins/FileManagerFileTypePlugin.js +15 -0
  87. package/plugins/FileManagerFileTypePlugin.js.map +1 -1
  88. package/plugins/fileManager/fileDefault.js +6 -0
  89. package/plugins/fileManager/fileDefault.js.map +1 -1
  90. package/plugins/fileManager/fileImage/DeleteAction.js +40 -16
  91. package/plugins/fileManager/fileImage/DeleteAction.js.map +1 -1
  92. package/plugins/fileManager/fileImage/EditAction.js +58 -22
  93. package/plugins/fileManager/fileImage/EditAction.js.map +1 -1
  94. package/plugins/fileManager/fileImage/index.js +8 -0
  95. package/plugins/fileManager/fileImage/index.js.map +1 -1
  96. package/plugins/fileManager/index.js +2 -0
  97. package/plugins/fileManager/index.js.map +1 -1
  98. package/plugins/globalSearch/SearchBar.js +2 -2
  99. package/plugins/globalSearch/SearchBar.js.map +1 -1
  100. package/plugins/globalSearch/SearchBarDropdown.js +2 -2
  101. package/plugins/globalSearch/SearchBarDropdown.js.map +1 -1
  102. package/plugins/globalSearch/styled.d.ts +13 -4
  103. package/types.d.ts +23 -27
  104. package/types.js.map +1 -1
  105. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js +5 -5
  106. package/ui/elements/form/FileManagerElement/EmptyStateElementRenderer.js.map +1 -1
  107. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js +1 -1
  108. package/ui/elements/form/FileManagerElement/FileManagerElementRenderer.js.map +1 -1
  109. package/ui/elements/form/FileManagerElement/styled.d.ts +23 -16
  110. package/ui/views/AdminView/components/Hamburger.js +2 -2
  111. package/ui/views/AdminView/components/Hamburger.js.map +1 -1
  112. package/ui/views/OverlayView/HeaderElement.js +1 -1
  113. package/ui/views/OverlayView/HeaderElement.js.map +1 -1
@@ -1,23 +1,32 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
+
4
5
  Object.defineProperty(exports, "__esModule", {
5
6
  value: true
6
7
  });
7
8
  exports.default = void 0;
9
+
8
10
  var _react = _interopRequireDefault(require("react"));
11
+
9
12
  var _reactLazyLoad = _interopRequireDefault(require("react-lazy-load"));
13
+
10
14
  var _classnames = _interopRequireDefault(require("classnames"));
15
+
11
16
  var _emotion = require("emotion");
17
+
12
18
  var _Ripple = require("@webiny/ui/Ripple");
19
+
13
20
  var _Button = require("@webiny/ui/Button");
21
+
14
22
  var _roundCheck_box24px = require("./icons/round-check_box-24px.svg");
23
+
15
24
  var _roundSettings24px = require("../../assets/icons/round-settings-24px.svg");
25
+
16
26
  /**
17
27
  * Package react-lazy-load has no types.
18
28
  */
19
29
  // @ts-ignore
20
-
21
30
  var COMPONENT_WIDTH = 200;
22
31
  var COMPONENT_HEIGHT = 200;
23
32
  var grow = /*#__PURE__*/(0, _emotion.keyframes)("0%{transform:scale(1)}50%{transform:scale(1.2)}100%{transform:scale(1)}label:grow;");
@@ -94,12 +103,13 @@ var styles = /*#__PURE__*/(0, _emotion.css)({
94
103
  cursor: "auto"
95
104
  }
96
105
  }, "label:styles;");
106
+
97
107
  var File = function File(props) {
98
108
  var file = props.file,
99
- selected = props.selected,
100
- onSelect = props.onSelect,
101
- children = props.children,
102
- showFileDetails = props.showFileDetails;
109
+ selected = props.selected,
110
+ onSelect = props.onSelect,
111
+ children = props.children,
112
+ showFileDetails = props.showFileDetails;
103
113
  return /*#__PURE__*/_react.default.createElement("div", {
104
114
  className: (0, _classnames.default)(styles, {
105
115
  "disable-select": !onSelect
@@ -129,14 +139,17 @@ var File = function File(props) {
129
139
  onClick: onSelect
130
140
  }, file.name));
131
141
  };
142
+
132
143
  var MemoizedFile = /*#__PURE__*/_react.default.memo(File, function (prev, next) {
133
144
  if (prev.selected !== next.selected) {
134
145
  return false;
135
146
  } else if (prev.file.name !== next.file.name) {
136
147
  return false;
137
148
  }
149
+
138
150
  return true;
139
151
  });
152
+
140
153
  MemoizedFile.displayName = "MemoizedFile";
141
154
  var _default = MemoizedFile;
142
155
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"names":["COMPONENT_WIDTH","COMPONENT_HEIGHT","grow","keyframes","styles","css","display","float","position","zIndex","margin","cursor","width","maxWidth","border","borderRadius","transition","height","overflow","color","top","left","opacity","right","animationName","animationDuration","animationTimingFunction","animationDelay","textAlign","backgroundColor","padding","whiteSpace","textOverflow","fontSize","File","props","file","selected","onSelect","children","showFileDetails","classNames","name","MemoizedFile","React","memo","prev","next","displayName"],"sources":["File.tsx"],"sourcesContent":["import React from \"react\";\n/**\n * Package react-lazy-load has no types.\n */\n// @ts-ignore\nimport LazyLoad from \"react-lazy-load\";\nimport classNames from \"classnames\";\nimport { css, keyframes } from \"emotion\";\nimport { Ripple } from \"@webiny/ui/Ripple\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { ReactComponent as Checked } from \"./icons/round-check_box-24px.svg\";\nimport { ReactComponent as SettingsIcon } from \"../../assets/icons/round-settings-24px.svg\";\n\nconst COMPONENT_WIDTH = 200;\nconst COMPONENT_HEIGHT = 200;\n\nconst grow = keyframes`\n 0% {\n transform: scale(1)\n }\n 50% {\n transform: scale(1.2)\n }\n 100% {\n transform: scale(1)\n }\n`;\nconst styles = css({\n display: \"inline-block\",\n float: \"left\",\n position: \"relative\",\n zIndex: 1,\n margin: 10,\n cursor: \"pointer\",\n width: \"100%\",\n maxWidth: COMPONENT_WIDTH,\n border: \"1px solid var(--mdc-theme-on-background)\",\n borderRadius: 2,\n \"> .body\": {\n transition: \"200ms ease-in opacity\",\n width: COMPONENT_WIDTH,\n height: COMPONENT_HEIGHT,\n overflow: \"hidden\",\n \"--icon-color\": \"var(--mdc-theme-on-background)\",\n \".checkedIcon\": {\n color: \"var(--mdc-theme-secondary)\",\n position: \"absolute\",\n top: 4,\n left: 4,\n zIndex: 11\n },\n \".infoIcon\": {\n opacity: 0,\n position: \"absolute\",\n top: 0,\n right: 0,\n zIndex: 10,\n transition: \"all 150ms ease-in\",\n \"& .mdc-icon-button svg\": {\n color: \"var(--mdc-theme-secondary)\"\n },\n \"&:hover\": {\n animationName: grow,\n animationDuration: \".4s\",\n animationTimingFunction: \"ease-in\",\n animationDelay: \".2s\"\n }\n },\n \".filePreview\": {\n textAlign: \"center\",\n position: \"relative\",\n backgroundColor: \"#fff\",\n width: \"100%\",\n height: \"100%\",\n \".clickableArea\": {\n position: \"absolute\",\n top: 30,\n left: 0,\n width: \"100%\",\n height: 170,\n zIndex: 2\n }\n },\n \"&:hover .infoIcon\": {\n opacity: 1\n }\n },\n \"> .label\": {\n padding: \"15px 10px\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n fontSize: \"0.8rem\",\n color: \"var(--mdc-theme-on-surface)\",\n backgroundColor: \"var(--mdc-theme-on-background)\"\n },\n \"&.disable-select\": {\n cursor: \"auto\"\n }\n});\n\nexport interface FileProps {\n file: FileItem;\n selected: boolean;\n uploadFile: (item: FileItem[] | FileItem) => Promise<number | null>;\n onSelect: (event?: React.MouseEvent) => void;\n onClick?: (event?: React.MouseEvent) => void;\n options?: Array<{ label: string; onClick: (file: Object) => void }>;\n children: React.ReactNode;\n showFileDetails: (event?: React.MouseEvent) => void;\n}\n\nconst File: React.FC<FileProps> = props => {\n const { file, selected, onSelect, children, showFileDetails } = props;\n\n return (\n <div\n className={classNames(styles, { \"disable-select\": !onSelect })}\n data-testid={\"fm-list-wrapper-file\"}\n >\n <div className={\"body\"}>\n <div className={\"checkedIcon\"} onClick={onSelect}>\n {selected ? <Checked /> : null}\n </div>\n <div className={\"infoIcon\"}>\n <IconButton\n icon={<SettingsIcon />}\n onClick={showFileDetails}\n data-testid={\"fm-file-wrapper-file-info-icon\"}\n />\n </div>\n <LazyLoad height={200} offsetVertical={300}>\n <Ripple>\n <div className={\"filePreview\"}>\n <div className=\"clickableArea\" onClick={onSelect} />\n {children}\n </div>\n </Ripple>\n </LazyLoad>\n </div>\n <div className={\"label\"} onClick={onSelect}>\n {file.name}\n </div>\n </div>\n );\n};\n\nconst MemoizedFile = React.memo(File, (prev, next) => {\n if (prev.selected !== next.selected) {\n return false;\n } else if (prev.file.name !== next.file.name) {\n return false;\n }\n\n return true;\n});\n\nMemoizedFile.displayName = \"MemoizedFile\";\nexport default MemoizedFile;\n"],"mappings":";;;;;;;AAAA;AAKA;AACA;AACA;AACA;AACA;AACA;AACA;AAVA;AACA;AACA;AACA;;AASA,IAAMA,eAAe,GAAG,GAAG;AAC3B,IAAMC,gBAAgB,GAAG,GAAG;AAE5B,IAAMC,IAAI,oBAAGC,kBAAS,uFAUrB;AACD,IAAMC,MAAM,gBAAG,IAAAC,YAAG,EAAC;EACfC,OAAO,EAAE,cAAc;EACvBC,KAAK,EAAE,MAAM;EACbC,QAAQ,EAAE,UAAU;EACpBC,MAAM,EAAE,CAAC;EACTC,MAAM,EAAE,EAAE;EACVC,MAAM,EAAE,SAAS;EACjBC,KAAK,EAAE,MAAM;EACbC,QAAQ,EAAEb,eAAe;EACzBc,MAAM,EAAE,0CAA0C;EAClDC,YAAY,EAAE,CAAC;EACf,SAAS,EAAE;IACPC,UAAU,EAAE,uBAAuB;IACnCJ,KAAK,EAAEZ,eAAe;IACtBiB,MAAM,EAAEhB,gBAAgB;IACxBiB,QAAQ,EAAE,QAAQ;IAClB,cAAc,EAAE,gCAAgC;IAChD,cAAc,EAAE;MACZC,KAAK,EAAE,4BAA4B;MACnCX,QAAQ,EAAE,UAAU;MACpBY,GAAG,EAAE,CAAC;MACNC,IAAI,EAAE,CAAC;MACPZ,MAAM,EAAE;IACZ,CAAC;IACD,WAAW,EAAE;MACTa,OAAO,EAAE,CAAC;MACVd,QAAQ,EAAE,UAAU;MACpBY,GAAG,EAAE,CAAC;MACNG,KAAK,EAAE,CAAC;MACRd,MAAM,EAAE,EAAE;MACVO,UAAU,EAAE,mBAAmB;MAC/B,wBAAwB,EAAE;QACtBG,KAAK,EAAE;MACX,CAAC;MACD,SAAS,EAAE;QACPK,aAAa,EAAEtB,IAAI;QACnBuB,iBAAiB,EAAE,KAAK;QACxBC,uBAAuB,EAAE,SAAS;QAClCC,cAAc,EAAE;MACpB;IACJ,CAAC;IACD,cAAc,EAAE;MACZC,SAAS,EAAE,QAAQ;MACnBpB,QAAQ,EAAE,UAAU;MACpBqB,eAAe,EAAE,MAAM;MACvBjB,KAAK,EAAE,MAAM;MACbK,MAAM,EAAE,MAAM;MACd,gBAAgB,EAAE;QACdT,QAAQ,EAAE,UAAU;QACpBY,GAAG,EAAE,EAAE;QACPC,IAAI,EAAE,CAAC;QACPT,KAAK,EAAE,MAAM;QACbK,MAAM,EAAE,GAAG;QACXR,MAAM,EAAE;MACZ;IACJ,CAAC;IACD,mBAAmB,EAAE;MACjBa,OAAO,EAAE;IACb;EACJ,CAAC;EACD,UAAU,EAAE;IACRQ,OAAO,EAAE,WAAW;IACpBC,UAAU,EAAE,QAAQ;IACpBb,QAAQ,EAAE,QAAQ;IAClBc,YAAY,EAAE,UAAU;IACxBC,QAAQ,EAAE,QAAQ;IAClBd,KAAK,EAAE,6BAA6B;IACpCU,eAAe,EAAE;EACrB,CAAC;EACD,kBAAkB,EAAE;IAChBlB,MAAM,EAAE;EACZ;AACJ,CAAC,kBAAC;AAaF,IAAMuB,IAAyB,GAAG,SAA5BA,IAAyB,CAAGC,KAAK,EAAI;EACvC,IAAQC,IAAI,GAAoDD,KAAK,CAA7DC,IAAI;IAAEC,QAAQ,GAA0CF,KAAK,CAAvDE,QAAQ;IAAEC,QAAQ,GAAgCH,KAAK,CAA7CG,QAAQ;IAAEC,QAAQ,GAAsBJ,KAAK,CAAnCI,QAAQ;IAAEC,eAAe,GAAKL,KAAK,CAAzBK,eAAe;EAE3D,oBACI;IACI,SAAS,EAAE,IAAAC,mBAAU,EAACrC,MAAM,EAAE;MAAE,gBAAgB,EAAE,CAACkC;IAAS,CAAC,CAAE;IAC/D,eAAa;EAAuB,gBAEpC;IAAK,SAAS,EAAE;EAAO,gBACnB;IAAK,SAAS,EAAE,aAAc;IAAC,OAAO,EAAEA;EAAS,GAC5CD,QAAQ,gBAAG,6BAAC,kCAAO,OAAG,GAAG,IAAI,CAC5B,eACN;IAAK,SAAS,EAAE;EAAW,gBACvB,6BAAC,kBAAU;IACP,IAAI,eAAE,6BAAC,iCAAY,OAAI;IACvB,OAAO,EAAEG,eAAgB;IACzB,eAAa;EAAiC,EAChD,CACA,eACN,6BAAC,sBAAQ;IAAC,MAAM,EAAE,GAAI;IAAC,cAAc,EAAE;EAAI,gBACvC,6BAAC,cAAM,qBACH;IAAK,SAAS,EAAE;EAAc,gBAC1B;IAAK,SAAS,EAAC,eAAe;IAAC,OAAO,EAAEF;EAAS,EAAG,EACnDC,QAAQ,CACP,CACD,CACF,CACT,eACN;IAAK,SAAS,EAAE,OAAQ;IAAC,OAAO,EAAED;EAAS,GACtCF,IAAI,CAACM,IAAI,CACR,CACJ;AAEd,CAAC;AAED,IAAMC,YAAY,gBAAGC,cAAK,CAACC,IAAI,CAACX,IAAI,EAAE,UAACY,IAAI,EAAEC,IAAI,EAAK;EAClD,IAAID,IAAI,CAACT,QAAQ,KAAKU,IAAI,CAACV,QAAQ,EAAE;IACjC,OAAO,KAAK;EAChB,CAAC,MAAM,IAAIS,IAAI,CAACV,IAAI,CAACM,IAAI,KAAKK,IAAI,CAACX,IAAI,CAACM,IAAI,EAAE;IAC1C,OAAO,KAAK;EAChB;EAEA,OAAO,IAAI;AACf,CAAC,CAAC;AAEFC,YAAY,CAACK,WAAW,GAAG,cAAc;AAAC,eAC3BL,YAAY;AAAA"}
1
+ {"version":3,"names":["COMPONENT_WIDTH","COMPONENT_HEIGHT","grow","keyframes","styles","css","display","float","position","zIndex","margin","cursor","width","maxWidth","border","borderRadius","transition","height","overflow","color","top","left","opacity","right","animationName","animationDuration","animationTimingFunction","animationDelay","textAlign","backgroundColor","padding","whiteSpace","textOverflow","fontSize","File","props","file","selected","onSelect","children","showFileDetails","classNames","name","MemoizedFile","React","memo","prev","next","displayName"],"sources":["File.tsx"],"sourcesContent":["import React from \"react\";\n/**\n * Package react-lazy-load has no types.\n */\n// @ts-ignore\nimport LazyLoad from \"react-lazy-load\";\nimport classNames from \"classnames\";\nimport { css, keyframes } from \"emotion\";\nimport { Ripple } from \"@webiny/ui/Ripple\";\nimport { IconButton } from \"@webiny/ui/Button\";\nimport { ReactComponent as Checked } from \"./icons/round-check_box-24px.svg\";\nimport { ReactComponent as SettingsIcon } from \"../../assets/icons/round-settings-24px.svg\";\n\nconst COMPONENT_WIDTH = 200;\nconst COMPONENT_HEIGHT = 200;\n\nconst grow = keyframes`\n 0% {\n transform: scale(1)\n }\n 50% {\n transform: scale(1.2)\n }\n 100% {\n transform: scale(1)\n }\n`;\nconst styles = css({\n display: \"inline-block\",\n float: \"left\",\n position: \"relative\",\n zIndex: 1,\n margin: 10,\n cursor: \"pointer\",\n width: \"100%\",\n maxWidth: COMPONENT_WIDTH,\n border: \"1px solid var(--mdc-theme-on-background)\",\n borderRadius: 2,\n \"> .body\": {\n transition: \"200ms ease-in opacity\",\n width: COMPONENT_WIDTH,\n height: COMPONENT_HEIGHT,\n overflow: \"hidden\",\n \"--icon-color\": \"var(--mdc-theme-on-background)\",\n \".checkedIcon\": {\n color: \"var(--mdc-theme-secondary)\",\n position: \"absolute\",\n top: 4,\n left: 4,\n zIndex: 11\n },\n \".infoIcon\": {\n opacity: 0,\n position: \"absolute\",\n top: 0,\n right: 0,\n zIndex: 10,\n transition: \"all 150ms ease-in\",\n \"& .mdc-icon-button svg\": {\n color: \"var(--mdc-theme-secondary)\"\n },\n \"&:hover\": {\n animationName: grow,\n animationDuration: \".4s\",\n animationTimingFunction: \"ease-in\",\n animationDelay: \".2s\"\n }\n },\n \".filePreview\": {\n textAlign: \"center\",\n position: \"relative\",\n backgroundColor: \"#fff\",\n width: \"100%\",\n height: \"100%\",\n \".clickableArea\": {\n position: \"absolute\",\n top: 30,\n left: 0,\n width: \"100%\",\n height: 170,\n zIndex: 2\n }\n },\n \"&:hover .infoIcon\": {\n opacity: 1\n }\n },\n \"> .label\": {\n padding: \"15px 10px\",\n whiteSpace: \"nowrap\",\n overflow: \"hidden\",\n textOverflow: \"ellipsis\",\n fontSize: \"0.8rem\",\n color: \"var(--mdc-theme-on-surface)\",\n backgroundColor: \"var(--mdc-theme-on-background)\"\n },\n \"&.disable-select\": {\n cursor: \"auto\"\n }\n});\n\nexport interface FileProps {\n file: FileItem;\n selected: boolean;\n uploadFile: (item: FileItem[] | FileItem) => Promise<number | null>;\n onSelect: (event?: React.MouseEvent) => void;\n onClick?: (event?: React.MouseEvent) => void;\n options?: Array<{ label: string; onClick: (file: Object) => void }>;\n children: React.ReactNode;\n showFileDetails: (event?: React.MouseEvent) => void;\n}\n\nconst File: React.FC<FileProps> = props => {\n const { file, selected, onSelect, children, showFileDetails } = props;\n\n return (\n <div\n className={classNames(styles, { \"disable-select\": !onSelect })}\n data-testid={\"fm-list-wrapper-file\"}\n >\n <div className={\"body\"}>\n <div className={\"checkedIcon\"} onClick={onSelect}>\n {selected ? <Checked /> : null}\n </div>\n <div className={\"infoIcon\"}>\n <IconButton\n icon={<SettingsIcon />}\n onClick={showFileDetails}\n data-testid={\"fm-file-wrapper-file-info-icon\"}\n />\n </div>\n <LazyLoad height={200} offsetVertical={300}>\n <Ripple>\n <div className={\"filePreview\"}>\n <div className=\"clickableArea\" onClick={onSelect} />\n {children}\n </div>\n </Ripple>\n </LazyLoad>\n </div>\n <div className={\"label\"} onClick={onSelect}>\n {file.name}\n </div>\n </div>\n );\n};\n\nconst MemoizedFile = React.memo(File, (prev, next) => {\n if (prev.selected !== next.selected) {\n return false;\n } else if (prev.file.name !== next.file.name) {\n return false;\n }\n\n return true;\n});\n\nMemoizedFile.displayName = \"MemoizedFile\";\nexport default MemoizedFile;\n"],"mappings":"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"}
@@ -1,32 +1,51 @@
1
1
  "use strict";
2
2
 
3
3
  var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
+
4
5
  var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
6
+
5
7
  Object.defineProperty(exports, "__esModule", {
6
8
  value: true
7
9
  });
8
10
  exports.default = void 0;
11
+
9
12
  var _regeneratorRuntime2 = _interopRequireDefault(require("@babel/runtime/helpers/regeneratorRuntime"));
13
+
10
14
  var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
15
+
11
16
  var _cloneDeep2 = _interopRequireDefault(require("lodash/cloneDeep"));
17
+
12
18
  var _get2 = _interopRequireDefault(require("lodash/get"));
19
+
13
20
  var _react = _interopRequireWildcard(require("react"));
21
+
14
22
  var _reactHooks = require("@apollo/react-hooks");
23
+
15
24
  var _Input = require("@webiny/ui/Input");
25
+
16
26
  var _form = require("@webiny/form");
27
+
17
28
  var _validation = require("@webiny/validation");
29
+
18
30
  var _useSnackbar2 = require("../../../hooks/useSnackbar");
31
+
19
32
  var _graphql = require("./../graphql");
33
+
20
34
  var _FileManagerContext = require("./../FileManagerContext");
35
+
21
36
  var Name = function Name(_ref) {
22
37
  var file = _ref.file,
23
- canEdit = _ref.canEdit;
38
+ canEdit = _ref.canEdit;
24
39
  var name = file.name || "";
40
+
25
41
  var _useSnackbar = (0, _useSnackbar2.useSnackbar)(),
26
- showSnackbar = _useSnackbar.showSnackbar;
42
+ showSnackbar = _useSnackbar.showSnackbar;
43
+
27
44
  var client = (0, _reactHooks.useApolloClient)();
45
+
28
46
  var _useFileManager = (0, _FileManagerContext.useFileManager)(),
29
- queryParams = _useFileManager.queryParams;
47
+ queryParams = _useFileManager.queryParams;
48
+
30
49
  var editContent = (0, _react.useMemo)(function () {
31
50
  return /*#__PURE__*/_react.default.createElement(_form.Form, {
32
51
  data: {
@@ -36,59 +55,69 @@ var Name = function Name(_ref) {
36
55
  var _ref3 = (0, _asyncToGenerator2.default)( /*#__PURE__*/(0, _regeneratorRuntime2.default)().mark(function _callee(_ref2) {
37
56
  var name;
38
57
  return (0, _regeneratorRuntime2.default)().wrap(function _callee$(_context) {
39
- while (1) switch (_context.prev = _context.next) {
40
- case 0:
41
- name = _ref2.name;
42
- if (!(name === file.name)) {
43
- _context.next = 3;
44
- break;
45
- }
46
- return _context.abrupt("return");
47
- case 3:
48
- _context.next = 5;
49
- return client.mutate({
50
- mutation: _graphql.UPDATE_FILE,
51
- variables: {
52
- id: file.id,
53
- data: {
54
- name: name
55
- }
56
- },
57
- update: function update(cache, updated) {
58
- var newFileData = (0, _get2.default)(updated, "data.fileManager.updateFile.data");
59
- var data = (0, _cloneDeep2.default)(cache.readQuery({
60
- query: _graphql.LIST_FILES,
61
- variables: queryParams
62
- }));
63
- if (data) {
64
- data.fileManager.listFiles.data.forEach(function (item) {
65
- if (item.src === newFileData.src) {
66
- item.name = newFileData.name;
67
- }
58
+ while (1) {
59
+ switch (_context.prev = _context.next) {
60
+ case 0:
61
+ name = _ref2.name;
62
+
63
+ if (!(name === file.name)) {
64
+ _context.next = 3;
65
+ break;
66
+ }
67
+
68
+ return _context.abrupt("return");
69
+
70
+ case 3:
71
+ _context.next = 5;
72
+ return client.mutate({
73
+ mutation: _graphql.UPDATE_FILE,
74
+ variables: {
75
+ id: file.id,
76
+ data: {
77
+ name: name
78
+ }
79
+ },
80
+ update: function update(cache, updated) {
81
+ var newFileData = (0, _get2.default)(updated, "data.fileManager.updateFile.data");
82
+ var data = (0, _cloneDeep2.default)(cache.readQuery({
83
+ query: _graphql.LIST_FILES,
84
+ variables: queryParams
85
+ }));
86
+
87
+ if (data) {
88
+ data.fileManager.listFiles.data.forEach(function (item) {
89
+ if (item.src === newFileData.src) {
90
+ item.name = newFileData.name;
91
+ }
92
+ });
93
+ }
94
+
95
+ cache.writeQuery({
96
+ query: _graphql.LIST_FILES,
97
+ variables: queryParams,
98
+ data: data
68
99
  });
69
100
  }
70
- cache.writeQuery({
71
- query: _graphql.LIST_FILES,
72
- variables: queryParams,
73
- data: data
74
- });
75
- }
76
- });
77
- case 5:
78
- showSnackbar("Name successfully updated.");
79
- case 6:
80
- case "end":
81
- return _context.stop();
101
+ });
102
+
103
+ case 5:
104
+ showSnackbar("Name successfully updated.");
105
+
106
+ case 6:
107
+ case "end":
108
+ return _context.stop();
109
+ }
82
110
  }
83
111
  }, _callee);
84
112
  }));
113
+
85
114
  return function (_x) {
86
115
  return _ref3.apply(this, arguments);
87
116
  };
88
117
  }()
89
118
  }, function (_ref4) {
90
119
  var Bind = _ref4.Bind,
91
- submit = _ref4.submit;
120
+ submit = _ref4.submit;
92
121
  return /*#__PURE__*/_react.default.createElement(Bind, {
93
122
  name: "name",
94
123
  validators: _validation.validation.create("required")
@@ -104,5 +133,6 @@ var Name = function Name(_ref) {
104
133
  }, [name, file.name, canEdit]);
105
134
  return /*#__PURE__*/_react.default.createElement("li-content", null, editContent);
106
135
  };
136
+
107
137
  var _default = Name;
108
138
  exports.default = _default;
@@ -1 +1 @@
1
- {"version":3,"names":["Name","file","canEdit","name","useSnackbar","showSnackbar","client","useApolloClient","useFileManager","queryParams","editContent","useMemo","mutate","mutation","UPDATE_FILE","variables","id","data","update","cache","updated","newFileData","readQuery","query","LIST_FILES","fileManager","listFiles","forEach","item","src","writeQuery","Bind","submit","validation","create"],"sources":["Name.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { get, cloneDeep } from \"lodash\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { Form } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { useSnackbar } from \"~/hooks/useSnackbar\";\nimport {\n UPDATE_FILE,\n LIST_FILES,\n UpdateFileMutationResponse,\n UpdateFileMutationVariables,\n ListFilesQueryResponse\n} from \"./../graphql\";\nimport { useFileManager } from \"./../FileManagerContext\";\nimport { FileItem } from \"../types\";\n\ninterface NameProps {\n file: FileItem;\n canEdit: (file: FileItem) => boolean;\n}\nconst Name: React.FC<NameProps> = ({ file, canEdit }) => {\n const name = file.name || \"\";\n const { showSnackbar } = useSnackbar();\n const client = useApolloClient();\n\n const { queryParams } = useFileManager();\n\n const editContent = useMemo(() => {\n return (\n <Form\n data={{\n name\n }}\n onSubmit={async ({ name }) => {\n // Bail out if name is same as the current file name.\n if (name === file.name) {\n return;\n }\n // Update file.\n await client.mutate<UpdateFileMutationResponse, UpdateFileMutationVariables>({\n mutation: UPDATE_FILE,\n variables: {\n id: file.id,\n data: { name }\n },\n update: (cache, updated) => {\n const newFileData = get(\n updated,\n \"data.fileManager.updateFile.data\"\n ) as unknown as FileItem;\n const data = cloneDeep(\n cache.readQuery<ListFilesQueryResponse>({\n query: LIST_FILES,\n variables: queryParams\n })\n );\n\n if (data) {\n data.fileManager.listFiles.data.forEach(item => {\n if (item.src === newFileData.src) {\n item.name = newFileData.name;\n }\n });\n }\n\n cache.writeQuery({\n query: LIST_FILES,\n variables: queryParams,\n data: data\n });\n }\n });\n\n showSnackbar(\"Name successfully updated.\");\n }}\n >\n {({ Bind, submit }) => (\n <Bind name={\"name\"} validators={validation.create(\"required\")}>\n <Input\n disabled={!canEdit(file)}\n autoFocus\n placeholder={\"Enter name\"}\n fullwidth={true}\n onBlur={submit}\n description={\"A descriptive name is easier to remember.\"}\n />\n </Bind>\n )}\n </Form>\n );\n }, [name, file.name, canEdit]);\n\n return <li-content>{editContent}</li-content>;\n};\n\nexport default Name;\n"],"mappings":";;;;;;;;;;;;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AAOA;AAOA,IAAMA,IAAyB,GAAG,SAA5BA,IAAyB,OAA0B;EAAA,IAApBC,IAAI,QAAJA,IAAI;IAAEC,OAAO,QAAPA,OAAO;EAC9C,IAAMC,IAAI,GAAGF,IAAI,CAACE,IAAI,IAAI,EAAE;EAC5B,mBAAyB,IAAAC,yBAAW,GAAE;IAA9BC,YAAY,gBAAZA,YAAY;EACpB,IAAMC,MAAM,GAAG,IAAAC,2BAAe,GAAE;EAEhC,sBAAwB,IAAAC,kCAAc,GAAE;IAAhCC,WAAW,mBAAXA,WAAW;EAEnB,IAAMC,WAAW,GAAG,IAAAC,cAAO,EAAC,YAAM;IAC9B,oBACI,6BAAC,UAAI;MACD,IAAI,EAAE;QACFR,IAAI,EAAJA;MACJ,CAAE;MACF,QAAQ;QAAA,mGAAE;UAAA;UAAA;YAAA;cAAA;gBAASA,IAAI,SAAJA,IAAI;gBAAA,MAEfA,IAAI,KAAKF,IAAI,CAACE,IAAI;kBAAA;kBAAA;gBAAA;gBAAA;cAAA;gBAAA;gBAAA,OAIhBG,MAAM,CAACM,MAAM,CAA0D;kBACzEC,QAAQ,EAAEC,oBAAW;kBACrBC,SAAS,EAAE;oBACPC,EAAE,EAAEf,IAAI,CAACe,EAAE;oBACXC,IAAI,EAAE;sBAAEd,IAAI,EAAJA;oBAAK;kBACjB,CAAC;kBACDe,MAAM,EAAE,gBAACC,KAAK,EAAEC,OAAO,EAAK;oBACxB,IAAMC,WAAW,GAAG,mBAChBD,OAAO,EACP,kCAAkC,CACd;oBACxB,IAAMH,IAAI,GAAG,yBACTE,KAAK,CAACG,SAAS,CAAyB;sBACpCC,KAAK,EAAEC,mBAAU;sBACjBT,SAAS,EAAEN;oBACf,CAAC,CAAC,CACL;oBAED,IAAIQ,IAAI,EAAE;sBACNA,IAAI,CAACQ,WAAW,CAACC,SAAS,CAACT,IAAI,CAACU,OAAO,CAAC,UAAAC,IAAI,EAAI;wBAC5C,IAAIA,IAAI,CAACC,GAAG,KAAKR,WAAW,CAACQ,GAAG,EAAE;0BAC9BD,IAAI,CAACzB,IAAI,GAAGkB,WAAW,CAAClB,IAAI;wBAChC;sBACJ,CAAC,CAAC;oBACN;oBAEAgB,KAAK,CAACW,UAAU,CAAC;sBACbP,KAAK,EAAEC,mBAAU;sBACjBT,SAAS,EAAEN,WAAW;sBACtBQ,IAAI,EAAEA;oBACV,CAAC,CAAC;kBACN;gBACJ,CAAC,CAAC;cAAA;gBAEFZ,YAAY,CAAC,4BAA4B,CAAC;cAAC;cAAA;gBAAA;YAAA;UAAA;QAAA,CAC9C;QAAA;UAAA;QAAA;MAAA;IAAC,GAED;MAAA,IAAG0B,IAAI,SAAJA,IAAI;QAAEC,MAAM,SAANA,MAAM;MAAA,oBACZ,6BAAC,IAAI;QAAC,IAAI,EAAE,MAAO;QAAC,UAAU,EAAEC,sBAAU,CAACC,MAAM,CAAC,UAAU;MAAE,gBAC1D,6BAAC,YAAK;QACF,QAAQ,EAAE,CAAChC,OAAO,CAACD,IAAI,CAAE;QACzB,SAAS;QACT,WAAW,EAAE,YAAa;QAC1B,SAAS,EAAE,IAAK;QAChB,MAAM,EAAE+B,MAAO;QACf,WAAW,EAAE;MAA4C,EAC3D,CACC;IAAA,CACV,CACE;EAEf,CAAC,EAAE,CAAC7B,IAAI,EAAEF,IAAI,CAACE,IAAI,EAAED,OAAO,CAAC,CAAC;EAE9B,oBAAO,iDAAaQ,WAAW,CAAc;AACjD,CAAC;AAAC,eAEaV,IAAI;AAAA"}
1
+ {"version":3,"names":["Name","file","canEdit","name","useSnackbar","showSnackbar","client","useApolloClient","useFileManager","queryParams","editContent","useMemo","mutate","mutation","UPDATE_FILE","variables","id","data","update","cache","updated","newFileData","readQuery","query","LIST_FILES","fileManager","listFiles","forEach","item","src","writeQuery","Bind","submit","validation","create"],"sources":["Name.tsx"],"sourcesContent":["import React, { useMemo } from \"react\";\nimport { get, cloneDeep } from \"lodash\";\nimport { useApolloClient } from \"@apollo/react-hooks\";\nimport { Input } from \"@webiny/ui/Input\";\nimport { Form } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { useSnackbar } from \"~/hooks/useSnackbar\";\nimport {\n UPDATE_FILE,\n LIST_FILES,\n UpdateFileMutationResponse,\n UpdateFileMutationVariables,\n ListFilesQueryResponse\n} from \"./../graphql\";\nimport { useFileManager } from \"./../FileManagerContext\";\nimport { FileItem } from \"../types\";\n\ninterface NameProps {\n file: FileItem;\n canEdit: (file: FileItem) => boolean;\n}\nconst Name: React.FC<NameProps> = ({ file, canEdit }) => {\n const name = file.name || \"\";\n const { showSnackbar } = useSnackbar();\n const client = useApolloClient();\n\n const { queryParams } = useFileManager();\n\n const editContent = useMemo(() => {\n return (\n <Form\n data={{\n name\n }}\n onSubmit={async ({ name }) => {\n // Bail out if name is same as the current file name.\n if (name === file.name) {\n return;\n }\n // Update file.\n await client.mutate<UpdateFileMutationResponse, UpdateFileMutationVariables>({\n mutation: UPDATE_FILE,\n variables: {\n id: file.id,\n data: { name }\n },\n update: (cache, updated) => {\n const newFileData = get(\n updated,\n \"data.fileManager.updateFile.data\"\n ) as unknown as FileItem;\n const data = cloneDeep(\n cache.readQuery<ListFilesQueryResponse>({\n query: LIST_FILES,\n variables: queryParams\n })\n );\n\n if (data) {\n data.fileManager.listFiles.data.forEach(item => {\n if (item.src === newFileData.src) {\n item.name = newFileData.name;\n }\n });\n }\n\n cache.writeQuery({\n query: LIST_FILES,\n variables: queryParams,\n data: data\n });\n }\n });\n\n showSnackbar(\"Name successfully updated.\");\n }}\n >\n {({ Bind, submit }) => (\n <Bind name={\"name\"} validators={validation.create(\"required\")}>\n <Input\n disabled={!canEdit(file)}\n autoFocus\n placeholder={\"Enter name\"}\n fullwidth={true}\n onBlur={submit}\n description={\"A descriptive name is easier to remember.\"}\n />\n </Bind>\n )}\n </Form>\n );\n }, [name, file.name, canEdit]);\n\n return <li-content>{editContent}</li-content>;\n};\n\nexport default Name;\n"],"mappings":";;;;;;;;;;;;;;;;;;;AAAA;;AAEA;;AACA;;AACA;;AACA;;AACA;;AACA;;AAOA;;AAOA,IAAMA,IAAyB,GAAG,SAA5BA,IAA4B,OAAuB;EAAA,IAApBC,IAAoB,QAApBA,IAAoB;EAAA,IAAdC,OAAc,QAAdA,OAAc;EACrD,IAAMC,IAAI,GAAGF,IAAI,CAACE,IAAL,IAAa,EAA1B;;EACA,mBAAyB,IAAAC,yBAAA,GAAzB;EAAA,IAAQC,YAAR,gBAAQA,YAAR;;EACA,IAAMC,MAAM,GAAG,IAAAC,2BAAA,GAAf;;EAEA,sBAAwB,IAAAC,kCAAA,GAAxB;EAAA,IAAQC,WAAR,mBAAQA,WAAR;;EAEA,IAAMC,WAAW,GAAG,IAAAC,cAAA,EAAQ,YAAM;IAC9B,oBACI,6BAAC,UAAD;MACI,IAAI,EAAE;QACFR,IAAI,EAAJA;MADE,CADV;MAII,QAAQ;QAAA,mGAAE;UAAA;UAAA;YAAA;cAAA;gBAAA;kBAASA,IAAT,SAASA,IAAT;;kBAAA,MAEFA,IAAI,KAAKF,IAAI,CAACE,IAFZ;oBAAA;oBAAA;kBAAA;;kBAAA;;gBAAA;kBAAA;kBAAA,OAMAG,MAAM,CAACM,MAAP,CAAuE;oBACzEC,QAAQ,EAAEC,oBAD+D;oBAEzEC,SAAS,EAAE;sBACPC,EAAE,EAAEf,IAAI,CAACe,EADF;sBAEPC,IAAI,EAAE;wBAAEd,IAAI,EAAJA;sBAAF;oBAFC,CAF8D;oBAMzEe,MAAM,EAAE,gBAACC,KAAD,EAAQC,OAAR,EAAoB;sBACxB,IAAMC,WAAW,GAAG,mBAChBD,OADgB,EAEhB,kCAFgB,CAApB;sBAIA,IAAMH,IAAI,GAAG,yBACTE,KAAK,CAACG,SAAN,CAAwC;wBACpCC,KAAK,EAAEC,mBAD6B;wBAEpCT,SAAS,EAAEN;sBAFyB,CAAxC,CADS,CAAb;;sBAOA,IAAIQ,IAAJ,EAAU;wBACNA,IAAI,CAACQ,WAAL,CAAiBC,SAAjB,CAA2BT,IAA3B,CAAgCU,OAAhC,CAAwC,UAAAC,IAAI,EAAI;0BAC5C,IAAIA,IAAI,CAACC,GAAL,KAAaR,WAAW,CAACQ,GAA7B,EAAkC;4BAC9BD,IAAI,CAACzB,IAAL,GAAYkB,WAAW,CAAClB,IAAxB;0BACH;wBACJ,CAJD;sBAKH;;sBAEDgB,KAAK,CAACW,UAAN,CAAiB;wBACbP,KAAK,EAAEC,mBADM;wBAEbT,SAAS,EAAEN,WAFE;wBAGbQ,IAAI,EAAEA;sBAHO,CAAjB;oBAKH;kBA/BwE,CAAvE,CANA;;gBAAA;kBAwCNZ,YAAY,CAAC,4BAAD,CAAZ;;gBAxCM;gBAAA;kBAAA;cAAA;YAAA;UAAA;QAAA,CAAF;;QAAA;UAAA;QAAA;MAAA;IAJZ,GA+CK;MAAA,IAAG0B,IAAH,SAAGA,IAAH;MAAA,IAASC,MAAT,SAASA,MAAT;MAAA,oBACG,6BAAC,IAAD;QAAM,IAAI,EAAE,MAAZ;QAAoB,UAAU,EAAEC,sBAAA,CAAWC,MAAX,CAAkB,UAAlB;MAAhC,gBACI,6BAAC,YAAD;QACI,QAAQ,EAAE,CAAChC,OAAO,CAACD,IAAD,CADtB;QAEI,SAAS,MAFb;QAGI,WAAW,EAAE,YAHjB;QAII,SAAS,EAAE,IAJf;QAKI,MAAM,EAAE+B,MALZ;QAMI,WAAW,EAAE;MANjB,EADJ,CADH;IAAA,CA/CL,CADJ;EA8DH,CA/DmB,EA+DjB,CAAC7B,IAAD,EAAOF,IAAI,CAACE,IAAZ,EAAkBD,OAAlB,CA/DiB,CAApB;EAiEA,oBAAO,iDAAaQ,WAAb,CAAP;AACH,CAzED;;eA2EeV,I"}