@azure/communication-react 1.7.0-alpha-202307180021 → 1.7.0-alpha-202307190021

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 (25) hide show
  1. package/dist/communication-react.d.ts +17 -0
  2. package/dist/dist-cjs/communication-react/index.js +43 -6
  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-stateful-client/src/CallClientState.d.ts +16 -0
  7. package/dist/dist-esm/calling-stateful-client/src/CallClientState.js.map +1 -1
  8. package/dist/dist-esm/calling-stateful-client/src/CallContext.d.ts +2 -0
  9. package/dist/dist-esm/calling-stateful-client/src/CallContext.js +9 -0
  10. package/dist/dist-esm/calling-stateful-client/src/CallContext.js.map +1 -1
  11. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.d.ts +1 -0
  12. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js +6 -0
  13. package/dist/dist-esm/calling-stateful-client/src/CallSubscriber.js.map +1 -1
  14. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.d.ts +16 -0
  15. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js +24 -0
  16. package/dist/dist-esm/calling-stateful-client/src/CapabilitiesSubscriber.js.map +1 -0
  17. package/dist/dist-esm/calling-stateful-client/src/index-public.d.ts +1 -0
  18. package/dist/dist-esm/calling-stateful-client/src/index-public.js.map +1 -1
  19. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js +2 -3
  20. package/dist/dist-esm/react-components/src/components/TextFieldWithMention/TextFieldWithMention.js.map +1 -1
  21. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js +3 -2
  22. package/dist/dist-esm/react-components/src/components/VideoEffects/VideoBackgroundEffectsPicker.js.map +1 -1
  23. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js +2 -2
  24. package/dist/dist-esm/react-composites/src/composites/common/VideoEffectsPane.js.map +1 -1
  25. package/package.json +8 -8
@@ -74,6 +74,7 @@ import { MicrosoftTeamsUserIdentifier } from '@azure/communication-common';
74
74
  import { MicrosoftTeamsUserKind } from '@azure/communication-common';
75
75
  import type { NetworkDiagnosticChangedEventArgs } from '@azure/communication-calling';
76
76
  import { PartialTheme } from '@fluentui/react';
77
+ import { ParticipantCapabilities } from '@azure/communication-calling';
77
78
  import { ParticipantRole } from '@azure/communication-calling';
78
79
  import { PermissionConstraints } from '@azure/communication-calling';
79
80
  import { PersonaInitialsColor } from '@fluentui/react';
@@ -2332,6 +2333,10 @@ export declare interface CallState {
2332
2333
  * Transfer state of call
2333
2334
  */
2334
2335
  transfer: TransferFeature;
2336
+ /**
2337
+ * Proxy of {@link @azure/communication-calling#CapabilitiesFeature}.
2338
+ */
2339
+ capabilities?: CapabilitiesCallFeature;
2335
2340
  }
2336
2341
 
2337
2342
  /**
@@ -3398,6 +3403,18 @@ export declare type CameraSitePermissionsStrings = SitePermissionsStrings;
3398
3403
  */
3399
3404
  export declare type CancelEditCallback = (messageId: string) => void;
3400
3405
 
3406
+ /**
3407
+ * State only version of {@link @azure/communication-calling#CapabilitiesFeature}
3408
+ *
3409
+ * @beta
3410
+ */
3411
+ export declare interface CapabilitiesCallFeature {
3412
+ /**
3413
+ * Proxy of {@link @azure/communication-calling#CapabilitiesFeature.capabilities}.
3414
+ */
3415
+ capabilities: ParticipantCapabilities;
3416
+ }
3417
+
3401
3418
  /**
3402
3419
  * @beta
3403
3420
  * strings for captions setting modal
@@ -178,7 +178,7 @@ const _isValidIdentifier = (identifier) => {
178
178
  // Copyright (c) Microsoft Corporation.
179
179
  // Licensed under the MIT license.
180
180
  // GENERATED FILE. DO NOT EDIT MANUALLY.
181
- var telemetryVersion = '1.7.0-alpha-202307180021';
181
+ var telemetryVersion = '1.7.0-alpha-202307190021';
182
182
 
183
183
  // Copyright (c) Microsoft Corporation.
184
184
  /**
@@ -1843,6 +1843,15 @@ class CallContext$2 {
1843
1843
  }
1844
1844
  });
1845
1845
  }
1846
+ /* @conditional-compile-remove(capabilities) */
1847
+ setCapabilities(callId, capabilities) {
1848
+ this.modifyState((draft) => {
1849
+ const call = draft.calls[this._callIdHistory.latestCallId(callId)];
1850
+ if (call) {
1851
+ call.capabilities = { capabilities: capabilities };
1852
+ }
1853
+ });
1854
+ }
1846
1855
  setCallScreenShareParticipant(callId, participantKey) {
1847
1856
  this.modifyState((draft) => {
1848
1857
  const call = draft.calls[this._callIdHistory.latestCallId(callId)];
@@ -3264,6 +3273,30 @@ class OptimalVideoCountSubscriber {
3264
3273
  }
3265
3274
  }
3266
3275
 
3276
+ // Copyright (c) Microsoft Corporation.
3277
+ // Licensed under the MIT license.
3278
+ /* @conditional-compile-remove(capabilities) */
3279
+ /**
3280
+ * @private
3281
+ */
3282
+ class CapabilitiesSubscriber {
3283
+ constructor(callIdRef, context, capabilities) {
3284
+ this.subscribe = () => {
3285
+ this._capabilitiesFeature.on('capabilitiesChanged', this.capabilitiesChanged);
3286
+ };
3287
+ this.unsubscribe = () => {
3288
+ this._capabilitiesFeature.off('capabilitiesChanged', this.capabilitiesChanged);
3289
+ };
3290
+ this.capabilitiesChanged = () => {
3291
+ this._context.setCapabilities(this._callIdRef.callId, this._capabilitiesFeature.capabilities);
3292
+ };
3293
+ this._callIdRef = callIdRef;
3294
+ this._context = context;
3295
+ this._capabilitiesFeature = capabilities;
3296
+ this.subscribe();
3297
+ }
3298
+ }
3299
+
3267
3300
  // Copyright (c) Microsoft Corporation.
3268
3301
  /**
3269
3302
  * Keeps track of the listeners assigned to a particular call because when we get an event from SDK, it doesn't tell us
@@ -3328,6 +3361,8 @@ class CallSubscriber {
3328
3361
  this._optimalVideoCountSubscriber.unsubscribe();
3329
3362
  /* @conditional-compile-remove(close-captions) */
3330
3363
  (_a = this._captionsSubscriber) === null || _a === void 0 ? void 0 : _a.unsubscribe();
3364
+ /* @conditional-compile-remove(capabilities) */
3365
+ this._capabilitiesSubscriber.unsubscribe();
3331
3366
  };
3332
3367
  this.stateChanged = () => {
3333
3368
  this._context.setCallState(this._callIdRef.callId, this._call.state);
@@ -3429,6 +3464,8 @@ class CallSubscriber {
3429
3464
  });
3430
3465
  /* @conditional-compile-remove(video-background-effects) */
3431
3466
  this._localVideoStreamVideoEffectsSubscribers = new Map();
3467
+ /* @conditional-compile-remove(capabilities) */
3468
+ this._capabilitiesSubscriber = new CapabilitiesSubscriber(this._callIdRef, this._context, this._call.feature(communicationCalling.Features.Capabilities));
3432
3469
  this.subscribe();
3433
3470
  }
3434
3471
  addParticipantListener(participant) {
@@ -7529,9 +7566,8 @@ const TextFieldWithMention = (props) => {
7529
7566
  // Update the caret position, used for positioning the suggestions popover
7530
7567
  const textField = event.currentTarget;
7531
7568
  const relativePosition = textareaCaretTs.Caret.getRelativePosition(textField);
7532
- const adjustOffset = Math.max(0, textField.scrollHeight - textField.clientHeight);
7533
- if (relativePosition.top > adjustOffset) {
7534
- relativePosition.top -= adjustOffset;
7569
+ if (textField.scrollHeight > textField.clientHeight) {
7570
+ relativePosition.top -= textField.scrollTop;
7535
7571
  }
7536
7572
  setCaretPosition(relativePosition);
7537
7573
  if (triggerPriorIndex !== undefined) {
@@ -16119,7 +16155,8 @@ const _VideoBackgroundEffectsPicker = (props) => {
16119
16155
  optionsByRow.map((options, rowIndex) => {
16120
16156
  var _a;
16121
16157
  return (React__default['default'].createElement(react.Stack, { className: react.mergeStyles((_a = props.styles) === null || _a === void 0 ? void 0 : _a.rowRoot), wrap: props.itemsPerRow === 'wrap', horizontal: true, key: rowIndex, tokens: { childrenGap: '0.5rem' }, "data-ui-id": "video-effects-picker-row" },
16122
- options.map((option) => (React__default['default'].createElement(_VideoEffectsItem, Object.assign({}, option, { key: option.itemKey, itemKey: option.itemKey })))),
16158
+ options.map((option) => (React__default['default'].createElement(react.FocusZone, { key: option.itemKey, shouldFocusOnMount: option.itemKey === 'none' },
16159
+ React__default['default'].createElement(_VideoEffectsItem, Object.assign({}, option, { itemKey: option.itemKey }))))),
16123
16160
  fillCount > 0 &&
16124
16161
  rowIndex === optionsByRow.length - 1 &&
16125
16162
  Array.from({ length: fillCount }).map((_, index) => (React__default['default'].createElement(react.Stack, { key: index, styles: hiddenVideoEffectsItemContainerStyles, "data-ui-id": "video-effects-hidden-item" })))));
@@ -24144,7 +24181,7 @@ const VideoEffectsPaneTrampoline = (onDismissError, activeVideoEffectError, sele
24144
24181
  /* @conditional-compile-remove(video-background-effects) */
24145
24182
  const locale = useLocale();
24146
24183
  /* @conditional-compile-remove(video-background-effects) */
24147
- return (React__default['default'].createElement(react.Stack, { horizontalAlign: "center" },
24184
+ return (React__default['default'].createElement(react.Stack, { className: react.mergeStyles({ paddingLeft: '0.5rem' }) },
24148
24185
  activeVideoEffectError && isCameraOn && (React__default['default'].createElement(react.MessageBar, { messageBarType: react.MessageBarType.error, onDismiss: () => onDismissError(activeVideoEffectError) }, locale.strings.call.unableToStartVideoEffect)),
24149
24186
  showWarning && (React__default['default'].createElement(react.MessageBar, { messageBarType: react.MessageBarType.warning }, locale.strings.call.cameraOffBackgroundEffectWarningText)),
24150
24187
  React__default['default'].createElement(_VideoBackgroundEffectsPicker, { label: locale.strings.call.videoEffectsPaneBackgroundSelectionTitle, styles: backgroundPickerStyles, options: selectableVideoEffects !== null && selectableVideoEffects !== void 0 ? selectableVideoEffects : [], onChange: onEffectChange, selectedEffectKey: selectedEffect })));