talk_original.dart 1.6 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. import 'package:get/get.dart';
  2. import 'package:json_annotation/json_annotation.dart';
  3. part 'talk_original.g.dart';
  4. @JsonSerializable()
  5. class TalkOriginal {
  6. @JsonKey(name: 'endMs')
  7. int? endMs;
  8. @JsonKey(name: 'startMs')
  9. int? startMs;
  10. @JsonKey(name: 'duration')
  11. double? duration;
  12. @JsonKey(name: 'speakerId')
  13. int? speakerId;
  14. @JsonKey(name: 'speaker')
  15. String? speaker;
  16. @JsonKey(name: 'sentence')
  17. String? sentence;
  18. @JsonKey(includeFromJson: false, includeToJson: false)
  19. final Rxn<int> checkIndex = Rxn<int>();
  20. @JsonKey(includeFromJson: false, includeToJson: false)
  21. final Rxn<bool> _isSelected = Rxn<bool>();
  22. bool isSelected() => _isSelected.value ?? false;
  23. setSelected(bool value) => _isSelected.value = value;
  24. @JsonKey(includeFromJson: false, includeToJson: false)
  25. final Rx<TalkTranslate> _translateStatus = TalkTranslate.normal.obs;
  26. TalkTranslate getTranslateStatus() => _translateStatus.value;
  27. setTranslateStatus(TalkTranslate value) => _translateStatus.value = value;
  28. @JsonKey(includeFromJson: false, includeToJson: false)
  29. final Rxn<String> _translatedSentence = Rxn<String>();
  30. String? getTranslatedSentence() => _translatedSentence.value;
  31. setTranslatedSentence(String value) => _translatedSentence.value = value;
  32. TalkOriginal({
  33. this.endMs,
  34. this.startMs,
  35. this.duration,
  36. this.speakerId,
  37. this.speaker,
  38. this.sentence,
  39. });
  40. factory TalkOriginal.fromJson(Map<String, dynamic> json) =>
  41. _$TalkOriginalFromJson(json);
  42. }
  43. enum TalkTranslate {
  44. normal,
  45. translating,
  46. translated,
  47. translateFail,
  48. }