sanity-plugin-media 1.4.3 → 1.4.4
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.
- package/CHANGELOG.md +2 -0
- package/dist/.DS_Store +0 -0
- package/dist/components/ButtonAssetClipboardCopy/index.js +71 -0
- package/dist/components/ButtonC/index.js +71 -0
- package/dist/components/ButtonClipboardCopy/index.js +71 -0
- package/dist/components/Card/index.js +188 -0
- package/dist/components/Card/index.js.map +1 -0
- package/dist/components/CardUpload copy/index.js +60 -0
- package/dist/components/Cards/index.js +81 -0
- package/dist/components/Cards/index.js.map +1 -0
- package/dist/components/DialogDeleteConfirm/index.js +62 -0
- package/dist/components/DialogDeleteConfirm/index.js.map +1 -0
- package/dist/components/DialogDetails/index.js +322 -0
- package/dist/components/DialogDetails/index.js.map +1 -0
- package/dist/components/DialogSearchFacets copy/index.js +45 -0
- package/dist/components/DialogTagCreate copy/index.js +38 -0
- package/dist/components/Dropzone/index.js +66 -0
- package/dist/components/Dropzone/index.js.map +1 -0
- package/dist/components/DropzoneTest/index.js +37 -0
- package/dist/components/FormDetails/index.js +241 -0
- package/dist/components/GlobalStyles/index.js +10 -0
- package/dist/components/LegacyContextActionContainer/index.js +32 -0
- package/dist/components/LegacyContextActionContainer/index.js.map +1 -0
- package/dist/components/Main/index.js +73 -0
- package/dist/components/Main/index.js.map +1 -0
- package/dist/components/NoResults/index.js +12 -0
- package/dist/components/PanelHeader/index.js +48 -0
- package/dist/components/PanelHeader/index.js.map +1 -0
- package/dist/components/Portal/Portal.js +50 -0
- package/dist/components/Portal/index.js +49 -0
- package/dist/components/Portal/index.js.map +1 -0
- package/dist/components/ReduxProvider/index.js +16 -36
- package/dist/components/ReduxProvider/index.js.map +1 -1
- package/dist/components/SearchFacetSearchable/index.js +61 -0
- package/dist/components/SearchFacetSearchable/index.js.map +1 -0
- package/dist/components/Table/index.js +79 -0
- package/dist/components/Table/index.js.map +1 -0
- package/dist/components/TableRow/index.js +225 -0
- package/dist/components/TableRow/index.js.map +1 -0
- package/dist/components/TagPanel/index.js +19 -0
- package/dist/components/TagPanel/index.js.map +1 -0
- package/dist/components/Tags/index.js +21 -0
- package/dist/components/Tags/index.js.map +1 -0
- package/dist/components/TagsAll/index.js +23 -0
- package/dist/components/TagsAll/index.js.map +1 -0
- package/dist/components/TagsPicked/index.js +61 -0
- package/dist/components/TagsPicked/index.js.map +1 -0
- package/dist/components/TagsView/index.js +32 -0
- package/dist/components/TextEllipsis/index.js +14 -0
- package/dist/components/TextEllipsis/index.js.map +1 -0
- package/dist/components/UploadCard/index.js +14 -0
- package/dist/constants/searchFacets.js +272 -0
- package/dist/contexts/AssetSourceDispatchContext copy.js +41 -0
- package/dist/helpers/withRedux.js +84 -0
- package/dist/helpers/withRedux.js.map +1 -0
- package/dist/modules/assets/assetsSlice.js +552 -0
- package/dist/modules/assets/types.js +2 -0
- package/dist/modules/assets/types.js.map +1 -0
- package/dist/modules/debug/debugSlice.js +23 -0
- package/dist/modules/debug/types.js +2 -0
- package/dist/modules/debug/types.js.map +1 -0
- package/dist/modules/debug copy/index.js +22 -0
- package/dist/modules/dialog/dialogSlice.js +192 -0
- package/dist/modules/dialog/index.js.map +1 -1
- package/dist/modules/dialog/types.js +2 -0
- package/dist/modules/dialog/types.js.map +1 -0
- package/dist/modules/document/documentSlice.js +9 -0
- package/dist/modules/document/index.js +9 -0
- package/dist/modules/document/index.js.map +1 -0
- package/dist/modules/document/types.js +3 -0
- package/dist/modules/document/types.js.map +1 -0
- package/dist/modules/document copy/index.js +9 -0
- package/dist/modules/documentAssets/index.js +9 -0
- package/dist/modules/index.js +2 -2
- package/dist/modules/index.js.map +1 -1
- package/dist/modules/notifications/notificationsSlice.js +123 -0
- package/dist/modules/notifications/types.js +2 -0
- package/dist/modules/notifications/types.js.map +1 -0
- package/dist/modules/search/searchSlice.js +122 -0
- package/dist/modules/search/types.js +2 -0
- package/dist/modules/search/types.js.map +1 -0
- package/dist/modules/selectedAssets/index.js +9 -0
- package/dist/modules/selectedAssets/index.js.map +1 -0
- package/dist/modules/selectedAssets/selectedAssetsSlice.js +9 -0
- package/dist/modules/selectedAssets/types.js +2 -0
- package/dist/modules/selectedAssets/types.js.map +1 -0
- package/dist/modules/selectedAssets copy/index.js +9 -0
- package/dist/modules/tags/index.js +3 -3
- package/dist/modules/tags/index.js.map +1 -1
- package/dist/modules/tags/selectedAssetsSlice.js +9 -0
- package/dist/modules/tags/tagsSlice.js +442 -0
- package/dist/modules/tags/tagsSlice.js.map +1 -0
- package/dist/modules/tags/types.js +2 -0
- package/dist/modules/tags/types.js.map +1 -0
- package/dist/modules/theme/index.js +21 -0
- package/dist/modules/theme/index.js.map +1 -0
- package/dist/operators/debugThrottle copy.js +15 -0
- package/dist/operators/fetchExistingTag.js +27 -0
- package/dist/utils/getDocumentAssetRefs.js +50 -0
- package/package.json +8 -14
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,8 @@
|
|
|
2
2
|
|
|
3
3
|
All notable changes to this project will be documented in this file. See [standard-version](https://github.com/conventional-changelog/standard-version) for commit guidelines.
|
|
4
4
|
|
|
5
|
+
### [1.4.4](https://github.com/robinpyon/sanity-plugin-media/compare/v1.4.3...v1.4.4) (2021-11-14)
|
|
6
|
+
|
|
5
7
|
### [1.4.3](https://github.com/robinpyon/sanity-plugin-media/compare/v1.4.2...v1.4.3) (2021-10-26)
|
|
6
8
|
|
|
7
9
|
|
package/dist/.DS_Store
ADDED
|
Binary file
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
22
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
23
|
+
if (!m) return o;
|
|
24
|
+
var i = m.call(o), r, ar = [], e;
|
|
25
|
+
try {
|
|
26
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
27
|
+
}
|
|
28
|
+
catch (error) { e = { error: error }; }
|
|
29
|
+
finally {
|
|
30
|
+
try {
|
|
31
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
32
|
+
}
|
|
33
|
+
finally { if (e) throw e.error; }
|
|
34
|
+
}
|
|
35
|
+
return ar;
|
|
36
|
+
};
|
|
37
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
38
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
39
|
+
};
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
var icons_1 = require("@sanity/icons");
|
|
42
|
+
var ui_1 = require("@sanity/ui");
|
|
43
|
+
var copy_to_clipboard_1 = __importDefault(require("copy-to-clipboard"));
|
|
44
|
+
var react_1 = __importStar(require("react"));
|
|
45
|
+
var ButtonClipboardCopy = function (props) {
|
|
46
|
+
var disabled = props.disabled;
|
|
47
|
+
var _a = __read(react_1.useState(false), 2), popoverVisible = _a[0], setPopoverVisible = _a[1];
|
|
48
|
+
var refPopoverTimeout = react_1.useRef();
|
|
49
|
+
// Callbacks
|
|
50
|
+
var handleClick = function () {
|
|
51
|
+
if (refPopoverTimeout.current) {
|
|
52
|
+
clearTimeout(refPopoverTimeout.current);
|
|
53
|
+
}
|
|
54
|
+
setPopoverVisible(true);
|
|
55
|
+
copy_to_clipboard_1.default(asset.url);
|
|
56
|
+
refPopoverTimeout.current = setTimeout(function () {
|
|
57
|
+
setPopoverVisible(false);
|
|
58
|
+
}, 2000);
|
|
59
|
+
};
|
|
60
|
+
// Effects
|
|
61
|
+
react_1.useEffect(function () {
|
|
62
|
+
return function () {
|
|
63
|
+
if (refPopoverTimeout.current) {
|
|
64
|
+
clearTimeout(refPopoverTimeout.current);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
}, []);
|
|
68
|
+
return (react_1.default.createElement(ui_1.Popover, { content: react_1.default.createElement(ui_1.Text, { muted: true, size: 1 }, "Copied!"), open: popoverVisible, padding: 2, placement: "top", radius: 1 },
|
|
69
|
+
react_1.default.createElement(ui_1.Button, { disabled: disabled, fontSize: 1, icon: icons_1.ClipboardIcon, mode: "ghost", onClick: handleClick, text: "Copy" })));
|
|
70
|
+
};
|
|
71
|
+
exports.default = ButtonClipboardCopy;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
22
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
23
|
+
if (!m) return o;
|
|
24
|
+
var i = m.call(o), r, ar = [], e;
|
|
25
|
+
try {
|
|
26
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
27
|
+
}
|
|
28
|
+
catch (error) { e = { error: error }; }
|
|
29
|
+
finally {
|
|
30
|
+
try {
|
|
31
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
32
|
+
}
|
|
33
|
+
finally { if (e) throw e.error; }
|
|
34
|
+
}
|
|
35
|
+
return ar;
|
|
36
|
+
};
|
|
37
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
38
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
39
|
+
};
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
var icons_1 = require("@sanity/icons");
|
|
42
|
+
var ui_1 = require("@sanity/ui");
|
|
43
|
+
var copy_to_clipboard_1 = __importDefault(require("copy-to-clipboard"));
|
|
44
|
+
var react_1 = __importStar(require("react"));
|
|
45
|
+
var ButtonClipboardCopy = function (props) {
|
|
46
|
+
var disabled = props.disabled;
|
|
47
|
+
var _a = __read(react_1.useState(false), 2), popoverVisible = _a[0], setPopoverVisible = _a[1];
|
|
48
|
+
var refPopoverTimeout = react_1.useRef();
|
|
49
|
+
// Callbacks
|
|
50
|
+
var handleClick = function () {
|
|
51
|
+
if (refPopoverTimeout.current) {
|
|
52
|
+
clearTimeout(refPopoverTimeout.current);
|
|
53
|
+
}
|
|
54
|
+
setPopoverVisible(true);
|
|
55
|
+
copy_to_clipboard_1.default(asset.url);
|
|
56
|
+
refPopoverTimeout.current = setTimeout(function () {
|
|
57
|
+
setPopoverVisible(false);
|
|
58
|
+
}, 2000);
|
|
59
|
+
};
|
|
60
|
+
// Effects
|
|
61
|
+
react_1.useEffect(function () {
|
|
62
|
+
return function () {
|
|
63
|
+
if (refPopoverTimeout.current) {
|
|
64
|
+
clearTimeout(refPopoverTimeout.current);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
}, []);
|
|
68
|
+
return (react_1.default.createElement(ui_1.Popover, { content: react_1.default.createElement(ui_1.Text, { muted: true, size: 1 }, "Copied!"), open: popoverVisible, padding: 2, placement: "top", radius: 1 },
|
|
69
|
+
react_1.default.createElement(ui_1.Button, { disabled: disabled, fontSize: 1, icon: icons_1.ClipboardIcon, mode: "ghost", onClick: handleClick, text: "Copy" })));
|
|
70
|
+
};
|
|
71
|
+
exports.default = ButtonClipboardCopy;
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
5
|
+
}) : (function(o, m, k, k2) {
|
|
6
|
+
if (k2 === undefined) k2 = k;
|
|
7
|
+
o[k2] = m[k];
|
|
8
|
+
}));
|
|
9
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
10
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
11
|
+
}) : function(o, v) {
|
|
12
|
+
o["default"] = v;
|
|
13
|
+
});
|
|
14
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
15
|
+
if (mod && mod.__esModule) return mod;
|
|
16
|
+
var result = {};
|
|
17
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
18
|
+
__setModuleDefault(result, mod);
|
|
19
|
+
return result;
|
|
20
|
+
};
|
|
21
|
+
var __read = (this && this.__read) || function (o, n) {
|
|
22
|
+
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
23
|
+
if (!m) return o;
|
|
24
|
+
var i = m.call(o), r, ar = [], e;
|
|
25
|
+
try {
|
|
26
|
+
while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);
|
|
27
|
+
}
|
|
28
|
+
catch (error) { e = { error: error }; }
|
|
29
|
+
finally {
|
|
30
|
+
try {
|
|
31
|
+
if (r && !r.done && (m = i["return"])) m.call(i);
|
|
32
|
+
}
|
|
33
|
+
finally { if (e) throw e.error; }
|
|
34
|
+
}
|
|
35
|
+
return ar;
|
|
36
|
+
};
|
|
37
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
38
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
39
|
+
};
|
|
40
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
41
|
+
var icons_1 = require("@sanity/icons");
|
|
42
|
+
var ui_1 = require("@sanity/ui");
|
|
43
|
+
var copy_to_clipboard_1 = __importDefault(require("copy-to-clipboard"));
|
|
44
|
+
var react_1 = __importStar(require("react"));
|
|
45
|
+
var ButtonClipboardCopy = function (props) {
|
|
46
|
+
var disabled = props.disabled;
|
|
47
|
+
var _a = __read(react_1.useState(false), 2), popoverVisible = _a[0], setPopoverVisible = _a[1];
|
|
48
|
+
var refPopoverTimeout = react_1.useRef();
|
|
49
|
+
// Callbacks
|
|
50
|
+
var handleClick = function () {
|
|
51
|
+
if (refPopoverTimeout.current) {
|
|
52
|
+
clearTimeout(refPopoverTimeout.current);
|
|
53
|
+
}
|
|
54
|
+
setPopoverVisible(true);
|
|
55
|
+
copy_to_clipboard_1.default(asset.url);
|
|
56
|
+
refPopoverTimeout.current = setTimeout(function () {
|
|
57
|
+
setPopoverVisible(false);
|
|
58
|
+
}, 2000);
|
|
59
|
+
};
|
|
60
|
+
// Effects
|
|
61
|
+
react_1.useEffect(function () {
|
|
62
|
+
return function () {
|
|
63
|
+
if (refPopoverTimeout.current) {
|
|
64
|
+
clearTimeout(refPopoverTimeout.current);
|
|
65
|
+
}
|
|
66
|
+
};
|
|
67
|
+
}, []);
|
|
68
|
+
return (react_1.default.createElement(ui_1.Popover, { content: react_1.default.createElement(ui_1.Text, { muted: true, size: 1 }, "Copied!"), open: popoverVisible, padding: 2, placement: "top", radius: 1 },
|
|
69
|
+
react_1.default.createElement(ui_1.Button, { disabled: disabled, fontSize: 1, icon: icons_1.ClipboardIcon, mode: "ghost", onClick: handleClick, text: "Copy" })));
|
|
70
|
+
};
|
|
71
|
+
exports.default = ButtonClipboardCopy;
|
|
@@ -0,0 +1,188 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __makeTemplateObject = (this && this.__makeTemplateObject) || function (cooked, raw) {
|
|
3
|
+
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
4
|
+
return cooked;
|
|
5
|
+
};
|
|
6
|
+
var __assign = (this && this.__assign) || function () {
|
|
7
|
+
__assign = Object.assign || function(t) {
|
|
8
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
9
|
+
s = arguments[i];
|
|
10
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
11
|
+
t[p] = s[p];
|
|
12
|
+
}
|
|
13
|
+
return t;
|
|
14
|
+
};
|
|
15
|
+
return __assign.apply(this, arguments);
|
|
16
|
+
};
|
|
17
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
18
|
+
if (k2 === undefined) k2 = k;
|
|
19
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
20
|
+
}) : (function(o, m, k, k2) {
|
|
21
|
+
if (k2 === undefined) k2 = k;
|
|
22
|
+
o[k2] = m[k];
|
|
23
|
+
}));
|
|
24
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
25
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
26
|
+
}) : function(o, v) {
|
|
27
|
+
o["default"] = v;
|
|
28
|
+
});
|
|
29
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
30
|
+
if (mod && mod.__esModule) return mod;
|
|
31
|
+
var result = {};
|
|
32
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
33
|
+
__setModuleDefault(result, mod);
|
|
34
|
+
return result;
|
|
35
|
+
};
|
|
36
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
37
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
38
|
+
};
|
|
39
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
40
|
+
var color_1 = require("@sanity/color");
|
|
41
|
+
var icons_1 = require("@sanity/icons");
|
|
42
|
+
var ui_1 = require("@sanity/ui");
|
|
43
|
+
var react_1 = __importStar(require("react"));
|
|
44
|
+
var react_redux_1 = require("react-redux");
|
|
45
|
+
var styled_components_1 = __importStar(require("styled-components"));
|
|
46
|
+
var FileIcon_1 = __importDefault(require("../../components/FileIcon"));
|
|
47
|
+
var AssetSourceDispatchContext_1 = require("../../contexts/AssetSourceDispatchContext");
|
|
48
|
+
var useKeyPress_1 = __importDefault(require("../../hooks/useKeyPress"));
|
|
49
|
+
var useTypedSelector_1 = __importDefault(require("../../hooks/useTypedSelector"));
|
|
50
|
+
var assets_1 = require("../../modules/assets");
|
|
51
|
+
var dialog_1 = require("../../modules/dialog");
|
|
52
|
+
var imageDprUrl_1 = __importDefault(require("../../utils/imageDprUrl"));
|
|
53
|
+
var typeGuards_1 = require("../../utils/typeGuards");
|
|
54
|
+
var Image_1 = __importDefault(require("../Image"));
|
|
55
|
+
var CardContainer = styled_components_1.default(ui_1.Flex)(templateObject_2 || (templateObject_2 = __makeTemplateObject(["\n /* background: ", "; */\n border: 1px solid transparent;\n overflow: hidden;\n pointer-events: ", ";\n position: relative;\n transition: all 300ms;\n user-select: none;\n\n border: ", ";\n\n ", "\n"], ["\n /* background: ", "; */\n border: 1px solid transparent;\n overflow: hidden;\n pointer-events: ", ";\n position: relative;\n transition: all 300ms;\n user-select: none;\n\n border: ",
|
|
56
|
+
";\n\n ",
|
|
57
|
+
"\n"])), color_1.hues.gray[950].hex, function (props) { return (props.updating ? 'none' : 'auto'); }, function (props) {
|
|
58
|
+
return props.picked
|
|
59
|
+
? "1px solid " + props.theme.sanity.color.spot.orange + " !important"
|
|
60
|
+
: '1px solid inherit';
|
|
61
|
+
}, function (props) {
|
|
62
|
+
return !props.updating && styled_components_1.css(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n @media (hover: hover) and (pointer: fine) {\n &:hover {\n border: 1px solid ", ";\n }\n }\n "], ["\n @media (hover: hover) and (pointer: fine) {\n &:hover {\n border: 1px solid ", ";\n }\n }\n "])), color_1.hues.gray[500].hex);
|
|
63
|
+
});
|
|
64
|
+
var ContextActionContainer = styled_components_1.default(ui_1.Box)(templateObject_3 || (templateObject_3 = __makeTemplateObject(["\n cursor: ", ";\n transition: all 300ms;\n\n @media (hover: hover) and (pointer: fine) {\n &:hover {\n background: ", ";\n }\n }\n"], ["\n cursor: ", ";\n transition: all 300ms;\n\n @media (hover: hover) and (pointer: fine) {\n &:hover {\n background: ", ";\n }\n }\n"])), function (props) { return (props.selected ? 'default' : 'pointer'); }, color_1.hues.gray[950].hex);
|
|
65
|
+
var StyledWarningOutlineIcon = styled_components_1.default(icons_1.WarningOutlineIcon)(function (_a) {
|
|
66
|
+
var theme = _a.theme;
|
|
67
|
+
return {
|
|
68
|
+
color: theme.sanity.color.spot.red
|
|
69
|
+
};
|
|
70
|
+
});
|
|
71
|
+
var Card = function (props) {
|
|
72
|
+
var _a, _b;
|
|
73
|
+
var item = props.item, selected = props.selected, style = props.style;
|
|
74
|
+
// Refs
|
|
75
|
+
var shiftPressed = useKeyPress_1.default('shift');
|
|
76
|
+
// Redux
|
|
77
|
+
var dispatch = react_redux_1.useDispatch();
|
|
78
|
+
var currentDocument = useTypedSelector_1.default(function (state) { return state.document; });
|
|
79
|
+
var lastPicked = useTypedSelector_1.default(function (state) { return state.assets.lastPicked; });
|
|
80
|
+
var asset = item === null || item === void 0 ? void 0 : item.asset;
|
|
81
|
+
var error = item === null || item === void 0 ? void 0 : item.error;
|
|
82
|
+
var isOpaque = (_b = (_a = item === null || item === void 0 ? void 0 : item.asset) === null || _a === void 0 ? void 0 : _a.metadata) === null || _b === void 0 ? void 0 : _b.isOpaque;
|
|
83
|
+
var picked = item === null || item === void 0 ? void 0 : item.picked;
|
|
84
|
+
var updating = item === null || item === void 0 ? void 0 : item.updating;
|
|
85
|
+
var onSelect = AssetSourceDispatchContext_1.useAssetSourceActions().onSelect;
|
|
86
|
+
// Short circuit if no asset is available
|
|
87
|
+
if (!asset) {
|
|
88
|
+
return null;
|
|
89
|
+
}
|
|
90
|
+
// Callbacks
|
|
91
|
+
var handleAssetClick = function (e) {
|
|
92
|
+
e.stopPropagation();
|
|
93
|
+
if (currentDocument) {
|
|
94
|
+
if (onSelect) {
|
|
95
|
+
onSelect([
|
|
96
|
+
{
|
|
97
|
+
kind: 'assetDocumentId',
|
|
98
|
+
value: asset._id
|
|
99
|
+
}
|
|
100
|
+
]);
|
|
101
|
+
}
|
|
102
|
+
}
|
|
103
|
+
else {
|
|
104
|
+
if (shiftPressed.current) {
|
|
105
|
+
if (picked) {
|
|
106
|
+
dispatch(assets_1.assetsActions.pick({ assetId: asset._id, picked: !picked }));
|
|
107
|
+
}
|
|
108
|
+
else {
|
|
109
|
+
dispatch(assets_1.assetsActions.pickRange({ startId: lastPicked || asset._id, endId: asset._id }));
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
else {
|
|
113
|
+
dispatch(dialog_1.dialogActions.showAssetEdit({ assetId: asset._id }));
|
|
114
|
+
}
|
|
115
|
+
}
|
|
116
|
+
};
|
|
117
|
+
var handleContextActionClick = function (e) {
|
|
118
|
+
e.stopPropagation();
|
|
119
|
+
if (currentDocument) {
|
|
120
|
+
dispatch(dialog_1.dialogActions.showAssetEdit({ assetId: asset._id }));
|
|
121
|
+
}
|
|
122
|
+
else {
|
|
123
|
+
if (shiftPressed.current && !picked) {
|
|
124
|
+
dispatch(assets_1.assetsActions.pickRange({ startId: lastPicked || asset._id, endId: asset._id }));
|
|
125
|
+
}
|
|
126
|
+
else {
|
|
127
|
+
dispatch(assets_1.assetsActions.pick({ assetId: asset._id, picked: !picked }));
|
|
128
|
+
}
|
|
129
|
+
}
|
|
130
|
+
};
|
|
131
|
+
var opacityContainer = updating ? 0.5 : 1;
|
|
132
|
+
var opacityPreview = selected || updating ? 0.25 : 1;
|
|
133
|
+
return (react_1.default.createElement(react_1.default.Fragment, null,
|
|
134
|
+
react_1.default.createElement(CardContainer, { direction: "column", picked: picked, style: __assign({}, style), updating: item.updating },
|
|
135
|
+
react_1.default.createElement(ui_1.Box, { flex: 1, style: {
|
|
136
|
+
cursor: selected ? 'default' : 'pointer',
|
|
137
|
+
position: 'relative'
|
|
138
|
+
} },
|
|
139
|
+
react_1.default.createElement("div", { onClick: handleAssetClick, style: { height: '100%', opacity: opacityPreview } },
|
|
140
|
+
typeGuards_1.isFileAsset(asset) && react_1.default.createElement(FileIcon_1.default, { asset: asset, width: "80px" }),
|
|
141
|
+
typeGuards_1.isImageAsset(asset) && (react_1.default.createElement(Image_1.default, { showCheckerboard: !isOpaque, src: imageDprUrl_1.default(asset, { height: 250, width: 250 }), style: {
|
|
142
|
+
draggable: false,
|
|
143
|
+
transition: 'opacity 1000ms'
|
|
144
|
+
} }))),
|
|
145
|
+
selected && !updating && (react_1.default.createElement(ui_1.Flex, { align: "center", justify: "center", style: {
|
|
146
|
+
height: '100%',
|
|
147
|
+
left: 0,
|
|
148
|
+
opacity: opacityContainer,
|
|
149
|
+
position: 'absolute',
|
|
150
|
+
top: 0,
|
|
151
|
+
width: '100%'
|
|
152
|
+
} },
|
|
153
|
+
react_1.default.createElement(ui_1.Text, { size: 2 },
|
|
154
|
+
react_1.default.createElement(icons_1.CheckmarkCircleIcon, null)))),
|
|
155
|
+
updating && (react_1.default.createElement(ui_1.Flex, { align: "center", justify: "center", style: {
|
|
156
|
+
height: '100%',
|
|
157
|
+
left: 0,
|
|
158
|
+
position: 'absolute',
|
|
159
|
+
top: 0,
|
|
160
|
+
width: '100%'
|
|
161
|
+
} },
|
|
162
|
+
react_1.default.createElement(ui_1.Spinner, null)))),
|
|
163
|
+
react_1.default.createElement(ContextActionContainer, { onClick: handleContextActionClick, paddingX: 1, paddingY: 2, style: {
|
|
164
|
+
opacity: opacityContainer
|
|
165
|
+
} },
|
|
166
|
+
react_1.default.createElement(ui_1.Flex, { align: "center" },
|
|
167
|
+
currentDocument ? (react_1.default.createElement(icons_1.EditIcon, { style: {
|
|
168
|
+
flexShrink: 0,
|
|
169
|
+
opacity: 0.5
|
|
170
|
+
} })) : (react_1.default.createElement(ui_1.Checkbox, { checked: picked, readOnly: true, style: {
|
|
171
|
+
flexShrink: 0,
|
|
172
|
+
pointerEvents: 'none',
|
|
173
|
+
transform: 'scale(0.8)'
|
|
174
|
+
} })),
|
|
175
|
+
react_1.default.createElement(ui_1.Box, { marginLeft: 2 },
|
|
176
|
+
react_1.default.createElement(ui_1.Text, { muted: true, size: 0, textOverflow: "ellipsis" }, asset.originalFilename)))),
|
|
177
|
+
error && (react_1.default.createElement(ui_1.Box, { padding: 3, style: {
|
|
178
|
+
position: 'absolute',
|
|
179
|
+
right: 0,
|
|
180
|
+
top: 0
|
|
181
|
+
} },
|
|
182
|
+
react_1.default.createElement(ui_1.Tooltip, { content: react_1.default.createElement(ui_1.Container, { padding: 2, width: 0 },
|
|
183
|
+
react_1.default.createElement(ui_1.Text, { size: 1 }, error.message)), placement: "left", portal: true },
|
|
184
|
+
react_1.default.createElement(ui_1.Text, { size: 1 },
|
|
185
|
+
react_1.default.createElement(StyledWarningOutlineIcon, { color: "critical" }))))))));
|
|
186
|
+
};
|
|
187
|
+
exports.default = react_1.memo(Card);
|
|
188
|
+
var templateObject_1, templateObject_2, templateObject_3;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Card/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
14
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
15
|
+
};
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
var ui_1 = require("@sanity/ui");
|
|
18
|
+
var filesize_1 = __importDefault(require("filesize"));
|
|
19
|
+
var react_1 = __importDefault(require("react"));
|
|
20
|
+
var constants_1 = require("../../constants");
|
|
21
|
+
var Image_1 = __importDefault(require("../Image"));
|
|
22
|
+
var CardUpload = function (props) {
|
|
23
|
+
var item = props.item, style = props.style;
|
|
24
|
+
var fileSize = filesize_1.default(item.size, { base: 10, round: 0 });
|
|
25
|
+
var status;
|
|
26
|
+
/*
|
|
27
|
+
if (item.status === 'complete') {
|
|
28
|
+
status = 'Complete'
|
|
29
|
+
}
|
|
30
|
+
*/
|
|
31
|
+
if (['complete', 'uploading'].includes(item.status)) {
|
|
32
|
+
status = Math.round((item === null || item === void 0 ? void 0 : item.percent) || 0) + "%";
|
|
33
|
+
}
|
|
34
|
+
if (item.status === 'queued') {
|
|
35
|
+
status = 'Queued';
|
|
36
|
+
}
|
|
37
|
+
return (react_1.default.createElement(ui_1.Flex, { direction: "column", style: __assign(__assign({}, style), { border: '1px solid transparent' }) },
|
|
38
|
+
react_1.default.createElement(ui_1.Box, { flex: 1, style: { position: 'relative' } },
|
|
39
|
+
(item === null || item === void 0 ? void 0 : item.objectUrl) && (react_1.default.createElement(Image_1.default, { draggable: false, src: item.objectUrl, style: {
|
|
40
|
+
opacity: 0.15
|
|
41
|
+
} })),
|
|
42
|
+
react_1.default.createElement(ui_1.Flex, { align: "center", justify: "center", style: {
|
|
43
|
+
height: '100%',
|
|
44
|
+
left: 0,
|
|
45
|
+
position: 'absolute',
|
|
46
|
+
top: 0,
|
|
47
|
+
width: '100%'
|
|
48
|
+
} },
|
|
49
|
+
react_1.default.createElement(ui_1.Text, { size: 1, style: { opacity: item.status === 'queued' ? 0.25 : 1 } }, status))),
|
|
50
|
+
react_1.default.createElement(ui_1.Flex, { align: "center", paddingX: 1, style: { height: constants_1.PANEL_HEIGHT + "px" } },
|
|
51
|
+
react_1.default.createElement(ui_1.Box, null,
|
|
52
|
+
react_1.default.createElement(ui_1.Text, { size: 0, textOverflow: "ellipsis" },
|
|
53
|
+
"Uploading ",
|
|
54
|
+
item.name,
|
|
55
|
+
" (",
|
|
56
|
+
fileSize,
|
|
57
|
+
")",
|
|
58
|
+
' ')))));
|
|
59
|
+
};
|
|
60
|
+
exports.default = CardUpload;
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __assign = (this && this.__assign) || function () {
|
|
3
|
+
__assign = Object.assign || function(t) {
|
|
4
|
+
for (var s, i = 1, n = arguments.length; i < n; i++) {
|
|
5
|
+
s = arguments[i];
|
|
6
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
|
|
7
|
+
t[p] = s[p];
|
|
8
|
+
}
|
|
9
|
+
return t;
|
|
10
|
+
};
|
|
11
|
+
return __assign.apply(this, arguments);
|
|
12
|
+
};
|
|
13
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
14
|
+
if (k2 === undefined) k2 = k;
|
|
15
|
+
Object.defineProperty(o, k2, { enumerable: true, get: function() { return m[k]; } });
|
|
16
|
+
}) : (function(o, m, k, k2) {
|
|
17
|
+
if (k2 === undefined) k2 = k;
|
|
18
|
+
o[k2] = m[k];
|
|
19
|
+
}));
|
|
20
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
21
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
22
|
+
}) : function(o, v) {
|
|
23
|
+
o["default"] = v;
|
|
24
|
+
});
|
|
25
|
+
var __importStar = (this && this.__importStar) || function (mod) {
|
|
26
|
+
if (mod && mod.__esModule) return mod;
|
|
27
|
+
var result = {};
|
|
28
|
+
if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k);
|
|
29
|
+
__setModuleDefault(result, mod);
|
|
30
|
+
return result;
|
|
31
|
+
};
|
|
32
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
33
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
34
|
+
};
|
|
35
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
36
|
+
var react_1 = __importStar(require("react"));
|
|
37
|
+
var react_window_1 = require("react-window");
|
|
38
|
+
var theme_ui_1 = require("theme-ui");
|
|
39
|
+
var useTypedSelector_1 = __importDefault(require("../../hooks/useTypedSelector"));
|
|
40
|
+
var Card_1 = __importDefault(require("../Card"));
|
|
41
|
+
var innerElementType = function (props) {
|
|
42
|
+
var children = props.children, style = props.style;
|
|
43
|
+
return (react_1.default.createElement(theme_ui_1.Box, { sx: {
|
|
44
|
+
mx: 'auto',
|
|
45
|
+
position: 'relative',
|
|
46
|
+
width: style.width
|
|
47
|
+
} },
|
|
48
|
+
react_1.default.createElement("div", { style: style }, children)));
|
|
49
|
+
};
|
|
50
|
+
var VirtualCell = react_1.memo(function (props) {
|
|
51
|
+
var _a;
|
|
52
|
+
var columnIndex = props.columnIndex, data = props.data, rowIndex = props.rowIndex, style = props.style;
|
|
53
|
+
var columnCount = data.columnCount, items = data.items, selectedIds = data.selectedIds;
|
|
54
|
+
var index = columnCount * rowIndex + columnIndex;
|
|
55
|
+
var item = items[index];
|
|
56
|
+
var assetId = (_a = item === null || item === void 0 ? void 0 : item.asset) === null || _a === void 0 ? void 0 : _a._id;
|
|
57
|
+
// Add padding to virtual cells
|
|
58
|
+
var MARGIN_X = 3;
|
|
59
|
+
var MARGIN_Y = 3;
|
|
60
|
+
var cellStyle = __assign(__assign({}, style), { left: Number(style.left) + MARGIN_X, right: Number(style.left) + MARGIN_X, top: Number(style.top) + MARGIN_Y, bottom: Number(style.top) + MARGIN_Y, width: Number(style.width) - MARGIN_X * 2, height: Number(style.height) - MARGIN_Y * 2 });
|
|
61
|
+
return (react_1.default.createElement(Card_1.default, { item: item, key: "grid-" + assetId, selected: selectedIds.includes(assetId), style: cellStyle }));
|
|
62
|
+
});
|
|
63
|
+
var Cards = react_1.forwardRef(function (props, ref) {
|
|
64
|
+
var height = props.height, items = props.items, itemCount = props.itemCount, onItemsRendered = props.onItemsRendered, width = props.width;
|
|
65
|
+
// Redux
|
|
66
|
+
var selectedAssets = useTypedSelector_1.default(function (state) { return state.selectedAssets; });
|
|
67
|
+
var selectedIds = (selectedAssets && selectedAssets.map(function (asset) { return asset._id; })) || [];
|
|
68
|
+
var cardWidth = 260;
|
|
69
|
+
var cardHeight = 220;
|
|
70
|
+
var columnCount = Math.max(1, Math.floor(width / cardWidth));
|
|
71
|
+
var rowCount = Math.ceil(itemCount / columnCount);
|
|
72
|
+
return (react_1.default.createElement(react_window_1.VariableSizeGrid, { className: "media__custom-scrollbar", columnCount: columnCount, columnWidth: function () { return cardWidth; }, height: height, innerElementType: innerElementType, itemData: {
|
|
73
|
+
columnCount: columnCount,
|
|
74
|
+
items: items,
|
|
75
|
+
selectedIds: selectedIds
|
|
76
|
+
}, onItemsRendered: onItemsRendered, ref: ref, rowCount: rowCount, rowHeight: function () { return cardHeight; }, style: {
|
|
77
|
+
overflowX: 'hidden',
|
|
78
|
+
overflowY: 'scroll'
|
|
79
|
+
}, width: width }, VirtualCell));
|
|
80
|
+
});
|
|
81
|
+
exports.default = Cards;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Cards/index.tsx"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
var ui_1 = require("@sanity/ui");
|
|
7
|
+
var react_1 = __importDefault(require("react"));
|
|
8
|
+
var react_redux_1 = require("react-redux");
|
|
9
|
+
var dialog_1 = require("../../modules/dialog");
|
|
10
|
+
var useTypedSelector_1 = __importDefault(require("../../hooks/useTypedSelector"));
|
|
11
|
+
var icons_1 = require("@sanity/icons");
|
|
12
|
+
var assets_1 = require("../../modules/assets");
|
|
13
|
+
var DialogDeleteConfirm = function (props) {
|
|
14
|
+
var children = props.children, _a = props.dialog, assetId = _a.assetId, closeDialogId = _a.closeDialogId, id = _a.id;
|
|
15
|
+
// Redux
|
|
16
|
+
var dispatch = react_redux_1.useDispatch();
|
|
17
|
+
var byIds = useTypedSelector_1.default(function (state) { return state.assets.byIds; });
|
|
18
|
+
var items = Object.values(byIds);
|
|
19
|
+
var item = byIds[assetId || ''];
|
|
20
|
+
var asset = item === null || item === void 0 ? void 0 : item.asset;
|
|
21
|
+
var picked = items === null || items === void 0 ? void 0 : items.filter(function (item) { return item === null || item === void 0 ? void 0 : item.picked; });
|
|
22
|
+
// Callbacks
|
|
23
|
+
var handleClose = function () {
|
|
24
|
+
dispatch(dialog_1.dialogRemove(id));
|
|
25
|
+
};
|
|
26
|
+
var handleDelete = function () {
|
|
27
|
+
// Close target dialog, if provided
|
|
28
|
+
if (closeDialogId) {
|
|
29
|
+
dispatch(dialog_1.dialogRemove(closeDialogId));
|
|
30
|
+
}
|
|
31
|
+
if (asset) {
|
|
32
|
+
// Delete single asset
|
|
33
|
+
dispatch(assets_1.assetsDelete(asset));
|
|
34
|
+
}
|
|
35
|
+
else {
|
|
36
|
+
// Delete picked assets
|
|
37
|
+
dispatch(assets_1.assetsDeletePicked());
|
|
38
|
+
}
|
|
39
|
+
// Close self
|
|
40
|
+
handleClose();
|
|
41
|
+
};
|
|
42
|
+
var suffix = picked.length > 1 ? picked.length + " assets" : 'asset';
|
|
43
|
+
var Footer = function () { return (react_1.default.createElement(ui_1.Box, { padding: 3 },
|
|
44
|
+
react_1.default.createElement(ui_1.Flex, { justify: "space-between" },
|
|
45
|
+
react_1.default.createElement(ui_1.Button, { fontSize: 1, mode: "bleed", onClick: handleClose, text: "Cancel" }),
|
|
46
|
+
react_1.default.createElement(ui_1.Button, { fontSize: 1, onClick: handleDelete, text: "Yes, delete " + suffix, tone: "critical" })))); };
|
|
47
|
+
var Header = function () { return (react_1.default.createElement(ui_1.Flex, { align: "center" },
|
|
48
|
+
react_1.default.createElement(ui_1.Box, { paddingX: 1 },
|
|
49
|
+
react_1.default.createElement(icons_1.WarningOutlineIcon, null)),
|
|
50
|
+
react_1.default.createElement(ui_1.Box, { marginLeft: 2 }, "Confirm deletion"))); };
|
|
51
|
+
return (react_1.default.createElement(ui_1.Dialog, { footer: react_1.default.createElement(Footer, null), header: react_1.default.createElement(Header, null), id: "deleteConfirm", onClose: handleClose, scheme: "dark", width: 1 },
|
|
52
|
+
react_1.default.createElement(ui_1.Box, { paddingX: 4, paddingY: 4 },
|
|
53
|
+
react_1.default.createElement(ui_1.Stack, { space: 3 },
|
|
54
|
+
react_1.default.createElement(ui_1.Text, { size: 1 },
|
|
55
|
+
"Permanently delete ",
|
|
56
|
+
suffix,
|
|
57
|
+
"?"),
|
|
58
|
+
react_1.default.createElement(ui_1.Text, { muted: true, size: 1 },
|
|
59
|
+
react_1.default.createElement("em", null, "This operation cannot be reversed. Are you sure you want to continue?")))),
|
|
60
|
+
children));
|
|
61
|
+
};
|
|
62
|
+
exports.default = DialogDeleteConfirm;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/DialogDeleteConfirm/index.tsx"],"names":[],"mappings":"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"}
|