@azure/communication-react 1.17.0-alpha-202405230218 → 1.17.0-alpha-202405250013

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 (109) hide show
  1. package/dist/communication-react.d.ts +295 -1
  2. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-0mzgMoQl.js → ChatMessageComponentAsRichTextEditBox-D6ea1yzU.js} +2 -2
  3. package/dist/dist-cjs/communication-react/{ChatMessageComponentAsRichTextEditBox-0mzgMoQl.js.map → ChatMessageComponentAsRichTextEditBox-D6ea1yzU.js.map} +1 -1
  4. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-R50QUnwW.js → RichTextSendBoxWrapper-TueLs8OS.js} +2 -2
  5. package/dist/dist-cjs/communication-react/{RichTextSendBoxWrapper-R50QUnwW.js.map → RichTextSendBoxWrapper-TueLs8OS.js.map} +1 -1
  6. package/dist/dist-cjs/communication-react/{index-BgoZowOy.js → index-Bj8WXYGE.js} +266 -54
  7. package/dist/dist-cjs/communication-react/index-Bj8WXYGE.js.map +1 -0
  8. package/dist/dist-cjs/communication-react/index.js +3 -1
  9. package/dist/dist-cjs/communication-react/index.js.map +1 -1
  10. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js +1 -1
  11. package/dist/dist-esm/acs-ui-common/src/telemetryVersion.js.map +1 -1
  12. package/dist/dist-esm/communication-react/src/index.d.ts +4 -1
  13. package/dist/dist-esm/communication-react/src/index.js +2 -0
  14. package/dist/dist-esm/communication-react/src/index.js.map +1 -1
  15. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js +1 -0
  16. package/dist/dist-esm/react-components/src/components/Dialpad/Dialpad.js.map +1 -1
  17. package/dist/dist-esm/react-components/src/components/NotificationBar.d.ts +65 -0
  18. package/dist/dist-esm/react-components/src/components/NotificationBar.js +38 -0
  19. package/dist/dist-esm/react-components/src/components/NotificationBar.js.map +1 -0
  20. package/dist/dist-esm/react-components/src/components/Notifications.d.ts +215 -0
  21. package/dist/dist-esm/react-components/src/components/Notifications.js +48 -0
  22. package/dist/dist-esm/react-components/src/components/Notifications.js.map +1 -0
  23. package/dist/dist-esm/react-components/src/components/ParticipantItem.js +1 -1
  24. package/dist/dist-esm/react-components/src/components/ParticipantItem.js.map +1 -1
  25. package/dist/dist-esm/react-components/src/components/ParticipantList.js +4 -0
  26. package/dist/dist-esm/react-components/src/components/ParticipantList.js.map +1 -1
  27. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.d.ts +1 -0
  28. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js +3 -1
  29. package/dist/dist-esm/react-components/src/components/RemoteVideoTile.js.map +1 -1
  30. package/dist/dist-esm/react-components/src/components/VideoGallery.d.ts +2 -0
  31. package/dist/dist-esm/react-components/src/components/VideoGallery.js +3 -3
  32. package/dist/dist-esm/react-components/src/components/VideoGallery.js.map +1 -1
  33. package/dist/dist-esm/react-components/src/components/VideoTile.d.ts +6 -1
  34. package/dist/dist-esm/react-components/src/components/VideoTile.js +3 -1
  35. package/dist/dist-esm/react-components/src/components/VideoTile.js.map +1 -1
  36. package/dist/dist-esm/react-components/src/components/index.d.ts +3 -2
  37. package/dist/dist-esm/react-components/src/components/index.js +4 -0
  38. package/dist/dist-esm/react-components/src/components/index.js.map +1 -1
  39. package/dist/dist-esm/react-components/src/components/styles/NotificationBar.styles.d.ts +22 -0
  40. package/dist/dist-esm/react-components/src/components/styles/NotificationBar.styles.js +56 -0
  41. package/dist/dist-esm/react-components/src/components/styles/NotificationBar.styles.js.map +1 -0
  42. package/dist/dist-esm/react-components/src/components/utils.d.ts +13 -0
  43. package/dist/dist-esm/react-components/src/components/utils.js +29 -0
  44. package/dist/dist-esm/react-components/src/components/utils.js.map +1 -1
  45. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.d.ts +3 -0
  46. package/dist/dist-esm/react-components/src/localization/LocalizationProvider.js.map +1 -1
  47. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/ComponentLocale.js +3 -1
  48. package/dist/dist-esm/react-components/src/localization/locales/ar-SA/ComponentLocale.js.map +1 -1
  49. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/ComponentLocale.js +3 -1
  50. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/ComponentLocale.js.map +1 -1
  51. package/dist/dist-esm/react-components/src/localization/locales/cs-CZ/strings.json +2 -2
  52. package/dist/dist-esm/react-components/src/localization/locales/de-DE/ComponentLocale.js +3 -1
  53. package/dist/dist-esm/react-components/src/localization/locales/de-DE/ComponentLocale.js.map +1 -1
  54. package/dist/dist-esm/react-components/src/localization/locales/en-GB/ComponentLocale.js +3 -1
  55. package/dist/dist-esm/react-components/src/localization/locales/en-GB/ComponentLocale.js.map +1 -1
  56. package/dist/dist-esm/react-components/src/localization/locales/en-US/strings.json +157 -1
  57. package/dist/dist-esm/react-components/src/localization/locales/es-ES/ComponentLocale.js +3 -1
  58. package/dist/dist-esm/react-components/src/localization/locales/es-ES/ComponentLocale.js.map +1 -1
  59. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/ComponentLocale.js +3 -1
  60. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/ComponentLocale.js.map +1 -1
  61. package/dist/dist-esm/react-components/src/localization/locales/fi-FI/strings.json +2 -2
  62. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/ComponentLocale.js +3 -1
  63. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/ComponentLocale.js.map +1 -1
  64. package/dist/dist-esm/react-components/src/localization/locales/fr-FR/strings.json +17 -17
  65. package/dist/dist-esm/react-components/src/localization/locales/he-IL/ComponentLocale.js +3 -1
  66. package/dist/dist-esm/react-components/src/localization/locales/he-IL/ComponentLocale.js.map +1 -1
  67. package/dist/dist-esm/react-components/src/localization/locales/he-IL/strings.json +2 -2
  68. package/dist/dist-esm/react-components/src/localization/locales/it-IT/ComponentLocale.js +3 -1
  69. package/dist/dist-esm/react-components/src/localization/locales/it-IT/ComponentLocale.js.map +1 -1
  70. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/ComponentLocale.js +3 -1
  71. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/ComponentLocale.js.map +1 -1
  72. package/dist/dist-esm/react-components/src/localization/locales/ja-JP/strings.json +20 -20
  73. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/ComponentLocale.js +3 -1
  74. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/ComponentLocale.js.map +1 -1
  75. package/dist/dist-esm/react-components/src/localization/locales/ko-KR/strings.json +20 -20
  76. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/ComponentLocale.js +3 -1
  77. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/ComponentLocale.js.map +1 -1
  78. package/dist/dist-esm/react-components/src/localization/locales/nb-NO/strings.json +2 -2
  79. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/ComponentLocale.js +3 -1
  80. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/ComponentLocale.js.map +1 -1
  81. package/dist/dist-esm/react-components/src/localization/locales/nl-NL/strings.json +2 -2
  82. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/ComponentLocale.js +3 -1
  83. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/ComponentLocale.js.map +1 -1
  84. package/dist/dist-esm/react-components/src/localization/locales/pl-PL/strings.json +2 -2
  85. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/ComponentLocale.js +3 -1
  86. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/ComponentLocale.js.map +1 -1
  87. package/dist/dist-esm/react-components/src/localization/locales/pt-BR/strings.json +18 -18
  88. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/ComponentLocale.js +3 -1
  89. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/ComponentLocale.js.map +1 -1
  90. package/dist/dist-esm/react-components/src/localization/locales/ru-RU/strings.json +2 -2
  91. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/ComponentLocale.js +3 -1
  92. package/dist/dist-esm/react-components/src/localization/locales/sv-SE/ComponentLocale.js.map +1 -1
  93. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/ComponentLocale.js +3 -1
  94. package/dist/dist-esm/react-components/src/localization/locales/tr-TR/ComponentLocale.js.map +1 -1
  95. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/ComponentLocale.js +3 -1
  96. package/dist/dist-esm/react-components/src/localization/locales/zh-CN/ComponentLocale.js.map +1 -1
  97. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/ComponentLocale.js +3 -1
  98. package/dist/dist-esm/react-components/src/localization/locales/zh-TW/ComponentLocale.js.map +1 -1
  99. package/dist/dist-esm/react-components/src/theming/icons.d.ts +1 -0
  100. package/dist/dist-esm/react-components/src/theming/icons.js +3 -2
  101. package/dist/dist-esm/react-components/src/theming/icons.js.map +1 -1
  102. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js +1 -1
  103. package/dist/dist-esm/react-composites/src/composites/CallComposite/components/LocalAndRemotePIP.js.map +1 -1
  104. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js +2 -1
  105. package/dist/dist-esm/react-composites/src/composites/common/PeoplePaneContent.js.map +1 -1
  106. package/dist/dist-esm/react-composites/src/composites/common/icons.d.ts +1 -0
  107. package/dist/dist-esm/react-composites/src/composites/localization/locales/fi-FI/strings.json +1 -1
  108. package/package.json +2 -2
  109. package/dist/dist-cjs/communication-react/index-BgoZowOy.js.map +0 -1
@@ -1,6 +1,7 @@
1
1
  import { IIconProps, MessageBarType } from '@fluentui/react';
2
2
  import { ActiveErrorMessage, ErrorType } from './ErrorBar';
3
3
  import { _SupportedSpokenLanguage } from '../types';
4
+ import { NotificationType } from './Notifications';
4
5
  /**
5
6
  * @private
6
7
  *
@@ -65,6 +66,18 @@ export declare const messageBarIconProps: (errorType: ErrorType) => IIconProps |
65
66
  export declare const customIconName: Partial<{
66
67
  [key in ErrorType]: string;
67
68
  }>;
69
+ /**
70
+ * @private
71
+ * @param NotificationType
72
+ * @returns IIconProps | undefined
73
+ */
74
+ export declare const NotificationIconProps: (notificationType: NotificationType) => IIconProps | undefined;
75
+ /**
76
+ * @private
77
+ */
78
+ export declare const customNotificationIconName: Partial<{
79
+ [key in NotificationType]: string;
80
+ }>;
68
81
  /**
69
82
  * @private
70
83
  */
@@ -161,6 +161,35 @@ export const customIconName = {
161
161
  callVideoRecoveredBySystem: 'ErrorBarCallVideoRecoveredBySystem',
162
162
  callMacOsCameraAccessDenied: 'ErrorBarCallMacOsCameraAccessDenied'
163
163
  };
164
+ /**
165
+ * @private
166
+ * @param NotificationType
167
+ * @returns IIconProps | undefined
168
+ */
169
+ export const NotificationIconProps = (notificationType) => {
170
+ const iconName = customNotificationIconName[notificationType];
171
+ return iconName ? { iconName } : undefined;
172
+ };
173
+ /**
174
+ * @private
175
+ */
176
+ export const customNotificationIconName = {
177
+ callNetworkQualityLow: 'ErrorBarCallNetworkQualityLow',
178
+ callNoSpeakerFound: 'ErrorBarCallNoSpeakerFound',
179
+ callNoMicrophoneFound: 'ErrorBarCallNoMicrophoneFound',
180
+ callMicrophoneAccessDenied: 'ErrorBarCallMicrophoneAccessDenied',
181
+ callMicrophoneAccessDeniedSafari: 'ErrorBarCallMicrophoneAccessDenied',
182
+ callMicrophoneMutedBySystem: 'ErrorBarCallMicrophoneMutedBySystem',
183
+ callMicrophoneUnmutedBySystem: 'ErrorBarCallMicrophoneUnmutedBySystem',
184
+ callMacOsMicrophoneAccessDenied: 'ErrorBarCallMacOsMicrophoneAccessDenied',
185
+ callLocalVideoFreeze: 'ErrorBarCallLocalVideoFreeze',
186
+ callCameraAccessDenied: 'ErrorBarCallCameraAccessDenied',
187
+ callCameraAccessDeniedSafari: 'ErrorBarCallCameraAccessDenied',
188
+ callCameraAlreadyInUse: 'ErrorBarCallCameraAlreadyInUse',
189
+ callVideoStoppedBySystem: 'ErrorBarCallVideoStoppedBySystem',
190
+ callVideoRecoveredBySystem: 'ErrorBarCallVideoRecoveredBySystem',
191
+ callMacOsCameraAccessDenied: 'ErrorBarCallMacOsCameraAccessDenied'
192
+ };
164
193
  /**
165
194
  * @private
166
195
  */
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { IIconProps, MessageBarType } from '@fluentui/react';\nimport { ActiveErrorMessage, ErrorType } from './ErrorBar';\nimport { _SupportedSpokenLanguage } from '../types';\n\n/**\n * @private\n *\n * @param fileName\n * @param length\n * @returns string\n */\nexport const truncatedFileName = (fileName: string, length: number): string => {\n return fileName.substring(0, length).trimEnd() + (fileName.length > length ? '... ' : '');\n};\n\n/**\n * @private\n *\n * @param fileName\n * @returns string\n */\nexport const extension = (fileName: string): string => fileName.split('.').pop() || '';\n\n/**\n * @private\n */\nexport interface DismissedError {\n type: ErrorType;\n dismissedAt: Date;\n activeSince?: Date;\n}\n\n/**\n * @private\n * @param dismissedErrors\n * @param toDismiss\n * @returns DismissedError[]\n * Always returns a new Array so that the state variable is updated, trigerring a render.\n */\nexport const dismissError = (dismissedErrors: DismissedError[], toDismiss: ActiveErrorMessage): DismissedError[] => {\n const now = new Date(Date.now());\n for (const error of dismissedErrors) {\n if (error.type === toDismiss.type) {\n // Bump the timestamp for latest dismissal of this error to now.\n error.dismissedAt = now;\n error.activeSince = toDismiss.timestamp;\n return Array.from(dismissedErrors);\n }\n }\n\n const toDismissTimestamp = toDismiss.timestamp ?? now;\n\n // Record that this error was dismissed for the first time right now.\n return [\n ...dismissedErrors,\n {\n type: toDismiss.type,\n // the error time could be sometimes later than the button click time, which cause the dismiss not working\n // so we set the dismiss time to the later one\n dismissedAt: now > toDismissTimestamp ? now : toDismissTimestamp,\n activeSince: toDismiss.timestamp\n }\n ];\n};\n\n/**\n * @private\n * @param activeErrorMessages\n * @param dismissedErrors\n * @returns DismissedError[]\n * Returns a new Array if and only if contents change, to avoid re-rendering when nothing was dropped.\n */\nexport const dropDismissalsForInactiveErrors = (\n activeErrorMessages: ActiveErrorMessage[],\n dismissedErrors: DismissedError[]\n): DismissedError[] => {\n const active = new Map();\n for (const message of activeErrorMessages) {\n active.set(message.type, message);\n }\n\n // For an error such that:\n // * It was previously active, and dismissed.\n // * It did not have a timestamp associated with it.\n // * It is no longer active.\n //\n // We remove it from dismissals. When it becomes active again next time, it will be shown again on the UI.\n const shouldDeleteDismissal = (dismissed: DismissedError): boolean =>\n dismissed.activeSince === undefined && active.get(dismissed.type) === undefined;\n\n if (dismissedErrors.some((dismissed) => shouldDeleteDismissal(dismissed))) {\n return dismissedErrors.filter((dismissed) => !shouldDeleteDismissal(dismissed));\n }\n return dismissedErrors;\n};\n\n/**\n * @private\n * @param activeErrorMessages\n * @param dismissedErrors\n * @returns ActiveErrorMessage[]\n */\nexport const errorsToShow = (\n activeErrorMessages: ActiveErrorMessage[],\n dismissedErrors: DismissedError[],\n mountTimestamp?: Date\n): ActiveErrorMessage[] => {\n const dismissed: Map<ErrorType, DismissedError> = new Map();\n for (const error of dismissedErrors) {\n dismissed.set(error.type, error);\n }\n\n return activeErrorMessages.filter((error) => {\n if (mountTimestamp && error.timestamp && mountTimestamp > error.timestamp) {\n // Error has a timestamp and it is older than when the component was mounted.\n return false;\n }\n\n const dismissal = dismissed.get(error.type);\n if (!dismissal) {\n // This error was never dismissed.\n return true;\n }\n if (!error.timestamp) {\n // No timestamp associated with the error. In this case, the existence of a dismissal is enough to suppress the error.\n return false;\n }\n // Error has an associated timestamp, so compare with last dismissal.\n return error.timestamp > dismissal.dismissedAt;\n });\n};\n\n/**\n * @private\n * @param errorType\n * @returns MessageBarType\n */\nexport const messageBarType = (errorType: ErrorType): MessageBarType => {\n switch (errorType) {\n case 'callNetworkQualityLow':\n case 'callNoSpeakerFound':\n case 'callNoMicrophoneFound':\n case 'callMicrophoneAccessDenied':\n case 'callMicrophoneAccessDeniedSafari':\n case 'callMicrophoneMutedBySystem':\n case 'callMicrophoneUnmutedBySystem':\n case 'callMacOsMicrophoneAccessDenied':\n case 'callLocalVideoFreeze':\n case 'callCameraAccessDenied':\n case 'callCameraAccessDeniedSafari':\n case 'callCameraAlreadyInUse':\n case 'callVideoStoppedBySystem':\n case 'callVideoRecoveredBySystem':\n case 'callMacOsCameraAccessDenied':\n case 'callMacOsScreenShareAccessDenied':\n case 'startScreenShareGeneric':\n case 'cameraFrozenForRemoteParticipants':\n return MessageBarType.warning;\n default:\n return MessageBarType.error;\n }\n};\n\n/**\n * @private\n * @param errorType\n * @returns IIconProps | undefined\n */\nexport const messageBarIconProps = (errorType: ErrorType): IIconProps | undefined => {\n const iconName = customIconName[errorType];\n return iconName ? { iconName } : undefined;\n};\n\n/**\n * @private\n */\nexport const customIconName: Partial<{ [key in ErrorType]: string }> = {\n callNetworkQualityLow: 'ErrorBarCallNetworkQualityLow',\n callNoSpeakerFound: 'ErrorBarCallNoSpeakerFound',\n callNoMicrophoneFound: 'ErrorBarCallNoMicrophoneFound',\n callMicrophoneAccessDenied: 'ErrorBarCallMicrophoneAccessDenied',\n callMicrophoneAccessDeniedSafari: 'ErrorBarCallMicrophoneAccessDenied',\n callMicrophoneMutedBySystem: 'ErrorBarCallMicrophoneMutedBySystem',\n callMicrophoneUnmutedBySystem: 'ErrorBarCallMicrophoneUnmutedBySystem',\n callMacOsMicrophoneAccessDenied: 'ErrorBarCallMacOsMicrophoneAccessDenied',\n callLocalVideoFreeze: 'ErrorBarCallLocalVideoFreeze',\n callCameraAccessDenied: 'ErrorBarCallCameraAccessDenied',\n callCameraAccessDeniedSafari: 'ErrorBarCallCameraAccessDenied',\n callCameraAlreadyInUse: 'ErrorBarCallCameraAlreadyInUse',\n callVideoStoppedBySystem: 'ErrorBarCallVideoStoppedBySystem',\n callVideoRecoveredBySystem: 'ErrorBarCallVideoRecoveredBySystem',\n callMacOsCameraAccessDenied: 'ErrorBarCallMacOsCameraAccessDenied'\n};\n\n/**\n * @private\n */\nexport const isValidString = (string: string | undefined): string is string => {\n return !!string && string.length > 0;\n};\n\n/**\n * Chunk an array into rows of a given size.\n * @private\n */\nexport function chunk<T>(options: T[], itemsPerRow: number): T[][] {\n const rows: T[][] = [];\n let currentRow: T[] = [];\n for (const option of options) {\n currentRow.push(option);\n if (currentRow.length === itemsPerRow) {\n rows.push(currentRow);\n currentRow = [];\n }\n }\n if (currentRow.length > 0) {\n rows.push(currentRow);\n }\n return rows;\n}\n\n/**\n * @private\n */\nexport const defaultSpokenLanguage: _SupportedSpokenLanguage = 'en-us';\n\n/**\n * @private\n */\nconst SAFARI_COMPOSITION_KEYCODE = 229;\n/**\n * Determine if the press of the enter key is from a composition session or not (Safari only)\n *\n * @private\n */\nexport const isEnterKeyEventFromCompositionSession = (e: KeyboardEvent): boolean =>\n // Uses KeyCode 229 and which code 229 to determine if the press of the enter key is from a composition session or not (Safari only)\n e.isComposing || e.keyCode === SAFARI_COMPOSITION_KEYCODE || e.which === SAFARI_COMPOSITION_KEYCODE;\n\n/**\n * @private\n */\nexport const nullToUndefined = <T>(value: T | null): T | undefined => (value === null ? undefined : value);\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../../../../react-components/src/components/utils.ts"],"names":[],"mappings":"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","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { IIconProps, MessageBarType } from '@fluentui/react';\nimport { ActiveErrorMessage, ErrorType } from './ErrorBar';\nimport { _SupportedSpokenLanguage } from '../types';\nimport { NotificationType } from './Notifications';\n\n/**\n * @private\n *\n * @param fileName\n * @param length\n * @returns string\n */\nexport const truncatedFileName = (fileName: string, length: number): string => {\n return fileName.substring(0, length).trimEnd() + (fileName.length > length ? '... ' : '');\n};\n\n/**\n * @private\n *\n * @param fileName\n * @returns string\n */\nexport const extension = (fileName: string): string => fileName.split('.').pop() || '';\n\n/**\n * @private\n */\nexport interface DismissedError {\n type: ErrorType;\n dismissedAt: Date;\n activeSince?: Date;\n}\n\n/**\n * @private\n * @param dismissedErrors\n * @param toDismiss\n * @returns DismissedError[]\n * Always returns a new Array so that the state variable is updated, trigerring a render.\n */\nexport const dismissError = (dismissedErrors: DismissedError[], toDismiss: ActiveErrorMessage): DismissedError[] => {\n const now = new Date(Date.now());\n for (const error of dismissedErrors) {\n if (error.type === toDismiss.type) {\n // Bump the timestamp for latest dismissal of this error to now.\n error.dismissedAt = now;\n error.activeSince = toDismiss.timestamp;\n return Array.from(dismissedErrors);\n }\n }\n\n const toDismissTimestamp = toDismiss.timestamp ?? now;\n\n // Record that this error was dismissed for the first time right now.\n return [\n ...dismissedErrors,\n {\n type: toDismiss.type,\n // the error time could be sometimes later than the button click time, which cause the dismiss not working\n // so we set the dismiss time to the later one\n dismissedAt: now > toDismissTimestamp ? now : toDismissTimestamp,\n activeSince: toDismiss.timestamp\n }\n ];\n};\n\n/**\n * @private\n * @param activeErrorMessages\n * @param dismissedErrors\n * @returns DismissedError[]\n * Returns a new Array if and only if contents change, to avoid re-rendering when nothing was dropped.\n */\nexport const dropDismissalsForInactiveErrors = (\n activeErrorMessages: ActiveErrorMessage[],\n dismissedErrors: DismissedError[]\n): DismissedError[] => {\n const active = new Map();\n for (const message of activeErrorMessages) {\n active.set(message.type, message);\n }\n\n // For an error such that:\n // * It was previously active, and dismissed.\n // * It did not have a timestamp associated with it.\n // * It is no longer active.\n //\n // We remove it from dismissals. When it becomes active again next time, it will be shown again on the UI.\n const shouldDeleteDismissal = (dismissed: DismissedError): boolean =>\n dismissed.activeSince === undefined && active.get(dismissed.type) === undefined;\n\n if (dismissedErrors.some((dismissed) => shouldDeleteDismissal(dismissed))) {\n return dismissedErrors.filter((dismissed) => !shouldDeleteDismissal(dismissed));\n }\n return dismissedErrors;\n};\n\n/**\n * @private\n * @param activeErrorMessages\n * @param dismissedErrors\n * @returns ActiveErrorMessage[]\n */\nexport const errorsToShow = (\n activeErrorMessages: ActiveErrorMessage[],\n dismissedErrors: DismissedError[],\n mountTimestamp?: Date\n): ActiveErrorMessage[] => {\n const dismissed: Map<ErrorType, DismissedError> = new Map();\n for (const error of dismissedErrors) {\n dismissed.set(error.type, error);\n }\n\n return activeErrorMessages.filter((error) => {\n if (mountTimestamp && error.timestamp && mountTimestamp > error.timestamp) {\n // Error has a timestamp and it is older than when the component was mounted.\n return false;\n }\n\n const dismissal = dismissed.get(error.type);\n if (!dismissal) {\n // This error was never dismissed.\n return true;\n }\n if (!error.timestamp) {\n // No timestamp associated with the error. In this case, the existence of a dismissal is enough to suppress the error.\n return false;\n }\n // Error has an associated timestamp, so compare with last dismissal.\n return error.timestamp > dismissal.dismissedAt;\n });\n};\n\n/**\n * @private\n * @param errorType\n * @returns MessageBarType\n */\nexport const messageBarType = (errorType: ErrorType): MessageBarType => {\n switch (errorType) {\n case 'callNetworkQualityLow':\n case 'callNoSpeakerFound':\n case 'callNoMicrophoneFound':\n case 'callMicrophoneAccessDenied':\n case 'callMicrophoneAccessDeniedSafari':\n case 'callMicrophoneMutedBySystem':\n case 'callMicrophoneUnmutedBySystem':\n case 'callMacOsMicrophoneAccessDenied':\n case 'callLocalVideoFreeze':\n case 'callCameraAccessDenied':\n case 'callCameraAccessDeniedSafari':\n case 'callCameraAlreadyInUse':\n case 'callVideoStoppedBySystem':\n case 'callVideoRecoveredBySystem':\n case 'callMacOsCameraAccessDenied':\n case 'callMacOsScreenShareAccessDenied':\n case 'startScreenShareGeneric':\n case 'cameraFrozenForRemoteParticipants':\n return MessageBarType.warning;\n default:\n return MessageBarType.error;\n }\n};\n\n/**\n * @private\n * @param errorType\n * @returns IIconProps | undefined\n */\nexport const messageBarIconProps = (errorType: ErrorType): IIconProps | undefined => {\n const iconName = customIconName[errorType];\n return iconName ? { iconName } : undefined;\n};\n\n/**\n * @private\n */\nexport const customIconName: Partial<{ [key in ErrorType]: string }> = {\n callNetworkQualityLow: 'ErrorBarCallNetworkQualityLow',\n callNoSpeakerFound: 'ErrorBarCallNoSpeakerFound',\n callNoMicrophoneFound: 'ErrorBarCallNoMicrophoneFound',\n callMicrophoneAccessDenied: 'ErrorBarCallMicrophoneAccessDenied',\n callMicrophoneAccessDeniedSafari: 'ErrorBarCallMicrophoneAccessDenied',\n callMicrophoneMutedBySystem: 'ErrorBarCallMicrophoneMutedBySystem',\n callMicrophoneUnmutedBySystem: 'ErrorBarCallMicrophoneUnmutedBySystem',\n callMacOsMicrophoneAccessDenied: 'ErrorBarCallMacOsMicrophoneAccessDenied',\n callLocalVideoFreeze: 'ErrorBarCallLocalVideoFreeze',\n callCameraAccessDenied: 'ErrorBarCallCameraAccessDenied',\n callCameraAccessDeniedSafari: 'ErrorBarCallCameraAccessDenied',\n callCameraAlreadyInUse: 'ErrorBarCallCameraAlreadyInUse',\n callVideoStoppedBySystem: 'ErrorBarCallVideoStoppedBySystem',\n callVideoRecoveredBySystem: 'ErrorBarCallVideoRecoveredBySystem',\n callMacOsCameraAccessDenied: 'ErrorBarCallMacOsCameraAccessDenied'\n};\n\n/**\n * @private\n * @param NotificationType\n * @returns IIconProps | undefined\n */\nexport const NotificationIconProps = (notificationType: NotificationType): IIconProps | undefined => {\n const iconName = customNotificationIconName[notificationType];\n return iconName ? { iconName } : undefined;\n};\n\n/**\n * @private\n */\nexport const customNotificationIconName: Partial<{ [key in NotificationType]: string }> = {\n callNetworkQualityLow: 'ErrorBarCallNetworkQualityLow',\n callNoSpeakerFound: 'ErrorBarCallNoSpeakerFound',\n callNoMicrophoneFound: 'ErrorBarCallNoMicrophoneFound',\n callMicrophoneAccessDenied: 'ErrorBarCallMicrophoneAccessDenied',\n callMicrophoneAccessDeniedSafari: 'ErrorBarCallMicrophoneAccessDenied',\n callMicrophoneMutedBySystem: 'ErrorBarCallMicrophoneMutedBySystem',\n callMicrophoneUnmutedBySystem: 'ErrorBarCallMicrophoneUnmutedBySystem',\n callMacOsMicrophoneAccessDenied: 'ErrorBarCallMacOsMicrophoneAccessDenied',\n callLocalVideoFreeze: 'ErrorBarCallLocalVideoFreeze',\n callCameraAccessDenied: 'ErrorBarCallCameraAccessDenied',\n callCameraAccessDeniedSafari: 'ErrorBarCallCameraAccessDenied',\n callCameraAlreadyInUse: 'ErrorBarCallCameraAlreadyInUse',\n callVideoStoppedBySystem: 'ErrorBarCallVideoStoppedBySystem',\n callVideoRecoveredBySystem: 'ErrorBarCallVideoRecoveredBySystem',\n callMacOsCameraAccessDenied: 'ErrorBarCallMacOsCameraAccessDenied'\n};\n\n/**\n * @private\n */\nexport const isValidString = (string: string | undefined): string is string => {\n return !!string && string.length > 0;\n};\n\n/**\n * Chunk an array into rows of a given size.\n * @private\n */\nexport function chunk<T>(options: T[], itemsPerRow: number): T[][] {\n const rows: T[][] = [];\n let currentRow: T[] = [];\n for (const option of options) {\n currentRow.push(option);\n if (currentRow.length === itemsPerRow) {\n rows.push(currentRow);\n currentRow = [];\n }\n }\n if (currentRow.length > 0) {\n rows.push(currentRow);\n }\n return rows;\n}\n\n/**\n * @private\n */\nexport const defaultSpokenLanguage: _SupportedSpokenLanguage = 'en-us';\n\n/**\n * @private\n */\nconst SAFARI_COMPOSITION_KEYCODE = 229;\n/**\n * Determine if the press of the enter key is from a composition session or not (Safari only)\n *\n * @private\n */\nexport const isEnterKeyEventFromCompositionSession = (e: KeyboardEvent): boolean =>\n // Uses KeyCode 229 and which code 229 to determine if the press of the enter key is from a composition session or not (Safari only)\n e.isComposing || e.keyCode === SAFARI_COMPOSITION_KEYCODE || e.which === SAFARI_COMPOSITION_KEYCODE;\n\n/**\n * @private\n */\nexport const nullToUndefined = <T>(value: T | null): T | undefined => (value === null ? undefined : value);\n"]}
@@ -1,5 +1,6 @@
1
1
  import React from 'react';
2
2
  import { CameraButtonStrings, EndCallButtonStrings, ErrorBarStrings, MessageStatusIndicatorStrings, MessageThreadStrings, MicrophoneButtonStrings, DevicesButtonStrings, ParticipantsButtonStrings, ParticipantItemStrings, ScreenShareButtonStrings, SendBoxStrings, TypingIndicatorStrings, VideoGalleryStrings } from '../components';
3
+ import { NotificationsStrings } from '../components';
3
4
  import { RaiseHandButtonStrings } from '../components';
4
5
  import { HoldButtonStrings } from '../components';
5
6
  import { DialpadStrings } from '../components';
@@ -72,6 +73,8 @@ export interface ComponentStrings {
72
73
  messageStatusIndicator: MessageStatusIndicatorStrings;
73
74
  /** Strings for ErroBar */
74
75
  errorBar: ErrorBarStrings;
76
+ /** Strings for Notifications */
77
+ notifications: NotificationsStrings;
75
78
  /** Strings for VideoGallery */
76
79
  videoGallery: VideoGalleryStrings;
77
80
  /** Strings for Dialpad */
@@ -1 +1 @@
1
- {"version":3,"file":"LocalizationProvider.js","sourceRoot":"","sources":["../../../../../../react-components/src/localization/LocalizationProvider.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAgCzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAmJnD;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAkB,sBAAsB,CAAC,CAAC;AAcpF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAgC,EAAe,EAAE;IACpF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACnC,OAAO,oBAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,IAAG,QAAQ,CAA0B,CAAC;AACpF,CAAC,CAAC;AAEF,kCAAkC;AAClC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAoB,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { createContext, useContext } from 'react';\nimport {\n CameraButtonStrings,\n EndCallButtonStrings,\n ErrorBarStrings,\n MessageStatusIndicatorStrings,\n MessageThreadStrings,\n MicrophoneButtonStrings,\n DevicesButtonStrings,\n ParticipantsButtonStrings,\n ParticipantItemStrings,\n ScreenShareButtonStrings,\n SendBoxStrings,\n TypingIndicatorStrings,\n VideoGalleryStrings\n} from '../components';\n\nimport { RaiseHandButtonStrings } from '../components';\n/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\nimport { HoldButtonStrings } from '../components';\nimport { DialpadStrings } from '../components';\n/* @conditional-compile-remove(call-readiness) */\nimport { SitePermissionsStrings } from '../components/DevicePermissions/SitePermissionsScaffolding';\n/* @conditional-compile-remove(call-readiness) */\nimport { BrowserPermissionDeniedStrings } from '../components/DevicePermissions/BrowserPermissionDenied';\n/* @conditional-compile-remove(call-readiness) */\nimport { BrowserPermissionDeniedIOSStrings } from '../components/DevicePermissions/BrowserPermissionDeniedIOS';\n/* @conditional-compile-remove(call-readiness) */ /* @conditional-compile-remove(unsupported-browser) */\nimport { UnsupportedBrowserStrings } from '../components/UnsupportedBrowser';\n/* @conditional-compile-remove(one-to-n-calling) */\n// @conditional-compile-remove(PSTN-calls)\nimport { VideoTileStrings } from '../components/VideoTile';\nimport { COMPONENT_LOCALE_EN_US } from './locales';\n/* @conditional-compile-remove(unsupported-browser) */\nimport { UnsupportedBrowserVersionStrings } from '../components/UnsupportedBrowserVersion';\n/* @conditional-compile-remove(unsupported-browser) */\nimport { UnsupportedOperatingSystemStrings } from '../components/UnsupportedOperatingSystem';\nimport { VerticalGalleryStrings } from '../components/VerticalGallery';\n/* @conditional-compile-remove(total-participant-count) */\nimport { ParticipantListStrings } from '../components/ParticipantList';\n/* @conditional-compile-remove(mention) */\nimport { MentionPopoverStrings } from '../components/MentionPopover';\nimport { ImageOverlayStrings } from '../components/ImageOverlay';\nimport { ReactionButtonStrings } from '../components';\n/* @conditional-compile-remove(rich-text-editor) */\nimport { RichTextSendBoxStrings } from '../components/RichTextEditor/RichTextSendBox';\n\n/**\n * Locale information for all components exported from this library.\n *\n * @public\n */\nexport interface ComponentLocale {\n /** Strings for components */\n strings: ComponentStrings;\n /* @conditional-compile-remove(date-time-customization) */\n /**\n * Optional function to provide customized date format.\n * @beta\n */\n onDisplayDateTimeString?: (messageDate: Date) => string;\n}\n\n/**\n * Strings used by all components exported from this library.\n *\n * @public\n */\nexport interface ComponentStrings {\n /** Strings for MessageThread */\n messageThread: MessageThreadStrings;\n /** Strings for ParticipantItem */\n participantItem: ParticipantItemStrings;\n /** Strings for CameraButton */\n cameraButton: CameraButtonStrings;\n /** Strings for MicrophoneButton */\n microphoneButton: MicrophoneButtonStrings;\n /** Strings for EndCallButton */\n endCallButton: EndCallButtonStrings;\n /** Strings for DevicesButton */\n devicesButton: DevicesButtonStrings;\n /** Strings for ParticipantsButton */\n participantsButton: ParticipantsButtonStrings;\n /** Strings for ScreenShareButton */\n screenShareButton: ScreenShareButtonStrings;\n /** Strings for RaiseHandButton */\n raiseHandButton: RaiseHandButtonStrings;\n /**\n * Strings for ReactionButton\n * */\n reactionButton: ReactionButtonStrings;\n /** Strings for TypingIndicator */\n typingIndicator: TypingIndicatorStrings;\n /** Strings for SendBox */\n sendBox: SendBoxStrings;\n /* @conditional-compile-remove(rich-text-editor) */\n /** Strings for RichTextSendBox */\n richTextSendBox: RichTextSendBoxStrings;\n /* @conditional-compile-remove(mention) */\n /** Strings for MentionPopover */\n mentionPopover: MentionPopoverStrings;\n /** Strings for ImageOverlay */\n imageOverlay: ImageOverlayStrings;\n /** Strings for MessageStatusIndicator */\n messageStatusIndicator: MessageStatusIndicatorStrings;\n /** Strings for ErroBar */\n errorBar: ErrorBarStrings;\n /** Strings for VideoGallery */\n videoGallery: VideoGalleryStrings;\n /** Strings for Dialpad */\n dialpad: DialpadStrings;\n /* @conditional-compile-remove(one-to-n-calling) */\n // @conditional-compile-remove(PSTN-calls)\n /** Strings for VideoTile */\n videoTile: VideoTileStrings;\n /* @conditional-compile-remove(one-to-n-calling) @conditional-compile-remove(PSTN-calls) */\n /** Strings for HoldButton */\n holdButton: HoldButtonStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission request prompt */\n CameraAndMicrophoneSitePermissionsRequest: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission request prompt */\n CameraSitePermissionsRequest: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission request prompt */\n MicrophoneSitePermissionsRequest: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission generic checking prompt */\n CameraAndMicrophoneSitePermissionsCheck: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission generic checking prompt */\n CameraSitePermissionsCheck: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission generic checking prompt */\n MicrophoneSitePermissionsCheck: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt */\n CameraAndMicrophoneSitePermissionsDenied: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt for safari browsers*/\n CameraAndMicrophoneSitePermissionsDeniedSafari: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt */\n CameraSitePermissionsDenied: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt */\n MicrophoneSitePermissionsDenied: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt for safari browsers*/\n CameraSitePermissionsDeniedSafari: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt for safari browsers*/\n MicrophoneSitePermissionsDeniedSafari: SitePermissionsStrings;\n /* @conditional-compile-remove(unsupported-browser) */\n /** Strings for unsupported browser UI */\n UnsupportedBrowser: UnsupportedBrowserStrings;\n /* @conditional-compile-remove(unsupported-browser) */\n /** Strings for unsupported browser version UI */\n UnsupportedBrowserVersion: UnsupportedBrowserVersionStrings;\n /* @conditional-compile-remove(unsupported-browser) */\n /** Strings for unsupported browser version UI */\n UnsupportedOperatingSystem: UnsupportedOperatingSystemStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for BrowserPemissionDenied */\n BrowserPermissionDenied: BrowserPermissionDeniedStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for BrowserPemissionDeniedIOS */\n BrowserPermissionDeniedIOS: BrowserPermissionDeniedIOSStrings;\n\n /**\n * Strings for the VerticalGallery.\n */\n verticalGallery: VerticalGalleryStrings;\n /* @conditional-compile-remove(total-participant-count) */\n /** Strings for the participant list component */\n ParticipantList: ParticipantListStrings;\n}\n\n/**\n * Context for providing localized strings to components exported from this library.\n *\n * @public\n */\nexport const LocaleContext = createContext<ComponentLocale>(COMPONENT_LOCALE_EN_US);\n\n/**\n * Props for {@link LocalizationProvider}.\n *\n * @public\n */\nexport type LocalizationProviderProps = {\n /** Locale context to provide components */\n locale: ComponentLocale;\n /** Children to provide locale context. */\n children: React.ReactNode;\n};\n\n/**\n * Provider to provide localized strings for this library's react components.\n *\n * @remarks Components will be provided localized strings in English (US) by default if this\n * provider is not used.\n *\n * @public\n */\nexport const LocalizationProvider = (props: LocalizationProviderProps): JSX.Element => {\n const { locale, children } = props;\n return <LocaleContext.Provider value={locale}>{children}</LocaleContext.Provider>;\n};\n\n/** React hook to access locale */\nexport const useLocale = (): ComponentLocale => useContext(LocaleContext);\n"]}
1
+ {"version":3,"file":"LocalizationProvider.js","sourceRoot":"","sources":["../../../../../../react-components/src/localization/LocalizationProvider.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,KAAK,EAAE,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAgCzD,OAAO,EAAE,sBAAsB,EAAE,MAAM,WAAW,CAAC;AAoJnD;;;;GAIG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,aAAa,CAAkB,sBAAsB,CAAC,CAAC;AAcpF;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,KAAgC,EAAe,EAAE;IACpF,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,GAAG,KAAK,CAAC;IACnC,OAAO,oBAAC,aAAa,CAAC,QAAQ,IAAC,KAAK,EAAE,MAAM,IAAG,QAAQ,CAA0B,CAAC;AACpF,CAAC,CAAC;AAEF,kCAAkC;AAClC,MAAM,CAAC,MAAM,SAAS,GAAG,GAAoB,EAAE,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport React, { createContext, useContext } from 'react';\nimport {\n CameraButtonStrings,\n EndCallButtonStrings,\n ErrorBarStrings,\n MessageStatusIndicatorStrings,\n MessageThreadStrings,\n MicrophoneButtonStrings,\n DevicesButtonStrings,\n ParticipantsButtonStrings,\n ParticipantItemStrings,\n ScreenShareButtonStrings,\n SendBoxStrings,\n TypingIndicatorStrings,\n VideoGalleryStrings\n} from '../components';\n/* @conditional-compile-remove(notifications) */\nimport { NotificationsStrings } from '../components';\n\nimport { RaiseHandButtonStrings } from '../components';\n/* @conditional-compile-remove(PSTN-calls) */ /* @conditional-compile-remove(one-to-n-calling) */\nimport { HoldButtonStrings } from '../components';\nimport { DialpadStrings } from '../components';\n/* @conditional-compile-remove(call-readiness) */\nimport { SitePermissionsStrings } from '../components/DevicePermissions/SitePermissionsScaffolding';\n/* @conditional-compile-remove(call-readiness) */\nimport { BrowserPermissionDeniedStrings } from '../components/DevicePermissions/BrowserPermissionDenied';\n/* @conditional-compile-remove(call-readiness) */\nimport { BrowserPermissionDeniedIOSStrings } from '../components/DevicePermissions/BrowserPermissionDeniedIOS';\n/* @conditional-compile-remove(call-readiness) */ /* @conditional-compile-remove(unsupported-browser) */\nimport { UnsupportedBrowserStrings } from '../components/UnsupportedBrowser';\nimport { VideoTileStrings } from '../components/VideoTile';\nimport { COMPONENT_LOCALE_EN_US } from './locales';\n/* @conditional-compile-remove(unsupported-browser) */\nimport { UnsupportedBrowserVersionStrings } from '../components/UnsupportedBrowserVersion';\n/* @conditional-compile-remove(unsupported-browser) */\nimport { UnsupportedOperatingSystemStrings } from '../components/UnsupportedOperatingSystem';\nimport { VerticalGalleryStrings } from '../components/VerticalGallery';\n/* @conditional-compile-remove(total-participant-count) */\nimport { ParticipantListStrings } from '../components/ParticipantList';\n/* @conditional-compile-remove(mention) */\nimport { MentionPopoverStrings } from '../components/MentionPopover';\nimport { ImageOverlayStrings } from '../components/ImageOverlay';\nimport { ReactionButtonStrings } from '../components';\n/* @conditional-compile-remove(rich-text-editor) */\nimport { RichTextSendBoxStrings } from '../components/RichTextEditor/RichTextSendBox';\n\n/**\n * Locale information for all components exported from this library.\n *\n * @public\n */\nexport interface ComponentLocale {\n /** Strings for components */\n strings: ComponentStrings;\n /* @conditional-compile-remove(date-time-customization) */\n /**\n * Optional function to provide customized date format.\n * @beta\n */\n onDisplayDateTimeString?: (messageDate: Date) => string;\n}\n\n/**\n * Strings used by all components exported from this library.\n *\n * @public\n */\nexport interface ComponentStrings {\n /** Strings for MessageThread */\n messageThread: MessageThreadStrings;\n /** Strings for ParticipantItem */\n participantItem: ParticipantItemStrings;\n /** Strings for CameraButton */\n cameraButton: CameraButtonStrings;\n /** Strings for MicrophoneButton */\n microphoneButton: MicrophoneButtonStrings;\n /** Strings for EndCallButton */\n endCallButton: EndCallButtonStrings;\n /** Strings for DevicesButton */\n devicesButton: DevicesButtonStrings;\n /** Strings for ParticipantsButton */\n participantsButton: ParticipantsButtonStrings;\n /** Strings for ScreenShareButton */\n screenShareButton: ScreenShareButtonStrings;\n /** Strings for RaiseHandButton */\n raiseHandButton: RaiseHandButtonStrings;\n /**\n * Strings for ReactionButton\n * */\n reactionButton: ReactionButtonStrings;\n /** Strings for TypingIndicator */\n typingIndicator: TypingIndicatorStrings;\n /** Strings for SendBox */\n sendBox: SendBoxStrings;\n /* @conditional-compile-remove(rich-text-editor) */\n /** Strings for RichTextSendBox */\n richTextSendBox: RichTextSendBoxStrings;\n /* @conditional-compile-remove(mention) */\n /** Strings for MentionPopover */\n mentionPopover: MentionPopoverStrings;\n /** Strings for ImageOverlay */\n imageOverlay: ImageOverlayStrings;\n /** Strings for MessageStatusIndicator */\n messageStatusIndicator: MessageStatusIndicatorStrings;\n /** Strings for ErroBar */\n errorBar: ErrorBarStrings;\n /* @conditional-compile-remove(notifications) */\n /** Strings for Notifications */\n notifications: NotificationsStrings;\n /** Strings for VideoGallery */\n videoGallery: VideoGalleryStrings;\n /** Strings for Dialpad */\n dialpad: DialpadStrings;\n /** Strings for VideoTile */\n videoTile: VideoTileStrings;\n /* @conditional-compile-remove(one-to-n-calling) @conditional-compile-remove(PSTN-calls) */\n /** Strings for HoldButton */\n holdButton: HoldButtonStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission request prompt */\n CameraAndMicrophoneSitePermissionsRequest: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission request prompt */\n CameraSitePermissionsRequest: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission request prompt */\n MicrophoneSitePermissionsRequest: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission generic checking prompt */\n CameraAndMicrophoneSitePermissionsCheck: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission generic checking prompt */\n CameraSitePermissionsCheck: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission generic checking prompt */\n MicrophoneSitePermissionsCheck: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt */\n CameraAndMicrophoneSitePermissionsDenied: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt for safari browsers*/\n CameraAndMicrophoneSitePermissionsDeniedSafari: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt */\n CameraSitePermissionsDenied: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt */\n MicrophoneSitePermissionsDenied: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt for safari browsers*/\n CameraSitePermissionsDeniedSafari: SitePermissionsStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for a site's permission denied prompt for safari browsers*/\n MicrophoneSitePermissionsDeniedSafari: SitePermissionsStrings;\n /* @conditional-compile-remove(unsupported-browser) */\n /** Strings for unsupported browser UI */\n UnsupportedBrowser: UnsupportedBrowserStrings;\n /* @conditional-compile-remove(unsupported-browser) */\n /** Strings for unsupported browser version UI */\n UnsupportedBrowserVersion: UnsupportedBrowserVersionStrings;\n /* @conditional-compile-remove(unsupported-browser) */\n /** Strings for unsupported browser version UI */\n UnsupportedOperatingSystem: UnsupportedOperatingSystemStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for BrowserPemissionDenied */\n BrowserPermissionDenied: BrowserPermissionDeniedStrings;\n /* @conditional-compile-remove(call-readiness) */\n /** Strings for BrowserPemissionDeniedIOS */\n BrowserPermissionDeniedIOS: BrowserPermissionDeniedIOSStrings;\n\n /**\n * Strings for the VerticalGallery.\n */\n verticalGallery: VerticalGalleryStrings;\n /* @conditional-compile-remove(total-participant-count) */\n /** Strings for the participant list component */\n ParticipantList: ParticipantListStrings;\n}\n\n/**\n * Context for providing localized strings to components exported from this library.\n *\n * @public\n */\nexport const LocaleContext = createContext<ComponentLocale>(COMPONENT_LOCALE_EN_US);\n\n/**\n * Props for {@link LocalizationProvider}.\n *\n * @public\n */\nexport type LocalizationProviderProps = {\n /** Locale context to provide components */\n locale: ComponentLocale;\n /** Children to provide locale context. */\n children: React.ReactNode;\n};\n\n/**\n * Provider to provide localized strings for this library's react components.\n *\n * @remarks Components will be provided localized strings in English (US) by default if this\n * provider is not used.\n *\n * @public\n */\nexport const LocalizationProvider = (props: LocalizationProviderProps): JSX.Element => {\n const { locale, children } = props;\n return <LocaleContext.Provider value={locale}>{children}</LocaleContext.Provider>;\n};\n\n/** React hook to access locale */\nexport const useLocale = (): ComponentLocale => useContext(LocaleContext);\n"]}
@@ -7,5 +7,7 @@ import ar_SA from './strings.json';
7
7
  *
8
8
  * @public
9
9
  */
10
- export const COMPONENT_LOCALE_AR_SA = { strings: createComponentStrings(ar_SA) };
10
+ export const COMPONENT_LOCALE_AR_SA = {
11
+ strings: createComponentStrings(ar_SA)
12
+ };
11
13
  //# sourceMappingURL=ComponentLocale.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/ar-SA/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB,EAAE,OAAO,EAAE,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale } from '../..';\nimport ar_SA from './strings.json';\n\n/**\n * Locale for Arabic (Saudi Arabia).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_AR_SA: ComponentLocale = { strings: createComponentStrings(ar_SA) };\n"]}
1
+ {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/ar-SA/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAGnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,OAAO,EAAE,sBAAsB,CAAC,KAAsC,CAAC;CACxE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale, ComponentStrings } from '../..';\nimport ar_SA from './strings.json';\nimport { PartialDeep } from 'type-fest';\n\n/**\n * Locale for Arabic (Saudi Arabia).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_AR_SA: ComponentLocale = {\n strings: createComponentStrings(ar_SA as PartialDeep<ComponentStrings>)\n};\n"]}
@@ -7,5 +7,7 @@ import cs_CZ from './strings.json';
7
7
  *
8
8
  * @public
9
9
  */
10
- export const COMPONENT_LOCALE_CS_CZ = { strings: createComponentStrings(cs_CZ) };
10
+ export const COMPONENT_LOCALE_CS_CZ = {
11
+ strings: createComponentStrings(cs_CZ)
12
+ };
11
13
  //# sourceMappingURL=ComponentLocale.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/cs-CZ/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB,EAAE,OAAO,EAAE,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale } from '../..';\nimport cs_CZ from './strings.json';\n\n/**\n * Locale for Czech (Czech Republic).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_CS_CZ: ComponentLocale = { strings: createComponentStrings(cs_CZ) };\n"]}
1
+ {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/cs-CZ/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAGnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,OAAO,EAAE,sBAAsB,CAAC,KAAsC,CAAC;CACxE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale, ComponentStrings } from '../..';\nimport cs_CZ from './strings.json';\nimport { PartialDeep } from 'type-fest';\n\n/**\n * Locale for Czech (Czech Republic).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_CS_CZ: ComponentLocale = {\n strings: createComponentStrings(cs_CZ as PartialDeep<ComponentStrings>)\n};\n"]}
@@ -57,7 +57,7 @@
57
57
  "richTextDeleteColumnMenu": "Odstranit sloupec",
58
58
  "richTextDeleteRowMenu": "Odstranit řádek",
59
59
  "richTextDeleteTableMenu": "Odstranit tabulku",
60
- "richTextToolbarMoreButtonAriaLabel": "More options",
60
+ "richTextToolbarMoreButtonAriaLabel": "Další možnosti",
61
61
  "attachmentMoreMenu": "Další možnosti"
62
62
  },
63
63
  "mentionPopover": {
@@ -220,7 +220,7 @@
220
220
  "richTextDeleteColumnMenu": "Odstranit sloupec",
221
221
  "richTextDeleteRowMenu": "Odstranit řádek",
222
222
  "richTextDeleteTableMenu": "Odstranit tabulku",
223
- "richTextToolbarMoreButtonAriaLabel": "More options"
223
+ "richTextToolbarMoreButtonAriaLabel": "Další možnosti"
224
224
  },
225
225
  "errorBar": {
226
226
  "unableToReachChatService": "Jste offline",
@@ -7,5 +7,7 @@ import de_DE from './strings.json';
7
7
  *
8
8
  * @public
9
9
  */
10
- export const COMPONENT_LOCALE_DE_DE = { strings: createComponentStrings(de_DE) };
10
+ export const COMPONENT_LOCALE_DE_DE = {
11
+ strings: createComponentStrings(de_DE)
12
+ };
11
13
  //# sourceMappingURL=ComponentLocale.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/de-DE/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB,EAAE,OAAO,EAAE,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale } from '../..';\nimport de_DE from './strings.json';\n\n/**\n * Locale for German (Germany).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_DE_DE: ComponentLocale = { strings: createComponentStrings(de_DE) };\n"]}
1
+ {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/de-DE/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAGnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,OAAO,EAAE,sBAAsB,CAAC,KAAsC,CAAC;CACxE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale, ComponentStrings } from '../..';\nimport de_DE from './strings.json';\nimport { PartialDeep } from 'type-fest';\n\n/**\n * Locale for German (Germany).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_DE_DE: ComponentLocale = {\n strings: createComponentStrings(de_DE as PartialDeep<ComponentStrings>)\n};\n"]}
@@ -7,5 +7,7 @@ import en_GB from './strings.json';
7
7
  *
8
8
  * @public
9
9
  */
10
- export const COMPONENT_LOCALE_EN_GB = { strings: createComponentStrings(en_GB) };
10
+ export const COMPONENT_LOCALE_EN_GB = {
11
+ strings: createComponentStrings(en_GB)
12
+ };
11
13
  //# sourceMappingURL=ComponentLocale.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/en-GB/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB,EAAE,OAAO,EAAE,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale } from '../..';\nimport en_GB from './strings.json';\n\n/**\n * Locale for English (GB).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_EN_GB: ComponentLocale = { strings: createComponentStrings(en_GB) };\n"]}
1
+ {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/en-GB/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAGnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,OAAO,EAAE,sBAAsB,CAAC,KAAsC,CAAC;CACxE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale, ComponentStrings } from '../..';\nimport en_GB from './strings.json';\nimport { PartialDeep } from 'type-fest';\n\n/**\n * Locale for English (GB).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_EN_GB: ComponentLocale = {\n strings: createComponentStrings(en_GB as PartialDeep<ComponentStrings>)\n};\n"]}
@@ -259,12 +259,167 @@
259
259
  "unableToStartVideoEffect": "Unable to apply video effect.",
260
260
  "startSpotlightWhileMaxParticipantsAreSpotlighted": "Cannot start spotlight on participant(s) because the maximum number of participants are already spotlighted."
261
261
  },
262
+ "notifications": {
263
+ "unableToReachChatService": {
264
+ "title": "You are offline.",
265
+ "closeButtonAriaLabel": "Close"
266
+ },
267
+ "accessDenied": {
268
+ "title": "Unable to access chat services",
269
+ "message": "Please check the user credentials provided",
270
+ "closeButtonAriaLabel": "Close"
271
+ },
272
+ "userNotInChatThread": {
273
+ "title": "You are no longer in this chat thread.",
274
+ "closeButtonAriaLabel": "Close"
275
+ },
276
+ "sendMessageNotInChatThread": {
277
+ "title": "Failed to send message",
278
+ "message": "You are no longer in this chat thread",
279
+ "closeButtonAriaLabel": "Close"
280
+ },
281
+ "sendMessageGeneric": {
282
+ "title": "Failed to send message.",
283
+ "closeButtonAriaLabel": "Close"
284
+ },
285
+ "callingNetworkFailure": {
286
+ "title": "Troubling connecting call",
287
+ "message": "You seem to be offline. Please check your network connection and try again.",
288
+ "closeButtonAriaLabel": "Close"
289
+ },
290
+ "startVideoGeneric": {
291
+ "title": "Failed to start video.",
292
+ "closeButtonAriaLabel": "Close"
293
+ },
294
+ "stopVideoGeneric": {
295
+ "title": "Failed to stop video.",
296
+ "closeButtonAriaLabel": "Close"
297
+ },
298
+ "muteGeneric": {
299
+ "title": "Failed to mute microphone.",
300
+ "closeButtonAriaLabel": "Close"
301
+ },
302
+ "unmuteGeneric": {
303
+ "title": "Failed to unmute microphone.",
304
+ "closeButtonAriaLabel": "Close"
305
+ },
306
+ "speakingWhileMuted": {
307
+ "title": "You're muted.",
308
+ "closeButtonAriaLabel": "Close"
309
+ },
310
+ "startScreenShareGeneric": {
311
+ "title": "There was an issue starting screen share.",
312
+ "closeButtonAriaLabel": "Close"
313
+ },
314
+ "stopScreenShareGeneric": {
315
+ "title": "Failed to stop screen sharing.",
316
+ "closeButtonAriaLabel": "Close"
317
+ },
318
+ "callNetworkQualityLow": {
319
+ "title": "Network quality is low.",
320
+ "closeButtonAriaLabel": "Close"
321
+ },
322
+ "callNoSpeakerFound": {
323
+ "title": "No speakers or headphones found",
324
+ "message": "Connect an audio device to hear the call.",
325
+ "closeButtonAriaLabel": "Close"
326
+ },
327
+ "callNoMicrophoneFound": {
328
+ "title": "No microphones found",
329
+ "message": "Connect an audio input device.",
330
+ "closeButtonAriaLabel": "Close"
331
+ },
332
+ "callMicrophoneAccessDenied": {
333
+ "title": "Unable to access microphone",
334
+ "message": "Click the lock in the address bar to grant permission to this webpage.",
335
+ "closeButtonAriaLabel": "Close"
336
+ },
337
+ "callMicrophoneAccessDeniedSafari": {
338
+ "title": "Unable to access microphone",
339
+ "message": "Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",
340
+ "closeButtonAriaLabel": "Close"
341
+ },
342
+ "callMicrophoneMutedBySystem": {
343
+ "title": "You are muted by your system.",
344
+ "closeButtonAriaLabel": "Close"
345
+ },
346
+ "callMicrophoneUnmutedBySystem": {
347
+ "title": "Your microphone recovered and you were unmuted by your system.",
348
+ "closeButtonAriaLabel": "Close"
349
+ },
350
+ "callMacOsMicrophoneAccessDenied": {
351
+ "title": "Unable to access microphone",
352
+ "message": "Grant microphone permission in your macOS privacy settings.",
353
+ "closeButtonAriaLabel": "Close"
354
+ },
355
+ "callLocalVideoFreeze": {
356
+ "title": "Network bandwidth is poor",
357
+ "message": "Your video may appear paused for others on the call.",
358
+ "closeButtonAriaLabel": "Close"
359
+ },
360
+ "callCameraAccessDenied": {
361
+ "title": "Unable to access camera",
362
+ "message": "Click the lock in the address bar to grant permission to this webpage.",
363
+ "closeButtonAriaLabel": "Close"
364
+ },
365
+ "callCameraAccessDeniedSafari": {
366
+ "title": "Unable to access camera",
367
+ "message": "Refresh the page to allow permissions, or check this browser’s settings and verify permissions are enabled for this website.",
368
+ "closeButtonAriaLabel": "Close"
369
+ },
370
+ "callCameraAlreadyInUse": {
371
+ "title": "Unable to access camera",
372
+ "message": "It may already be in use by another application.",
373
+ "closeButtonAriaLabel": "Close"
374
+ },
375
+ "callVideoStoppedBySystem": {
376
+ "title": "Your video has been stopped by your system.",
377
+ "closeButtonAriaLabel": "Close"
378
+ },
379
+ "callVideoRecoveredBySystem": {
380
+ "title": "Your video has resumed.",
381
+ "closeButtonAriaLabel": "Close"
382
+ },
383
+ "callMacOsCameraAccessDenied": {
384
+ "title": "MacOS is blocking access to your camera",
385
+ "message": "Update your privacy settings to allow this browser to access your camera.",
386
+ "closeButtonAriaLabel": "Close"
387
+ },
388
+ "callMacOsScreenShareAccessDenied": {
389
+ "title": "MacOS is blocking screen sharing",
390
+ "message": "Update your privacy settings to allow this browser to record your screen.",
391
+ "closeButtonAriaLabel": "Close"
392
+ },
393
+ "failedToJoinCallGeneric": {
394
+ "title": "Failed to join call.",
395
+ "closeButtonAriaLabel": "Close"
396
+ },
397
+ "failedToJoinCallInvalidMeetingLink": {
398
+ "title": "Unable to join Meeting. Invalid Link.",
399
+ "closeButtonAriaLabel": "Close"
400
+ },
401
+ "cameraFrozenForRemoteParticipants": {
402
+ "title": "Users in the call are having issues seeing your video",
403
+ "message": "Please check your devices and network.",
404
+ "closeButtonAriaLabel": "Close"
405
+ },
406
+ "unableToStartVideoEffect": {
407
+ "title": "Unable to apply video effect.",
408
+ "closeButtonAriaLabel": "Close"
409
+ },
410
+ "startSpotlightWhileMaxParticipantsAreSpotlighted": {
411
+ "title": "Cannot start spotlight on participant(s)",
412
+ "message": "The maximum number of participants are already spotlighted.",
413
+ "closeButtonAriaLabel": "Close"
414
+ }
415
+ },
262
416
  "videoGallery": {
263
417
  "screenIsBeingSharedMessage": "You are sharing your screen",
264
418
  "screenShareLoadingMessage": "Loading {participant}'s screen",
265
419
  "localVideoLabel": "You",
266
420
  "localVideoCameraSwitcherLabel": "Switch camera",
267
421
  "localVideoMovementLabel": "Movable Local Video Tile",
422
+ "localVideoMovementAriaLabel": "Movable Local Video Tile",
268
423
  "localVideoSelectedDescription": "{cameraName} selected",
269
424
  "displayNamePlaceholder": "Unnamed participant",
270
425
  "fitRemoteParticipantToFrame": "Fit to frame",
@@ -295,7 +450,8 @@
295
450
  },
296
451
  "videoTile": {
297
452
  "participantStateRinging": "Calling...",
298
- "participantStateHold": "On hold"
453
+ "participantStateHold": "On hold",
454
+ "moreOptionsButtonAriaLabel": "More Options"
299
455
  },
300
456
  "CameraAndMicrophoneSitePermissionsRequest": {
301
457
  "primaryText": "Allow {appName} to use your camera and microphone",
@@ -7,5 +7,7 @@ import es_ES from './strings.json';
7
7
  *
8
8
  * @public
9
9
  */
10
- export const COMPONENT_LOCALE_ES_ES = { strings: createComponentStrings(es_ES) };
10
+ export const COMPONENT_LOCALE_ES_ES = {
11
+ strings: createComponentStrings(es_ES)
12
+ };
11
13
  //# sourceMappingURL=ComponentLocale.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/es-ES/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB,EAAE,OAAO,EAAE,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale } from '../..';\nimport es_ES from './strings.json';\n\n/**\n * Locale for Spanish (Spain).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_ES_ES: ComponentLocale = { strings: createComponentStrings(es_ES) };\n"]}
1
+ {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/es-ES/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAGnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,OAAO,EAAE,sBAAsB,CAAC,KAAsC,CAAC;CACxE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale, ComponentStrings } from '../..';\nimport es_ES from './strings.json';\nimport { PartialDeep } from 'type-fest';\n\n/**\n * Locale for Spanish (Spain).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_ES_ES: ComponentLocale = {\n strings: createComponentStrings(es_ES as PartialDeep<ComponentStrings>)\n};\n"]}
@@ -7,5 +7,7 @@ import fi_FI from './strings.json';
7
7
  *
8
8
  * @public
9
9
  */
10
- export const COMPONENT_LOCALE_FI_FI = { strings: createComponentStrings(fi_FI) };
10
+ export const COMPONENT_LOCALE_FI_FI = {
11
+ strings: createComponentStrings(fi_FI)
12
+ };
11
13
  //# sourceMappingURL=ComponentLocale.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/fi-FI/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB,EAAE,OAAO,EAAE,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale } from '../..';\nimport fi_FI from './strings.json';\n\n/**\n * Locale for Finnish (Finland).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_FI_FI: ComponentLocale = { strings: createComponentStrings(fi_FI) };\n"]}
1
+ {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/fi-FI/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAGnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,OAAO,EAAE,sBAAsB,CAAC,KAAsC,CAAC;CACxE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale, ComponentStrings } from '../..';\nimport fi_FI from './strings.json';\nimport { PartialDeep } from 'type-fest';\n\n/**\n * Locale for Finnish (Finland).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_FI_FI: ComponentLocale = {\n strings: createComponentStrings(fi_FI as PartialDeep<ComponentStrings>)\n};\n"]}
@@ -57,7 +57,7 @@
57
57
  "richTextDeleteColumnMenu": "Poista sarake",
58
58
  "richTextDeleteRowMenu": "Poista rivi",
59
59
  "richTextDeleteTableMenu": "Poista taulukko",
60
- "richTextToolbarMoreButtonAriaLabel": "More options",
60
+ "richTextToolbarMoreButtonAriaLabel": "Lisää asetuksia",
61
61
  "attachmentMoreMenu": "Lisää asetuksia"
62
62
  },
63
63
  "mentionPopover": {
@@ -220,7 +220,7 @@
220
220
  "richTextDeleteColumnMenu": "Poista sarake",
221
221
  "richTextDeleteRowMenu": "Poista rivi",
222
222
  "richTextDeleteTableMenu": "Poista taulukko",
223
- "richTextToolbarMoreButtonAriaLabel": "More options"
223
+ "richTextToolbarMoreButtonAriaLabel": "Lisää asetuksia"
224
224
  },
225
225
  "errorBar": {
226
226
  "unableToReachChatService": "Olet offline-tilassa",
@@ -7,5 +7,7 @@ import fr_FR from './strings.json';
7
7
  *
8
8
  * @public
9
9
  */
10
- export const COMPONENT_LOCALE_FR_FR = { strings: createComponentStrings(fr_FR) };
10
+ export const COMPONENT_LOCALE_FR_FR = {
11
+ strings: createComponentStrings(fr_FR)
12
+ };
11
13
  //# sourceMappingURL=ComponentLocale.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/fr-FR/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB,EAAE,OAAO,EAAE,sBAAsB,CAAC,KAAK,CAAC,EAAE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale } from '../..';\nimport fr_FR from './strings.json';\n\n/**\n * Locale for French (France).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_FR_FR: ComponentLocale = { strings: createComponentStrings(fr_FR) };\n"]}
1
+ {"version":3,"file":"ComponentLocale.js","sourceRoot":"","sources":["../../../../../../../../react-components/src/localization/locales/fr-FR/ComponentLocale.tsx"],"names":[],"mappings":"AAAA,uCAAuC;AACvC,kCAAkC;AAElC,OAAO,EAAE,sBAAsB,EAAE,MAAM,UAAU,CAAC;AAElD,OAAO,KAAK,MAAM,gBAAgB,CAAC;AAGnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAoB;IACrD,OAAO,EAAE,sBAAsB,CAAC,KAAsC,CAAC;CACxE,CAAC","sourcesContent":["// Copyright (c) Microsoft Corporation.\n// Licensed under the MIT License.\n\nimport { createComponentStrings } from '../utils';\nimport type { ComponentLocale, ComponentStrings } from '../..';\nimport fr_FR from './strings.json';\nimport { PartialDeep } from 'type-fest';\n\n/**\n * Locale for French (France).\n *\n * @public\n */\nexport const COMPONENT_LOCALE_FR_FR: ComponentLocale = {\n strings: createComponentStrings(fr_FR as PartialDeep<ComponentStrings>)\n};\n"]}