@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.
Files changed (64) hide show
  1. package/dist/communication-react.d.ts +41 -10
  2. package/dist/dist-cjs/communication-react/index.js +246 -177
  3. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  4. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  5. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  6. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js +2 -2
  7. package/dist/dist-esm/calling-component-bindings/src/handlers/createCommonHandlers.js.map +1 -1
  8. package/dist/dist-esm/communication-react/src/index.d.ts +1 -0
  9. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  10. package/dist/dist-esm/react-components/src/components/EndCallButton.js +9 -6
  11. package/dist/dist-esm/react-components/src/components/EndCallButton.js.map +1 -1
  12. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.d.ts +5 -5
  13. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.js +10 -9
  14. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.js.map +1 -1
  15. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.d.ts +4 -0
  16. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.js +13 -3
  17. package/dist/dist-esm/react-components/src/components/Survey/StarSurvey/StarSurvey.styles.js.map +1 -1
  18. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.d.ts +8 -4
  19. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js +76 -39
  20. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.js.map +1 -1
  21. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.d.ts +9 -1
  22. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.js +21 -1
  23. package/dist/dist-esm/react-components/src/components/Survey/TagsSurvey/TagsSurvey.styles.js.map +1 -1
  24. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js +8 -34
  25. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoEffectsItem.styles.js.map +1 -1
  26. package/dist/dist-esm/react-components/src/index.d.ts +1 -0
  27. package/dist/dist-esm/react-components/src/index.js.map +1 -1
  28. package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.d.ts +23 -0
  29. package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.js +4 -0
  30. package/dist/dist-esm/react-components/src/types/CallSurveyImprovementSuggestions.js.map +1 -0
  31. package/dist/dist-esm/react-components/src/types/index.d.ts +1 -0
  32. package/dist/dist-esm/react-components/src/types/index.js +1 -0
  33. package/dist/dist-esm/react-components/src/types/index.js.map +1 -1
  34. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.d.ts +3 -5
  35. package/dist/dist-esm/react-composites/src/composites/CallComposite/CallComposite.js.map +1 -1
  36. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.d.ts +12 -0
  37. package/dist/dist-esm/react-composites/src/composites/CallComposite/Strings.js.map +1 -1
  38. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js +10 -3
  39. package/dist/dist-esm/react-composites/src/composites/CallComposite/adapter/AzureCommunicationCallAdapter.js.map +1 -1
  40. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.d.ts +3 -5
  41. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js +2 -2
  42. package/dist/dist-esm/react-composites/src/composites/CallComposite/pages/NoticePage.js.map +1 -1
  43. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js +6 -0
  44. package/dist/dist-esm/react-composites/src/composites/CallComposite/styles/CallConfiguration.styles.js.map +1 -1
  45. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.d.ts +4 -0
  46. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js +14 -3
  47. package/dist/dist-esm/react-composites/src/composites/CallComposite/utils/Utils.js.map +1 -1
  48. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.d.ts +3 -5
  49. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js +3 -1
  50. package/dist/dist-esm/react-composites/src/composites/CallWithChatComposite/CallWithChatComposite.js.map +1 -1
  51. package/dist/dist-esm/react-composites/src/composites/common/SurveyPane.d.ts +2 -0
  52. package/dist/dist-esm/react-composites/src/composites/common/SurveyPane.js +59 -3
  53. package/dist/dist-esm/react-composites/src/composites/common/SurveyPane.js.map +1 -1
  54. package/dist/dist-esm/react-composites/src/composites/common/SurveyPaneContent.d.ts +6 -3
  55. package/dist/dist-esm/react-composites/src/composites/common/SurveyPaneContent.js +14 -76
  56. package/dist/dist-esm/react-composites/src/composites/common/SurveyPaneContent.js.map +1 -1
  57. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.d.ts +3 -3
  58. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js +3 -2
  59. package/dist/dist-esm/react-composites/src/composites/common/TagsSurvey.js.map +1 -1
  60. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +2 -0
  61. package/dist/dist-esm/react-composites/src/composites/common/icons.js +1 -0
  62. package/dist/dist-esm/react-composites/src/composites/common/icons.js.map +1 -1
  63. package/dist/dist-esm/react-composites/src/composites/localization/locales/en-US/strings.json +4 -1
  64. package/package.json +1 -1
@@ -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,YAAY,GAAG,CAAC,KAAY,EAA0B,EAAE;IACnE,OAAO;QACL,IAAI,EAAE;YACJ,YAAY,EAAE,QAAQ,CAAC,EAAE,CAAC;YAC1B,SAAS,EAAE,QAAQ;SACpB;QACD,UAAU,EAAE;YACV,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC;YACtB,MAAM,EAAE,QAAQ,CAAC,CAAC,CAAC;SACpB;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 ratingStyles = (theme: Theme): Partial<IRatingStyles> => {\n return {\n root: {\n marginBottom: _pxToRem(24),\n textAlign: 'center'\n },\n ratingStar: {\n fontSize: _pxToRem(35),\n margin: _pxToRem(5)\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
+ {"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 { issues, callIssuesToTag, categoryHeadings, onConfirm, strings } = props;
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
- issues.forEach((issue) => {
17
- const issueCamelCase = (issue === null || issue === void 0 ? void 0 : issue.charAt(0).toLowerCase()) + (issue === null || issue === void 0 ? void 0 : issue.slice(1));
18
- const issueCategory = Object.keys(callIssuesToTag).find((key) => callIssuesToTag[key][issueCamelCase] !== undefined);
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][issueCamelCase],
23
- issue: 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][issueCamelCase],
30
- issue: issue
30
+ message: callIssuesToTag[issueCategory][issue],
31
+ issue: issueCapitalized
31
32
  }
32
33
  ];
33
34
  }
34
- }
35
+ });
35
36
  });
36
37
  return tags;
37
- }, [issues, callIssuesToTag]);
38
- const onChange = React.useCallback((issue, issueCategory, checked) => {
38
+ }, [callIssuesToTag]);
39
+ const onChange = React.useCallback((issueCategory, checked, issue) => {
39
40
  if (checked) {
40
- setSelectedTags((prevState) => {
41
- if (prevState[issueCategory]) {
42
- prevState[issueCategory].issues.push(issue);
43
- }
44
- else {
45
- prevState[issueCategory] = { score: 1, issues: [issue] };
46
- }
47
- return prevState;
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
- setSelectedTags((prevState) => {
52
- if (prevState[issueCategory]) {
53
- prevState[issueCategory].issues = prevState[issueCategory].issues.filter(function (value) {
54
- return value !== issue;
55
- });
56
- if (prevState[issueCategory].issues.length === 0) {
57
- delete prevState[issueCategory];
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
- return prevState;
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 }, tags[key].map((t, i) => {
77
- return (React.createElement(Checkbox, { className: checkboxClassName, key: `checkBox_${i}`, label: t.message, onChange: (ev, checked) => onChange(t.issue, key, checked !== null && checked !== void 0 ? checked : false) }));
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":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAC9D,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAE/F,OAAO,EACL,iBAAiB,EACjB,iBAAiB,EACjB,eAAe,EACf,0BAA0B,EAC1B,0BAA0B,EAC3B,MAAM,qBAAqB,CAAC;AAmE7B;;;;GAIG;AACH,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,KAAuB,EAAe,EAAE;IAClE,MAAM,EAAE,eAAe,EAAE,gBAAgB,EAAE,SAAS,EAAE,OAAO,EAAE,qBAAqB,EAAE,GAAG,KAAK,CAAC;IAE/F,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,CAAC;IAErD,MAAM,CAAC,YAAY,EAAE,eAAe,CAAC,GAAG,QAAQ,CAAmC,EAAE,CAAC,CAAC;IAEvF,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ,CAAmC,EAAE,CAAC,CAAC;IAEvG,MAAM,IAAI,GAAiB,OAAO,CAAC,GAAG,EAAE;QACtC,MAAM,IAAI,GAAiB,EAAE,CAAC;QAC9B,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,CAAC,aAAa,EAAE,EAAE;YACrD,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,aAAa,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE;gBACxD,MAAM,gBAAgB,GAAG,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,CAAC,CAAC,EAAE,WAAW,EAAE,KAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,CAAC,CAAC,CAAC,CAAA,CAAC;gBAE1E,IAAI,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;oBACxB,IAAI,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC;wBACvB,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC;wBAC9C,KAAK,EAAE,gBAAgB;qBACxB,CAAC,CAAC;gBACL,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,aAAa,CAAC,GAAG;wBACpB;4BACE,OAAO,EAAE,eAAe,CAAC,aAAa,CAAC,CAAC,KAAK,CAAC;4BAC9C,KAAK,EAAE,gBAAgB;yBACxB;qBACF,CAAC;gBACJ,CAAC;YACH,CAAC,CAAC,CAAC;QACL,CAAC,CAAC,CAAC;QACH,OAAO,IAAI,CAAC;IACd,CAAC,EAAE,CAAC,eAAe,CAAC,CAAC,CAAC;IAEtB,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAChC,CAAC,aAAqB,EAAE,OAAgB,EAAE,KAAc,EAAQ,EAAE;QAChE,IAAI,OAAO,EAAE,CAAC;YACZ,IAAI,KAAK,EAAE,CAAC;gBACV,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE;oBAC5B,IAAI,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC;wBAC7B,SAAS,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;oBAC9C,CAAC;yBAAM,CAAC;wBACN,SAAS,CAAC,aAAa,CAAC,GAAG,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC3D,CAAC;oBACD,OAAO,SAAS,CAAC;gBACnB,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,uBAAuB,CAAC,CAAC,SAAS,EAAE,EAAE;oBACpC,SAAS,CAAC,aAAa,CAAC,GAAG,YAAY,CAAC,aAAa,CAAC,CAAC;oBACvD,OAAO,SAAS,CAAC;gBACnB,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;aAAM,CAAC;YACN,IAAI,KAAK,EAAE,CAAC;gBACV,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE;oBAC5B,IAAI,SAAS,CAAC,aAAa,CAAC,EAAE,CAAC;wBAC7B,SAAS,CAAC,aAAa,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,UAAU,KAAK;4BACtF,OAAO,KAAK,KAAK,KAAK,CAAC;wBACzB,CAAC,CAAC,CAAC;wBACH,IAAI,SAAS,CAAC,aAAa,CAAC,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;4BACjD,OAAO,SAAS,CAAC,aAAa,CAAC,CAAC;wBAClC,CAAC;oBACH,CAAC;oBACD,OAAO,SAAS,CAAC;gBACnB,CAAC,CAAC,CAAC;YACL,CAAC;iBAAM,CAAC;gBACN,uBAAuB,CAAC,CAAC,SAAS,EAAE,EAAE;oBACpC,OAAO,SAAS,CAAC,aAAa,CAAC,CAAC;oBAChC,OAAO,SAAS,CAAC;gBACnB,CAAC,CAAC,CAAC;YACL,CAAC;QACH,CAAC;QAED,IAAI,SAAS,EAAE,CAAC;YACd,SAAS,CAAC,YAAY,EAAE,oBAAoB,CAAC,CAAC;QAChD,CAAC;IACH,CAAC,EACD,CAAC,SAAS,EAAE,YAAY,EAAE,oBAAoB,EAAE,YAAY,CAAC,CAC9D,CAAC;IAEF,MAAM,KAAK,GAAG,QAAQ,EAAE,CAAC;IAEzB,MAAM,aAAa,GAAG,WAAW,CAC/B,CAAC,aAAa,EAAE,EAAE;QAChB,OAAO,CACL,oBAAC,SAAS,IACR,GAAG,EAAE,aAAa,EAClB,SAAS,EAAE,0BAA0B,EACrC,UAAU,QACV,WAAW,EAAE,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,8BAA8B,EACpD,QAAQ,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;gBACjB,IAAI,CAAC,EAAE,CAAC;oBACN,eAAe,CAAC,CAAC,SAAS,EAAE,EAAE;wBAC5B,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;wBAC7B,OAAO,SAAS,CAAC;oBACnB,CAAC,CAAC,CAAC;oBAEH,uBAAuB,CAAC,CAAC,SAAS,EAAE,EAAE;wBACpC,IAAI,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,QAAQ,CAAC,aAAa,CAAC,EAAE,CAAC;4BACnD,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;wBAC/B,CAAC;wBACD,OAAO,SAAS,CAAC;oBACnB,CAAC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC,GACD,CACH,CAAC;IACJ,CAAC,EACD,CAAC,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,8BAA8B,CAAC,CAC1C,CAAC;IAEF,OAAO,CACL;QACE,oBAAC,KAAK,IAAC,aAAa,EAAC,QAAQ;YAC3B,oBAAC,IAAI,IAAC,SAAS,EAAE,iBAAiB,CAAC,KAAK,CAAC,IAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,kBAAkB,CAAQ;YAC/E,oBAAC,IAAI,IAAC,SAAS,EAAE,eAAe,CAAC,KAAK,CAAC,IAAG,OAAO,aAAP,OAAO,uBAAP,OAAO,CAAE,oBAAoB,CAAQ,CACzE;QAER,oBAAC,KAAK,QACH,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YAChC,OAAO,CACL,oBAAC,SAAS,IACR,GAAG,EAAE,OAAO,CAAC,EAAE,EACf,UAAU,EAAE,gBAAgB,CAAC,GAAG,CAAC,EACjC,iBAAiB,EAAE;oBACjB,YAAY,EAAE,CAAC;oBACf,YAAY,EAAE,GAAG;iBAClB,EACD,YAAY;gBAEX,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;oBACtB,OAAO,CACL,oBAAC,QAAQ,IACP,SAAS,EAAE,iBAAiB,EAC5B,GAAG,EAAE,YAAY,CAAC,EAAE,EACpB,KAAK,EAAE,CAAC,CAAC,OAAO,EAChB,QAAQ,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,GACnE,CACH,CAAC;gBACJ,CAAC,CAAC;gBACD,qBAAqB,IAAI,CACxB,oBAAC,QAAQ,IACP,MAAM,EAAE,0BAA0B,EAClC,QAAQ,EAAE,CAAC,EAAE,EAAE,OAAO,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,EAAE,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,KAAK,CAAC,EAC1D,aAAa,EAAE,GAAG,EAAE;wBAClB,OAAO,aAAa,CAAC,GAAG,CAAC,CAAC;oBAC5B,CAAC,GACD,CACH,CACS,CACb,CAAC;QACJ,CAAC,CAAC,CACI,CACP,CACJ,CAAC;AACJ,CAAC,CAAC","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"]}
@@ -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
@@ -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
@@ -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,EAAS,WAAW,EAAE,MAAM,iBAAiB,CAAC;AACrD,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;CACrB,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { 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});\n"]}
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"]}
@@ -29,44 +29,18 @@ export const videoEffectsItemContainerStyles = (args) => {
29
29
  cursor: args.disabled ? 'default' : 'pointer',
30
30
  height: VideoEffectsItemContainerHeight,
31
31
  width: VideoEffectsItemContainerWidth,
32
- border: args.isSelected
32
+ outlineOffset: '-1px',
33
+ outline: args.isSelected
33
34
  ? `${borderActiveThickness} solid ${args.theme.palette.themePrimary}`
34
35
  : `${borderDefaultThickness} solid ${args.theme.palette.neutralQuaternaryAlt}`,
35
- // Use :after to display a border element. This is used to prevent the background image
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
- borderRadius: '0.25rem',
45
- transform: 'translate(-1rem, -3.3rem)',
46
- display: 'flex'
47
- },
48
- ':hover': {
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
  };
@@ -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;gBACrB,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,uFAAuF;YACvF,uFAAuF;YACvF,sFAAsF;YACtF,iDAAiD;YACjD,QAAQ,EAAE;gBACR,OAAO,EAAE,IAAI;gBACb,SAAS,EAAE,YAAY;gBACvB,MAAM,EAAE,qCAAqC;gBAC7C,KAAK,EAAE,oCAAoC;gBAC3C,YAAY,EAAE,SAAS;gBACvB,SAAS,EAAE,2BAA2B;gBACtC,OAAO,EAAE,MAAM;aAChB;YACD,QAAQ,EAAE;gBACR,QAAQ,EAAE;oBACR,MAAM,EACJ,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,UAAU;wBAC/B,CAAC,CAAC,GAAG,sBAAsB,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,oBAAoB,EAAE;wBAC9E,CAAC,CAAC,GAAG,qBAAqB,UAAU,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,YAAY,EAAE;oBACzE,SAAS,EAAE,2BAA2B;iBACvC;aACF;YACD,QAAQ,EAAE;gBACR,QAAQ,EAAE;oBACR,OAAO,EAAE,MAAM;oBACf,SAAS,EAAE,6BAA6B;oBACxC,QAAQ,EAAE;wBACR,SAAS,EAAE,6BAA6B;qBACzC;iBACF;aACF;YACD,SAAS,EAAE;gBACT,QAAQ,EAAE;oBACR,OAAO,EAAE,MAAM;oBACf,SAAS,EAAE,2BAA2B;iBACvC;aACF;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 border: args.isSelected\n ? `${borderActiveThickness} solid ${args.theme.palette.themePrimary}`\n : `${borderDefaultThickness} solid ${args.theme.palette.neutralQuaternaryAlt}`,\n // Use :after to display a border element. This is used to prevent the background image\n // resizing when the border thichkness is changed. We also want the border to be inside\n // the frame of the container, i.e. we want it to expand inwards and not outwards when\n // border thickness changes from hover/selection.\n ':after': {\n content: '\"\"',\n boxSizing: 'border-box',\n height: VideoEffectsItemContainerBorderHeight,\n width: VideoEffectsItemContainerBorderWidth,\n borderRadius: '0.25rem',\n transform: 'translate(-1rem, -3.3rem)',\n display: 'flex'\n },\n ':hover': {\n ':after': {\n border:\n args.disabled && !args.isSelected\n ? `${borderDefaultThickness} solid ${args.theme.palette.neutralQuaternaryAlt}`\n : `${borderActiveThickness} solid ${args.theme.palette.themePrimary}`,\n transform: 'translate(-1rem, -3.3rem)'\n }\n },\n ':focus': {\n ':after': {\n outline: 'none',\n transform: 'translate(-0.1rem, -0.2rem)',\n ':hover': {\n transform: 'translate(-0.1rem, -0.2rem)'\n }\n }\n },\n ':active': {\n ':after': {\n outline: 'none',\n transform: 'translate(-1rem, -3.3rem)'\n }\n }\n }\n };\n};\n"]}
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,4 @@
1
+ // Copyright (c) Microsoft Corporation.
2
+ // Licensed under the MIT License.
3
+ export {};
4
+ //# sourceMappingURL=CallSurveyImprovementSuggestions.js.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 send to calling sdk
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.