@azure/communication-react 1.11.1-alpha-202312160012 → 1.11.1-alpha-202312190013
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/dist/communication-react.d.ts +41 -10
- package/dist/dist-cjs/communication-react/index.js +246 -177
- package/dist/dist-cjs/communication-react/index.js.map +1 -1
- package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
- package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
- package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +2 -2
- package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
- package/dist/dist-esm/communication-react/src/index.d.ts +1 -0
- package/dist/dist-esm/communication-react/src/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/EndCallButton.js +9 -6
- package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.d.ts +5 -5
- package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.js +10 -9
- package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.d.ts +4 -0
- package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.js +13 -3
- package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.d.ts +8 -4
- package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js +76 -39
- package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.d.ts +9 -1
- package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.js +21 -1
- package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js +8 -34
- package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map +1 -1
- package/dist/dist-esm/react-components/src/index.d.ts +1 -0
- package/dist/dist-esm/react-components/src/index.js.map +1 -1
- package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.d.ts +23 -0
- package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.js +4 -0
- package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.js.map +1 -0
- package/dist/dist-esm/react-components/src/types/index.d.ts +1 -0
- package/dist/dist-esm/react-components/src/types/index.js +1 -0
- package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +3 -5
- package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +12 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +10 -3
- package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.d.ts +3 -5
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +2 -2
- package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +6 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +4 -0
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +14 -3
- package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +3 -5
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +3 -1
- package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/SurveyPane.d.ts +2 -0
- package/dist/dist-esm/react-composites/src/composites/common/SurveyPane.js +59 -3
- package/dist/dist-esm/react-composites/src/composites/common/SurveyPane.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/SurveyPaneContent.d.ts +6 -3
- package/dist/dist-esm/react-composites/src/composites/common/SurveyPaneContent.js +14 -76
- package/dist/dist-esm/react-composites/src/composites/common/SurveyPaneContent.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.d.ts +3 -3
- package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js +3 -2
- package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +2 -0
- package/dist/dist-esm/react-composites/src/composites/common/icons.js +1 -0
- package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
- package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +4 -1
- package/package.json +1 -1
package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"StarSurvey.styles.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/components/Survey/StarSurvey/StarSurvey.styles.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAwB,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,yCAAgC;AAEnD;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAY,EAAU,EAAE,CACtD,WAAW,CAAC;IACV,UAAU,EAAE,GAAG;IACf,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;IACtB,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;IACnC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;CACzB,CAAC,CAAC;AAEL;;GAEG;AACH,MAAM,CAAC,MAAM,
|
1
|
+
{"version":3,"file":"StarSurvey.styles.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/components/Survey/StarSurvey/StarSurvey.styles.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAwB,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACpE,OAAO,EAAE,QAAQ,EAAE,yCAAgC;AAEnD;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAY,EAAU,EAAE,CACtD,WAAW,CAAC;IACV,UAAU,EAAE,GAAG;IACf,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;IACtB,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;IACnC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;CACzB,CAAC,CAAC;AAEL;;GAEG;AACH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,KAAY,EAAU,EAAE,CAC5D,WAAW,CAAC;IACV,UAAU,EAAE,GAAG;IACf,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;IACtB,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY;IACjC,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC;IAC1B,SAAS,EAAE,QAAQ,CAAC,EAAE,CAAC;IACvB,SAAS,EAAE,QAAQ;CACpB,CAAC,CAAC;AAEL;;GAEG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,KAAY,EAA0B,EAAE;IACnE,OAAO;QACL,IAAI,EAAE;YACJ,SAAS,EAAE,QAAQ;SACpB;QACD,UAAU,EAAE;YACV,SAAS,EAAE,aAAa;SACzB;QACD,eAAe,EAAE;YACf,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,YAAY;SAClC;KACF,CAAC;AACJ,CAAC,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAAG,WAAW,CAAC;IACjD,aAAa,EAAE,QAAQ,CAAC,CAAC,CAAC;CAC3B,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { IRatingStyles, Theme, mergeStyles } from '@fluentui/react';\nimport { _pxToRem } from '@internal/acs-ui-common';\n\n/**\n * @private\n */\nexport const helperTextStyle = (theme: Theme): string =>\n mergeStyles({\n fontWeight: 600,\n fontSize: _pxToRem(14),\n lineHeight: _pxToRem(20),\n color: theme.palette.neutralPrimary,\n paddingTop: _pxToRem(20)\n });\n\n/**\n * @private\n */\nexport const ratingHelperTextStyle = (theme: Theme): string =>\n mergeStyles({\n fontWeight: 400,\n fontSize: _pxToRem(12),\n lineHeight: _pxToRem(12),\n color: theme.palette.themePrimary,\n marginBottom: _pxToRem(24),\n marginTop: _pxToRem(10),\n textAlign: 'center'\n });\n\n/**\n * @private\n */\nexport const ratingStyles = (theme: Theme): Partial<IRatingStyles> => {\n return {\n root: {\n textAlign: 'center'\n },\n ratingStar: {\n transform: 'scale(1.15)'\n },\n ratingStarFront: {\n color: theme.palette.themePrimary\n }\n };\n};\n\n/**\n * @private\n */\nexport const titleContainerClassName = mergeStyles({\n paddingBottom: _pxToRem(6)\n});\n"]}
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/// <reference types="react" />
|
2
2
|
import { _AudioIssue, _CallSurvey, _OverallIssue, _ScreenshareIssue, _VideoIssue } from '../SurveyTypes';
|
3
|
-
import { SurveyIssuesHeadingStrings, SurveyIssues } from '../../../types';
|
3
|
+
import { SurveyIssuesHeadingStrings, SurveyIssues, CallSurveyImprovementSuggestions } from '../../../types';
|
4
4
|
/**
|
5
5
|
* Strings of {@link TagsSurvey} that can be overridden.
|
6
6
|
*
|
@@ -15,6 +15,10 @@ export interface _TagsSurveyStrings {
|
|
15
15
|
* Helper text for tag survey explaining what the survey is for
|
16
16
|
*/
|
17
17
|
tagsSurveyHelperText?: string;
|
18
|
+
/**
|
19
|
+
* Default text for free form text field inside tags survey
|
20
|
+
*/
|
21
|
+
tagsSurveyTextFieldDefaultText?: string;
|
18
22
|
}
|
19
23
|
/**
|
20
24
|
* Survey Issue categories
|
@@ -39,14 +43,14 @@ export type _SurveyTag = {
|
|
39
43
|
* @internal
|
40
44
|
*/
|
41
45
|
export interface _TagsSurveyProps {
|
42
|
-
/** Issues included in the survey */
|
43
|
-
issues: (_AudioIssue | _OverallIssue | _ScreenshareIssue | _VideoIssue)[];
|
44
46
|
/** Mappings from call issues to tags displayed on the survey*/
|
45
47
|
callIssuesToTag: SurveyIssues;
|
46
48
|
/** Mappings from issue category to categories displayed on survey*/
|
47
49
|
categoryHeadings: SurveyIssuesHeadingStrings;
|
48
50
|
/** Function to send TagsSurvey results*/
|
49
|
-
onConfirm?: (selectedTags: _CallSurvey) => void;
|
51
|
+
onConfirm?: (selectedTags: _CallSurvey, improvementSuggestions?: CallSurveyImprovementSuggestions) => void;
|
52
|
+
/** show the text field for more info*/
|
53
|
+
showFreeFormTextField?: boolean;
|
50
54
|
/** Tags survey strings */
|
51
55
|
strings?: _TagsSurveyStrings;
|
52
56
|
}
|
@@ -1,70 +1,103 @@
|
|
1
1
|
// Copyright (c) Microsoft Corporation.
|
2
2
|
// Licensed under the MIT License.
|
3
|
-
import React, { useMemo, useState } from 'react';
|
4
|
-
import { Text, useTheme, Stack, Checkbox, Pivot, PivotItem } from '@fluentui/react';
|
5
|
-
import { checkboxClassName, questionTextStyle, helperTextStyle } from './TagsSurvey.styles';
|
3
|
+
import React, { useCallback, useMemo, useState } from 'react';
|
4
|
+
import { Text, useTheme, Stack, Checkbox, Pivot, PivotItem, TextField } from '@fluentui/react';
|
5
|
+
import { checkboxClassName, questionTextStyle, helperTextStyle, freeFormTextFieldClassName, freeFormTextCheckboxStyles } from './TagsSurvey.styles';
|
6
6
|
/**
|
7
7
|
* A component to allow users to send numerical ratings regarding call quality
|
8
8
|
*
|
9
9
|
* @internal
|
10
10
|
*/
|
11
11
|
export const _TagsSurvey = (props) => {
|
12
|
-
const {
|
12
|
+
const { callIssuesToTag, categoryHeadings, onConfirm, strings, showFreeFormTextField } = props;
|
13
13
|
const [selectedTags, setSelectedTags] = useState({});
|
14
|
+
const [textResponse, setTextResponse] = useState({});
|
15
|
+
const [selectedTextResponse, setSelectedTextResponse] = useState({});
|
14
16
|
const tags = useMemo(() => {
|
15
17
|
const tags = [];
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
if (issueCategory) {
|
18
|
+
Object.keys(callIssuesToTag).forEach((issueCategory) => {
|
19
|
+
Object.keys(callIssuesToTag[issueCategory]).map((issue) => {
|
20
|
+
const issueCapitalized = (issue === null || issue === void 0 ? void 0 : issue.charAt(0).toUpperCase()) + (issue === null || issue === void 0 ? void 0 : issue.slice(1));
|
20
21
|
if (tags[issueCategory]) {
|
21
22
|
tags[issueCategory].push({
|
22
|
-
message: callIssuesToTag[issueCategory][
|
23
|
-
issue:
|
23
|
+
message: callIssuesToTag[issueCategory][issue],
|
24
|
+
issue: issueCapitalized
|
24
25
|
});
|
25
26
|
}
|
26
27
|
else {
|
27
28
|
tags[issueCategory] = [
|
28
29
|
{
|
29
|
-
message: callIssuesToTag[issueCategory][
|
30
|
-
issue:
|
30
|
+
message: callIssuesToTag[issueCategory][issue],
|
31
|
+
issue: issueCapitalized
|
31
32
|
}
|
32
33
|
];
|
33
34
|
}
|
34
|
-
}
|
35
|
+
});
|
35
36
|
});
|
36
37
|
return tags;
|
37
|
-
}, [
|
38
|
-
const onChange = React.useCallback((
|
38
|
+
}, [callIssuesToTag]);
|
39
|
+
const onChange = React.useCallback((issueCategory, checked, issue) => {
|
39
40
|
if (checked) {
|
40
|
-
|
41
|
-
|
42
|
-
prevState[issueCategory]
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
41
|
+
if (issue) {
|
42
|
+
setSelectedTags((prevState) => {
|
43
|
+
if (prevState[issueCategory]) {
|
44
|
+
prevState[issueCategory].issues.push(issue);
|
45
|
+
}
|
46
|
+
else {
|
47
|
+
prevState[issueCategory] = { score: 1, issues: [issue] };
|
48
|
+
}
|
49
|
+
return prevState;
|
50
|
+
});
|
51
|
+
}
|
52
|
+
else {
|
53
|
+
setSelectedTextResponse((prevState) => {
|
54
|
+
prevState[issueCategory] = textResponse[issueCategory];
|
55
|
+
return prevState;
|
56
|
+
});
|
57
|
+
}
|
49
58
|
}
|
50
59
|
else {
|
51
|
-
|
52
|
-
|
53
|
-
|
54
|
-
|
55
|
-
|
56
|
-
|
57
|
-
|
60
|
+
if (issue) {
|
61
|
+
setSelectedTags((prevState) => {
|
62
|
+
if (prevState[issueCategory]) {
|
63
|
+
prevState[issueCategory].issues = prevState[issueCategory].issues.filter(function (value) {
|
64
|
+
return value !== issue;
|
65
|
+
});
|
66
|
+
if (prevState[issueCategory].issues.length === 0) {
|
67
|
+
delete prevState[issueCategory];
|
68
|
+
}
|
58
69
|
}
|
59
|
-
|
60
|
-
|
61
|
-
}
|
70
|
+
return prevState;
|
71
|
+
});
|
72
|
+
}
|
73
|
+
else {
|
74
|
+
setSelectedTextResponse((prevState) => {
|
75
|
+
delete prevState[issueCategory];
|
76
|
+
return prevState;
|
77
|
+
});
|
78
|
+
}
|
62
79
|
}
|
63
80
|
if (onConfirm) {
|
64
|
-
onConfirm(selectedTags);
|
81
|
+
onConfirm(selectedTags, selectedTextResponse);
|
65
82
|
}
|
66
|
-
}, [onConfirm, selectedTags]);
|
83
|
+
}, [onConfirm, selectedTags, selectedTextResponse, textResponse]);
|
67
84
|
const theme = useTheme();
|
85
|
+
const onRenderLabel = useCallback((issueCategory) => {
|
86
|
+
return (React.createElement(TextField, { key: issueCategory, className: freeFormTextFieldClassName, underlined: true, placeholder: strings === null || strings === void 0 ? void 0 : strings.tagsSurveyTextFieldDefaultText, onChange: (e, v) => {
|
87
|
+
if (v) {
|
88
|
+
setTextResponse((prevState) => {
|
89
|
+
prevState[issueCategory] = v;
|
90
|
+
return prevState;
|
91
|
+
});
|
92
|
+
setSelectedTextResponse((prevState) => {
|
93
|
+
if (Object.keys(prevState).includes(issueCategory)) {
|
94
|
+
prevState[issueCategory] = v;
|
95
|
+
}
|
96
|
+
return prevState;
|
97
|
+
});
|
98
|
+
}
|
99
|
+
} }));
|
100
|
+
}, [strings === null || strings === void 0 ? void 0 : strings.tagsSurveyTextFieldDefaultText]);
|
68
101
|
return (React.createElement(React.Fragment, null,
|
69
102
|
React.createElement(Stack, { verticalAlign: "center" },
|
70
103
|
React.createElement(Text, { className: questionTextStyle(theme) }, strings === null || strings === void 0 ? void 0 : strings.tagsSurveyQuestion),
|
@@ -73,9 +106,13 @@ export const _TagsSurvey = (props) => {
|
|
73
106
|
return (React.createElement(PivotItem, { key: `key-${i}`, headerText: categoryHeadings[key], headerButtonProps: {
|
74
107
|
'data-order': i,
|
75
108
|
'data-title': key
|
76
|
-
}, alwaysRender: true },
|
77
|
-
|
78
|
-
|
109
|
+
}, alwaysRender: true },
|
110
|
+
tags[key].map((t, i) => {
|
111
|
+
return (React.createElement(Checkbox, { className: checkboxClassName, key: `checkBox_${i}`, label: t.message, onChange: (ev, checked) => onChange(key, checked !== null && checked !== void 0 ? checked : false, t.issue) }));
|
112
|
+
}),
|
113
|
+
showFreeFormTextField && (React.createElement(Checkbox, { styles: freeFormTextCheckboxStyles, onChange: (ev, checked) => onChange(key, checked !== null && checked !== void 0 ? checked : false), onRenderLabel: () => {
|
114
|
+
return onRenderLabel(key);
|
115
|
+
} }))));
|
79
116
|
}))));
|
80
117
|
};
|
81
118
|
//# sourceMappingURL=TagsSurvey.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TagsSurvey.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/components/Survey/TagsSurvey/TagsSurvey.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useMemo, useState } from 'react';\nimport { Text, useTheme, Stack, Checkbox, Pivot, PivotItem } from '@fluentui/react';\nimport { _formatString, _pxToRem } from '@internal/acs-ui-common';\nimport { checkboxClassName, questionTextStyle, helperTextStyle } from './TagsSurvey.styles';\nimport {\n _AudioIssue,\n _CallSurvey,\n _CallSurveyResponse,\n _OverallIssue,\n _ScreenshareIssue,\n _VideoIssue\n} from '../SurveyTypes';\nimport { SurveyIssuesHeadingStrings, SurveyIssues } from '../../../types';\n/**\n * Strings of {@link TagsSurvey} that can be overridden.\n *\n * @internal\n */\nexport interface _TagsSurveyStrings {\n /**\n * Survey question\n */\n tagsSurveyQuestion?: string;\n /**\n * Helper text for tag survey explaining what the survey is for\n */\n tagsSurveyHelperText?: string;\n}\n\n/**\n * Survey Issue categories\n *\n * @internal\n */\nexport type _IssueCategory = 'overallRating' | 'audioRating' | 'videoRating' | 'screenshareRating';\n\n/**\n * Key value pair of survey catogories and corresponding message/issue\n *\n * @internal\n */\nexport type _SurveyTag = {\n [issueCategory: string]: {\n message: string;\n issue: _AudioIssue | _OverallIssue | _ScreenshareIssue | _VideoIssue;\n }[];\n};\n\n/**\n * Props for {@link TagsSurvey} component.\n *\n * @internal\n */\nexport interface _TagsSurveyProps {\n /** Issues included in the survey */\n issues: (_AudioIssue | _OverallIssue | _ScreenshareIssue | _VideoIssue)[];\n /** Mappings from call issues to tags displayed on the survey*/\n callIssuesToTag: SurveyIssues;\n /** Mappings from issue category to categories displayed on survey*/\n categoryHeadings: SurveyIssuesHeadingStrings;\n /** Function to send TagsSurvey results*/\n onConfirm?: (selectedTags: _CallSurvey) => void;\n /** Tags survey strings */\n strings?: _TagsSurveyStrings;\n}\n\n/**\n * A component to allow users to send numerical ratings regarding call quality\n *\n * @internal\n */\nexport const _TagsSurvey = (props: _TagsSurveyProps): JSX.Element => {\n const { issues, callIssuesToTag, categoryHeadings, onConfirm, strings } = props;\n\n const [selectedTags, setSelectedTags] = useState({});\n\n const tags: _SurveyTag[] = useMemo(() => {\n const tags: _SurveyTag[] = [];\n issues.forEach((issue) => {\n const issueCamelCase = issue?.charAt(0).toLowerCase() + issue?.slice(1);\n const issueCategory = Object.keys(callIssuesToTag).find(\n (key) => callIssuesToTag[key][issueCamelCase] !== undefined\n );\n if (issueCategory) {\n if (tags[issueCategory]) {\n tags[issueCategory].push({\n message: callIssuesToTag[issueCategory][issueCamelCase],\n issue: issue\n });\n } else {\n tags[issueCategory] = [\n {\n message: callIssuesToTag[issueCategory][issueCamelCase],\n issue: issue\n }\n ];\n }\n }\n });\n return tags;\n }, [issues, callIssuesToTag]);\n\n const onChange = React.useCallback(\n (issue: string, issueCategory: string, checked: boolean): void => {\n if (checked) {\n setSelectedTags((prevState) => {\n if (prevState[issueCategory]) {\n prevState[issueCategory].issues.push(issue);\n } else {\n prevState[issueCategory] = { score: 1, issues: [issue] };\n }\n return prevState;\n });\n } else {\n setSelectedTags((prevState) => {\n if (prevState[issueCategory]) {\n prevState[issueCategory].issues = prevState[issueCategory].issues.filter(function (value) {\n return value !== issue;\n });\n if (prevState[issueCategory].issues.length === 0) {\n delete prevState[issueCategory];\n }\n }\n return prevState;\n });\n }\n\n if (onConfirm) {\n onConfirm(selectedTags);\n }\n },\n [onConfirm, selectedTags]\n );\n\n const theme = useTheme();\n\n return (\n <>\n <Stack verticalAlign=\"center\">\n <Text className={questionTextStyle(theme)}>{strings?.tagsSurveyQuestion}</Text>\n <Text className={helperTextStyle(theme)}>{strings?.tagsSurveyHelperText}</Text>\n </Stack>\n\n <Pivot>\n {Object.keys(tags).map((key, i) => {\n return (\n <PivotItem\n key={`key-${i}`}\n headerText={categoryHeadings[key]}\n headerButtonProps={{\n 'data-order': i,\n 'data-title': key\n }}\n alwaysRender\n >\n {tags[key].map((t, i) => {\n return (\n <Checkbox\n className={checkboxClassName}\n key={`checkBox_${i}`}\n label={t.message}\n onChange={(ev, checked) => onChange(t.issue, key, checked ?? false)}\n />\n );\n })}\n </PivotItem>\n );\n })}\n </Pivot>\n </>\n );\n};\n"]}
|
1
|
+
{"version":3,"file":"TagsSurvey.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/components/Survey/TagsSurvey/TagsSurvey.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { useCallback, useMemo, useState } from 'react';\nimport { Text, useTheme, Stack, Checkbox, Pivot, PivotItem, TextField } from '@fluentui/react';\nimport { _formatString, _pxToRem } from '@internal/acs-ui-common';\nimport {\n checkboxClassName,\n questionTextStyle,\n helperTextStyle,\n freeFormTextFieldClassName,\n freeFormTextCheckboxStyles\n} from './TagsSurvey.styles';\nimport {\n _AudioIssue,\n _CallSurvey,\n _CallSurveyResponse,\n _OverallIssue,\n _ScreenshareIssue,\n _VideoIssue\n} from '../SurveyTypes';\nimport { SurveyIssuesHeadingStrings, SurveyIssues, CallSurveyImprovementSuggestions } from '../../../types';\n/**\n * Strings of {@link TagsSurvey} that can be overridden.\n *\n * @internal\n */\nexport interface _TagsSurveyStrings {\n /**\n * Survey question\n */\n tagsSurveyQuestion?: string;\n /**\n * Helper text for tag survey explaining what the survey is for\n */\n tagsSurveyHelperText?: string;\n /**\n * Default text for free form text field inside tags survey\n */\n tagsSurveyTextFieldDefaultText?: string;\n}\n\n/**\n * Survey Issue categories\n *\n * @internal\n */\nexport type _IssueCategory = 'overallRating' | 'audioRating' | 'videoRating' | 'screenshareRating';\n\n/**\n * Key value pair of survey catogories and corresponding message/issue\n *\n * @internal\n */\nexport type _SurveyTag = {\n [issueCategory: string]: {\n message: string;\n issue: _AudioIssue | _OverallIssue | _ScreenshareIssue | _VideoIssue;\n }[];\n};\n\n/**\n * Props for {@link TagsSurvey} component.\n *\n * @internal\n */\nexport interface _TagsSurveyProps {\n /** Mappings from call issues to tags displayed on the survey*/\n callIssuesToTag: SurveyIssues;\n /** Mappings from issue category to categories displayed on survey*/\n categoryHeadings: SurveyIssuesHeadingStrings;\n /** Function to send TagsSurvey results*/\n onConfirm?: (selectedTags: _CallSurvey, improvementSuggestions?: CallSurveyImprovementSuggestions) => void;\n /** show the text field for more info*/\n showFreeFormTextField?: boolean;\n /** Tags survey strings */\n strings?: _TagsSurveyStrings;\n}\n\n/**\n * A component to allow users to send numerical ratings regarding call quality\n *\n * @internal\n */\nexport const _TagsSurvey = (props: _TagsSurveyProps): JSX.Element => {\n const { callIssuesToTag, categoryHeadings, onConfirm, strings, showFreeFormTextField } = props;\n\n const [selectedTags, setSelectedTags] = useState({});\n\n const [textResponse, setTextResponse] = useState<CallSurveyImprovementSuggestions>({});\n\n const [selectedTextResponse, setSelectedTextResponse] = useState<CallSurveyImprovementSuggestions>({});\n\n const tags: _SurveyTag[] = useMemo(() => {\n const tags: _SurveyTag[] = [];\n Object.keys(callIssuesToTag).forEach((issueCategory) => {\n Object.keys(callIssuesToTag[issueCategory]).map((issue) => {\n const issueCapitalized = issue?.charAt(0).toUpperCase() + issue?.slice(1);\n\n if (tags[issueCategory]) {\n tags[issueCategory].push({\n message: callIssuesToTag[issueCategory][issue],\n issue: issueCapitalized\n });\n } else {\n tags[issueCategory] = [\n {\n message: callIssuesToTag[issueCategory][issue],\n issue: issueCapitalized\n }\n ];\n }\n });\n });\n return tags;\n }, [callIssuesToTag]);\n\n const onChange = React.useCallback(\n (issueCategory: string, checked: boolean, issue?: string): void => {\n if (checked) {\n if (issue) {\n setSelectedTags((prevState) => {\n if (prevState[issueCategory]) {\n prevState[issueCategory].issues.push(issue);\n } else {\n prevState[issueCategory] = { score: 1, issues: [issue] };\n }\n return prevState;\n });\n } else {\n setSelectedTextResponse((prevState) => {\n prevState[issueCategory] = textResponse[issueCategory];\n return prevState;\n });\n }\n } else {\n if (issue) {\n setSelectedTags((prevState) => {\n if (prevState[issueCategory]) {\n prevState[issueCategory].issues = prevState[issueCategory].issues.filter(function (value) {\n return value !== issue;\n });\n if (prevState[issueCategory].issues.length === 0) {\n delete prevState[issueCategory];\n }\n }\n return prevState;\n });\n } else {\n setSelectedTextResponse((prevState) => {\n delete prevState[issueCategory];\n return prevState;\n });\n }\n }\n\n if (onConfirm) {\n onConfirm(selectedTags, selectedTextResponse);\n }\n },\n [onConfirm, selectedTags, selectedTextResponse, textResponse]\n );\n\n const theme = useTheme();\n\n const onRenderLabel = useCallback(\n (issueCategory) => {\n return (\n <TextField\n key={issueCategory}\n className={freeFormTextFieldClassName}\n underlined\n placeholder={strings?.tagsSurveyTextFieldDefaultText}\n onChange={(e, v) => {\n if (v) {\n setTextResponse((prevState) => {\n prevState[issueCategory] = v;\n return prevState;\n });\n\n setSelectedTextResponse((prevState) => {\n if (Object.keys(prevState).includes(issueCategory)) {\n prevState[issueCategory] = v;\n }\n return prevState;\n });\n }\n }}\n />\n );\n },\n [strings?.tagsSurveyTextFieldDefaultText]\n );\n\n return (\n <>\n <Stack verticalAlign=\"center\">\n <Text className={questionTextStyle(theme)}>{strings?.tagsSurveyQuestion}</Text>\n <Text className={helperTextStyle(theme)}>{strings?.tagsSurveyHelperText}</Text>\n </Stack>\n\n <Pivot>\n {Object.keys(tags).map((key, i) => {\n return (\n <PivotItem\n key={`key-${i}`}\n headerText={categoryHeadings[key]}\n headerButtonProps={{\n 'data-order': i,\n 'data-title': key\n }}\n alwaysRender\n >\n {tags[key].map((t, i) => {\n return (\n <Checkbox\n className={checkboxClassName}\n key={`checkBox_${i}`}\n label={t.message}\n onChange={(ev, checked) => onChange(key, checked ?? false, t.issue)}\n />\n );\n })}\n {showFreeFormTextField && (\n <Checkbox\n styles={freeFormTextCheckboxStyles}\n onChange={(ev, checked) => onChange(key, checked ?? false)}\n onRenderLabel={() => {\n return onRenderLabel(key);\n }}\n />\n )}\n </PivotItem>\n );\n })}\n </Pivot>\n </>\n );\n};\n"]}
|
package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.d.ts
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
import { Theme } from '@fluentui/react';
|
1
|
+
import { ICheckboxStyles, Theme } from '@fluentui/react';
|
2
2
|
/**
|
3
3
|
* @private
|
4
4
|
*/
|
@@ -11,4 +11,12 @@ export declare const helperTextStyle: (theme: Theme) => string;
|
|
11
11
|
* @private
|
12
12
|
*/
|
13
13
|
export declare const checkboxClassName: string;
|
14
|
+
/**
|
15
|
+
* @private
|
16
|
+
*/
|
17
|
+
export declare const freeFormTextCheckboxStyles: Partial<ICheckboxStyles>;
|
18
|
+
/**
|
19
|
+
* @private
|
20
|
+
*/
|
21
|
+
export declare const freeFormTextFieldClassName: string;
|
14
22
|
//# sourceMappingURL=TagsSurvey.styles.d.ts.map
|
package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.js
CHANGED
@@ -25,6 +25,26 @@ export const helperTextStyle = (theme) => mergeStyles({
|
|
25
25
|
* @private
|
26
26
|
*/
|
27
27
|
export const checkboxClassName = mergeStyles({
|
28
|
-
padding: _pxToRem(8)
|
28
|
+
padding: _pxToRem(8),
|
29
|
+
paddingLeft: 0
|
30
|
+
});
|
31
|
+
/**
|
32
|
+
* @private
|
33
|
+
*/
|
34
|
+
export const freeFormTextCheckboxStyles = {
|
35
|
+
root: {
|
36
|
+
padding: _pxToRem(8),
|
37
|
+
paddingLeft: 0,
|
38
|
+
width: '100%'
|
39
|
+
},
|
40
|
+
label: {
|
41
|
+
width: '100%'
|
42
|
+
}
|
43
|
+
};
|
44
|
+
/**
|
45
|
+
* @private
|
46
|
+
*/
|
47
|
+
export const freeFormTextFieldClassName = mergeStyles({
|
48
|
+
width: '100%'
|
29
49
|
});
|
30
50
|
//# sourceMappingURL=TagsSurvey.styles.js.map
|
package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"TagsSurvey.styles.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,
|
1
|
+
{"version":3,"file":"TagsSurvey.styles.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAA0B,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACtE,OAAO,EAAE,QAAQ,EAAE,yCAAgC;AAEnD;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,KAAY,EAAU,EAAE,CACxD,WAAW,CAAC;IACV,UAAU,EAAE,GAAG;IACf,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;IACtB,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;IACnC,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;CACzB,CAAC,CAAC;AAEL;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,KAAY,EAAU,EAAE,CACtD,WAAW,CAAC;IACV,UAAU,EAAE,GAAG;IACf,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;IACtB,UAAU,EAAE,QAAQ,CAAC,EAAE,CAAC;IACxB,KAAK,EAAE,KAAK,CAAC,OAAO,CAAC,cAAc;CACpC,CAAC,CAAC;AAEL;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,WAAW,CAAC;IAC3C,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;IACpB,WAAW,EAAE,CAAC;CACf,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAA6B;IAClE,IAAI,EAAE;QACJ,OAAO,EAAE,QAAQ,CAAC,CAAC,CAAC;QACpB,WAAW,EAAE,CAAC;QACd,KAAK,EAAE,MAAM;KACd;IACD,KAAK,EAAE;QACL,KAAK,EAAE,MAAM;KACd;CACF,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAG,WAAW,CAAC;IACpD,KAAK,EAAE,MAAM;CACd,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { ICheckboxStyles, Theme, mergeStyles } from '@fluentui/react';\nimport { _pxToRem } from '@internal/acs-ui-common';\n\n/**\n * @private\n */\nexport const questionTextStyle = (theme: Theme): string =>\n mergeStyles({\n fontWeight: 600,\n fontSize: _pxToRem(14),\n lineHeight: _pxToRem(20),\n color: theme.palette.neutralPrimary,\n paddingTop: _pxToRem(20)\n });\n\n/**\n * @private\n */\nexport const helperTextStyle = (theme: Theme): string =>\n mergeStyles({\n fontWeight: 400,\n fontSize: _pxToRem(12),\n lineHeight: _pxToRem(16),\n color: theme.palette.neutralPrimary\n });\n\n/**\n * @private\n */\nexport const checkboxClassName = mergeStyles({\n padding: _pxToRem(8),\n paddingLeft: 0\n});\n\n/**\n * @private\n */\nexport const freeFormTextCheckboxStyles: Partial<ICheckboxStyles> = {\n root: {\n padding: _pxToRem(8),\n paddingLeft: 0,\n width: '100%'\n },\n label: {\n width: '100%'\n }\n};\n\n/**\n * @private\n */\nexport const freeFormTextFieldClassName = mergeStyles({\n width: '100%'\n});\n"]}
|
package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js
CHANGED
@@ -29,44 +29,18 @@ export const videoEffectsItemContainerStyles = (args) => {
|
|
29
29
|
cursor: args.disabled ? 'default' : 'pointer',
|
30
30
|
height: VideoEffectsItemContainerHeight,
|
31
31
|
width: VideoEffectsItemContainerWidth,
|
32
|
-
|
32
|
+
outlineOffset: '-1px',
|
33
|
+
outline: args.isSelected
|
33
34
|
? `${borderActiveThickness} solid ${args.theme.palette.themePrimary}`
|
34
35
|
: `${borderDefaultThickness} solid ${args.theme.palette.neutralQuaternaryAlt}`,
|
35
|
-
|
36
|
-
// resizing when the border thichkness is changed. We also want the border to be inside
|
37
|
-
// the frame of the container, i.e. we want it to expand inwards and not outwards when
|
38
|
-
// border thickness changes from hover/selection.
|
39
|
-
':after': {
|
40
|
-
content: '""',
|
36
|
+
':hover': {
|
41
37
|
boxSizing: 'border-box',
|
42
|
-
height: VideoEffectsItemContainerBorderHeight,
|
43
38
|
width: VideoEffectsItemContainerBorderWidth,
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
':after': {
|
50
|
-
border: args.disabled && !args.isSelected
|
51
|
-
? `${borderDefaultThickness} solid ${args.theme.palette.neutralQuaternaryAlt}`
|
52
|
-
: `${borderActiveThickness} solid ${args.theme.palette.themePrimary}`,
|
53
|
-
transform: 'translate(-1rem, -3.3rem)'
|
54
|
-
}
|
55
|
-
},
|
56
|
-
':focus': {
|
57
|
-
':after': {
|
58
|
-
outline: 'none',
|
59
|
-
transform: 'translate(-0.1rem, -0.2rem)',
|
60
|
-
':hover': {
|
61
|
-
transform: 'translate(-0.1rem, -0.2rem)'
|
62
|
-
}
|
63
|
-
}
|
64
|
-
},
|
65
|
-
':active': {
|
66
|
-
':after': {
|
67
|
-
outline: 'none',
|
68
|
-
transform: 'translate(-1rem, -3.3rem)'
|
69
|
-
}
|
39
|
+
height: VideoEffectsItemContainerBorderHeight,
|
40
|
+
outlineOffset: '-1px',
|
41
|
+
outline: args.disabled && !args.isSelected
|
42
|
+
? `${borderDefaultThickness} solid ${args.theme.palette.neutralQuaternaryAlt}`
|
43
|
+
: `${borderActiveThickness} solid ${args.theme.palette.themePrimary}`
|
70
44
|
}
|
71
45
|
}
|
72
46
|
};
|
package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"VideoEffectsItem.styles.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/VideoEffects/VideoEffectsItem.styles.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAIlC,MAAM,+BAA+B,GAAG,UAAU,CAAC;AACnD,MAAM,8BAA8B,GAAG,SAAS,CAAC;AACjD,MAAM,qCAAqC,GAAG,UAAU,CAAC;AACzD,MAAM,oCAAoC,GAAG,SAAS,CAAC;AACvD,MAAM,mCAAmC,GAAG,KAAK,CAAC;AAElD,eAAe;AACf,MAAM,CAAC,MAAM,qCAAqC,GAAiB;IACjE,IAAI,EAAE;QACJ,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,+BAA+B;QACvC,KAAK,EAAE,8BAA8B;QACrC,MAAM,EAAE,mCAAmC;KAC5C;CACF,CAAC;AAEF,eAAe;AACf,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,IAK/C,EAAiB,EAAE;IAClB,MAAM,sBAAsB,GAAG,KAAK,CAAC;IACrC,MAAM,qBAAqB,GAAG,KAAK,CAAC;IACpC,OAAO;QACL,IAAI,EAAE;YACJ,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS;YAC/E,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,SAAS;YAClF,kBAAkB,EAAE,QAAQ;YAC5B,cAAc,EAAE,OAAO;YACvB,YAAY,EAAE,SAAS;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc;YACxC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YAC7C,MAAM,EAAE,+BAA+B;YACvC,KAAK,EAAE,8BAA8B;YACrC,MAAM,EAAE,IAAI,CAAC,UAAU;
|
1
|
+
{"version":3,"file":"VideoEffectsItem.styles.js","sourceRoot":"","sources":["../../../../../../../react-components/src/components/VideoEffects/VideoEffectsItem.styles.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAIlC,MAAM,+BAA+B,GAAG,UAAU,CAAC;AACnD,MAAM,8BAA8B,GAAG,SAAS,CAAC;AACjD,MAAM,qCAAqC,GAAG,UAAU,CAAC;AACzD,MAAM,oCAAoC,GAAG,SAAS,CAAC;AACvD,MAAM,mCAAmC,GAAG,KAAK,CAAC;AAElD,eAAe;AACf,MAAM,CAAC,MAAM,qCAAqC,GAAiB;IACjE,IAAI,EAAE;QACJ,UAAU,EAAE,QAAQ;QACpB,MAAM,EAAE,+BAA+B;QACvC,KAAK,EAAE,8BAA8B;QACrC,MAAM,EAAE,mCAAmC;KAC5C;CACF,CAAC;AAEF,eAAe;AACf,MAAM,CAAC,MAAM,+BAA+B,GAAG,CAAC,IAK/C,EAAiB,EAAE;IAClB,MAAM,sBAAsB,GAAG,KAAK,CAAC;IACrC,MAAM,qBAAqB,GAAG,KAAK,CAAC;IACpC,OAAO;QACL,IAAI,EAAE;YACJ,UAAU,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,CAAC,CAAC,CAAC,SAAS;YAC/E,eAAe,EAAE,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,OAAO,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC,SAAS;YAClF,kBAAkB,EAAE,QAAQ;YAC5B,cAAc,EAAE,OAAO;YACvB,YAAY,EAAE,SAAS;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,cAAc;YACxC,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS;YAC7C,MAAM,EAAE,+BAA+B;YACvC,KAAK,EAAE,8BAA8B;YACrC,aAAa,EAAE,MAAM;YACrB,OAAO,EAAE,IAAI,CAAC,UAAU;gBACtB,CAAC,CAAC,GAAG,qBAAqB,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE;gBACrE,CAAC,CAAC,GAAG,sBAAsB,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE;YAChF,QAAQ,EAAE;gBACR,SAAS,EAAE,YAAY;gBACvB,KAAK,EAAE,oCAAoC;gBAC3C,MAAM,EAAE,qCAAqC;gBAC7C,aAAa,EAAE,MAAM;gBACrB,OAAO,EACL,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU;oBAC/B,CAAC,CAAC,GAAG,sBAAsB,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE;oBAC9E,CAAC,CAAC,GAAG,qBAAqB,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE;aAC1E;SACF;KACF,CAAC;AACJ,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { IButtonStyles, IStackStyles, ITheme } from '@fluentui/react';\n\nconst VideoEffectsItemContainerHeight = '3.375rem';\nconst VideoEffectsItemContainerWidth = '4.83rem';\nconst VideoEffectsItemContainerBorderHeight = '3.373rem';\nconst VideoEffectsItemContainerBorderWidth = '4.85rem';\nconst VideoEffectsItemContainerBorderSize = '2px';\n\n/** @private */\nexport const hiddenVideoEffectsItemContainerStyles: IStackStyles = {\n root: {\n visibility: 'hidden',\n height: VideoEffectsItemContainerHeight,\n width: VideoEffectsItemContainerWidth,\n border: VideoEffectsItemContainerBorderSize\n }\n};\n\n/** @private */\nexport const videoEffectsItemContainerStyles = (args: {\n theme: ITheme;\n isSelected: boolean;\n disabled: boolean;\n backgroundImage?: string;\n}): IButtonStyles => {\n const borderDefaultThickness = '1px';\n const borderActiveThickness = '2px';\n return {\n root: {\n background: args.disabled ? args.theme.palette.neutralQuaternaryAlt : undefined,\n backgroundImage: args.backgroundImage ? `url(${args.backgroundImage})` : undefined,\n backgroundPosition: 'center',\n backgroundSize: 'cover',\n borderRadius: '0.25rem',\n color: args.theme.palette.neutralPrimary,\n cursor: args.disabled ? 'default' : 'pointer',\n height: VideoEffectsItemContainerHeight,\n width: VideoEffectsItemContainerWidth,\n outlineOffset: '-1px',\n outline: args.isSelected\n ? `${borderActiveThickness} solid ${args.theme.palette.themePrimary}`\n : `${borderDefaultThickness} solid ${args.theme.palette.neutralQuaternaryAlt}`,\n ':hover': {\n boxSizing: 'border-box',\n width: VideoEffectsItemContainerBorderWidth,\n height: VideoEffectsItemContainerBorderHeight,\n outlineOffset: '-1px',\n outline:\n args.disabled && !args.isSelected\n ? `${borderDefaultThickness} solid ${args.theme.palette.neutralQuaternaryAlt}`\n : `${borderActiveThickness} solid ${args.theme.palette.themePrimary}`\n }\n }\n };\n};\n"]}
|
@@ -33,4 +33,5 @@ export { _spokenLanguageToCaptionLanguage } from './types';
|
|
33
33
|
export type { BlockedMessage } from './types';
|
34
34
|
export type { SurveyIssues } from './types';
|
35
35
|
export type { SurveyIssuesHeadingStrings } from './types';
|
36
|
+
export type { CallSurveyImprovementSuggestions } from './types';
|
36
37
|
//# sourceMappingURL=index.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../react-components/src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AAEtF,cAAc,WAAW,CAAC;AAC1B,cAAc,yBAAyB,CAAC;AAsCxC,iDAAiD;AACjD,OAAO,EAAE,gCAAgC,EAAE,MAAM,SAAS,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport * from './components';\nexport { _IdentifierProvider } from './identifiers';\nexport type { _Identifiers, _IdentifierProviderProps } from './identifiers';\nexport * from './localization/locales';\nexport { LocalizationProvider } from './localization';\nexport { COMPONENT_LOCALE_EN_GB } from './localization/locales/en-GB/ComponentLocale';\nexport { COMPONENT_LOCALE_AR_SA } from './localization/locales/ar-SA/ComponentLocale';\nexport { COMPONENT_LOCALE_CS_CZ } from './localization/locales/cs-CZ/ComponentLocale';\nexport { COMPONENT_LOCALE_DE_DE } from './localization/locales/de-DE/ComponentLocale';\nexport { COMPONENT_LOCALE_ES_ES } from './localization/locales/es-ES/ComponentLocale';\nexport { COMPONENT_LOCALE_FI_FI } from './localization/locales/fi-FI/ComponentLocale';\nexport { COMPONENT_LOCALE_FR_FR } from './localization/locales/fr-FR/ComponentLocale';\nexport { COMPONENT_LOCALE_HE_IL } from './localization/locales/he-IL/ComponentLocale';\nexport { COMPONENT_LOCALE_IT_IT } from './localization/locales/it-IT/ComponentLocale';\nexport { COMPONENT_LOCALE_JA_JP } from './localization/locales/ja-JP/ComponentLocale';\nexport { COMPONENT_LOCALE_KO_KR } from './localization/locales/ko-KR/ComponentLocale';\nexport { COMPONENT_LOCALE_NB_NO } from './localization/locales/nb-NO/ComponentLocale';\nexport { COMPONENT_LOCALE_NL_NL } from './localization/locales/nl-NL/ComponentLocale';\nexport { COMPONENT_LOCALE_PL_PL } from './localization/locales/pl-PL/ComponentLocale';\nexport { COMPONENT_LOCALE_PT_BR } from './localization/locales/pt-BR/ComponentLocale';\nexport { COMPONENT_LOCALE_RU_RU } from './localization/locales/ru-RU/ComponentLocale';\nexport { COMPONENT_LOCALE_SV_SE } from './localization/locales/sv-SE/ComponentLocale';\nexport { COMPONENT_LOCALE_TR_TR } from './localization/locales/tr-TR/ComponentLocale';\nexport { COMPONENT_LOCALE_ZH_CN } from './localization/locales/zh-CN/ComponentLocale';\nexport { COMPONENT_LOCALE_ZH_TW } from './localization/locales/zh-TW/ComponentLocale';\nexport type { ComponentStrings, ComponentLocale, LocalizationProviderProps } from './localization';\nexport * from './theming';\nexport * from './theming/generateTheme';\n\nexport type {\n BaseCustomStyles,\n CallParticipantListParticipant,\n ChatMessage,\n CommunicationParticipant,\n ComponentSlotStyle,\n ContentSystemMessage,\n CreateVideoStreamViewResult,\n CustomAvatarOptions,\n CustomMessage,\n Message,\n MessageAttachedStatus,\n MessageCommon,\n MessageContentType,\n OnRenderAvatarCallback,\n ParticipantAddedSystemMessage,\n ParticipantListParticipant,\n ParticipantRemovedSystemMessage,\n ParticipantState,\n ReadReceiptsBySenderId,\n SystemMessage,\n SystemMessageCommon,\n TopicUpdatedSystemMessage,\n VideoGalleryLocalParticipant,\n VideoGalleryParticipant,\n VideoGalleryRemoteParticipant,\n VideoGalleryStream,\n VideoStreamOptions,\n ViewScalingMode\n} from './types';\n\n/* @conditional-compile-remove(raise-hand) */\nexport type { RaisedHand } from './types';\n\n/* @conditional-compile-remove(close-captions) */\nexport type { SpokenLanguageStrings, CaptionLanguageStrings } from './types';\n/* @conditional-compile-remove(close-captions) */\nexport { _spokenLanguageToCaptionLanguage } from './types';\n\n/* @conditional-compile-remove(data-loss-prevention) */\nexport type { BlockedMessage } from './types';\n/* @conditional-compile-remove(end-of-call-survey) */\nexport type { SurveyIssues } from './types';\n/* @conditional-compile-remove(end-of-call-survey) */\nexport type { SurveyIssuesHeadingStrings } from './types';\n"]}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../react-components/src/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,cAAc,CAAC;AAC7B,OAAO,EAAE,mBAAmB,EAAE,MAAM,eAAe,CAAC;AAEpD,cAAc,wBAAwB,CAAC;AACvC,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AACtF,OAAO,EAAE,sBAAsB,EAAE,MAAM,8CAA8C,CAAC;AAEtF,cAAc,WAAW,CAAC;AAC1B,cAAc,yBAAyB,CAAC;AAsCxC,iDAAiD;AACjD,OAAO,EAAE,gCAAgC,EAAE,MAAM,SAAS,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport * from './components';\nexport { _IdentifierProvider } from './identifiers';\nexport type { _Identifiers, _IdentifierProviderProps } from './identifiers';\nexport * from './localization/locales';\nexport { LocalizationProvider } from './localization';\nexport { COMPONENT_LOCALE_EN_GB } from './localization/locales/en-GB/ComponentLocale';\nexport { COMPONENT_LOCALE_AR_SA } from './localization/locales/ar-SA/ComponentLocale';\nexport { COMPONENT_LOCALE_CS_CZ } from './localization/locales/cs-CZ/ComponentLocale';\nexport { COMPONENT_LOCALE_DE_DE } from './localization/locales/de-DE/ComponentLocale';\nexport { COMPONENT_LOCALE_ES_ES } from './localization/locales/es-ES/ComponentLocale';\nexport { COMPONENT_LOCALE_FI_FI } from './localization/locales/fi-FI/ComponentLocale';\nexport { COMPONENT_LOCALE_FR_FR } from './localization/locales/fr-FR/ComponentLocale';\nexport { COMPONENT_LOCALE_HE_IL } from './localization/locales/he-IL/ComponentLocale';\nexport { COMPONENT_LOCALE_IT_IT } from './localization/locales/it-IT/ComponentLocale';\nexport { COMPONENT_LOCALE_JA_JP } from './localization/locales/ja-JP/ComponentLocale';\nexport { COMPONENT_LOCALE_KO_KR } from './localization/locales/ko-KR/ComponentLocale';\nexport { COMPONENT_LOCALE_NB_NO } from './localization/locales/nb-NO/ComponentLocale';\nexport { COMPONENT_LOCALE_NL_NL } from './localization/locales/nl-NL/ComponentLocale';\nexport { COMPONENT_LOCALE_PL_PL } from './localization/locales/pl-PL/ComponentLocale';\nexport { COMPONENT_LOCALE_PT_BR } from './localization/locales/pt-BR/ComponentLocale';\nexport { COMPONENT_LOCALE_RU_RU } from './localization/locales/ru-RU/ComponentLocale';\nexport { COMPONENT_LOCALE_SV_SE } from './localization/locales/sv-SE/ComponentLocale';\nexport { COMPONENT_LOCALE_TR_TR } from './localization/locales/tr-TR/ComponentLocale';\nexport { COMPONENT_LOCALE_ZH_CN } from './localization/locales/zh-CN/ComponentLocale';\nexport { COMPONENT_LOCALE_ZH_TW } from './localization/locales/zh-TW/ComponentLocale';\nexport type { ComponentStrings, ComponentLocale, LocalizationProviderProps } from './localization';\nexport * from './theming';\nexport * from './theming/generateTheme';\n\nexport type {\n BaseCustomStyles,\n CallParticipantListParticipant,\n ChatMessage,\n CommunicationParticipant,\n ComponentSlotStyle,\n ContentSystemMessage,\n CreateVideoStreamViewResult,\n CustomAvatarOptions,\n CustomMessage,\n Message,\n MessageAttachedStatus,\n MessageCommon,\n MessageContentType,\n OnRenderAvatarCallback,\n ParticipantAddedSystemMessage,\n ParticipantListParticipant,\n ParticipantRemovedSystemMessage,\n ParticipantState,\n ReadReceiptsBySenderId,\n SystemMessage,\n SystemMessageCommon,\n TopicUpdatedSystemMessage,\n VideoGalleryLocalParticipant,\n VideoGalleryParticipant,\n VideoGalleryRemoteParticipant,\n VideoGalleryStream,\n VideoStreamOptions,\n ViewScalingMode\n} from './types';\n\n/* @conditional-compile-remove(raise-hand) */\nexport type { RaisedHand } from './types';\n\n/* @conditional-compile-remove(close-captions) */\nexport type { SpokenLanguageStrings, CaptionLanguageStrings } from './types';\n/* @conditional-compile-remove(close-captions) */\nexport { _spokenLanguageToCaptionLanguage } from './types';\n\n/* @conditional-compile-remove(data-loss-prevention) */\nexport type { BlockedMessage } from './types';\n/* @conditional-compile-remove(end-of-call-survey) */\nexport type { SurveyIssues } from './types';\n/* @conditional-compile-remove(end-of-call-survey) */\nexport type { SurveyIssuesHeadingStrings } from './types';\n/* @conditional-compile-remove(end-of-call-survey) */\nexport type { CallSurveyImprovementSuggestions } from './types';\n"]}
|
@@ -0,0 +1,23 @@
|
|
1
|
+
/**
|
2
|
+
* Represents the improvement suggestion part of call survey
|
3
|
+
* @beta
|
4
|
+
*/
|
5
|
+
export interface CallSurveyImprovementSuggestions {
|
6
|
+
/**
|
7
|
+
* Improvement suggestions for overall call
|
8
|
+
*/
|
9
|
+
overall?: string;
|
10
|
+
/**
|
11
|
+
* Improvement suggestions for audio experience
|
12
|
+
*/
|
13
|
+
audio?: string;
|
14
|
+
/**
|
15
|
+
* Improvement suggestions for video experience
|
16
|
+
*/
|
17
|
+
video?: string;
|
18
|
+
/**
|
19
|
+
* Improvement suggestions for screenshare experience
|
20
|
+
*/
|
21
|
+
screenshare?: string;
|
22
|
+
}
|
23
|
+
//# sourceMappingURL=CallSurveyImprovementSuggestions.d.ts.map
|
@@ -0,0 +1 @@
|
|
1
|
+
{"version":3,"file":"CallSurveyImprovementSuggestions.js","sourceRoot":"","sources":["../../../../../../react-components/src/types/CallSurveyImprovementSuggestions.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\n/**\n * Represents the improvement suggestion part of call survey\n * @beta\n */\nexport interface CallSurveyImprovementSuggestions {\n /**\n * Improvement suggestions for overall call\n */\n overall?: string;\n /**\n * Improvement suggestions for audio experience\n */\n audio?: string;\n /**\n * Improvement suggestions for video experience\n */\n video?: string;\n /**\n * Improvement suggestions for screenshare experience\n */\n screenshare?: string;\n}\n"]}
|
@@ -9,4 +9,5 @@ export * from './ReadReceiptsBySenderId';
|
|
9
9
|
export * from './CaptionsAvailableLanguageStrings';
|
10
10
|
export * from './SurveyIssues';
|
11
11
|
export * from './SurveyIssuesHeadingStrings';
|
12
|
+
export * from './CallSurveyImprovementSuggestions';
|
12
13
|
//# sourceMappingURL=index.d.ts.map
|
@@ -11,4 +11,5 @@ export * from './ReadReceiptsBySenderId';
|
|
11
11
|
export * from './CaptionsAvailableLanguageStrings';
|
12
12
|
export * from './SurveyIssues';
|
13
13
|
export * from './SurveyIssuesHeadingStrings';
|
14
|
+
export * from './CallSurveyImprovementSuggestions';
|
14
15
|
//# sourceMappingURL=index.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../react-components/src/types/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,oCAAoC,CAAC;AACnD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,8BAA8B,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport * from './ChatMessage';\nexport * from './ComponentSlotStyle';\nexport * from './CustomStylesProps';\nexport * from './VideoGalleryParticipant';\nexport * from './CommunicationParticipant';\nexport * from './ParticipantListParticipant';\nexport * from './OnRender';\nexport * from './ReadReceiptsBySenderId';\nexport * from './CaptionsAvailableLanguageStrings';\nexport * from './SurveyIssues';\nexport * from './SurveyIssuesHeadingStrings';\n"]}
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../../react-components/src/types/index.ts"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,cAAc,eAAe,CAAC;AAC9B,cAAc,sBAAsB,CAAC;AACrC,cAAc,qBAAqB,CAAC;AACpC,cAAc,2BAA2B,CAAC;AAC1C,cAAc,4BAA4B,CAAC;AAC3C,cAAc,8BAA8B,CAAC;AAC7C,cAAc,YAAY,CAAC;AAC3B,cAAc,0BAA0B,CAAC;AACzC,cAAc,oCAAoC,CAAC;AACnD,cAAc,gBAAgB,CAAC;AAC/B,cAAc,8BAA8B,CAAC;AAC7C,cAAc,oCAAoC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nexport * from './ChatMessage';\nexport * from './ComponentSlotStyle';\nexport * from './CustomStylesProps';\nexport * from './VideoGalleryParticipant';\nexport * from './CommunicationParticipant';\nexport * from './ParticipantListParticipant';\nexport * from './OnRender';\nexport * from './ReadReceiptsBySenderId';\nexport * from './CaptionsAvailableLanguageStrings';\nexport * from './SurveyIssues';\nexport * from './SurveyIssuesHeadingStrings';\nexport * from './CallSurveyImprovementSuggestions';\n"]}
|
@@ -1,4 +1,5 @@
|
|
1
1
|
/// <reference types="react" />
|
2
|
+
import { CallSurveyImprovementSuggestions } from "../../../../react-components/src";
|
2
3
|
import { BaseCompositeProps } from '../common/BaseComposite';
|
3
4
|
import { CallCompositeIcons } from '../common/icons';
|
4
5
|
import { CommonCallAdapter } from './adapter/CallAdapter';
|
@@ -190,7 +191,7 @@ export type CallCompositeOptions = {
|
|
190
191
|
onSurveySubmitted?: (callId: string, surveyId: string,
|
191
192
|
/**
|
192
193
|
* This is the survey results containing star survey data and API tag survey data.
|
193
|
-
* This part of the result will always be
|
194
|
+
* This part of the result will always be sent to the calling sdk
|
194
195
|
* This callback provides user with the ability to gain access to survey data
|
195
196
|
*/
|
196
197
|
submittedSurvey: CallSurvey,
|
@@ -200,10 +201,7 @@ export type CallCompositeOptions = {
|
|
200
201
|
* User will need to collect and handle this information 100% on their own
|
201
202
|
* Free form text survey is not going to show in the UI if onSurveySubmitted is not populated
|
202
203
|
*/
|
203
|
-
improvementSuggestions:
|
204
|
-
category: 'audio' | 'video' | 'screenshare';
|
205
|
-
suggestion: string;
|
206
|
-
}[]) => Promise<void>;
|
204
|
+
improvementSuggestions: CallSurveyImprovementSuggestions) => Promise<void>;
|
207
205
|
};
|
208
206
|
/**
|
209
207
|
* Options for setting additional customizations related to personalized branding.
|