@appquality/unguess-design-system 3.1.90 → 3.1.91-alpha-marks
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 +14 -0
- package/build/index.js +403 -448
- package/build/stories/chat/_types.d.ts +7 -5
- package/build/stories/chat/context/chatContext.d.ts +4 -4
- package/build/stories/chat/hooks/useMedia.d.ts +8 -0
- package/build/stories/chat/index.stories.d.ts +3 -4
- package/build/stories/chat/parts/MediaLightbox.d.ts +14 -0
- package/build/stories/chat/parts/ThumbnailContainer/Thumbnail.d.ts +11 -0
- package/build/stories/chat/parts/ThumbnailContainer/index.d.ts +1 -1
- package/build/stories/chat/parts/comment.d.ts +2 -7
- package/build/stories/highlight/demo-parts/data.d.ts +6 -0
- package/build/stories/highlight/demo-parts/sentiment-tag.d.ts +7 -0
- package/build/stories/highlight/demo-parts/transcript-sentiment.d.ts +5 -0
- package/build/stories/highlight/searchable.d.ts +1 -2
- package/build/stories/player/_types.d.ts +16 -1
- package/package.json +2 -1
- package/build/stories/chat/parts/ThumbnailContainer/ImageThumbnail.d.ts +0 -11
- package/build/stories/chat/parts/ThumbnailContainer/VideoThumbnail.d.ts +0 -11
- /package/build/stories/player/{parts → context}/progressContext.d.ts +0 -0
- /package/build/stories/player/{parts/utils.d.ts → utils.d.ts} +0 -0
package/build/index.js
CHANGED
|
@@ -25,9 +25,9 @@ var sunburst = require('@nivo/sunburst');
|
|
|
25
25
|
var waffle = require('@nivo/waffle');
|
|
26
26
|
var line = require('@nivo/line');
|
|
27
27
|
var reactForms = require('@zendeskgarden/react-forms');
|
|
28
|
-
var uuid = require('uuid');
|
|
29
28
|
var react = require('@tiptap/react');
|
|
30
29
|
var reactTooltips = require('@zendeskgarden/react-tooltips');
|
|
30
|
+
var uuid = require('uuid');
|
|
31
31
|
var Typography = require('@tiptap/extension-typography');
|
|
32
32
|
var Link = require('@tiptap/extension-link');
|
|
33
33
|
var StarterKit = require('@tiptap/starter-kit');
|
|
@@ -38,10 +38,10 @@ var Mention = require('@tiptap/extension-mention');
|
|
|
38
38
|
var tippy = require('tippy.js');
|
|
39
39
|
var Image$2 = require('@tiptap/extension-image');
|
|
40
40
|
var Dropcursor = require('@tiptap/extension-dropcursor');
|
|
41
|
-
var reactGrid = require('@zendeskgarden/react-grid');
|
|
42
41
|
var reactModals = require('@zendeskgarden/react-modals');
|
|
43
42
|
var SlickSlider = require('react-slick');
|
|
44
43
|
var Video = require('@appquality/stream-player');
|
|
44
|
+
var reactGrid = require('@zendeskgarden/react-grid');
|
|
45
45
|
var containerUtilities = require('@zendeskgarden/container-utilities');
|
|
46
46
|
var reactColorpickers = require('@zendeskgarden/react-colorpickers');
|
|
47
47
|
var reactDropdowns = require('@zendeskgarden/react-dropdowns');
|
|
@@ -842,48 +842,48 @@ Tag.Avatar = StyledAvatar;
|
|
|
842
842
|
Tag.Close = StyledClose;
|
|
843
843
|
Tag.SecondaryText = StyledSpan;
|
|
844
844
|
|
|
845
|
-
var _path$
|
|
846
|
-
function _extends$
|
|
847
|
-
const SvgUgSquare = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
845
|
+
var _path$G;
|
|
846
|
+
function _extends$T() { _extends$T = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$T.apply(this, arguments); }
|
|
847
|
+
const SvgUgSquare = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$T({
|
|
848
848
|
width: 24,
|
|
849
849
|
height: 24,
|
|
850
850
|
viewBox: "0 0 24 24",
|
|
851
851
|
fill: "none",
|
|
852
852
|
xmlns: "http://www.w3.org/2000/svg"
|
|
853
|
-
}, props), _path$
|
|
853
|
+
}, props), _path$G || (_path$G = /*#__PURE__*/React__namespace.createElement("path", {
|
|
854
854
|
d: "M19 3H5C3.9 3 3 3.9 3 5V19C3 20.1 3.9 21 5 21H19C20.1 21 21 20.1 21 19V5C21 3.9 20.1 3 19 3ZM18 19H6C5.45 19 5 18.55 5 18V6C5 5.45 5.45 5 6 5H18C18.55 5 19 5.45 19 6V18C19 18.55 18.55 19 18 19Z",
|
|
855
855
|
fill: "#E80C7A"
|
|
856
856
|
})));
|
|
857
857
|
|
|
858
|
-
var _path$
|
|
859
|
-
function _extends$
|
|
860
|
-
const SvgUgCircle = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
858
|
+
var _path$F;
|
|
859
|
+
function _extends$S() { _extends$S = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$S.apply(this, arguments); }
|
|
860
|
+
const SvgUgCircle = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$S({
|
|
861
861
|
width: 24,
|
|
862
862
|
height: 24,
|
|
863
863
|
viewBox: "0 0 24 24",
|
|
864
864
|
fill: "none",
|
|
865
865
|
xmlns: "http://www.w3.org/2000/svg"
|
|
866
|
-
}, props), _path$
|
|
866
|
+
}, props), _path$F || (_path$F = /*#__PURE__*/React__namespace.createElement("path", {
|
|
867
867
|
d: "M12 2C6.47 2 2 6.47 2 12C2 17.53 6.47 22 12 22C17.53 22 22 17.53 22 12C22 6.47 17.53 2 12 2ZM12 20C7.58 20 4 16.42 4 12C4 7.58 7.58 4 12 4C16.42 4 20 7.58 20 12C20 16.42 16.42 20 12 20Z",
|
|
868
868
|
fill: "#FFCD1A"
|
|
869
869
|
})));
|
|
870
870
|
|
|
871
|
-
var _path$
|
|
872
|
-
function _extends$
|
|
873
|
-
const SvgUgTriangle = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
871
|
+
var _path$E;
|
|
872
|
+
function _extends$R() { _extends$R = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$R.apply(this, arguments); }
|
|
873
|
+
const SvgUgTriangle = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$R({
|
|
874
874
|
width: 24,
|
|
875
875
|
height: 24,
|
|
876
876
|
viewBox: "0 0 24 24",
|
|
877
877
|
fill: "none",
|
|
878
878
|
xmlns: "http://www.w3.org/2000/svg"
|
|
879
|
-
}, props), _path$
|
|
879
|
+
}, props), _path$E || (_path$E = /*#__PURE__*/React__namespace.createElement("path", {
|
|
880
880
|
d: "M11.9993 7.32625L18.3893 17.5563H5.60929L11.9993 7.32625ZM11.1493 4.91625L2.94929 18.0262C2.53929 18.6962 3.01929 19.5563 3.79929 19.5563H20.1993C20.9893 19.5563 21.4593 18.6962 21.0493 18.0262L12.8493 4.91625C12.4593 4.28625 11.5393 4.28625 11.1493 4.91625Z",
|
|
881
881
|
fill: "#7B0DFF"
|
|
882
882
|
})));
|
|
883
883
|
|
|
884
|
-
var _rect$4, _path$
|
|
885
|
-
function _extends$
|
|
886
|
-
const SvgCampaignCompleted = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
884
|
+
var _rect$4, _path$D, _path2$c, _path3$4;
|
|
885
|
+
function _extends$Q() { _extends$Q = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$Q.apply(this, arguments); }
|
|
886
|
+
const SvgCampaignCompleted = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$Q({
|
|
887
887
|
width: 24,
|
|
888
888
|
height: 24,
|
|
889
889
|
viewBox: "0 0 24 24",
|
|
@@ -894,7 +894,7 @@ const SvgCampaignCompleted = props => /*#__PURE__*/React__namespace.createElemen
|
|
|
894
894
|
height: 24,
|
|
895
895
|
rx: 12,
|
|
896
896
|
fill: "#F6F6F8"
|
|
897
|
-
})), _path$
|
|
897
|
+
})), _path$D || (_path$D = /*#__PURE__*/React__namespace.createElement("path", {
|
|
898
898
|
d: "M20.6953 5.73905C21.0148 5.41953 21.0148 4.90149 20.6953 4.58197C20.3758 4.26245 19.8577 4.26245 19.5382 4.58197L11.88 12.2402L10.0849 9.95981C9.80539 9.60476 9.29098 9.54352 8.93593 9.82303C8.58088 10.1025 8.51963 10.6169 8.79914 10.972L11.1642 13.9763C11.3089 14.16 11.5252 14.2731 11.7586 14.2869C11.9921 14.3008 12.2203 14.2141 12.3856 14.0487L20.6953 5.73905Z",
|
|
899
899
|
fill: "#50BF95"
|
|
900
900
|
})), _path2$c || (_path2$c = /*#__PURE__*/React__namespace.createElement("path", {
|
|
@@ -905,9 +905,9 @@ const SvgCampaignCompleted = props => /*#__PURE__*/React__namespace.createElemen
|
|
|
905
905
|
fill: "#007345"
|
|
906
906
|
})));
|
|
907
907
|
|
|
908
|
-
var _rect$3, _path$
|
|
909
|
-
function _extends$
|
|
910
|
-
const SvgCampaignLocked = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
908
|
+
var _rect$3, _path$C, _path2$b;
|
|
909
|
+
function _extends$P() { _extends$P = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$P.apply(this, arguments); }
|
|
910
|
+
const SvgCampaignLocked = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$P({
|
|
911
911
|
width: 24,
|
|
912
912
|
height: 24,
|
|
913
913
|
viewBox: "0 0 24 24",
|
|
@@ -918,7 +918,7 @@ const SvgCampaignLocked = props => /*#__PURE__*/React__namespace.createElement("
|
|
|
918
918
|
height: 24,
|
|
919
919
|
rx: 12,
|
|
920
920
|
fill: "#F6F6F8"
|
|
921
|
-
})), _path$
|
|
921
|
+
})), _path$C || (_path$C = /*#__PURE__*/React__namespace.createElement("path", {
|
|
922
922
|
fillRule: "evenodd",
|
|
923
923
|
clipRule: "evenodd",
|
|
924
924
|
d: "M13.55 19.0875C14.25 19.7875 15.1063 20.1375 16.1188 20.1375C17.1313 20.1375 17.9875 19.7875 18.6875 19.0875C19.3875 18.3875 19.7375 17.5312 19.7375 16.5187C19.7375 15.5062 19.3875 14.65 18.6875 13.95C17.9875 13.25 17.1313 12.9 16.1188 12.9C15.1063 12.9 14.25 13.25 13.55 13.95C12.85 14.65 12.5 15.5062 12.5 16.5187C12.5 17.5312 12.85 18.3875 13.55 19.0875ZM17.5062 18.2812C17.4187 18.2812 17.3375 18.25 17.2625 18.1875L15.7438 16.7812C15.6813 16.6687 15.65 16.6 15.65 16.575V14.55C15.65 14.4375 15.6875 14.3437 15.7625 14.2687C15.8375 14.1937 15.9313 14.1562 16.0438 14.1562C16.1563 14.1562 16.25 14.1937 16.325 14.2687C16.4 14.3437 16.4375 14.4375 16.4375 14.55V16.4813L17.7313 17.6625C17.8063 17.725 17.8469 17.8062 17.8531 17.9062C17.8594 18.0063 17.825 18.0938 17.75 18.1688C17.675 18.2438 17.5937 18.2812 17.5062 18.2812Z",
|
|
@@ -930,9 +930,9 @@ const SvgCampaignLocked = props => /*#__PURE__*/React__namespace.createElement("
|
|
|
930
930
|
fill: "#F4AC1A"
|
|
931
931
|
})));
|
|
932
932
|
|
|
933
|
-
var _rect$2, _path$
|
|
934
|
-
function _extends$
|
|
935
|
-
const SvgCampaignIncoming = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
933
|
+
var _rect$2, _path$B, _path2$a;
|
|
934
|
+
function _extends$O() { _extends$O = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$O.apply(this, arguments); }
|
|
935
|
+
const SvgCampaignIncoming = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$O({
|
|
936
936
|
width: 24,
|
|
937
937
|
height: 24,
|
|
938
938
|
viewBox: "0 0 24 24",
|
|
@@ -943,7 +943,7 @@ const SvgCampaignIncoming = props => /*#__PURE__*/React__namespace.createElement
|
|
|
943
943
|
height: 24,
|
|
944
944
|
rx: 12,
|
|
945
945
|
fill: "#F6F6F8"
|
|
946
|
-
})), _path$
|
|
946
|
+
})), _path$B || (_path$B = /*#__PURE__*/React__namespace.createElement("path", {
|
|
947
947
|
d: "M11.2266 13.0313H14.997M11.2266 9.26075V13.0313V9.26075ZM11.2266 13.0313L20.121 5.03906L11.2266 13.0313Z",
|
|
948
948
|
stroke: "#024780",
|
|
949
949
|
strokeWidth: 1.5,
|
|
@@ -957,9 +957,9 @@ const SvgCampaignIncoming = props => /*#__PURE__*/React__namespace.createElement
|
|
|
957
957
|
strokeLinejoin: "round"
|
|
958
958
|
})));
|
|
959
959
|
|
|
960
|
-
var _rect$1, _path$
|
|
961
|
-
function _extends$
|
|
962
|
-
const SvgCampaignProgress = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
960
|
+
var _rect$1, _path$A, _path2$9, _path3$3, _path4$1, _path5$1, _path6$1, _path7$1, _path8$1, _path9$1, _path10$1;
|
|
961
|
+
function _extends$N() { _extends$N = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$N.apply(this, arguments); }
|
|
962
|
+
const SvgCampaignProgress = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$N({
|
|
963
963
|
width: 24,
|
|
964
964
|
height: 24,
|
|
965
965
|
viewBox: "0 0 24 24",
|
|
@@ -970,7 +970,7 @@ const SvgCampaignProgress = props => /*#__PURE__*/React__namespace.createElement
|
|
|
970
970
|
height: 24,
|
|
971
971
|
rx: 12,
|
|
972
972
|
fill: "#F6F6F8"
|
|
973
|
-
})), _path$
|
|
973
|
+
})), _path$A || (_path$A = /*#__PURE__*/React__namespace.createElement("path", {
|
|
974
974
|
d: "M13.059 16.7647C13.059 16.1799 12.585 15.7059 12.0002 15.7059C11.4154 15.7059 10.9414 16.1799 10.9414 16.7647V19.9412C10.9414 20.5259 11.4154 21 12.0002 21C12.585 21 13.059 20.5259 13.059 19.9412V16.7647Z",
|
|
975
975
|
fill: "#D1820A"
|
|
976
976
|
})), _path2$9 || (_path2$9 = /*#__PURE__*/React__namespace.createElement("path", {
|
|
@@ -1002,9 +1002,9 @@ const SvgCampaignProgress = props => /*#__PURE__*/React__namespace.createElement
|
|
|
1002
1002
|
fill: "#FFB65A"
|
|
1003
1003
|
})));
|
|
1004
1004
|
|
|
1005
|
-
var _g$c, _path$
|
|
1006
|
-
function _extends$
|
|
1007
|
-
const SvgCampaignExperiential = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
1005
|
+
var _g$c, _path$z, _path2$8, _path3$2, _path4, _path5, _path6, _path7, _path8, _path9, _path10, _path11;
|
|
1006
|
+
function _extends$M() { _extends$M = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$M.apply(this, arguments); }
|
|
1007
|
+
const SvgCampaignExperiential = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$M({
|
|
1008
1008
|
width: 24,
|
|
1009
1009
|
height: 24,
|
|
1010
1010
|
viewBox: "0 0 24 24",
|
|
@@ -1016,7 +1016,7 @@ const SvgCampaignExperiential = props => /*#__PURE__*/React__namespace.createEle
|
|
|
1016
1016
|
opacity: 0.3,
|
|
1017
1017
|
d: "M12 24C18.6274 24 24 18.6274 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24Z",
|
|
1018
1018
|
fill: "#50BF95"
|
|
1019
|
-
}))), _path$
|
|
1019
|
+
}))), _path$z || (_path$z = /*#__PURE__*/React__namespace.createElement("path", {
|
|
1020
1020
|
d: "M12.487 3.19652C8.68003 3.19652 5.59895 6.27761 5.59895 10.0846C5.59895 10.2597 5.59895 10.4348 5.62438 10.5855C5.29857 11.1863 4.82307 12.013 4.24678 12.514C3.82117 12.8897 3.92096 13.2908 3.97085 13.4405C4.09609 13.7663 4.44635 14.0413 5.02265 14.2418C5.22322 14.3172 5.44825 14.3671 5.64883 14.417L5.67427 16.8464C5.67427 17.7984 6.47559 18.6251 7.45304 18.6251L8.93044 18.1496L9.08111 19.0263C9.18091 19.6026 9.68185 20.0282 10.2836 20.0282C10.3589 20.0282 10.4343 20.0282 10.5086 20.0028L15.1424 19.177C15.8185 19.0517 16.2441 18.4256 16.1443 17.7495L15.8185 16.1214C17.9974 14.9189 19.375 12.5892 19.375 10.0845C19.375 6.30279 16.2696 3.19641 12.4869 3.19641L12.487 3.19652Z",
|
|
1021
1021
|
fill: "#2B8473",
|
|
1022
1022
|
stroke: "#2B8473"
|
|
@@ -1072,9 +1072,9 @@ const SvgCampaignExperiential = props => /*#__PURE__*/React__namespace.createEle
|
|
|
1072
1072
|
fill: "#ECF4F2"
|
|
1073
1073
|
})));
|
|
1074
1074
|
|
|
1075
|
-
var _g$b, _path$
|
|
1076
|
-
function _extends$
|
|
1077
|
-
const SvgCampaignFunctional = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
1075
|
+
var _g$b, _path$y;
|
|
1076
|
+
function _extends$L() { _extends$L = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$L.apply(this, arguments); }
|
|
1077
|
+
const SvgCampaignFunctional = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$L({
|
|
1078
1078
|
width: 24,
|
|
1079
1079
|
height: 24,
|
|
1080
1080
|
viewBox: "0 0 24 24",
|
|
@@ -1086,7 +1086,7 @@ const SvgCampaignFunctional = props => /*#__PURE__*/React__namespace.createEleme
|
|
|
1086
1086
|
opacity: 0.3,
|
|
1087
1087
|
d: "M12 24C18.6274 24 24 18.6274 24 12C24 5.37258 18.6274 0 12 0C5.37258 0 0 5.37258 0 12C0 18.6274 5.37258 24 12 24Z",
|
|
1088
1088
|
fill: "#003A57"
|
|
1089
|
-
}))), _path$
|
|
1089
|
+
}))), _path$y || (_path$y = /*#__PURE__*/React__namespace.createElement("path", {
|
|
1090
1090
|
d: "M17.9983 7.16705C17.5188 6.58566 17.1422 6.73039 17.1422 6.73039C17.1422 6.73039 16.406 7.02453 16.0401 7.16303C15.6742 7.30153 15.2408 7.17357 15.2408 7.17357L14.7579 6.8851C14.7579 6.8851 14.4296 6.56554 14.3656 6.18067C14.3123 5.78958 14.1888 5.00269 14.1888 5.00269C14.1888 5.00269 14.1356 4.61159 13.3938 4.47257C12.652 4.33356 12.4678 4.68715 12.4678 4.68715C12.4678 4.68715 12.0932 5.38344 11.9091 5.73703C11.7249 6.09062 11.3114 6.27118 11.3114 6.27118L10.7639 6.36908C10.7639 6.36908 10.3144 6.33771 10.0176 6.07271L9.12712 5.27769C9.12712 5.27769 8.8303 5.01268 8.18313 5.38632C7.53595 5.75997 7.61705 6.14953 7.61705 6.14953L7.86033 7.3182C7.94143 7.70776 7.74381 8.11275 7.74381 8.11275L7.38528 8.53794C7.38528 8.53794 7.02217 8.80577 6.62387 8.78845C6.22557 8.77114 5.43527 8.7474 5.43527 8.7474C5.43527 8.7474 5.03697 8.73009 4.78646 9.44201C4.53595 10.1539 4.84804 10.3956 4.84804 10.3956C4.84804 10.3956 5.46774 10.896 5.77983 11.1376C6.09192 11.3793 6.19373 11.8296 6.19373 11.8296L6.20207 12.3921C6.20207 12.3921 6.09618 12.8314 5.79331 13.079C5.49043 13.3266 4.86759 13.8171 4.86759 13.8171C4.86759 13.8171 4.56471 14.0647 4.81769 14.7769C5.08144 15.4828 5.46713 15.4783 5.46713 15.4783C5.46713 15.4783 6.26012 15.4569 6.64582 15.4524C7.03152 15.4479 7.40116 15.7145 7.40116 15.7145L7.76458 16.1447C7.76458 16.1447 7.96976 16.5499 7.89441 16.9425C7.81907 17.3351 7.66208 18.1094 7.66208 18.1094C7.66208 18.1094 7.58674 18.502 8.23785 18.8824C8.88895 19.2629 9.18553 19.0044 9.18553 19.0044C9.18553 19.0044 9.7724 18.4765 10.069 18.218C10.3655 17.9595 10.8115 17.9347 10.8115 17.9347L11.3609 18.0394C11.3609 18.0394 11.77 18.225 11.9608 18.5803C12.1516 18.9356 12.5268 19.6354 12.5268 19.6354C12.5268 19.6354 12.7176 19.9907 13.4583 19.8539C14.1946 19.7343 14.2529 19.337 14.2529 19.337C14.2529 19.337 14.3586 18.5487 14.4232 18.1623C14.4814 17.765 14.8086 17.4598 14.8086 17.4598L15.2939 17.1796C15.2939 17.1796 15.7281 17.0598 16.095 17.1971C16.4682 17.3453 17.1975 17.637 17.1975 17.637C17.1975 17.637 17.5707 17.7851 18.0424 17.2073C18.5142 16.6295 18.3189 16.2913 18.3189 16.2913C18.3189 16.2913 17.9006 15.6164 17.6882 15.2736C17.4759 14.9307 17.5197 14.4836 17.5197 14.4836L17.7038 13.9555C17.7038 13.9555 17.9482 13.5816 18.3203 13.454C18.6925 13.3264 19.4431 13.0822 19.4431 13.0822C19.4431 13.0822 19.8153 12.9546 19.8113 12.2005C19.8074 11.4464 19.4297 11.3153 19.4297 11.3153C19.4297 11.3153 18.6807 11.0641 18.303 10.9331C17.9253 10.802 17.677 10.4217 17.677 10.4217L17.4861 9.8919C17.4861 9.8919 17.4293 9.4447 17.6368 9.1067C17.8443 8.7687 18.2486 8.09891 18.2486 8.09891C18.2486 8.09891 18.4778 7.74844 17.9983 7.16707L17.9983 7.16705ZM9.33902 8.38466L10.6176 10.5992C10.0433 11.149 9.82793 11.9715 10.0567 12.7413L7.86713 14.0054C6.98868 12.0106 7.60355 9.66286 9.33905 8.38457L9.33902 8.38466ZM13.9748 16.414C11.9998 17.2778 9.65918 16.6363 8.37099 14.8783L10.5605 13.6141C11.1128 14.1971 11.9329 14.4219 12.6961 14.1994L13.9748 16.414ZM12.6552 13.132C12.1159 13.4434 11.4325 13.2561 11.1176 12.7107C10.8027 12.1652 10.9822 11.4797 11.5215 11.1684C12.0608 10.857 12.7441 11.0443 13.0591 11.5897C13.374 12.1352 13.1945 12.8207 12.6552 13.132ZM14.8376 15.9158L13.5591 13.7012C14.1333 13.1515 14.3487 12.3289 14.12 11.5591L16.3095 10.295C17.188 12.2898 16.5731 14.6376 14.8376 15.9159L14.8376 15.9158ZM13.6161 10.6863C13.0638 10.1034 12.2437 9.87862 11.4805 10.1011L10.2019 7.88652C12.1769 7.02266 14.5112 7.65314 15.8057 9.42223L13.6161 10.6863Z",
|
|
1091
1091
|
fill: "#003A57"
|
|
1092
1092
|
})));
|
|
@@ -1948,8 +1948,8 @@ const WaffleChart = ({ height, width, data, total, tooltip, }) => {
|
|
|
1948
1948
|
};
|
|
1949
1949
|
|
|
1950
1950
|
var _g$a, _defs$4;
|
|
1951
|
-
function _extends$
|
|
1952
|
-
const SvgSentiment1 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
1951
|
+
function _extends$K() { _extends$K = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$K.apply(this, arguments); }
|
|
1952
|
+
const SvgSentiment1 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$K({
|
|
1953
1953
|
width: 27,
|
|
1954
1954
|
height: 26,
|
|
1955
1955
|
viewBox: "0 0 27 26",
|
|
@@ -1972,8 +1972,8 @@ const SvgSentiment1 = props => /*#__PURE__*/React__namespace.createElement("svg"
|
|
|
1972
1972
|
})))));
|
|
1973
1973
|
|
|
1974
1974
|
var _g$9, _defs$3;
|
|
1975
|
-
function _extends$
|
|
1976
|
-
const SvgSentiment2 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
1975
|
+
function _extends$J() { _extends$J = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$J.apply(this, arguments); }
|
|
1976
|
+
const SvgSentiment2 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$J({
|
|
1977
1977
|
width: 27,
|
|
1978
1978
|
height: 26,
|
|
1979
1979
|
viewBox: "0 0 27 26",
|
|
@@ -1996,8 +1996,8 @@ const SvgSentiment2 = props => /*#__PURE__*/React__namespace.createElement("svg"
|
|
|
1996
1996
|
})))));
|
|
1997
1997
|
|
|
1998
1998
|
var _g$8, _defs$2;
|
|
1999
|
-
function _extends$
|
|
2000
|
-
const SvgSentiment3 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
1999
|
+
function _extends$I() { _extends$I = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$I.apply(this, arguments); }
|
|
2000
|
+
const SvgSentiment3 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$I({
|
|
2001
2001
|
width: 27,
|
|
2002
2002
|
height: 26,
|
|
2003
2003
|
viewBox: "0 0 27 26",
|
|
@@ -2026,8 +2026,8 @@ const SvgSentiment3 = props => /*#__PURE__*/React__namespace.createElement("svg"
|
|
|
2026
2026
|
})))));
|
|
2027
2027
|
|
|
2028
2028
|
var _g$7, _defs$1;
|
|
2029
|
-
function _extends$
|
|
2030
|
-
const SvgSentiment4 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2029
|
+
function _extends$H() { _extends$H = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$H.apply(this, arguments); }
|
|
2030
|
+
const SvgSentiment4 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$H({
|
|
2031
2031
|
width: 27,
|
|
2032
2032
|
height: 26,
|
|
2033
2033
|
viewBox: "0 0 27 26",
|
|
@@ -2056,8 +2056,8 @@ const SvgSentiment4 = props => /*#__PURE__*/React__namespace.createElement("svg"
|
|
|
2056
2056
|
})))));
|
|
2057
2057
|
|
|
2058
2058
|
var _g$6, _defs;
|
|
2059
|
-
function _extends$
|
|
2060
|
-
const SvgSentiment5 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2059
|
+
function _extends$G() { _extends$G = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$G.apply(this, arguments); }
|
|
2060
|
+
const SvgSentiment5 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$G({
|
|
2061
2061
|
width: 26,
|
|
2062
2062
|
height: 26,
|
|
2063
2063
|
viewBox: "0 0 26 26",
|
|
@@ -2339,7 +2339,7 @@ const ChatContextProvider = ({ onSave, onFileUpload, onDeleteThumbnail, setMenti
|
|
|
2339
2339
|
setThumbnails,
|
|
2340
2340
|
afterUploadCallback: (failed) => {
|
|
2341
2341
|
setThumbnails(thumbnails.map((file) => {
|
|
2342
|
-
if (failed.includes(file.
|
|
2342
|
+
if (failed.includes(file.id)) {
|
|
2343
2343
|
file.isLoadingMedia = false;
|
|
2344
2344
|
//file.isError = true;
|
|
2345
2345
|
}
|
|
@@ -2351,7 +2351,6 @@ const ChatContextProvider = ({ onSave, onFileUpload, onDeleteThumbnail, setMenti
|
|
|
2351
2351
|
}));
|
|
2352
2352
|
},
|
|
2353
2353
|
addThumbnails: ({ files }) => {
|
|
2354
|
-
files.forEach((file) => (file.isLoadingMedia = true));
|
|
2355
2354
|
setThumbnails((prev) => [...prev, ...files]);
|
|
2356
2355
|
if (onFileUpload) {
|
|
2357
2356
|
onFileUpload(files).then((data) => {
|
|
@@ -2360,7 +2359,7 @@ const ChatContextProvider = ({ onSave, onFileUpload, onDeleteThumbnail, setMenti
|
|
|
2360
2359
|
setThumbnails((prev) => {
|
|
2361
2360
|
return prev.map((file) => {
|
|
2362
2361
|
file.isLoadingMedia = false;
|
|
2363
|
-
if ((failed === null || failed === void 0 ? void 0 : failed.length) && failed.includes(file.
|
|
2362
|
+
if ((failed === null || failed === void 0 ? void 0 : failed.length) && failed.includes(file.id)) {
|
|
2364
2363
|
file.isError = true;
|
|
2365
2364
|
}
|
|
2366
2365
|
else {
|
|
@@ -2737,96 +2736,28 @@ const ChatTitle = styled__default["default"](Title$1) `
|
|
|
2737
2736
|
padding: ${({ theme }) => `${theme.space.sm} ${theme.space.md}`};
|
|
2738
2737
|
`;
|
|
2739
2738
|
|
|
2740
|
-
|
|
2741
|
-
|
|
2742
|
-
|
|
2743
|
-
justify-content: center;
|
|
2744
|
-
width: ${({ theme }) => theme.space.xl};
|
|
2745
|
-
height: ${({ theme }) => theme.space.xl};
|
|
2746
|
-
`;
|
|
2747
|
-
/**
|
|
2748
|
-
* Title is a basic component used to display a title. Often used in card headers.
|
|
2749
|
-
*/
|
|
2750
|
-
const Close = (props) => jsxRuntime.jsx(UgClose$1, Object.assign({}, props));
|
|
2751
|
-
|
|
2752
|
-
const NOTIFICATION_COMPONENT_ID = "notifications.notification";
|
|
2753
|
-
const CLOSE_COMPONENT_ID = "notifications.notification.close";
|
|
2754
|
-
const CLOSE_ICON_COMPONENT_ID = "notifications.notification.close-icon";
|
|
2755
|
-
const TITLE_COMPONENT_ID = "notifications.notification.title";
|
|
2756
|
-
const UgClose = styled__default["default"](Close).attrs((props) => {
|
|
2757
|
-
var _a;
|
|
2758
|
-
return ({
|
|
2759
|
-
"data-custom-id": (_a = props["data-custom-id"]) !== null && _a !== void 0 ? _a : CLOSE_ICON_COMPONENT_ID,
|
|
2760
|
-
});
|
|
2761
|
-
}) `
|
|
2762
|
-
${(props) => reactTheming.retrieveComponentStyles(CLOSE_ICON_COMPONENT_ID, props)};
|
|
2763
|
-
`;
|
|
2764
|
-
const UgAnchor = styled__default["default"](reactButtons.Anchor).attrs((props) => {
|
|
2765
|
-
var _a;
|
|
2766
|
-
return ({
|
|
2767
|
-
"data-custom-id": (_a = props["data-custom-id"]) !== null && _a !== void 0 ? _a : CLOSE_COMPONENT_ID,
|
|
2768
|
-
});
|
|
2769
|
-
}) `
|
|
2770
|
-
${(props) => reactTheming.retrieveComponentStyles(CLOSE_COMPONENT_ID, props)};
|
|
2771
|
-
`;
|
|
2772
|
-
const UgTitle = styled__default["default"](Title$1).attrs((props) => {
|
|
2773
|
-
var _a;
|
|
2774
|
-
return ({
|
|
2775
|
-
"data-custom-id": (_a = props["data-custom-id"]) !== null && _a !== void 0 ? _a : TITLE_COMPONENT_ID,
|
|
2776
|
-
});
|
|
2777
|
-
}) `
|
|
2778
|
-
${(props) => reactTheming.retrieveComponentStyles(TITLE_COMPONENT_ID, props)};
|
|
2779
|
-
`;
|
|
2780
|
-
const UgNotification = styled__default["default"](reactNotifications.Notification) `
|
|
2781
|
-
display: flex;
|
|
2782
|
-
align-items: center;
|
|
2783
|
-
justify-content: space-between;
|
|
2784
|
-
padding-right: ${({ theme }) => theme.space.md};
|
|
2785
|
-
white-space: pre;
|
|
2786
|
-
|
|
2787
|
-
${UgAnchor} {
|
|
2788
|
-
flex-shrink: 0;
|
|
2789
|
-
margin-left: ${({ theme }) => theme.space.md};
|
|
2790
|
-
}
|
|
2791
|
-
|
|
2792
|
-
${(props) => reactTheming.retrieveComponentStyles(NOTIFICATION_COMPONENT_ID, props)};
|
|
2793
|
-
`;
|
|
2794
|
-
/**
|
|
2795
|
-
* A Notification is a passive status update that keeps users informed of system progress.
|
|
2796
|
-
* <hr>
|
|
2797
|
-
* Used for this:
|
|
2798
|
-
- For a passive status update about user or system activity
|
|
2799
|
-
*/
|
|
2800
|
-
const Notification = (_a) => {
|
|
2801
|
-
var { closeText, message, onClose, type, isPrimary, isRegular } = _a, props = __rest(_a, ["closeText", "message", "onClose", "type", "isPrimary", "isRegular"]);
|
|
2802
|
-
return (jsxRuntime.jsxs(UgNotification, Object.assign({ type: type, isPrimary: isPrimary }, props, { children: [jsxRuntime.jsx(UgTitle, Object.assign({ isRegular: isRegular, type: type, isPrimary: isPrimary }, { children: message })), jsxRuntime.jsx(UgAnchor, Object.assign({ type: type, isPrimary: isPrimary, onClick: onClose }, { children: closeText !== null && closeText !== void 0 ? closeText : jsxRuntime.jsx(UgClose, {}) }))] })));
|
|
2803
|
-
};
|
|
2804
|
-
// ToastProvider
|
|
2805
|
-
const ToastProvider = (props) => (jsxRuntime.jsx(reactNotifications.ToastProvider, Object.assign({}, props)));
|
|
2806
|
-
const useToast = reactNotifications.useToast;
|
|
2807
|
-
|
|
2808
|
-
var _path$w;
|
|
2809
|
-
function _extends$E() { _extends$E = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$E.apply(this, arguments); }
|
|
2810
|
-
const SvgBoldFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$E({
|
|
2739
|
+
var _path$x;
|
|
2740
|
+
function _extends$F() { _extends$F = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$F.apply(this, arguments); }
|
|
2741
|
+
const SvgBoldFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$F({
|
|
2811
2742
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2812
2743
|
width: 16,
|
|
2813
2744
|
height: 16,
|
|
2814
2745
|
focusable: "false",
|
|
2815
2746
|
viewBox: "0 0 16 16"
|
|
2816
|
-
}, props), _path$
|
|
2747
|
+
}, props), _path$x || (_path$x = /*#__PURE__*/React__namespace.createElement("path", {
|
|
2817
2748
|
fill: "currentColor",
|
|
2818
2749
|
d: "M7.5 0C9.952 0 12 2.048 12 4.5a4.483 4.483 0 01-1.27 3.108C12.078 8.39 13 9.855 13 11.5c0 2.452-2.048 4.5-4.5 4.5H4a1 1 0 01-1-1V1a1 1 0 011-1h3.5zM5 14h3.5c1.348 0 2.5-1.152 2.5-2.5S9.848 9 8.5 9H5v5zM7.5 2H5v5h2.5C8.848 7 10 5.848 10 4.5S8.848 2 7.5 2z"
|
|
2819
2750
|
})));
|
|
2820
2751
|
|
|
2821
|
-
var _path$
|
|
2822
|
-
function _extends$
|
|
2823
|
-
const SvgItalicFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2752
|
+
var _path$w;
|
|
2753
|
+
function _extends$E() { _extends$E = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$E.apply(this, arguments); }
|
|
2754
|
+
const SvgItalicFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$E({
|
|
2824
2755
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2825
2756
|
width: 16,
|
|
2826
2757
|
height: 16,
|
|
2827
2758
|
focusable: "false",
|
|
2828
2759
|
viewBox: "0 0 16 16"
|
|
2829
|
-
}, props), _path$
|
|
2760
|
+
}, props), _path$w || (_path$w = /*#__PURE__*/React__namespace.createElement("path", {
|
|
2830
2761
|
fill: "none",
|
|
2831
2762
|
stroke: "currentColor",
|
|
2832
2763
|
strokeLinecap: "round",
|
|
@@ -2834,15 +2765,15 @@ const SvgItalicFill = props => /*#__PURE__*/React__namespace.createElement("svg"
|
|
|
2834
2765
|
d: "M8 1h3M9.5 1l-3 14M5 15h3"
|
|
2835
2766
|
})));
|
|
2836
2767
|
|
|
2837
|
-
var _path$
|
|
2838
|
-
function _extends$
|
|
2839
|
-
const SvgQuoteFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2768
|
+
var _path$v, _path2$7;
|
|
2769
|
+
function _extends$D() { _extends$D = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$D.apply(this, arguments); }
|
|
2770
|
+
const SvgQuoteFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$D({
|
|
2840
2771
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2841
2772
|
width: 16,
|
|
2842
2773
|
height: 16,
|
|
2843
2774
|
focusable: "false",
|
|
2844
2775
|
viewBox: "0 0 16 16"
|
|
2845
|
-
}, props), _path$
|
|
2776
|
+
}, props), _path$v || (_path$v = /*#__PURE__*/React__namespace.createElement("path", {
|
|
2846
2777
|
fill: "currentColor",
|
|
2847
2778
|
d: "M7 8H4c-.55 0-1-.45-1-1V4c0-.55.45-1 1-1h3c.55 0 1 .45 1 1v3c0 .55-.45 1-1 1zm6 0h-3c-.55 0-1-.45-1-1V4c0-.55.45-1 1-1h3c.55 0 1 .45 1 1v3c0 .55-.45 1-1 1z"
|
|
2848
2779
|
})), _path2$7 || (_path2$7 = /*#__PURE__*/React__namespace.createElement("path", {
|
|
@@ -2854,8 +2785,8 @@ const SvgQuoteFill = props => /*#__PURE__*/React__namespace.createElement("svg",
|
|
|
2854
2785
|
})));
|
|
2855
2786
|
|
|
2856
2787
|
var _g$5;
|
|
2857
|
-
function _extends$
|
|
2858
|
-
const SvgH1Fill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2788
|
+
function _extends$C() { _extends$C = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$C.apply(this, arguments); }
|
|
2789
|
+
const SvgH1Fill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$C({
|
|
2859
2790
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2860
2791
|
width: 16,
|
|
2861
2792
|
height: 16,
|
|
@@ -2882,8 +2813,8 @@ const SvgH1Fill = props => /*#__PURE__*/React__namespace.createElement("svg", _e
|
|
|
2882
2813
|
}))));
|
|
2883
2814
|
|
|
2884
2815
|
var _g$4;
|
|
2885
|
-
function _extends$
|
|
2886
|
-
const SvgH2Fill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2816
|
+
function _extends$B() { _extends$B = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$B.apply(this, arguments); }
|
|
2817
|
+
const SvgH2Fill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$B({
|
|
2887
2818
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2888
2819
|
width: 16,
|
|
2889
2820
|
height: 16,
|
|
@@ -2910,8 +2841,8 @@ const SvgH2Fill = props => /*#__PURE__*/React__namespace.createElement("svg", _e
|
|
|
2910
2841
|
}))));
|
|
2911
2842
|
|
|
2912
2843
|
var _g$3;
|
|
2913
|
-
function _extends$
|
|
2914
|
-
const SvgH3Fill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2844
|
+
function _extends$A() { _extends$A = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$A.apply(this, arguments); }
|
|
2845
|
+
const SvgH3Fill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$A({
|
|
2915
2846
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2916
2847
|
width: 16,
|
|
2917
2848
|
height: 16,
|
|
@@ -2991,64 +2922,156 @@ const Tooltip = styled__default["default"](TooltipComponent) `
|
|
|
2991
2922
|
`};
|
|
2992
2923
|
`;
|
|
2993
2924
|
|
|
2994
|
-
var _path$
|
|
2995
|
-
function _extends$
|
|
2996
|
-
const SvgBoldStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2925
|
+
var _path$u;
|
|
2926
|
+
function _extends$z() { _extends$z = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$z.apply(this, arguments); }
|
|
2927
|
+
const SvgBoldStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$z({
|
|
2997
2928
|
xmlns: "http://www.w3.org/2000/svg",
|
|
2998
2929
|
width: 16,
|
|
2999
2930
|
height: 16,
|
|
3000
2931
|
focusable: "false",
|
|
3001
2932
|
viewBox: "0 0 16 16"
|
|
3002
|
-
}, props), _path$
|
|
2933
|
+
}, props), _path$u || (_path$u = /*#__PURE__*/React__namespace.createElement("path", {
|
|
3003
2934
|
fill: "currentColor",
|
|
3004
2935
|
d: "M7 1c2.176 0 4 1.824 4 4 0 1.315-.666 2.501-1.673 3.234C10.869 8.792 12 10.287 12 12c0 2.176-1.824 4-4 4H3.5a.5.5 0 01-.5-.5v-14a.5.5 0 01.5-.5H7zM4 15h4c1.624 0 3-1.376 3-3S9.624 9 8 9H4v6zM7 2H4v6h3c1.624 0 3-1.376 3-3S8.624 2 7 2z"
|
|
3005
2936
|
})));
|
|
3006
2937
|
|
|
3007
|
-
var _path$
|
|
3008
|
-
function _extends$
|
|
3009
|
-
const SvgItalicStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2938
|
+
var _path$t;
|
|
2939
|
+
function _extends$y() { _extends$y = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$y.apply(this, arguments); }
|
|
2940
|
+
const SvgItalicStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$y({
|
|
3010
2941
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3011
2942
|
width: 16,
|
|
3012
2943
|
height: 16,
|
|
3013
2944
|
focusable: "false",
|
|
3014
2945
|
viewBox: "0 0 16 16"
|
|
3015
|
-
}, props), _path$
|
|
2946
|
+
}, props), _path$t || (_path$t = /*#__PURE__*/React__namespace.createElement("path", {
|
|
3016
2947
|
fill: "none",
|
|
3017
2948
|
stroke: "currentColor",
|
|
3018
2949
|
strokeLinecap: "round",
|
|
3019
2950
|
d: "M7.5 1.5h3M9 1.5l-3 14m-1.5 0h3"
|
|
3020
2951
|
})));
|
|
3021
2952
|
|
|
3022
|
-
var _path$
|
|
3023
|
-
function _extends$
|
|
3024
|
-
const SvgAtStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2953
|
+
var _path$s;
|
|
2954
|
+
function _extends$x() { _extends$x = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$x.apply(this, arguments); }
|
|
2955
|
+
const SvgAtStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$x({
|
|
3025
2956
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3026
2957
|
width: 16,
|
|
3027
2958
|
height: 16,
|
|
3028
2959
|
focusable: "false",
|
|
3029
2960
|
role: "presentation"
|
|
3030
|
-
}, props), _path$
|
|
2961
|
+
}, props), _path$s || (_path$s = /*#__PURE__*/React__namespace.createElement("path", {
|
|
3031
2962
|
fill: "none",
|
|
3032
2963
|
stroke: "currentColor",
|
|
3033
2964
|
strokeLinecap: "round",
|
|
3034
2965
|
d: "M11.5 4.5V8h0A3.5 3.5 0 018 11.5h0A3.5 3.5 0 014.5 8h0A3.5 3.5 0 018 4.5h0A3.5 3.5 0 0111.5 8h0v1.5a2 2 0 002 2h0a2 2 0 002-2V8h0A7.5 7.5 0 008 .5h0A7.5 7.5 0 00.5 8h0A7.5 7.5 0 008 15.5h3.41"
|
|
3035
2966
|
})));
|
|
3036
2967
|
|
|
3037
|
-
var _path$
|
|
3038
|
-
function _extends$
|
|
3039
|
-
const SvgClipboard = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
2968
|
+
var _path$r;
|
|
2969
|
+
function _extends$w() { _extends$w = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$w.apply(this, arguments); }
|
|
2970
|
+
const SvgClipboard = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$w({
|
|
3040
2971
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3041
2972
|
width: 16,
|
|
3042
2973
|
height: 16,
|
|
3043
2974
|
focusable: "false",
|
|
3044
2975
|
role: "presentation"
|
|
3045
|
-
}, props), _path$
|
|
2976
|
+
}, props), _path$r || (_path$r = /*#__PURE__*/React__namespace.createElement("path", {
|
|
3046
2977
|
fill: "none",
|
|
3047
2978
|
stroke: "currentColor",
|
|
3048
2979
|
strokeLinecap: "round",
|
|
3049
2980
|
d: "M9.5 4v7.7c0 .8-.7 1.5-1.5 1.5s-1.5-.7-1.5-1.5V3C6.5 1.6 7.6.5 9 .5s2.5 1.1 2.5 2.5v9c0 1.9-1.6 3.5-3.5 3.5S4.5 13.9 4.5 12V4"
|
|
3050
2981
|
})));
|
|
3051
2982
|
|
|
2983
|
+
const UgClose$1 = styled__default["default"](reactNotifications.Close) `
|
|
2984
|
+
display: flex;
|
|
2985
|
+
align-items: center;
|
|
2986
|
+
justify-content: center;
|
|
2987
|
+
width: ${({ theme }) => theme.space.xl};
|
|
2988
|
+
height: ${({ theme }) => theme.space.xl};
|
|
2989
|
+
`;
|
|
2990
|
+
/**
|
|
2991
|
+
* Title is a basic component used to display a title. Often used in card headers.
|
|
2992
|
+
*/
|
|
2993
|
+
const Close = (props) => jsxRuntime.jsx(UgClose$1, Object.assign({}, props));
|
|
2994
|
+
|
|
2995
|
+
const NOTIFICATION_COMPONENT_ID = "notifications.notification";
|
|
2996
|
+
const CLOSE_COMPONENT_ID = "notifications.notification.close";
|
|
2997
|
+
const CLOSE_ICON_COMPONENT_ID = "notifications.notification.close-icon";
|
|
2998
|
+
const TITLE_COMPONENT_ID = "notifications.notification.title";
|
|
2999
|
+
const UgClose = styled__default["default"](Close).attrs((props) => {
|
|
3000
|
+
var _a;
|
|
3001
|
+
return ({
|
|
3002
|
+
"data-custom-id": (_a = props["data-custom-id"]) !== null && _a !== void 0 ? _a : CLOSE_ICON_COMPONENT_ID,
|
|
3003
|
+
});
|
|
3004
|
+
}) `
|
|
3005
|
+
${(props) => reactTheming.retrieveComponentStyles(CLOSE_ICON_COMPONENT_ID, props)};
|
|
3006
|
+
`;
|
|
3007
|
+
const UgAnchor = styled__default["default"](reactButtons.Anchor).attrs((props) => {
|
|
3008
|
+
var _a;
|
|
3009
|
+
return ({
|
|
3010
|
+
"data-custom-id": (_a = props["data-custom-id"]) !== null && _a !== void 0 ? _a : CLOSE_COMPONENT_ID,
|
|
3011
|
+
});
|
|
3012
|
+
}) `
|
|
3013
|
+
${(props) => reactTheming.retrieveComponentStyles(CLOSE_COMPONENT_ID, props)};
|
|
3014
|
+
`;
|
|
3015
|
+
const UgTitle = styled__default["default"](Title$1).attrs((props) => {
|
|
3016
|
+
var _a;
|
|
3017
|
+
return ({
|
|
3018
|
+
"data-custom-id": (_a = props["data-custom-id"]) !== null && _a !== void 0 ? _a : TITLE_COMPONENT_ID,
|
|
3019
|
+
});
|
|
3020
|
+
}) `
|
|
3021
|
+
${(props) => reactTheming.retrieveComponentStyles(TITLE_COMPONENT_ID, props)};
|
|
3022
|
+
`;
|
|
3023
|
+
const UgNotification = styled__default["default"](reactNotifications.Notification) `
|
|
3024
|
+
display: flex;
|
|
3025
|
+
align-items: center;
|
|
3026
|
+
justify-content: space-between;
|
|
3027
|
+
padding-right: ${({ theme }) => theme.space.md};
|
|
3028
|
+
white-space: pre;
|
|
3029
|
+
|
|
3030
|
+
${UgAnchor} {
|
|
3031
|
+
flex-shrink: 0;
|
|
3032
|
+
margin-left: ${({ theme }) => theme.space.md};
|
|
3033
|
+
}
|
|
3034
|
+
|
|
3035
|
+
${(props) => reactTheming.retrieveComponentStyles(NOTIFICATION_COMPONENT_ID, props)};
|
|
3036
|
+
`;
|
|
3037
|
+
/**
|
|
3038
|
+
* A Notification is a passive status update that keeps users informed of system progress.
|
|
3039
|
+
* <hr>
|
|
3040
|
+
* Used for this:
|
|
3041
|
+
- For a passive status update about user or system activity
|
|
3042
|
+
*/
|
|
3043
|
+
const Notification = (_a) => {
|
|
3044
|
+
var { closeText, message, onClose, type, isPrimary, isRegular } = _a, props = __rest(_a, ["closeText", "message", "onClose", "type", "isPrimary", "isRegular"]);
|
|
3045
|
+
return (jsxRuntime.jsxs(UgNotification, Object.assign({ type: type, isPrimary: isPrimary }, props, { children: [jsxRuntime.jsx(UgTitle, Object.assign({ isRegular: isRegular, type: type, isPrimary: isPrimary }, { children: message })), jsxRuntime.jsx(UgAnchor, Object.assign({ type: type, isPrimary: isPrimary, onClick: onClose }, { children: closeText !== null && closeText !== void 0 ? closeText : jsxRuntime.jsx(UgClose, {}) }))] })));
|
|
3046
|
+
};
|
|
3047
|
+
// ToastProvider
|
|
3048
|
+
const ToastProvider = (props) => (jsxRuntime.jsx(reactNotifications.ToastProvider, Object.assign({}, props)));
|
|
3049
|
+
const useToast = reactNotifications.useToast;
|
|
3050
|
+
|
|
3051
|
+
const acceptedMediaTypes = /^(image|video)\//;
|
|
3052
|
+
function useMedia() {
|
|
3053
|
+
const { addToast } = useToast();
|
|
3054
|
+
function getValidMedia(data) {
|
|
3055
|
+
const wrongFiles = Array.from(data).filter((file) => !acceptedMediaTypes.test(file.type));
|
|
3056
|
+
if (wrongFiles.length) {
|
|
3057
|
+
addToast(({ close }) => (jsxRuntime.jsx(Notification, { onClose: close, type: "error", message: wrongFiles.length === 1
|
|
3058
|
+
? `${wrongFiles[0].name} not supported, please upload video or image only`
|
|
3059
|
+
: "Some attachments are not supported, please upload video or image only", isPrimary: true })), { placement: "top" });
|
|
3060
|
+
}
|
|
3061
|
+
return Array.from(data).filter((file) => acceptedMediaTypes.test(file.type));
|
|
3062
|
+
}
|
|
3063
|
+
function getMedia(data) {
|
|
3064
|
+
return getValidMedia(data).map((file) => {
|
|
3065
|
+
return Object.assign(file, {
|
|
3066
|
+
url: URL.createObjectURL(file),
|
|
3067
|
+
isLoadingMedia: true,
|
|
3068
|
+
id: uuid.v4(),
|
|
3069
|
+
});
|
|
3070
|
+
});
|
|
3071
|
+
}
|
|
3072
|
+
return { getMedia };
|
|
3073
|
+
}
|
|
3074
|
+
|
|
3052
3075
|
const MenuContainer = styled__default["default"].div `
|
|
3053
3076
|
padding: ${({ theme }) => theme.space.xs} 0;
|
|
3054
3077
|
display: flex;
|
|
@@ -3066,59 +3089,33 @@ const VerticalDivider = styled__default["default"].div `
|
|
|
3066
3089
|
const CommentBar = ({ editor, i18n, }) => {
|
|
3067
3090
|
var _a, _b, _c, _d, _e, _f, _g, _h;
|
|
3068
3091
|
const { addThumbnails } = useChatContext();
|
|
3092
|
+
const { getMedia } = useMedia();
|
|
3069
3093
|
if (!editor)
|
|
3070
3094
|
return null;
|
|
3071
|
-
const
|
|
3072
|
-
|
|
3073
|
-
case "bold":
|
|
3074
|
-
return jsxRuntime.jsx(SvgBoldStroke, {});
|
|
3075
|
-
case "italic":
|
|
3076
|
-
return jsxRuntime.jsx(SvgItalicStroke, {});
|
|
3077
|
-
case "mention":
|
|
3078
|
-
return jsxRuntime.jsx(SvgAtStroke, {});
|
|
3079
|
-
case "attachment":
|
|
3080
|
-
return jsxRuntime.jsx(SvgClipboard, {});
|
|
3081
|
-
default:
|
|
3082
|
-
return null;
|
|
3083
|
-
}
|
|
3095
|
+
const handleBoldClick = () => {
|
|
3096
|
+
editor.chain().focus().toggleBold().run();
|
|
3084
3097
|
};
|
|
3085
|
-
const
|
|
3086
|
-
|
|
3087
|
-
|
|
3088
|
-
|
|
3089
|
-
|
|
3090
|
-
|
|
3091
|
-
|
|
3092
|
-
|
|
3093
|
-
|
|
3094
|
-
|
|
3095
|
-
|
|
3096
|
-
|
|
3097
|
-
|
|
3098
|
-
|
|
3099
|
-
|
|
3100
|
-
|
|
3101
|
-
fileInput.
|
|
3102
|
-
|
|
3103
|
-
|
|
3104
|
-
if (files) {
|
|
3105
|
-
const mediaFiles = Array.from(files).map((file) => {
|
|
3106
|
-
return Object.assign(file, {
|
|
3107
|
-
isLoadingMedia: false,
|
|
3108
|
-
internal_id: uuid.v4(),
|
|
3109
|
-
});
|
|
3110
|
-
});
|
|
3111
|
-
if (mediaFiles.length === 0)
|
|
3112
|
-
return;
|
|
3113
|
-
addThumbnails({ files: mediaFiles });
|
|
3114
|
-
}
|
|
3115
|
-
};
|
|
3116
|
-
return;
|
|
3117
|
-
default:
|
|
3118
|
-
return;
|
|
3119
|
-
}
|
|
3098
|
+
const handleItalicClick = () => {
|
|
3099
|
+
editor.chain().focus().toggleItalic().run();
|
|
3100
|
+
};
|
|
3101
|
+
const handleMentionClick = () => {
|
|
3102
|
+
const { from } = editor.state.selection;
|
|
3103
|
+
const char = from > 1 ? " @" : "@";
|
|
3104
|
+
editor.chain().focus().insertContent(char).run();
|
|
3105
|
+
};
|
|
3106
|
+
const handleAttachmentClick = () => {
|
|
3107
|
+
const fileInput = document.createElement("input");
|
|
3108
|
+
fileInput.type = "file";
|
|
3109
|
+
fileInput.accept = "image/*,video/*";
|
|
3110
|
+
fileInput.multiple = true;
|
|
3111
|
+
fileInput.click();
|
|
3112
|
+
fileInput.onchange = () => {
|
|
3113
|
+
if (fileInput.files) {
|
|
3114
|
+
addThumbnails({ files: getMedia(fileInput.files) });
|
|
3115
|
+
}
|
|
3116
|
+
};
|
|
3120
3117
|
};
|
|
3121
|
-
return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs(MenuContainer, Object.assign({ id: "menu-container" }, { children: [jsxRuntime.jsx(Tooltip, Object.assign({ content: `${(_b = (_a = i18n === null || i18n === void 0 ? void 0 : i18n.menu) === null || _a === void 0 ? void 0 : _a.bold) !== null && _b !== void 0 ? _b : "Bold text"} ${isMac() ? "Cmd" : "Ctrl"} + B`, placement: "top", type: "light", size: "small", hasArrow: false }, { children: jsxRuntime.jsx(IconButton, Object.assign({ size: "small", isBasic: !editor.isActive("bold"), isPrimary: editor.isActive("bold"), isPill: false, onClick:
|
|
3118
|
+
return (jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsxs(MenuContainer, Object.assign({ id: "menu-container" }, { children: [jsxRuntime.jsx(Tooltip, Object.assign({ content: `${(_b = (_a = i18n === null || i18n === void 0 ? void 0 : i18n.menu) === null || _a === void 0 ? void 0 : _a.bold) !== null && _b !== void 0 ? _b : "Bold text"} ${isMac() ? "Cmd" : "Ctrl"} + B`, placement: "top", type: "light", size: "small", hasArrow: false }, { children: jsxRuntime.jsx(IconButton, Object.assign({ size: "small", isBasic: !editor.isActive("bold"), isPrimary: editor.isActive("bold"), isPill: false, onClick: handleBoldClick }, { children: jsxRuntime.jsx(SvgBoldStroke, {}) })) })), jsxRuntime.jsx(Tooltip, Object.assign({ content: `${(_d = (_c = i18n === null || i18n === void 0 ? void 0 : i18n.menu) === null || _c === void 0 ? void 0 : _c.italic) !== null && _d !== void 0 ? _d : "Italic text"} ${isMac() ? "Cmd" : "Ctrl"} + I`, placement: "top", type: "light", size: "small", hasArrow: false }, { children: jsxRuntime.jsx(IconButton, Object.assign({ size: "small", isBasic: !editor.isActive("italic"), isPrimary: editor.isActive("italic"), isPill: false, onClick: handleItalicClick }, { children: jsxRuntime.jsx(SvgItalicStroke, {}) })) })), jsxRuntime.jsx(VerticalDivider, {}), jsxRuntime.jsx(Tooltip, Object.assign({ content: (_f = (_e = i18n === null || i18n === void 0 ? void 0 : i18n.menu) === null || _e === void 0 ? void 0 : _e.mention) !== null && _f !== void 0 ? _f : "Add a mention", placement: "top", type: "light", size: "small", hasArrow: false }, { children: jsxRuntime.jsx(IconButton, Object.assign({ size: "small", isBasic: !editor.isActive("mention"), isPrimary: editor.isActive("mention"), isPill: false, onClick: handleMentionClick }, { children: jsxRuntime.jsx(SvgAtStroke, {}) })) })), jsxRuntime.jsx(Tooltip, Object.assign({ content: (_h = (_g = i18n === null || i18n === void 0 ? void 0 : i18n.menu) === null || _g === void 0 ? void 0 : _g.attachment) !== null && _h !== void 0 ? _h : (jsxRuntime.jsxs("span", { children: ["Upload images and video.", " ", jsxRuntime.jsxs("span", Object.assign({ style: { color: theme.palette.grey[600] } }, { children: [" ", jsxRuntime.jsx("br", {}), " Max size: 5GB", " "] }))] })), placement: "top", type: "light", size: "small", hasArrow: true }, { children: jsxRuntime.jsx(IconButton, Object.assign({ size: "small", isBasic: !editor.isActive("attachment"), isPrimary: editor.isActive("attachment"), isPill: false, onClick: handleAttachmentClick }, { children: jsxRuntime.jsx(SvgClipboard, {}) })) }))] })) }));
|
|
3122
3119
|
};
|
|
3123
3120
|
|
|
3124
3121
|
const CustomMention = Mention__default["default"].extend({
|
|
@@ -3367,9 +3364,9 @@ const editorExtensions = ({ placeholderOptions, mentionableUsers, }) => {
|
|
|
3367
3364
|
];
|
|
3368
3365
|
};
|
|
3369
3366
|
|
|
3370
|
-
var _circle$3, _path$
|
|
3371
|
-
function _extends$
|
|
3372
|
-
const SvgRemoveMediaIcon = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
3367
|
+
var _circle$3, _path$q, _path2$6;
|
|
3368
|
+
function _extends$v() { _extends$v = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$v.apply(this, arguments); }
|
|
3369
|
+
const SvgRemoveMediaIcon = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$v({
|
|
3373
3370
|
width: 56,
|
|
3374
3371
|
height: 56,
|
|
3375
3372
|
viewBox: "0 0 56 56",
|
|
@@ -3380,7 +3377,7 @@ const SvgRemoveMediaIcon = props => /*#__PURE__*/React__namespace.createElement(
|
|
|
3380
3377
|
cy: 28,
|
|
3381
3378
|
r: 28,
|
|
3382
3379
|
fill: "#edf7ff"
|
|
3383
|
-
})), _path$
|
|
3380
|
+
})), _path$q || (_path$q = /*#__PURE__*/React__namespace.createElement("path", {
|
|
3384
3381
|
d: "M16.929 16.929L39.071 39.071",
|
|
3385
3382
|
stroke: "currentColor",
|
|
3386
3383
|
strokeWidth: 4
|
|
@@ -3399,48 +3396,16 @@ const StyledDeleteThumbnailX = styled__default["default"].div `
|
|
|
3399
3396
|
width: 32px;
|
|
3400
3397
|
height: 32px;
|
|
3401
3398
|
opacity: 0;
|
|
3399
|
+
transition: opacity 0.2s;
|
|
3402
3400
|
z-index: 2;
|
|
3403
3401
|
`;
|
|
3404
3402
|
const DeleteThumbnailX = ({ deleteThumbnail }) => {
|
|
3405
3403
|
return (jsxRuntime.jsx(StyledDeleteThumbnailX, Object.assign({ className: "deleteThumbnail" }, { children: jsxRuntime.jsx(SvgRemoveMediaIcon, { onClick: (e) => deleteThumbnail(e) }) })));
|
|
3406
3404
|
};
|
|
3407
3405
|
|
|
3408
|
-
|
|
3409
|
-
|
|
3410
|
-
|
|
3411
|
-
opacity: 1;
|
|
3412
|
-
}
|
|
3413
|
-
`;
|
|
3414
|
-
const Preview$1 = styled__default["default"].div `
|
|
3415
|
-
display: flex;
|
|
3416
|
-
justify-content: center;
|
|
3417
|
-
align-items: center;
|
|
3418
|
-
height: 150px;
|
|
3419
|
-
width: 100%;
|
|
3420
|
-
background-image: url(${(props) => props.url});
|
|
3421
|
-
background-color: ${({ theme }) => theme.palette.grey[100]};
|
|
3422
|
-
background-size: contain;
|
|
3423
|
-
background-position: center;
|
|
3424
|
-
background-repeat: no-repeat;
|
|
3425
|
-
`;
|
|
3426
|
-
const ImageThumbnail = ({ src, index = 0, removeThumbnail, clickThumbnail, showX = true, isLoadingMedia = true, isError = false, }) => {
|
|
3427
|
-
const handleCancel = (e) => {
|
|
3428
|
-
e.stopPropagation();
|
|
3429
|
-
if (removeThumbnail)
|
|
3430
|
-
removeThumbnail(index);
|
|
3431
|
-
};
|
|
3432
|
-
return (jsxRuntime.jsxs(ImageCard, Object.assign({ onClick: clickThumbnail }, { children: [isLoadingMedia && (jsxRuntime.jsx(Preview$1, Object.assign({ url: "" }, { children: jsxRuntime.jsx(reactLoaders.Spinner, { style: {
|
|
3433
|
-
display: "flex",
|
|
3434
|
-
alignItems: "center",
|
|
3435
|
-
justifyContent: "center",
|
|
3436
|
-
}, size: "large" }) }))), isError && (
|
|
3437
|
-
// todo: add error icon
|
|
3438
|
-
jsxRuntime.jsx("span", { children: "error uploading media" })), !isLoadingMedia && (jsxRuntime.jsx(Preview$1, Object.assign({ url: src }, { children: showX && (jsxRuntime.jsx(DeleteThumbnailX, { deleteThumbnail: (e) => handleCancel(e) })) })))] })));
|
|
3439
|
-
};
|
|
3440
|
-
|
|
3441
|
-
var _circle$2, _path$o;
|
|
3442
|
-
function _extends$t() { _extends$t = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$t.apply(this, arguments); }
|
|
3443
|
-
const SvgVideoPlayIcon = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$t({
|
|
3406
|
+
var _circle$2, _path$p;
|
|
3407
|
+
function _extends$u() { _extends$u = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$u.apply(this, arguments); }
|
|
3408
|
+
const SvgVideoPlayIcon = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$u({
|
|
3444
3409
|
width: 56,
|
|
3445
3410
|
height: 56,
|
|
3446
3411
|
viewBox: "0 0 56 56",
|
|
@@ -3451,20 +3416,16 @@ const SvgVideoPlayIcon = props => /*#__PURE__*/React__namespace.createElement("s
|
|
|
3451
3416
|
cy: 28,
|
|
3452
3417
|
r: 28,
|
|
3453
3418
|
fill: "white"
|
|
3454
|
-
})), _path$
|
|
3419
|
+
})), _path$p || (_path$p = /*#__PURE__*/React__namespace.createElement("path", {
|
|
3455
3420
|
d: "M47 28L18.5 44.4545L18.5 11.5455L47 28Z",
|
|
3456
3421
|
fill: "currentColor"
|
|
3457
3422
|
})));
|
|
3458
3423
|
|
|
3459
|
-
const
|
|
3424
|
+
const ImageCard = styled__default["default"](SpecialCard) `
|
|
3460
3425
|
padding: 0;
|
|
3461
3426
|
position: relative;
|
|
3462
3427
|
overflow: hidden;
|
|
3463
|
-
|
|
3464
|
-
&:hover .deleteThumbnail {
|
|
3465
|
-
opacity: 1;
|
|
3466
|
-
z-index: 9999;
|
|
3467
|
-
}
|
|
3428
|
+
min-width: 90px;
|
|
3468
3429
|
|
|
3469
3430
|
&:before {
|
|
3470
3431
|
content: "";
|
|
@@ -3474,103 +3435,93 @@ const VideoCard = styled__default["default"](SpecialCard) `
|
|
|
3474
3435
|
width: 100%;
|
|
3475
3436
|
height: 100%;
|
|
3476
3437
|
background-color: ${({ theme }) => theme.palette.grey[800]};
|
|
3477
|
-
opacity: 0
|
|
3438
|
+
opacity: 0;
|
|
3439
|
+
transition: opacity 0.2s;
|
|
3478
3440
|
z-index: 1;
|
|
3479
3441
|
}
|
|
3480
3442
|
|
|
3481
|
-
|
|
3482
|
-
|
|
3483
|
-
|
|
3484
|
-
|
|
3485
|
-
|
|
3486
|
-
|
|
3487
|
-
|
|
3488
|
-
|
|
3443
|
+
&:hover {
|
|
3444
|
+
.deleteThumbnail {
|
|
3445
|
+
opacity: 1;
|
|
3446
|
+
}
|
|
3447
|
+
&:before {
|
|
3448
|
+
opacity: 0.3;
|
|
3449
|
+
}
|
|
3450
|
+
}
|
|
3451
|
+
|
|
3452
|
+
&.video {
|
|
3453
|
+
svg {
|
|
3454
|
+
position: absolute;
|
|
3455
|
+
top: 50%;
|
|
3456
|
+
left: 50%;
|
|
3457
|
+
transform: translate(-50%, -50%);
|
|
3458
|
+
width: 32px;
|
|
3459
|
+
height: 32px;
|
|
3460
|
+
z-index: 2;
|
|
3461
|
+
}
|
|
3489
3462
|
}
|
|
3490
3463
|
`;
|
|
3491
3464
|
const Preview = styled__default["default"].div `
|
|
3492
|
-
padding: ${({ theme }) => theme.space.md};
|
|
3493
3465
|
display: flex;
|
|
3494
3466
|
justify-content: center;
|
|
3495
3467
|
align-items: center;
|
|
3496
|
-
height:
|
|
3468
|
+
height: 100px;
|
|
3497
3469
|
width: 100%;
|
|
3498
3470
|
|
|
3471
|
+
${(p) => p.url &&
|
|
3472
|
+
`
|
|
3473
|
+
background-image: url(${p.url});
|
|
3474
|
+
background-color: ${p.theme.palette.grey[100]};
|
|
3475
|
+
background-size: cover;
|
|
3476
|
+
background-position: center;
|
|
3477
|
+
background-repeat: no-repeat;
|
|
3478
|
+
`}
|
|
3479
|
+
|
|
3499
3480
|
> video {
|
|
3500
3481
|
width: 100%;
|
|
3501
3482
|
height: 100%;
|
|
3502
3483
|
}
|
|
3503
3484
|
`;
|
|
3504
|
-
const
|
|
3485
|
+
const Thumbnail = ({ src, type, removeThumbnail, clickThumbnail, showX, isLoadingMedia = true, isError = false, }) => {
|
|
3505
3486
|
const handleCancel = (e) => {
|
|
3506
3487
|
e.stopPropagation();
|
|
3507
3488
|
if (removeThumbnail)
|
|
3508
|
-
removeThumbnail(
|
|
3489
|
+
removeThumbnail();
|
|
3509
3490
|
};
|
|
3510
|
-
return (jsxRuntime.jsxs(
|
|
3491
|
+
return (jsxRuntime.jsxs(ImageCard, Object.assign({ onClick: clickThumbnail, className: type.includes("video") ? "video" : "image" }, { children: [isError && (
|
|
3492
|
+
// todo: add error icon
|
|
3493
|
+
jsxRuntime.jsx("span", { children: "error uploading media" })), isLoadingMedia ? (jsxRuntime.jsx(Preview, { children: jsxRuntime.jsx(reactLoaders.Spinner, { style: {
|
|
3511
3494
|
display: "flex",
|
|
3512
3495
|
alignItems: "center",
|
|
3513
3496
|
justifyContent: "center",
|
|
3514
|
-
}, size: "large" }) })),
|
|
3515
|
-
// todo: add error icon
|
|
3516
|
-
jsxRuntime.jsx("span", { children: "error uploading media" })), !isLoadingMedia && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [showX && (jsxRuntime.jsx(DeleteThumbnailX, { deleteThumbnail: (e) => handleCancel(e) })), jsxRuntime.jsx(Preview, { children: jsxRuntime.jsx("video", Object.assign({ src: src }, { children: jsxRuntime.jsx("track", { kind: "captions" }) })) }), jsxRuntime.jsx(SvgVideoPlayIcon, {})] }))] })));
|
|
3497
|
+
}, size: "large" }) })) : (jsxRuntime.jsxs(Preview, Object.assign({ url: src }, { children: [showX && (jsxRuntime.jsx(DeleteThumbnailX, { deleteThumbnail: (e) => handleCancel(e) })), type.includes("video") && (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx("video", Object.assign({ src: src }, { children: jsxRuntime.jsx("track", { kind: "captions" }) })), jsxRuntime.jsx(SvgVideoPlayIcon, {})] }))] })))] })));
|
|
3517
3498
|
};
|
|
3518
3499
|
|
|
3519
|
-
const
|
|
3520
|
-
|
|
3521
|
-
|
|
3522
|
-
|
|
3523
|
-
/**
|
|
3524
|
-
* The Grid component is a framework for building modular layouts.
|
|
3525
|
-
* <hr>
|
|
3526
|
-
* Used for this:
|
|
3527
|
-
- To structure the layout of a page
|
|
3528
|
-
*/
|
|
3529
|
-
const Grid = (props) => jsxRuntime.jsx(UgGrid, Object.assign({}, props));
|
|
3530
|
-
|
|
3531
|
-
const Row$1 = (props) => jsxRuntime.jsx(reactGrid.Row, Object.assign({}, props));
|
|
3532
|
-
|
|
3533
|
-
const StyledCol$1 = styled__default["default"](reactGrid.Col) `
|
|
3534
|
-
margin-bottom: ${theme.space.lg};
|
|
3535
|
-
|
|
3536
|
-
@media screen and (max-width: ${theme.breakpoints.sm}) {
|
|
3537
|
-
margin-bottom: ${theme.space.md};
|
|
3538
|
-
}
|
|
3500
|
+
const FlexContainer = styled.styled.div `
|
|
3501
|
+
display: flex;
|
|
3502
|
+
gap: ${({ theme }) => theme.space.xs};
|
|
3503
|
+
flex-wrap: wrap;
|
|
3539
3504
|
`;
|
|
3540
|
-
const Col = (props) => jsxRuntime.jsx(StyledCol$1, Object.assign({}, props));
|
|
3541
|
-
|
|
3542
3505
|
const ThumbnailContainer = ({ openLightbox }) => {
|
|
3543
3506
|
const { thumbnails, removeThumbnail, onDeleteThumbnail } = useChatContext();
|
|
3544
3507
|
const mediaFiles = React.useMemo(() => {
|
|
3545
3508
|
return thumbnails.map((file) => ({
|
|
3546
3509
|
fileName: file.name,
|
|
3547
3510
|
fileType: file.type,
|
|
3548
|
-
previewUrl:
|
|
3549
|
-
|
|
3511
|
+
previewUrl: file.url,
|
|
3512
|
+
id: file.id,
|
|
3550
3513
|
isLoadingMedia: file.isLoadingMedia,
|
|
3551
3514
|
}));
|
|
3552
3515
|
}, [thumbnails]);
|
|
3553
3516
|
if (!mediaFiles || mediaFiles.length === 0) {
|
|
3554
3517
|
return null;
|
|
3555
3518
|
}
|
|
3556
|
-
return (jsxRuntime.jsx(
|
|
3557
|
-
|
|
3558
|
-
|
|
3559
|
-
|
|
3560
|
-
|
|
3561
|
-
|
|
3562
|
-
}, clickThumbnail: () => {
|
|
3563
|
-
openLightbox(thumbnails[index], index);
|
|
3564
|
-
} }, index) })));
|
|
3565
|
-
if (file.fileType.includes("video"))
|
|
3566
|
-
return (jsxRuntime.jsx(Col, Object.assign({ xs: 12, sm: 3, className: "flex-3-sm" }, { children: jsxRuntime.jsx(VideoThumbnail, { src: file.previewUrl, index: index, showX: true, isLoadingMedia: file.isLoadingMedia, removeThumbnail: () => {
|
|
3567
|
-
removeThumbnail(index);
|
|
3568
|
-
onDeleteThumbnail(file.internal_id);
|
|
3569
|
-
}, clickThumbnail: () => {
|
|
3570
|
-
openLightbox(thumbnails[index], index);
|
|
3571
|
-
} }, index) })));
|
|
3572
|
-
return null;
|
|
3573
|
-
}) })) }));
|
|
3519
|
+
return (jsxRuntime.jsx(FlexContainer, { children: mediaFiles.map((file, index) => (jsxRuntime.jsx(Thumbnail, { src: file.previewUrl, showX: true, type: file.fileType, isLoadingMedia: file.isLoadingMedia, removeThumbnail: () => {
|
|
3520
|
+
removeThumbnail(index);
|
|
3521
|
+
onDeleteThumbnail(file.id);
|
|
3522
|
+
}, clickThumbnail: () => {
|
|
3523
|
+
openLightbox(index);
|
|
3524
|
+
} }, file.id))) }));
|
|
3574
3525
|
};
|
|
3575
3526
|
|
|
3576
3527
|
const UgModalBody = styled__default["default"](reactModals.Body) `
|
|
@@ -3639,28 +3590,28 @@ Lightbox.Body = ModalBody; // Includes Main and Details
|
|
|
3639
3590
|
Lightbox.Footer = Footer$3;
|
|
3640
3591
|
Lightbox.Close = reactModals.Close;
|
|
3641
3592
|
|
|
3642
|
-
var _path$
|
|
3643
|
-
function _extends$
|
|
3644
|
-
const SvgChevronLeftStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
3593
|
+
var _path$o;
|
|
3594
|
+
function _extends$t() { _extends$t = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$t.apply(this, arguments); }
|
|
3595
|
+
const SvgChevronLeftStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$t({
|
|
3645
3596
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3646
3597
|
width: 16,
|
|
3647
3598
|
height: 16,
|
|
3648
3599
|
focusable: "false",
|
|
3649
3600
|
viewBox: "0 0 16 16"
|
|
3650
|
-
}, props), _path$
|
|
3601
|
+
}, props), _path$o || (_path$o = /*#__PURE__*/React__namespace.createElement("path", {
|
|
3651
3602
|
fill: "currentColor",
|
|
3652
3603
|
d: "M10.39 12.688a.5.5 0 01-.718.69l-.062-.066-4-5a.5.5 0 01-.054-.542l.054-.082 4-5a.5.5 0 01.83.55l-.05.074L6.641 8l3.75 4.688z"
|
|
3653
3604
|
})));
|
|
3654
3605
|
|
|
3655
|
-
var _path$
|
|
3656
|
-
function _extends$
|
|
3657
|
-
const SvgChevronRightStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
3606
|
+
var _path$n;
|
|
3607
|
+
function _extends$s() { _extends$s = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$s.apply(this, arguments); }
|
|
3608
|
+
const SvgChevronRightStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$s({
|
|
3658
3609
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3659
3610
|
width: 16,
|
|
3660
3611
|
height: 16,
|
|
3661
3612
|
focusable: "false",
|
|
3662
3613
|
viewBox: "0 0 16 16"
|
|
3663
|
-
}, props), _path$
|
|
3614
|
+
}, props), _path$n || (_path$n = /*#__PURE__*/React__namespace.createElement("path", {
|
|
3664
3615
|
fill: "currentColor",
|
|
3665
3616
|
d: "M5.61 3.312a.5.5 0 01.718-.69l.062.066 4 5a.5.5 0 01.054.542l-.054.082-4 5a.5.5 0 01-.83-.55l.05-.074L9.359 8l-3.75-4.688z"
|
|
3666
3617
|
})));
|
|
@@ -3883,15 +3834,15 @@ Slider.Slide = Slide;
|
|
|
3883
3834
|
Slider.PrevButton = PrevButton;
|
|
3884
3835
|
Slider.NextButton = NextButton;
|
|
3885
3836
|
|
|
3886
|
-
var _path$
|
|
3887
|
-
function _extends$
|
|
3888
|
-
const SvgVolumeMutedFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
3837
|
+
var _path$m, _path2$5;
|
|
3838
|
+
function _extends$r() { _extends$r = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$r.apply(this, arguments); }
|
|
3839
|
+
const SvgVolumeMutedFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$r({
|
|
3889
3840
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3890
3841
|
width: 16,
|
|
3891
3842
|
height: 16,
|
|
3892
3843
|
focusable: "false",
|
|
3893
3844
|
viewBox: "0 0 16 16"
|
|
3894
|
-
}, props), _path$
|
|
3845
|
+
}, props), _path$m || (_path$m = /*#__PURE__*/React__namespace.createElement("path", {
|
|
3895
3846
|
stroke: "currentColor",
|
|
3896
3847
|
strokeLinecap: "round",
|
|
3897
3848
|
d: "M11.5 10l4-4m-4 0l4 4"
|
|
@@ -3900,15 +3851,15 @@ const SvgVolumeMutedFill = props => /*#__PURE__*/React__namespace.createElement(
|
|
|
3900
3851
|
d: "M9 15.29c-.26 0-.51-.1-.71-.29l-4-4H1c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h3.29l4-4a1.002 1.002 0 011.71.71V14.3a.986.986 0 01-1 .99z"
|
|
3901
3852
|
})));
|
|
3902
3853
|
|
|
3903
|
-
var _path$
|
|
3904
|
-
function _extends$
|
|
3905
|
-
const SvgVolumeUnmutedFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
3854
|
+
var _path$l, _path2$4;
|
|
3855
|
+
function _extends$q() { _extends$q = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$q.apply(this, arguments); }
|
|
3856
|
+
const SvgVolumeUnmutedFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$q({
|
|
3906
3857
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3907
3858
|
width: 16,
|
|
3908
3859
|
height: 16,
|
|
3909
3860
|
focusable: "false",
|
|
3910
3861
|
viewBox: "0 0 16 16"
|
|
3911
|
-
}, props), _path$
|
|
3862
|
+
}, props), _path$l || (_path$l = /*#__PURE__*/React__namespace.createElement("path", {
|
|
3912
3863
|
fill: "currentColor",
|
|
3913
3864
|
d: "M9 15.29c-.26 0-.51-.1-.71-.29l-4-4H1c-.55 0-1-.45-1-1V6c0-.55.45-1 1-1h3.29l4-4a1.002 1.002 0 011.71.71V14.3a.986.986 0 01-1 .99z"
|
|
3914
3865
|
})), _path2$4 || (_path2$4 = /*#__PURE__*/React__namespace.createElement("path", {
|
|
@@ -3983,8 +3934,8 @@ const useProgressContext = () => {
|
|
|
3983
3934
|
};
|
|
3984
3935
|
|
|
3985
3936
|
var _g$2;
|
|
3986
|
-
function _extends$
|
|
3987
|
-
const SvgGrip = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
3937
|
+
function _extends$p() { _extends$p = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$p.apply(this, arguments); }
|
|
3938
|
+
const SvgGrip = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$p({
|
|
3988
3939
|
xmlns: "http://www.w3.org/2000/svg",
|
|
3989
3940
|
width: 16,
|
|
3990
3941
|
height: 16,
|
|
@@ -4106,6 +4057,11 @@ const Rect = styled.styled.div `
|
|
|
4106
4057
|
|
|
4107
4058
|
transition: width 0.1s ease;
|
|
4108
4059
|
`;
|
|
4060
|
+
const StyledTooltip$1 = styled.styled(Tooltip) `
|
|
4061
|
+
margin-bottom: ${({ theme }) => theme.space.sm};
|
|
4062
|
+
color: ${({ tooltipColor }) => tooltipColor};
|
|
4063
|
+
|
|
4064
|
+
`;
|
|
4109
4065
|
const Grabber = (props) => {
|
|
4110
4066
|
const { observation } = props;
|
|
4111
4067
|
const { setIsGrabbing, setactiveBookmark, setFromEnd } = useProgressContext();
|
|
@@ -4120,7 +4076,7 @@ const Grabber = (props) => {
|
|
|
4120
4076
|
};
|
|
4121
4077
|
const Bookmark = (props) => {
|
|
4122
4078
|
var _a, _b;
|
|
4123
|
-
const { start, end, hue,
|
|
4079
|
+
const { start, end, hue, tooltipContent } = props;
|
|
4124
4080
|
const { context } = Video.useVideoContext();
|
|
4125
4081
|
const videoStart = context.part.start || 0;
|
|
4126
4082
|
const videoEnd = context.part.end || ((_a = context.player) === null || _a === void 0 ? void 0 : _a.totalTime) || 0;
|
|
@@ -4131,21 +4087,21 @@ const Bookmark = (props) => {
|
|
|
4131
4087
|
}
|
|
4132
4088
|
if (start > videoEnd || start < videoStart)
|
|
4133
4089
|
return null;
|
|
4134
|
-
return (jsxRuntime.jsx(
|
|
4090
|
+
return (jsxRuntime.jsx(StyledTooltip$1, Object.assign({ content: tooltipContent, type: "light", size: "large", isTransparent: true }, { children: jsxRuntime.jsxs(Rect, Object.assign({ isActive: activeBookmark && activeBookmark.id === props.id, hue: hue, style: {
|
|
4135
4091
|
left: `${((start - videoStart) / duration) * 100}%`,
|
|
4136
4092
|
width: `${((end - start) / duration) * 100}%`,
|
|
4137
4093
|
}, onClick: props.onClick }, { children: [jsxRuntime.jsx(Grabber, { observation: props }), jsxRuntime.jsx(Grabber, { isEnd: true, observation: props })] })) })));
|
|
4138
4094
|
};
|
|
4139
4095
|
|
|
4140
|
-
var _path$
|
|
4141
|
-
function _extends$
|
|
4142
|
-
const SvgBackSecondsFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
4096
|
+
var _path$k, _path2$3, _path3$1;
|
|
4097
|
+
function _extends$o() { _extends$o = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$o.apply(this, arguments); }
|
|
4098
|
+
const SvgBackSecondsFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$o({
|
|
4143
4099
|
width: 16,
|
|
4144
4100
|
height: 16,
|
|
4145
4101
|
viewBox: "0 0 16 16",
|
|
4146
4102
|
fill: "none",
|
|
4147
4103
|
xmlns: "http://www.w3.org/2000/svg"
|
|
4148
|
-
}, props), _path$
|
|
4104
|
+
}, props), _path$k || (_path$k = /*#__PURE__*/React__namespace.createElement("path", {
|
|
4149
4105
|
fillRule: "evenodd",
|
|
4150
4106
|
clipRule: "evenodd",
|
|
4151
4107
|
d: "M4.34099 3.5C5.25886 2.85974 6.34919 2.5 7.5 2.5C10.5477 2.5 13 4.95228 13 8C13 11.0477 10.5477 13.5 7.5 13.5C5.79771 13.5 4.25432 12.7171 3.18087 11.3753C2.83586 10.944 2.20657 10.8741 1.7753 11.2191C1.34404 11.5641 1.27412 12.1934 1.61913 12.6247C3.06275 14.4292 5.17372 15.5 7.5 15.5C11.6523 15.5 15 12.1523 15 8C15 3.84772 11.6523 0.5 7.5 0.5C5.84359 0.5 4.28318 1.04496 3 2.00147V1C3 0.447715 2.55229 0 2 0C1.44771 0 1 0.447715 1 1V4C1 4.85228 1.64772 5.5 2.5 5.5H5.5C6.05229 5.5 6.5 5.05228 6.5 4.5C6.5 3.94772 6.05229 3.5 5.5 3.5H4.34099Z",
|
|
@@ -4158,15 +4114,15 @@ const SvgBackSecondsFill = props => /*#__PURE__*/React__namespace.createElement(
|
|
|
4158
4114
|
fill: "currentColor"
|
|
4159
4115
|
})));
|
|
4160
4116
|
|
|
4161
|
-
var _path$
|
|
4162
|
-
function _extends$
|
|
4163
|
-
const SvgForwardSecondsFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
4117
|
+
var _path$j, _path2$2, _path3;
|
|
4118
|
+
function _extends$n() { _extends$n = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$n.apply(this, arguments); }
|
|
4119
|
+
const SvgForwardSecondsFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$n({
|
|
4164
4120
|
width: 16,
|
|
4165
4121
|
height: 16,
|
|
4166
4122
|
viewBox: "0 0 16 16",
|
|
4167
4123
|
fill: "none",
|
|
4168
4124
|
xmlns: "http://www.w3.org/2000/svg"
|
|
4169
|
-
}, props), _path$
|
|
4125
|
+
}, props), _path$j || (_path$j = /*#__PURE__*/React__namespace.createElement("path", {
|
|
4170
4126
|
fillRule: "evenodd",
|
|
4171
4127
|
clipRule: "evenodd",
|
|
4172
4128
|
d: "M11.659 3.5C10.7411 2.85974 9.65081 2.5 8.5 2.5C5.45228 2.5 3 4.95228 3 8C3 11.0477 5.45228 13.5 8.5 13.5C10.2023 13.5 11.7457 12.7171 12.8191 11.3753C13.1641 10.944 13.7934 10.8741 14.2247 11.2191C14.656 11.5641 14.7259 12.1934 14.3809 12.6247C12.9372 14.4292 10.8263 15.5 8.5 15.5C4.34772 15.5 1 12.1523 1 8C1 3.84772 4.34772 0.5 8.5 0.5C10.1564 0.5 11.7168 1.04496 13 2.00147V1C13 0.447715 13.4477 0 14 0C14.5523 0 15 0.447715 15 1V4C15 4.85228 14.3523 5.5 13.5 5.5H10.5C9.94771 5.5 9.5 5.05228 9.5 4.5C9.5 3.94772 9.94771 3.5 10.5 3.5H11.659Z",
|
|
@@ -4180,8 +4136,8 @@ const SvgForwardSecondsFill = props => /*#__PURE__*/React__namespace.createEleme
|
|
|
4180
4136
|
})));
|
|
4181
4137
|
|
|
4182
4138
|
var _g$1;
|
|
4183
|
-
function _extends$
|
|
4184
|
-
const SvgPauseFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
4139
|
+
function _extends$m() { _extends$m = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$m.apply(this, arguments); }
|
|
4140
|
+
const SvgPauseFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$m({
|
|
4185
4141
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4186
4142
|
width: 16,
|
|
4187
4143
|
height: 16,
|
|
@@ -4205,28 +4161,28 @@ const SvgPauseFill = props => /*#__PURE__*/React__namespace.createElement("svg",
|
|
|
4205
4161
|
ry: 1
|
|
4206
4162
|
}))));
|
|
4207
4163
|
|
|
4208
|
-
var _path$
|
|
4209
|
-
function _extends$
|
|
4210
|
-
const SvgPlayFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
4164
|
+
var _path$i;
|
|
4165
|
+
function _extends$l() { _extends$l = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$l.apply(this, arguments); }
|
|
4166
|
+
const SvgPlayFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$l({
|
|
4211
4167
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4212
4168
|
width: 16,
|
|
4213
4169
|
height: 16,
|
|
4214
4170
|
focusable: "false",
|
|
4215
4171
|
viewBox: "0 0 16 16"
|
|
4216
|
-
}, props), _path$
|
|
4172
|
+
}, props), _path$i || (_path$i = /*#__PURE__*/React__namespace.createElement("path", {
|
|
4217
4173
|
fill: "currentColor",
|
|
4218
4174
|
d: "M6 15.79c-.13 0-.26-.03-.38-.08a.977.977 0 01-.62-.92V1.21a1 1 0 01.62-.93C6 .12 6.42.21 6.71.5l6.44 6.44c.58.58.58 1.54 0 2.12L6.71 15.5c-.19.19-.45.29-.71.29z"
|
|
4219
4175
|
})));
|
|
4220
4176
|
|
|
4221
|
-
var _path$
|
|
4222
|
-
function _extends$
|
|
4223
|
-
const SvgPreviousFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
4177
|
+
var _path$h, _path2$1;
|
|
4178
|
+
function _extends$k() { _extends$k = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$k.apply(this, arguments); }
|
|
4179
|
+
const SvgPreviousFill = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$k({
|
|
4224
4180
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4225
4181
|
width: 16,
|
|
4226
4182
|
height: 16,
|
|
4227
4183
|
focusable: "false",
|
|
4228
4184
|
viewBox: "0 0 24 24"
|
|
4229
|
-
}, props), _path$
|
|
4185
|
+
}, props), _path$h || (_path$h = /*#__PURE__*/React__namespace.createElement("path", {
|
|
4230
4186
|
d: "M2.75 20C2.75 20.5523 3.19772 21 3.75 21C4.30228 21 4.75 20.5523 4.75 20L4.75 4C4.75 3.44772 4.30229 3 3.75 3C3.19772 3 2.75 3.44772 2.75 4V20Z",
|
|
4231
4187
|
fill: "currentColor"
|
|
4232
4188
|
})), _path2$1 || (_path2$1 = /*#__PURE__*/React__namespace.createElement("path", {
|
|
@@ -4305,15 +4261,15 @@ const ControlsGroupCenter = (props) => {
|
|
|
4305
4261
|
} }, { children: jsxRuntime.jsxs(SM, Object.assign({ isBold: true, style: { lineHeight: "16px" } }, { children: [playBackRate, "x"] })) }))] })));
|
|
4306
4262
|
};
|
|
4307
4263
|
|
|
4308
|
-
var _path$
|
|
4309
|
-
function _extends$
|
|
4310
|
-
const SvgTagStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$
|
|
4264
|
+
var _path$g, _circle$1;
|
|
4265
|
+
function _extends$j() { _extends$j = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$j.apply(this, arguments); }
|
|
4266
|
+
const SvgTagStroke = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$j({
|
|
4311
4267
|
xmlns: "http://www.w3.org/2000/svg",
|
|
4312
4268
|
width: 16,
|
|
4313
4269
|
height: 16,
|
|
4314
4270
|
focusable: "false",
|
|
4315
4271
|
viewBox: "0 0 16 16"
|
|
4316
|
-
}, props), _path$
|
|
4272
|
+
}, props), _path$g || (_path$g = /*#__PURE__*/React__namespace.createElement("path", {
|
|
4317
4273
|
fill: "none",
|
|
4318
4274
|
stroke: "currentColor",
|
|
4319
4275
|
d: "M.5 1v5.3c0 .1.1.3.1.4l8.5 8.5c.2.2.5.2.7 0l5.3-5.3c.2-.2.2-.5 0-.7L6.6.6S6.4.5 6.3.5H1C.7.5.5.7.5 1z"
|
|
@@ -4324,20 +4280,33 @@ const SvgTagStroke = props => /*#__PURE__*/React__namespace.createElement("svg",
|
|
|
4324
4280
|
fill: "currentColor"
|
|
4325
4281
|
})));
|
|
4326
4282
|
|
|
4283
|
+
var _path$f;
|
|
4284
|
+
function _extends$i() { _extends$i = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends$i.apply(this, arguments); }
|
|
4285
|
+
const SvgPlus$1 = props => /*#__PURE__*/React__namespace.createElement("svg", _extends$i({
|
|
4286
|
+
width: 12,
|
|
4287
|
+
height: 12,
|
|
4288
|
+
viewBox: "0 0 12 12",
|
|
4289
|
+
fill: "none",
|
|
4290
|
+
xmlns: "http://www.w3.org/2000/svg"
|
|
4291
|
+
}, props), _path$f || (_path$f = /*#__PURE__*/React__namespace.createElement("path", {
|
|
4292
|
+
fillRule: "evenodd",
|
|
4293
|
+
clipRule: "evenodd",
|
|
4294
|
+
d: "M6.5 1C6.19318 1 5.94444 1.24873 5.94444 1.55556V5.44444H2.05556C1.74873 5.44444 1.5 5.69318 1.5 6C1.5 6.30683 1.74873 6.55556 2.05556 6.55556H5.94444V10.4444C5.94444 10.7513 6.19318 11 6.5 11C6.80683 11 7.05556 10.7513 7.05556 10.4444V6.55556H10.9444C11.2513 6.55556 11.5 6.30683 11.5 6C11.5 5.69318 11.2513 5.44444 10.9444 5.44444H7.05556V1.55556C7.05556 1.24873 6.80683 1 6.5 1Z",
|
|
4295
|
+
fill: "currentColor"
|
|
4296
|
+
})));
|
|
4297
|
+
|
|
4327
4298
|
const Cutter = ({ onCutHandler, isCutting, i18n, }) => {
|
|
4328
4299
|
var _a;
|
|
4329
4300
|
const { context } = Video.useVideoContext();
|
|
4330
4301
|
const videoRef = (_a = context.player) === null || _a === void 0 ? void 0 : _a.ref.current;
|
|
4331
4302
|
if (!onCutHandler)
|
|
4332
4303
|
return null;
|
|
4333
|
-
return (jsxRuntime.
|
|
4304
|
+
return (jsxRuntime.jsx(Button, Object.assign({ isPrimary: true, isAccent: !isCutting, size: "small", onClick: (e) => {
|
|
4334
4305
|
if (videoRef) {
|
|
4335
4306
|
onCutHandler(videoRef.currentTime);
|
|
4336
4307
|
}
|
|
4337
4308
|
e.stopPropagation();
|
|
4338
|
-
} }, { children: [jsxRuntime.jsx(Button.StartIcon, { children: jsxRuntime.jsx(SvgTagStroke, {}) }),
|
|
4339
|
-
? (i18n === null || i18n === void 0 ? void 0 : i18n.onHighlight) || "Click again to stop"
|
|
4340
|
-
: (i18n === null || i18n === void 0 ? void 0 : i18n.beforeHighlight) || "New highlight"] })));
|
|
4309
|
+
} }, { children: isCutting ? (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Button.StartIcon, { children: jsxRuntime.jsx(SvgTagStroke, {}) }), (i18n === null || i18n === void 0 ? void 0 : i18n.onHighlight) || "End observation"] })) : (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(Button.StartIcon, { children: jsxRuntime.jsx(SvgPlus$1, {}) }), (i18n === null || i18n === void 0 ? void 0 : i18n.beforeHighlight) || "Start observation"] })) })));
|
|
4341
4310
|
};
|
|
4342
4311
|
|
|
4343
4312
|
var _path$e;
|
|
@@ -4453,7 +4422,7 @@ const Progress = React.forwardRef((props, ref) => (jsxRuntime.jsx(UgProgress, Ob
|
|
|
4453
4422
|
const StyledProgress = styled.styled(Progress) `
|
|
4454
4423
|
width: 100%;
|
|
4455
4424
|
border-radius: 0;
|
|
4456
|
-
color: ${({ theme }) => theme.palette.grey[
|
|
4425
|
+
color: ${({ theme }) => theme.palette.grey[400]};
|
|
4457
4426
|
cursor: pointer;
|
|
4458
4427
|
> div {
|
|
4459
4428
|
border-radius: 0;
|
|
@@ -4483,15 +4452,27 @@ const Content$1 = styled__default["default"].div `
|
|
|
4483
4452
|
padding: 2px 4px;
|
|
4484
4453
|
display: inline-flex;
|
|
4485
4454
|
color: white;
|
|
4455
|
+
font-size: ${({ theme }) => theme.fontSizes.sm};
|
|
4486
4456
|
align-items: center;
|
|
4487
4457
|
justify-content: center;
|
|
4488
|
-
min-height:
|
|
4458
|
+
min-height: 14px;
|
|
4489
4459
|
`;
|
|
4490
4460
|
const PlayerTooltip = (_a) => {
|
|
4491
4461
|
var { children } = _a, props = __rest(_a, ["children"]);
|
|
4492
4462
|
return (jsxRuntime.jsx(Wrapper$1, Object.assign({}, props, { children: jsxRuntime.jsx(Content$1, { children: children }) })));
|
|
4493
4463
|
};
|
|
4494
4464
|
|
|
4465
|
+
function useDebounce(value, delay) {
|
|
4466
|
+
const [debouncedValue, setDebouncedValue] = React.useState(value);
|
|
4467
|
+
React.useEffect(() => {
|
|
4468
|
+
const timer = setTimeout(() => setDebouncedValue(value), delay || 500);
|
|
4469
|
+
return () => {
|
|
4470
|
+
clearTimeout(timer);
|
|
4471
|
+
};
|
|
4472
|
+
}, [value, delay]);
|
|
4473
|
+
return debouncedValue;
|
|
4474
|
+
}
|
|
4475
|
+
|
|
4495
4476
|
const ControlsWrapper = styled__default["default"].div `
|
|
4496
4477
|
position: absolute;
|
|
4497
4478
|
bottom: 0;
|
|
@@ -4526,12 +4507,11 @@ const Controls = ({ container, onCutHandler, bookmarks, isCutting, onBookMarkUpd
|
|
|
4526
4507
|
const [tooltipMargin, setTooltipMargin] = React.useState(0);
|
|
4527
4508
|
const [tooltipLabel, setTooltipLabel] = React.useState("00:00");
|
|
4528
4509
|
const [marks, setMarks] = React.useState(bookmarks);
|
|
4510
|
+
const [updatedMark, setUpdatedMark] = React.useState();
|
|
4529
4511
|
const progressRef = React.useRef(null);
|
|
4530
4512
|
const { context, setCurrentTime } = Video.useVideoContext();
|
|
4513
|
+
const debouncedMark = useDebounce(updatedMark, 500);
|
|
4531
4514
|
const { reset, isGrabbing, activeBookmark, fromEnd } = useProgressContext();
|
|
4532
|
-
React.useEffect(() => {
|
|
4533
|
-
setMarks(bookmarks);
|
|
4534
|
-
}, [bookmarks]);
|
|
4535
4515
|
const relCurrentTime = ((_a = context.player) === null || _a === void 0 ? void 0 : _a.currentTime)
|
|
4536
4516
|
? ((_b = context.player) === null || _b === void 0 ? void 0 : _b.currentTime) - context.part.start
|
|
4537
4517
|
: 0;
|
|
@@ -4583,15 +4563,8 @@ const Controls = ({ container, onCutHandler, bookmarks, isCutting, onBookMarkUpd
|
|
|
4583
4563
|
...marks.slice(currentObsIndex + 1),
|
|
4584
4564
|
];
|
|
4585
4565
|
setMarks(newMarks);
|
|
4586
|
-
|
|
4587
|
-
}, [
|
|
4588
|
-
activeBookmark,
|
|
4589
|
-
context.part.start,
|
|
4590
|
-
duration,
|
|
4591
|
-
fromEnd,
|
|
4592
|
-
onBookMarkUpdated,
|
|
4593
|
-
marks,
|
|
4594
|
-
]);
|
|
4566
|
+
setUpdatedMark(updatedMark);
|
|
4567
|
+
}, [activeBookmark, context.part.start, duration, fromEnd, marks]);
|
|
4595
4568
|
React.useEffect(() => {
|
|
4596
4569
|
var _a;
|
|
4597
4570
|
const currentTime = ((_a = context.player) === null || _a === void 0 ? void 0 : _a.currentTime) || 0;
|
|
@@ -4605,6 +4578,11 @@ const Controls = ({ container, onCutHandler, bookmarks, isCutting, onBookMarkUpd
|
|
|
4605
4578
|
document.removeEventListener("mouseup", reset);
|
|
4606
4579
|
};
|
|
4607
4580
|
}, [reset, marks]);
|
|
4581
|
+
React.useEffect(() => {
|
|
4582
|
+
if (debouncedMark) {
|
|
4583
|
+
onBookMarkUpdated === null || onBookMarkUpdated === void 0 ? void 0 : onBookMarkUpdated(debouncedMark);
|
|
4584
|
+
}
|
|
4585
|
+
}, [debouncedMark, onBookMarkUpdated]);
|
|
4608
4586
|
return (jsxRuntime.jsxs(ControlsWrapper, Object.assign({ isPlaying: context.isPlaying }, { children: [jsxRuntime.jsxs(ProgressContainer, Object.assign({ onMouseEnter: onMouseEvent, onMouseMove: onMouseEvent, onMouseLeave: onMouseEvent }, { children: [jsxRuntime.jsx(StyledTooltip, Object.assign({ style: { marginLeft: `${tooltipMargin}px` } }, { children: tooltipLabel })), !!duration &&
|
|
4609
4587
|
(marks === null || marks === void 0 ? void 0 : marks.map((bookmark, index) => (jsxRuntime.jsx(Bookmark, Object.assign({}, bookmark), `${index}${bookmark.start}`)))), jsxRuntime.jsx(ProgressBar, { ref: progressRef, progress: progress, handleSkipAhead: handleSkipAhead, duration: duration })] })), jsxRuntime.jsxs(ControlsBar, { children: [jsxRuntime.jsxs(StyledDiv$1, Object.assign({ style: { width: "20%", justifyContent: "start" } }, { children: [jsxRuntime.jsx(AudioButton, {}), jsxRuntime.jsx(TimeLabel, { current: relCurrentTime, duration: duration })] })), jsxRuntime.jsx(ControlsGroupCenter, { style: { width: "60%" } }), jsxRuntime.jsxs(StyledDiv$1, Object.assign({ style: { width: "20%", justifyContent: "end" } }, { children: [jsxRuntime.jsx(Cutter, { onCutHandler: onCutHandler, isCutting: isCutting, i18n: i18n }), jsxRuntime.jsx(FullScreenButton, { container: container })] }))] })] })));
|
|
4610
4588
|
};
|
|
@@ -4762,6 +4740,15 @@ const PlayerCore = React.forwardRef((props, forwardRef) => {
|
|
|
4762
4740
|
return (jsxRuntime.jsxs(Container$1, Object.assign({ isLoaded: isLoaded, isPlaying: context.isPlaying, ref: containerRef }, { children: [!isLoaded ? (jsxRuntime.jsx(VideoSpinner, {})) : (jsxRuntime.jsx(FloatingControls, { isPlaying: context.isPlaying, onClick: togglePlay })), jsxRuntime.jsx(Video__default["default"].Player, { className: "player-container" }), jsxRuntime.jsx(ProgressContextProvider, { children: jsxRuntime.jsx(Controls, { container: containerRef.current, onCutHandler: onCutHandler, bookmarks: bookmarks, isCutting: isCutting, onBookMarkUpdated: props.handleBookmarkUpdate, i18n: props.i18n }) })] })));
|
|
4763
4741
|
});
|
|
4764
4742
|
|
|
4743
|
+
const MediaLightBox = ({ header, onClose, slideChange, selectedImageIndex, thumbnails, videoRefs, isOpen, details }) => {
|
|
4744
|
+
if (!isOpen) {
|
|
4745
|
+
return null;
|
|
4746
|
+
}
|
|
4747
|
+
return (jsxRuntime.jsxs(Lightbox, Object.assign({ onClose: onClose }, { children: [jsxRuntime.jsx(Lightbox.Header, { children: header }), jsxRuntime.jsxs(Lightbox.Body, { children: [jsxRuntime.jsx(Lightbox.Body.Main, Object.assign({ style: { flex: details ? 2 : 3 } }, { children: jsxRuntime.jsx(Slider, Object.assign({ prevArrow: jsxRuntime.jsx(Slider.PrevButton, { isBright: true }), nextArrow: jsxRuntime.jsx(Slider.NextButton, { isBright: true }), onSlideChange: slideChange, initialSlide: selectedImageIndex }, { children: thumbnails.map((item) => (jsxRuntime.jsxs(Slider.Slide, { children: [item.type.includes("image") && (jsxRuntime.jsx("img", { src: item.url, alt: `media ${item.name}`, style: { maxHeight: "100%", height: "auto" } })), item.type.includes("video") && item.url && (jsxRuntime.jsx(Player, { ref: (ref) => {
|
|
4748
|
+
videoRefs.current.push(ref);
|
|
4749
|
+
}, url: item.url }))] }, item.id))) })) })), details && (jsxRuntime.jsx(Lightbox.Body.Details, Object.assign({ style: { flex: 1 } }, { children: details })))] }), jsxRuntime.jsx(Lightbox.Close, { "aria-label": "Close modal" })] })));
|
|
4750
|
+
};
|
|
4751
|
+
|
|
4765
4752
|
const ChatBoxContainer = styled__default["default"].div `
|
|
4766
4753
|
display: flex;
|
|
4767
4754
|
border-top: 1px solid ${({ theme }) => theme.palette.grey[200]};
|
|
@@ -4781,14 +4768,19 @@ const ChatBoxContainer = styled__default["default"].div `
|
|
|
4781
4768
|
- Simple text input, use textarea instead.
|
|
4782
4769
|
*/
|
|
4783
4770
|
const CommentBox = (_a) => {
|
|
4771
|
+
var _b;
|
|
4784
4772
|
var { placeholderOptions } = _a, props = __rest(_a, ["placeholderOptions"]);
|
|
4785
4773
|
const { children, hasFloatingMenu, hasButtonsMenu, bubbleOptions, i18n } = props;
|
|
4786
4774
|
const { editor, setEditor, mentionableUsers, triggerSave, thumbnails, addThumbnails, } = useChatContext();
|
|
4787
|
-
const { addToast } = useToast();
|
|
4788
4775
|
const [isOpen, setIsOpen] = React.useState(false);
|
|
4789
|
-
const [selectedImage, setSelectedImage] = React.useState({});
|
|
4790
4776
|
const [selectedImageIndex, setSelectedImageIndex] = React.useState(0);
|
|
4777
|
+
const { getMedia } = useMedia();
|
|
4791
4778
|
const ext = editorExtensions({ placeholderOptions, mentionableUsers });
|
|
4779
|
+
function handleEvent(data) {
|
|
4780
|
+
if (!data || !data.files)
|
|
4781
|
+
return;
|
|
4782
|
+
addThumbnails({ files: getMedia(data.files) });
|
|
4783
|
+
}
|
|
4792
4784
|
const closeLightbox = () => {
|
|
4793
4785
|
setIsOpen(false);
|
|
4794
4786
|
};
|
|
@@ -4801,10 +4793,7 @@ const CommentBox = (_a) => {
|
|
|
4801
4793
|
}
|
|
4802
4794
|
});
|
|
4803
4795
|
}, [videoRefs]);
|
|
4804
|
-
const handleOpenLightbox = (
|
|
4805
|
-
if (!file)
|
|
4806
|
-
throw Error("Error with the image");
|
|
4807
|
-
setSelectedImage(file);
|
|
4796
|
+
const handleOpenLightbox = (index) => {
|
|
4808
4797
|
setSelectedImageIndex(index);
|
|
4809
4798
|
setIsOpen(true);
|
|
4810
4799
|
};
|
|
@@ -4816,48 +4805,12 @@ const CommentBox = (_a) => {
|
|
|
4816
4805
|
return false;
|
|
4817
4806
|
},
|
|
4818
4807
|
handleDrop: function (view, event, slice, moved) {
|
|
4819
|
-
if (!event.dataTransfer || !event.dataTransfer.files)
|
|
4820
|
-
return false;
|
|
4821
4808
|
event.preventDefault();
|
|
4822
|
-
|
|
4823
|
-
return Object.assign(file, {
|
|
4824
|
-
isLoadingMedia: false,
|
|
4825
|
-
internal_id: uuid.v4(),
|
|
4826
|
-
});
|
|
4827
|
-
});
|
|
4828
|
-
const wrongFiles = files.filter((file) => !/^(image|video)\//.test(file.type));
|
|
4829
|
-
if (wrongFiles.length > 0) {
|
|
4830
|
-
for (const file of wrongFiles) {
|
|
4831
|
-
addToast(({ close }) => (jsxRuntime.jsx(Notification, { onClose: close, type: "error", message: `${props.messageBadFileFormat} - ${file.name}`, isPrimary: true })), { placement: "top" });
|
|
4832
|
-
}
|
|
4833
|
-
}
|
|
4834
|
-
const mediaFiles = files.filter((file) => /^(image|video)\//.test(file.type));
|
|
4835
|
-
if (mediaFiles.length === 0)
|
|
4836
|
-
return false;
|
|
4837
|
-
addThumbnails({ files: mediaFiles });
|
|
4838
|
-
return false;
|
|
4809
|
+
handleEvent(event.dataTransfer);
|
|
4839
4810
|
},
|
|
4840
4811
|
handlePaste: (view, event, slice) => {
|
|
4841
|
-
if (!event.clipboardData || !event.clipboardData.items)
|
|
4842
|
-
return false;
|
|
4843
4812
|
event.preventDefault();
|
|
4844
|
-
|
|
4845
|
-
return Object.assign(file, {
|
|
4846
|
-
isLoadingMedia: false,
|
|
4847
|
-
internal_id: uuid.v4(),
|
|
4848
|
-
});
|
|
4849
|
-
});
|
|
4850
|
-
const wrongFiles = files.filter((file) => !/^(image|video)\//.test(file.type));
|
|
4851
|
-
if (wrongFiles.length > 0) {
|
|
4852
|
-
for (const file of wrongFiles) {
|
|
4853
|
-
addToast(({ close }) => (jsxRuntime.jsx(Notification, { onClose: close, type: "error", message: `${props.messageBadFileFormat} - ${file.name}`, isPrimary: true })), { placement: "top" });
|
|
4854
|
-
}
|
|
4855
|
-
}
|
|
4856
|
-
const mediaFiles = files.filter((file) => /^(image|video)\//.test(file.type));
|
|
4857
|
-
if (mediaFiles.length === 0)
|
|
4858
|
-
return false;
|
|
4859
|
-
addThumbnails({ files: mediaFiles });
|
|
4860
|
-
return false;
|
|
4813
|
+
handleEvent(event.clipboardData);
|
|
4861
4814
|
},
|
|
4862
4815
|
} }, props));
|
|
4863
4816
|
const onKeyDown = (event) => {
|
|
@@ -4870,14 +4823,32 @@ const CommentBox = (_a) => {
|
|
|
4870
4823
|
return null;
|
|
4871
4824
|
ed.on("create", ({ editor }) => setEditor(editor));
|
|
4872
4825
|
ed.on("update", ({ editor }) => setEditor(editor));
|
|
4873
|
-
|
|
4874
|
-
return Object.assign(file, { isLoadingMedia: file.isLoadingMedia });
|
|
4875
|
-
});
|
|
4876
|
-
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [isOpen && selectedImage && (jsxRuntime.jsxs(Lightbox, Object.assign({ onClose: closeLightbox }, { children: [jsxRuntime.jsx(Lightbox.Header, { children: selectedImage.name }), jsxRuntime.jsx(Lightbox.Body, { children: jsxRuntime.jsx(Lightbox.Body.Main, Object.assign({ style: { flex: 3 } }, { children: jsxRuntime.jsx(Slider, Object.assign({ prevArrow: jsxRuntime.jsx(Slider.PrevButton, { isBright: true }), nextArrow: jsxRuntime.jsx(Slider.NextButton, { isBright: true }), onSlideChange: slideChange, initialSlide: selectedImageIndex }, { children: mediaFiles.map((item, index) => (jsxRuntime.jsxs(Slider.Slide, { children: [item.type.includes("image") && (jsxRuntime.jsx("img", { src: URL.createObjectURL(item), alt: `media ${item.name}` })), item.type.includes("video") && (jsxRuntime.jsx(Player, { ref: (ref) => {
|
|
4877
|
-
videoRefs.current.push(ref);
|
|
4878
|
-
}, url: URL.createObjectURL(item) }))] }))) })) })) }), jsxRuntime.jsx(Lightbox.Close, { "aria-label": "Close modal" })] }))), jsxRuntime.jsx(ChatBoxContainer, { children: jsxRuntime.jsxs(EditorContainer$1, Object.assign({ editable: true, style: { marginLeft: 0, paddingBottom: 12 } }, { children: [hasFloatingMenu && (jsxRuntime.jsx(FloatingMenu, { editor: ed, tippyOptions: Object.assign({}, bubbleOptions) })), jsxRuntime.jsx(react.EditorContent, { editor: ed, onKeyDown: onKeyDown }), jsxRuntime.jsx(ThumbnailContainer, { openLightbox: handleOpenLightbox })] })) }), hasButtonsMenu && jsxRuntime.jsx(CommentBar, { editor: ed, i18n: i18n })] }));
|
|
4826
|
+
return (jsxRuntime.jsxs(jsxRuntime.Fragment, { children: [jsxRuntime.jsx(MediaLightBox, { isOpen: isOpen, header: (_b = thumbnails[selectedImageIndex]) === null || _b === void 0 ? void 0 : _b.name, onClose: closeLightbox, slideChange: slideChange, selectedImageIndex: selectedImageIndex, thumbnails: thumbnails, videoRefs: videoRefs }), jsxRuntime.jsx(ChatBoxContainer, { children: jsxRuntime.jsxs(EditorContainer$1, Object.assign({ editable: true, style: { marginLeft: 0, paddingBottom: 12 } }, { children: [hasFloatingMenu && (jsxRuntime.jsx(FloatingMenu, { editor: ed, tippyOptions: Object.assign({}, bubbleOptions) })), jsxRuntime.jsx(react.EditorContent, { editor: ed, onKeyDown: onKeyDown }), jsxRuntime.jsx(ThumbnailContainer, { openLightbox: handleOpenLightbox })] })) }), hasButtonsMenu && jsxRuntime.jsx(CommentBar, { editor: ed, i18n: i18n })] }));
|
|
4879
4827
|
};
|
|
4880
4828
|
|
|
4829
|
+
const UgGrid = styled__default["default"](reactGrid.Grid) `
|
|
4830
|
+
padding-left: 0;
|
|
4831
|
+
padding-right: 0;
|
|
4832
|
+
`;
|
|
4833
|
+
/**
|
|
4834
|
+
* The Grid component is a framework for building modular layouts.
|
|
4835
|
+
* <hr>
|
|
4836
|
+
* Used for this:
|
|
4837
|
+
- To structure the layout of a page
|
|
4838
|
+
*/
|
|
4839
|
+
const Grid = (props) => jsxRuntime.jsx(UgGrid, Object.assign({}, props));
|
|
4840
|
+
|
|
4841
|
+
const Row$1 = (props) => jsxRuntime.jsx(reactGrid.Row, Object.assign({}, props));
|
|
4842
|
+
|
|
4843
|
+
const StyledCol$1 = styled__default["default"](reactGrid.Col) `
|
|
4844
|
+
margin-bottom: ${theme.space.lg};
|
|
4845
|
+
|
|
4846
|
+
@media screen and (max-width: ${theme.breakpoints.sm}) {
|
|
4847
|
+
margin-bottom: ${theme.space.md};
|
|
4848
|
+
}
|
|
4849
|
+
`;
|
|
4850
|
+
const Col = (props) => jsxRuntime.jsx(StyledCol$1, Object.assign({}, props));
|
|
4851
|
+
|
|
4881
4852
|
const CommentCard = styled.styled(Card) `
|
|
4882
4853
|
padding: ${({ theme }) => `${theme.space.base * 3}px ${theme.space.sm}`};
|
|
4883
4854
|
background-color: ${({ theme }) => theme.palette.grey[100]};
|
|
@@ -4921,13 +4892,9 @@ const Comment = ({ author, message, children, date, media = [], header, }) => {
|
|
|
4921
4892
|
var _a, _b;
|
|
4922
4893
|
const { mentionableUsers } = useChatContext();
|
|
4923
4894
|
const [isOpen, setIsOpen] = React.useState(false);
|
|
4924
|
-
const [selectedImage, setSelectedImage] = React.useState({});
|
|
4925
4895
|
const [selectedImageIndex, setSelectedImageIndex] = React.useState(0);
|
|
4926
4896
|
const ext = editorExtensions({ mentionableUsers });
|
|
4927
|
-
const handleClickThumbnail = (
|
|
4928
|
-
if (!file)
|
|
4929
|
-
throw Error("Error with the image");
|
|
4930
|
-
setSelectedImage(file);
|
|
4897
|
+
const handleClickThumbnail = (index) => {
|
|
4931
4898
|
setSelectedImageIndex(index);
|
|
4932
4899
|
setIsOpen(true);
|
|
4933
4900
|
};
|
|
@@ -4936,7 +4903,6 @@ const Comment = ({ author, message, children, date, media = [], header, }) => {
|
|
|
4936
4903
|
};
|
|
4937
4904
|
const videoRefs = React.useRef([]);
|
|
4938
4905
|
const slideChange = React.useCallback((index) => {
|
|
4939
|
-
setSelectedImage(media[index]);
|
|
4940
4906
|
setSelectedImageIndex(index);
|
|
4941
4907
|
videoRefs.current.forEach((ref) => {
|
|
4942
4908
|
if (ref) {
|
|
@@ -4953,23 +4919,12 @@ const Comment = ({ author, message, children, date, media = [], header, }) => {
|
|
|
4953
4919
|
ed.setOptions({
|
|
4954
4920
|
editable: false,
|
|
4955
4921
|
});
|
|
4956
|
-
return (jsxRuntime.jsxs(CommentCard, { children: [jsxRuntime.jsxs(AuthorContainer, { children: [jsxRuntime.jsx(Avatar, Object.assign({ avatarType: (_a = author.avatarType) !== null && _a !== void 0 ? _a : "text", style: { flexShrink: 0 } }, { children: author.avatar })), jsxRuntime.jsxs("div", { children: [jsxRuntime.jsxs(CommentTitle, { children: [(_b = author.name) !== null && _b !== void 0 ? _b : "User", " ", jsxRuntime.jsx(CommentDate, { children: date })] }), jsxRuntime.jsx(ReadOnly, { children: jsxRuntime.jsx(EditorContainer$1, Object.assign({ editable: false }, { children: jsxRuntime.jsx(react.EditorContent, { editor: ed }) })) })] })] }), jsxRuntime.jsx(Grid, { children: jsxRuntime.jsx(Row$1, Object.assign({ className: "responsive-container" }, { children: media.map((file, index) => {
|
|
4957
|
-
|
|
4958
|
-
|
|
4959
|
-
|
|
4960
|
-
|
|
4961
|
-
|
|
4962
|
-
if (file.type.includes("video"))
|
|
4963
|
-
return (jsxRuntime.jsx(Col, Object.assign({ xs: 12, sm: 4, className: "flex-3-sm" }, { children: jsxRuntime.jsx(VideoThumbnail, { src: file.url, index: index, showX: false, isLoadingMedia: false, clickThumbnail: () => {
|
|
4964
|
-
handleClickThumbnail(file, index);
|
|
4965
|
-
} }, index) })));
|
|
4966
|
-
return null;
|
|
4967
|
-
}) })) }), isOpen && selectedImage && (jsxRuntime.jsxs(Lightbox, Object.assign({ onClose: closeLightbox }, { children: [jsxRuntime.jsx(Lightbox.Header, { children: jsxRuntime.jsxs(reactTypography.MD, Object.assign({ isBold: true }, { children: [jsxRuntime.jsx(Grey600Span, { children: header && header.title }), header && header.message && (jsxRuntime.jsxs(Grey800Span, { children: [" | ", header.message] }))] })) }), jsxRuntime.jsxs(Lightbox.Body, { children: [jsxRuntime.jsx(Lightbox.Body.Main, Object.assign({ style: { flex: 2 } }, { children: jsxRuntime.jsx(Slider, Object.assign({ prevArrow: jsxRuntime.jsx(Slider.PrevButton, { isBright: true }), nextArrow: jsxRuntime.jsx(Slider.NextButton, { isBright: true }), onSlideChange: slideChange, initialSlide: selectedImageIndex }, { children: media.map((item, index) => (jsxRuntime.jsxs(Slider.Slide, { children: [item.type === "image" && (jsxRuntime.jsx("img", { src: item.url, alt: `{{${item.url}}}` })), item.type === "video" && (jsxRuntime.jsx(Player, { ref: (ref) => {
|
|
4968
|
-
videoRefs.current.push(ref);
|
|
4969
|
-
}, url: item.url }))] }))) })) })), jsxRuntime.jsx(Lightbox.Body.Details, Object.assign({ style: { flex: 1 } }, { children: jsxRuntime.jsx(Comment, Object.assign({ header: header, author: {
|
|
4970
|
-
avatar: author.avatar,
|
|
4971
|
-
name: author.name,
|
|
4972
|
-
}, date: date, message: message }, { children: jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsx("br", {}) }) })) }))] }), jsxRuntime.jsx(Lightbox.Footer, {}), jsxRuntime.jsx(Lightbox.Close, { "aria-label": "Close modal" })] }))), jsxRuntime.jsx(Footer$2, { children: children })] }));
|
|
4922
|
+
return (jsxRuntime.jsxs(CommentCard, { children: [jsxRuntime.jsxs(AuthorContainer, { children: [jsxRuntime.jsx(Avatar, Object.assign({ avatarType: (_a = author.avatarType) !== null && _a !== void 0 ? _a : "text", style: { flexShrink: 0 } }, { children: author.avatar })), jsxRuntime.jsxs("div", { children: [jsxRuntime.jsxs(CommentTitle, { children: [(_b = author.name) !== null && _b !== void 0 ? _b : "User", " ", jsxRuntime.jsx(CommentDate, { children: date })] }), jsxRuntime.jsx(ReadOnly, { children: jsxRuntime.jsx(EditorContainer$1, Object.assign({ editable: false }, { children: jsxRuntime.jsx(react.EditorContent, { editor: ed }) })) })] })] }), jsxRuntime.jsx(Grid, { children: jsxRuntime.jsx(Row$1, Object.assign({ className: "responsive-container" }, { children: media.map((file, index) => (jsxRuntime.jsx(Col, Object.assign({ xs: 12, sm: 4, className: "flex-3-sm" }, { children: jsxRuntime.jsx(Thumbnail, { src: file.url, type: file.type, showX: false, isLoadingMedia: false, clickThumbnail: () => {
|
|
4923
|
+
handleClickThumbnail(index);
|
|
4924
|
+
} }) }), index))) })) }), jsxRuntime.jsx(MediaLightBox, { isOpen: isOpen, header: jsxRuntime.jsxs(reactTypography.MD, Object.assign({ isBold: true }, { children: [jsxRuntime.jsx(Grey600Span, { children: header && header.title }), header && header.message && (jsxRuntime.jsxs(Grey800Span, { children: [" | ", header.message] }))] })), onClose: closeLightbox, slideChange: slideChange, selectedImageIndex: selectedImageIndex, thumbnails: media, videoRefs: videoRefs, details: jsxRuntime.jsx(Comment, Object.assign({ header: header, author: {
|
|
4925
|
+
avatar: author.avatar,
|
|
4926
|
+
name: author.name,
|
|
4927
|
+
}, date: date, message: message }, { children: jsxRuntime.jsx(jsxRuntime.Fragment, { children: jsxRuntime.jsx("br", {}) }) })) }), jsxRuntime.jsx(Footer$2, { children: children })] }));
|
|
4973
4928
|
};
|
|
4974
4929
|
|
|
4975
4930
|
/**
|
|
@@ -5627,9 +5582,10 @@ const useHighlightContext = () => {
|
|
|
5627
5582
|
};
|
|
5628
5583
|
|
|
5629
5584
|
const StyledSearchWord = styled__default["default"].span `
|
|
5630
|
-
background-color: ${({ theme }) => theme.palette.product.talk};
|
|
5631
|
-
color: ${({ theme }) => theme.palette.grey[700]}
|
|
5632
|
-
|
|
5585
|
+
background-color: ${({ theme }) => theme.palette.product.talk};
|
|
5586
|
+
color: ${({ theme }) => theme.palette.grey[700]};
|
|
5587
|
+
`;
|
|
5588
|
+
const Searchable = ({ text, }) => {
|
|
5633
5589
|
const { searchTerm } = useHighlightContext();
|
|
5634
5590
|
if (searchTerm) {
|
|
5635
5591
|
const parts = text.split(new RegExp(`(${searchTerm})`, "gi"));
|
|
@@ -5646,7 +5602,6 @@ const StyledWord = styled__default["default"](reactTypography.Span) `
|
|
|
5646
5602
|
var _a, _b;
|
|
5647
5603
|
return observation &&
|
|
5648
5604
|
` user-select: none;
|
|
5649
|
-
padding: 0;
|
|
5650
5605
|
background-color: ${(_a = observation.hue) !== null && _a !== void 0 ? _a : getColor(theme.palette.azure, 700, undefined, 0.5)};
|
|
5651
5606
|
color: ${(_b = observation.color) !== null && _b !== void 0 ? _b : "white"};
|
|
5652
5607
|
box-sizing: border-box;
|
|
@@ -5661,7 +5616,7 @@ const StyledWord = styled__default["default"](reactTypography.Span) `
|
|
|
5661
5616
|
}}
|
|
5662
5617
|
`;
|
|
5663
5618
|
const ActiveWord = styled__default["default"].span `
|
|
5664
|
-
background-color: ${({ theme }) => getColor(theme.palette.fuschia,
|
|
5619
|
+
background-color: ${({ theme }) => getColor(theme.palette.fuschia, 400, undefined, 0.4)};
|
|
5665
5620
|
padding: 0 2px;
|
|
5666
5621
|
`;
|
|
5667
5622
|
const WordsContainer = styled__default["default"].div `
|
|
@@ -5716,9 +5671,9 @@ const Word = (props) => {
|
|
|
5716
5671
|
// Is there an observation that contains this word?
|
|
5717
5672
|
const observation = (_a = props.observations) === null || _a === void 0 ? void 0 : _a.find((obs) => props.start >= obs.start && props.end <= obs.end);
|
|
5718
5673
|
if (props.tooltipContent !== undefined && !!observation) {
|
|
5719
|
-
return (jsxRuntime.jsx(Tooltip, Object.assign({ content: props.tooltipContent(observation), isTransparent: true }, { children: jsxRuntime.jsxs(StyledWord, Object.assign({}, props, { observation: observation, "data-start": props.start, "data-end": props.end, className: !!observation ? "highlighted" : "" }, (!!observation ? { tag: "observation" } : {}), { children: [isActive ? (jsxRuntime.jsx(ActiveWord, { children: jsxRuntime.jsx(Searchable, {
|
|
5674
|
+
return (jsxRuntime.jsx(Tooltip, Object.assign({ content: props.tooltipContent(observation), isTransparent: true }, { children: jsxRuntime.jsxs(StyledWord, Object.assign({}, props, { observation: observation, "data-start": props.start, "data-end": props.end, className: !!observation ? "highlighted" : "" }, (!!observation ? { tag: "observation" } : {}), { children: [isActive ? (jsxRuntime.jsx(ActiveWord, { children: jsxRuntime.jsx(Searchable, { text: props.text }) })) : (jsxRuntime.jsx(Searchable, { text: props.text })), " "] })) })));
|
|
5720
5675
|
}
|
|
5721
|
-
return (jsxRuntime.jsxs(StyledWord, Object.assign({}, props, { observation: observation, "data-start": props.start, "data-end": props.end, className: !!observation ? "highlighted" : "" }, (!!observation ? { tag: "observation" } : {}), { children: [isActive ? (jsxRuntime.jsx(ActiveWord, { children: jsxRuntime.jsx(Searchable, {
|
|
5676
|
+
return (jsxRuntime.jsxs(StyledWord, Object.assign({}, props, { observation: observation, "data-start": props.start, "data-end": props.end, className: !!observation ? "highlighted" : "" }, (!!observation ? { tag: "observation" } : {}), { children: [isActive ? (jsxRuntime.jsx(ActiveWord, { children: jsxRuntime.jsx(Searchable, { text: props.text }) })) : (jsxRuntime.jsx(Searchable, { text: props.text })), " "] })));
|
|
5722
5677
|
};
|
|
5723
5678
|
Highlight.Word = Word;
|
|
5724
5679
|
|