chore(llc): move files to correct folders.
Signed-off-by: xsahil03x <[email protected]>
This commit is contained in:
@@ -595,7 +595,7 @@ class StreamChatClient {
|
||||
required String callType,
|
||||
required String channelType,
|
||||
required String channelId,
|
||||
}) async {
|
||||
}) {
|
||||
return _chatApi.call.createCall(
|
||||
callId: callId,
|
||||
callType: callType,
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
import 'package:stream_chat/src/core/api/responses.dart';
|
||||
import 'package:stream_chat/src/core/http/stream_http_client.dart';
|
||||
|
||||
/// Defines the api dedicated to video call operations
|
||||
/// Defines the api dedicated to call operations.
|
||||
class CallApi {
|
||||
/// Initialize a new call api
|
||||
CallApi(this._client);
|
||||
@@ -25,11 +25,13 @@ class CallApi {
|
||||
required String channelType,
|
||||
required String channelId,
|
||||
}) async {
|
||||
final response =
|
||||
await _client.post(_getChannelUrl(channelId, channelType), data: {
|
||||
'id': callId,
|
||||
'type': callType,
|
||||
});
|
||||
final response = await _client.post(
|
||||
_getChannelUrl(channelId, channelType),
|
||||
data: {
|
||||
'id': callId,
|
||||
'type': callType,
|
||||
},
|
||||
);
|
||||
// return response.data;
|
||||
return CreateCallPayload.fromJson(response.data);
|
||||
}
|
||||
|
||||
@@ -1,9 +1,9 @@
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:stream_chat/src/client/client.dart';
|
||||
import 'package:stream_chat/src/core/api/call_api.dart';
|
||||
import 'package:stream_chat/src/core/error/error.dart';
|
||||
import 'package:stream_chat/src/core/models/banned_user.dart';
|
||||
import 'package:stream_chat/src/core/models/call_payload.dart';
|
||||
import 'package:stream_chat/src/core/models/channel_model.dart';
|
||||
import 'package:stream_chat/src/core/models/channel_state.dart';
|
||||
import 'package:stream_chat/src/core/models/device.dart';
|
||||
@@ -498,51 +498,6 @@ class OGAttachmentResponse extends _BaseResponse {
|
||||
_$OGAttachmentResponseFromJson(json);
|
||||
}
|
||||
|
||||
/// Payload for Agora call.
|
||||
@JsonSerializable(createToJson: false)
|
||||
class AgoraPayload {
|
||||
/// Create a new instance.
|
||||
const AgoraPayload({required this.channel});
|
||||
|
||||
/// Create a new instance from a [json].
|
||||
factory AgoraPayload.fromJson(Map<String, dynamic> json) =>
|
||||
_$AgoraPayloadFromJson(json);
|
||||
|
||||
/// The Agora channel.
|
||||
final String channel;
|
||||
}
|
||||
|
||||
/// Model containing the information about a call.
|
||||
@JsonSerializable(createToJson: false)
|
||||
class CallPayload extends Equatable {
|
||||
/// Create a new instance.
|
||||
const CallPayload({
|
||||
required this.id,
|
||||
required this.provider,
|
||||
this.agora,
|
||||
this.hms,
|
||||
});
|
||||
|
||||
/// Create a new instance from a [json].
|
||||
factory CallPayload.fromJson(Map<String, dynamic> json) =>
|
||||
_$CallPayloadFromJson(json);
|
||||
|
||||
/// The call id.
|
||||
final String id;
|
||||
|
||||
/// The call provider.
|
||||
final String provider;
|
||||
|
||||
/// The payload specific to Agora.
|
||||
final AgoraPayload? agora;
|
||||
|
||||
/// The payload specific to 100ms.
|
||||
final HMSPayload? hms;
|
||||
|
||||
@override
|
||||
List<Object?> get props => [id, provider, agora, hms];
|
||||
}
|
||||
|
||||
/// The response to [CallApi.getCallToken]
|
||||
@JsonSerializable(createToJson: false)
|
||||
class CallTokenPayload extends _BaseResponse {
|
||||
@@ -570,23 +525,3 @@ class CreateCallPayload extends _BaseResponse {
|
||||
/// The call object.
|
||||
CallPayload? call;
|
||||
}
|
||||
|
||||
/// Payload for 100ms call.
|
||||
@JsonSerializable(createToJson: false)
|
||||
class HMSPayload extends Equatable {
|
||||
/// Create a new instance.
|
||||
const HMSPayload({required this.roomId, required this.roomName});
|
||||
|
||||
/// Create a new instance from a [json].
|
||||
factory HMSPayload.fromJson(Map<String, dynamic> json) =>
|
||||
_$HMSPayloadFromJson(json);
|
||||
|
||||
/// The id of the 100ms room.
|
||||
final String roomId;
|
||||
|
||||
/// The name of the 100ms room.
|
||||
final String roomName;
|
||||
|
||||
@override
|
||||
List<Object?> get props => [roomId, roomName];
|
||||
}
|
||||
|
||||
@@ -298,21 +298,6 @@ OGAttachmentResponse _$OGAttachmentResponseFromJson(
|
||||
..titleLink = json['title_link'] as String?
|
||||
..type = json['type'] as String?;
|
||||
|
||||
AgoraPayload _$AgoraPayloadFromJson(Map<String, dynamic> json) => AgoraPayload(
|
||||
channel: json['channel'] as String,
|
||||
);
|
||||
|
||||
CallPayload _$CallPayloadFromJson(Map<String, dynamic> json) => CallPayload(
|
||||
id: json['id'] as String,
|
||||
provider: json['provider'] as String,
|
||||
agora: json['agora'] == null
|
||||
? null
|
||||
: AgoraPayload.fromJson(json['agora'] as Map<String, dynamic>),
|
||||
hms: json['hms'] == null
|
||||
? null
|
||||
: HMSPayload.fromJson(json['hms'] as Map<String, dynamic>),
|
||||
);
|
||||
|
||||
CallTokenPayload _$CallTokenPayloadFromJson(Map<String, dynamic> json) =>
|
||||
CallTokenPayload()
|
||||
..duration = json['duration'] as String?
|
||||
@@ -326,8 +311,3 @@ CreateCallPayload _$CreateCallPayloadFromJson(Map<String, dynamic> json) =>
|
||||
..call = json['call'] == null
|
||||
? null
|
||||
: CallPayload.fromJson(json['call'] as Map<String, dynamic>);
|
||||
|
||||
HMSPayload _$HMSPayloadFromJson(Map<String, dynamic> json) => HMSPayload(
|
||||
roomId: json['room_id'] as String,
|
||||
roomName: json['room_name'] as String,
|
||||
);
|
||||
|
||||
@@ -56,7 +56,7 @@ class StreamChatApi {
|
||||
|
||||
CallApi? _call;
|
||||
|
||||
/// Api dedicated to guest operations
|
||||
/// Api dedicated to call operations
|
||||
CallApi get call => _call ??= CallApi(_client);
|
||||
|
||||
ChannelApi? _channel;
|
||||
|
||||
@@ -0,0 +1,72 @@
|
||||
import 'package:equatable/equatable.dart';
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
|
||||
part 'call_payload.g.dart';
|
||||
|
||||
/// Model containing the information about a call.
|
||||
@JsonSerializable(createToJson: false)
|
||||
class CallPayload extends Equatable {
|
||||
/// Create a new instance.
|
||||
const CallPayload({
|
||||
required this.id,
|
||||
required this.provider,
|
||||
this.agora,
|
||||
this.hms,
|
||||
});
|
||||
|
||||
/// Create a new instance from a [json].
|
||||
factory CallPayload.fromJson(Map<String, dynamic> json) =>
|
||||
_$CallPayloadFromJson(json);
|
||||
|
||||
/// The call id.
|
||||
final String id;
|
||||
|
||||
/// The call provider.
|
||||
final String provider;
|
||||
|
||||
/// The payload specific to Agora.
|
||||
final AgoraPayload? agora;
|
||||
|
||||
/// The payload specific to 100ms.
|
||||
final HMSPayload? hms;
|
||||
|
||||
@override
|
||||
List<Object?> get props => [id, provider, agora, hms];
|
||||
}
|
||||
|
||||
/// Payload for Agora call.
|
||||
@JsonSerializable(createToJson: false)
|
||||
class AgoraPayload extends Equatable {
|
||||
/// Create a new instance.
|
||||
const AgoraPayload({required this.channel});
|
||||
|
||||
/// Create a new instance from a [json].
|
||||
factory AgoraPayload.fromJson(Map<String, dynamic> json) =>
|
||||
_$AgoraPayloadFromJson(json);
|
||||
|
||||
/// The Agora channel.
|
||||
final String channel;
|
||||
|
||||
@override
|
||||
List<Object?> get props => [channel];
|
||||
}
|
||||
|
||||
/// Payload for 100ms call.
|
||||
@JsonSerializable(createToJson: false)
|
||||
class HMSPayload extends Equatable {
|
||||
/// Create a new instance.
|
||||
const HMSPayload({required this.roomId, required this.roomName});
|
||||
|
||||
/// Create a new instance from a [json].
|
||||
factory HMSPayload.fromJson(Map<String, dynamic> json) =>
|
||||
_$HMSPayloadFromJson(json);
|
||||
|
||||
/// The id of the 100ms room.
|
||||
final String roomId;
|
||||
|
||||
/// The name of the 100ms room.
|
||||
final String roomName;
|
||||
|
||||
@override
|
||||
List<Object?> get props => [roomId, roomName];
|
||||
}
|
||||
@@ -0,0 +1,27 @@
|
||||
// GENERATED CODE - DO NOT MODIFY BY HAND
|
||||
|
||||
part of 'call_payload.dart';
|
||||
|
||||
// **************************************************************************
|
||||
// JsonSerializableGenerator
|
||||
// **************************************************************************
|
||||
|
||||
CallPayload _$CallPayloadFromJson(Map<String, dynamic> json) => CallPayload(
|
||||
id: json['id'] as String,
|
||||
provider: json['provider'] as String,
|
||||
agora: json['agora'] == null
|
||||
? null
|
||||
: AgoraPayload.fromJson(json['agora'] as Map<String, dynamic>),
|
||||
hms: json['hms'] == null
|
||||
? null
|
||||
: HMSPayload.fromJson(json['hms'] as Map<String, dynamic>),
|
||||
);
|
||||
|
||||
AgoraPayload _$AgoraPayloadFromJson(Map<String, dynamic> json) => AgoraPayload(
|
||||
channel: json['channel'] as String,
|
||||
);
|
||||
|
||||
HMSPayload _$HMSPayloadFromJson(Map<String, dynamic> json) => HMSPayload(
|
||||
roomId: json['room_id'] as String,
|
||||
roomName: json['room_name'] as String,
|
||||
);
|
||||
@@ -23,12 +23,8 @@ void main() {
|
||||
const callId = 'test-call-id';
|
||||
const path = '/calls/$callId';
|
||||
|
||||
when(() => client.post(
|
||||
path,
|
||||
data: {},
|
||||
))
|
||||
.thenAnswer(
|
||||
(_) async => successResponse(path, data: <String, dynamic>{}));
|
||||
when(() => client.post(path, data: {})).thenAnswer(
|
||||
(_) async => successResponse(path, data: <String, dynamic>{}));
|
||||
|
||||
final res = await callApi.getCallToken(callId);
|
||||
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:stream_chat/src/core/models/call_payload.dart';
|
||||
import 'package:stream_chat/stream_chat.dart';
|
||||
import 'package:test/test.dart';
|
||||
|
||||
@@ -4341,45 +4342,21 @@ void main() {
|
||||
expect(response.message, isA<Message>());
|
||||
});
|
||||
|
||||
test('AgoraPayload', () {
|
||||
test('CallTokenPayload', () {
|
||||
const jsonExample = '''
|
||||
{"channel":"test"}
|
||||
''';
|
||||
final response = AgoraPayload.fromJson(json.decode(jsonExample));
|
||||
expect(response.channel, isA<String>());
|
||||
});
|
||||
|
||||
test('CallPayload', () {
|
||||
const jsonExample = '''
|
||||
{"id":"test",
|
||||
"provider": "test",
|
||||
"agora": {"channel":"test"},
|
||||
"hms":{"room_id":"test", "room_name":"test"}
|
||||
}
|
||||
''';
|
||||
final response = CallPayload.fromJson(json.decode(jsonExample));
|
||||
expect(response.agora, isA<AgoraPayload>());
|
||||
expect(response.hms, isA<HMSPayload>());
|
||||
expect(response.id, isA<String>());
|
||||
expect(response.provider, isA<String>());
|
||||
});
|
||||
});
|
||||
|
||||
test('CallTokenPayload', () {
|
||||
const jsonExample = '''
|
||||
{"duration": "3ms",
|
||||
"agora_app_id":"test",
|
||||
"agora_uid": 12,
|
||||
"token": "token"}
|
||||
''';
|
||||
final response = CallTokenPayload.fromJson(json.decode(jsonExample));
|
||||
expect(response.agoraAppId, isA<String>());
|
||||
expect(response.agoraUid, isA<int>());
|
||||
expect(response.token, isA<String>());
|
||||
});
|
||||
final response = CallTokenPayload.fromJson(json.decode(jsonExample));
|
||||
expect(response.agoraAppId, isA<String>());
|
||||
expect(response.agoraUid, isA<int>());
|
||||
expect(response.token, isA<String>());
|
||||
});
|
||||
|
||||
test('CreateCallPayload', () {
|
||||
const jsonExample = '''
|
||||
test('CreateCallPayload', () {
|
||||
const jsonExample = '''
|
||||
{"call":
|
||||
{"id":"test",
|
||||
"provider": "test",
|
||||
@@ -4387,16 +4364,8 @@ void main() {
|
||||
"hms":{"room_id":"test", "room_name":"test"}
|
||||
}}
|
||||
''';
|
||||
final response = CreateCallPayload.fromJson(json.decode(jsonExample));
|
||||
expect(response.call, isA<CallPayload>());
|
||||
});
|
||||
|
||||
test('HMSPayload', () {
|
||||
const jsonExample = '''
|
||||
{"room_id":"test", "room_name":"test"}
|
||||
''';
|
||||
final response = HMSPayload.fromJson(json.decode(jsonExample));
|
||||
expect(response.roomId, isA<String>());
|
||||
expect(response.roomName, isA<String>());
|
||||
final response = CreateCallPayload.fromJson(json.decode(jsonExample));
|
||||
expect(response.call, isA<CallPayload>());
|
||||
});
|
||||
});
|
||||
}
|
||||
|
||||
@@ -0,0 +1,38 @@
|
||||
import 'dart:convert';
|
||||
|
||||
import 'package:stream_chat/src/core/models/call_payload.dart';
|
||||
import 'package:test/test.dart';
|
||||
|
||||
void main() {
|
||||
test('CallPayload', () {
|
||||
const jsonExample = '''
|
||||
{"id":"test",
|
||||
"provider": "test",
|
||||
"agora": {"channel":"test"},
|
||||
"hms":{"room_id":"test", "room_name":"test"}
|
||||
}
|
||||
''';
|
||||
final response = CallPayload.fromJson(json.decode(jsonExample));
|
||||
expect(response.agora, isA<AgoraPayload>());
|
||||
expect(response.hms, isA<HMSPayload>());
|
||||
expect(response.id, isA<String>());
|
||||
expect(response.provider, isA<String>());
|
||||
});
|
||||
|
||||
test('AgoraPayload', () {
|
||||
const jsonExample = '''
|
||||
{"channel":"test"}
|
||||
''';
|
||||
final response = AgoraPayload.fromJson(json.decode(jsonExample));
|
||||
expect(response.channel, isA<String>());
|
||||
});
|
||||
|
||||
test('HMSPayload', () {
|
||||
const jsonExample = '''
|
||||
{"room_id":"test", "room_name":"test"}
|
||||
''';
|
||||
final response = HMSPayload.fromJson(json.decode(jsonExample));
|
||||
expect(response.roomId, isA<String>());
|
||||
expect(response.roomName, isA<String>());
|
||||
});
|
||||
}
|
||||
Reference in New Issue
Block a user