@dan-uni/dan-any
Version:
A danmaku transformer lib, supporting danmaku from different platforms.
1,191 lines (1,025 loc) • 120 kB
text/typescript
// @generated by protoc-gen-es v2.6.3 with parameter "target=ts"
// @generated from file bili/dm.proto (package bilibili.community.service.dm.v1, syntax proto3)
/* eslint-disable */
import type { GenEnum, GenFile, GenMessage, GenService } from "@bufbuild/protobuf/codegenv2";
import { enumDesc, fileDesc, messageDesc, serviceDesc } from "@bufbuild/protobuf/codegenv2";
import type { Message } from "@bufbuild/protobuf";
/**
* Describes the file bili/dm.proto.
*/
export const file_bili_dm: GenFile = /*@__PURE__*/
fileDesc("Cg1iaWxpL2RtLnByb3RvEiBiaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MSJkCgZBdmF0YXISCgoCaWQYASABKAkSCwoDdXJsGAIgASgJEkEKC2F2YXRhcl90eXBlGAMgASgOMiwuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuQXZhdGFyVHlwZSIjCgZCdWJibGUSDAoEdGV4dBgBIAEoCRILCgN1cmwYAiABKAkixgEKCEJ1YmJsZVYyEgwKBHRleHQYASABKAkSCwoDdXJsGAIgASgJEkEKC2J1YmJsZV90eXBlGAMgASgOMiwuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuQnViYmxlVHlwZRIVCg1leHBvc3VyZV9vbmNlGAQgASgIEkUKDWV4cG9zdXJlX3R5cGUYBSABKA4yLi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5FeHBvc3VyZVR5cGUiWwoGQnV0dG9uEgwKBHRleHQYASABKAkSQwoGYWN0aW9uGAIgASgOMjMuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuVG9hc3RGdW5jdGlvblR5cGUiWAoOQnV6endvcmRDb25maWcSRgoIa2V5d29yZHMYASADKAsyNC5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5CdXp6d29yZFNob3dDb25maWcieAoSQnV6endvcmRTaG93Q29uZmlnEgwKBG5hbWUYASABKAkSDgoGc2NoZW1hGAIgASgJEg4KBnNvdXJjZRgDIAEoBRIKCgJpZBgEIAEoAxITCgtidXp6d29yZF9pZBgFIAEoAxITCgtzY2hlbWFfdHlwZRgGIAEoBSJ7CghDaGVja0JveBIMCgR0ZXh0GAEgASgJEjwKBHR5cGUYAiABKA4yLi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5DaGVja2JveFR5cGUSFQoNZGVmYXVsdF92YWx1ZRgDIAEoCBIMCgRzaG93GAQgASgIIm8KCkNoZWNrQm94VjISDAoEdGV4dBgBIAEoCRI8CgR0eXBlGAIgASgOMi4uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuQ2hlY2tib3hUeXBlEhUKDWRlZmF1bHRfdmFsdWUYAyABKAgiggIKC0NsaWNrQnV0dG9uEhUKDXBvcnRyYWl0X3RleHQYASADKAkSFgoObGFuZHNjYXBlX3RleHQYAiADKAkSGwoTcG9ydHJhaXRfdGV4dF9mb2N1cxgDIAMoCRIcChRsYW5kc2NhcGVfdGV4dF9mb2N1cxgEIAMoCRJBCgtyZW5kZXJfdHlwZRgFIAEoDjIsLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlJlbmRlclR5cGUSDAoEc2hvdxgGIAEoCBI4CgZidWJibGUYByABKAsyKC5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5CdWJibGUiswIKDUNsaWNrQnV0dG9uVjISFQoNcG9ydHJhaXRfdGV4dBgBIAMoCRIWCg5sYW5kc2NhcGVfdGV4dBgCIAMoCRIbChNwb3J0cmFpdF90ZXh0X2ZvY3VzGAMgAygJEhwKFGxhbmRzY2FwZV90ZXh0X2ZvY3VzGAQgAygJEkEKC3JlbmRlcl90eXBlGAUgASgOMiwuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUmVuZGVyVHlwZRIXCg90ZXh0X2lucHV0X3Bvc3QYBiABKAgSFQoNZXhwb3N1cmVfb25jZRgHIAEoCBJFCg1leHBvc3VyZV90eXBlGAggASgOMi4uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRXhwb3N1cmVUeXBlIksKB0NvbW1hbmQSQAoLY29tbWFuZF9kbXMYASADKAsyKy5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5Db21tYW5kRG0i5gEKCUNvbW1hbmREbRIKCgJpZBgBIAEoAxILCgNvaWQYAiABKAMSCwoDbWlkGAMgASgDEg8KB2NvbW1hbmQYBCABKAkSDwoHY29udGVudBgFIAEoCRIQCghwcm9ncmVzcxgGIAEoBRINCgVjdGltZRgHIAEoCRINCgVtdGltZRgIIAEoCRINCgVleHRyYRgJIAEoCRINCgVpZFN0chgKIAEoCRIMCgR0eXBlGAsgASgFEhMKC2F1dG9fY3JlYXRlGAwgASgIEhIKCmNvdW50X2Rvd24YDSABKAUSDAoEYXR0chgOIAEoBSJQCg1EYW5tYWt1QUlGbGFnEj8KCGRtX2ZsYWdzGAEgAygLMi0uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRGFubWFrdUZsYWciiwMKC0Rhbm1ha3VFbGVtEgoKAmlkGAEgASgDEhAKCHByb2dyZXNzGAIgASgFEgwKBG1vZGUYAyABKAUSEAoIZm9udHNpemUYBCABKAUSPwoFY29sb3IYBSABKA4yMC5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EbUNvbG9yZnVsVHlwZRIQCghtaWRfaGFzaBgGIAEoCRIPCgdjb250ZW50GAcgASgJEg0KBWN0aW1lGAggASgDEg4KBndlaWdodBgJIAEoBRIOCgZhY3Rpb24YCiABKAkSDAoEcG9vbBgLIAEoBRIOCgZpZF9zdHIYDCABKAkSDAoEYXR0chgNIAEoBRIRCglhbmltYXRpb24YFiABKAkSDQoFZXh0cmEYFyABKAkSQgoIY29sb3JmdWwYGCABKA4yMC5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EbUNvbG9yZnVsVHlwZRIMCgR0eXBlGBkgASgFEgsKA29pZBgaIAEoAyIpCgtEYW5tYWt1RmxhZxIMCgRkbWlkGAEgASgDEgwKBGZsYWcYAiABKAUiSwoRRGFubWFrdUZsYWdDb25maWcSEAoIcmVjX2ZsYWcYASABKAUSEAoIcmVjX3RleHQYAiABKAkSEgoKcmVjX3N3aXRjaBgDIAEoBSKLBwoYRGFubXVEZWZhdWx0UGxheWVyQ29uZmlnEikKIXBsYXllcl9kYW5tYWt1X3VzZV9kZWZhdWx0X2NvbmZpZxgBIAEoCBIsCiRwbGF5ZXJfZGFubWFrdV9haV9yZWNvbW1lbmRlZF9zd2l0Y2gYBCABKAgSKwojcGxheWVyX2Rhbm1ha3VfYWlfcmVjb21tZW5kZWRfbGV2ZWwYBSABKAUSHwoXcGxheWVyX2Rhbm1ha3VfYmxvY2t0b3AYBiABKAgSIgoacGxheWVyX2Rhbm1ha3VfYmxvY2tzY3JvbGwYByABKAgSIgoacGxheWVyX2Rhbm1ha3VfYmxvY2tib3R0b20YCCABKAgSJAoccGxheWVyX2Rhbm1ha3VfYmxvY2tjb2xvcmZ1bBgJIAEoCBIiChpwbGF5ZXJfZGFubWFrdV9ibG9ja3JlcGVhdBgKIAEoCBIjChtwbGF5ZXJfZGFubWFrdV9ibG9ja3NwZWNpYWwYCyABKAgSHgoWcGxheWVyX2Rhbm1ha3Vfb3BhY2l0eRgMIAEoAhIkChxwbGF5ZXJfZGFubWFrdV9zY2FsaW5nZmFjdG9yGA0gASgCEh0KFXBsYXllcl9kYW5tYWt1X2RvbWFpbhgOIAEoAhIcChRwbGF5ZXJfZGFubWFrdV9zcGVlZBgPIAEoBRIkChxpbmxpbmVfcGxheWVyX2Rhbm1ha3Vfc3dpdGNoGBAgASgIEikKIXBsYXllcl9kYW5tYWt1X3Nlbmlvcl9tb2RlX3N3aXRjaBgRIAEoBRIuCiZwbGF5ZXJfZGFubWFrdV9haV9yZWNvbW1lbmRlZF9sZXZlbF92MhgSIAEoBRKYAQoqcGxheWVyX2Rhbm1ha3VfYWlfcmVjb21tZW5kZWRfbGV2ZWxfdjJfbWFwGBMgAygLMmQuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRGFubXVEZWZhdWx0UGxheWVyQ29uZmlnLlBsYXllckRhbm1ha3VBaVJlY29tbWVuZGVkTGV2ZWxWMk1hcEVudHJ5EiUKHXBsYXllcl9kYW5tYWt1X2VuYWJsZV9oZXJkX2RtGBQgASgIGksKKVBsYXllckRhbm1ha3VBaVJlY29tbWVuZGVkTGV2ZWxWMk1hcEVudHJ5EgsKA2tleRgBIAEoBRINCgV2YWx1ZRgCIAEoBToCOAEi7AkKEURhbm11UGxheWVyQ29uZmlnEh0KFXBsYXllcl9kYW5tYWt1X3N3aXRjaBgBIAEoCBIiChpwbGF5ZXJfZGFubWFrdV9zd2l0Y2hfc2F2ZRgCIAEoCBIpCiFwbGF5ZXJfZGFubWFrdV91c2VfZGVmYXVsdF9jb25maWcYAyABKAgSLAokcGxheWVyX2Rhbm1ha3VfYWlfcmVjb21tZW5kZWRfc3dpdGNoGAQgASgIEisKI3BsYXllcl9kYW5tYWt1X2FpX3JlY29tbWVuZGVkX2xldmVsGAUgASgFEh8KF3BsYXllcl9kYW5tYWt1X2Jsb2NrdG9wGAYgASgIEiIKGnBsYXllcl9kYW5tYWt1X2Jsb2Nrc2Nyb2xsGAcgASgIEiIKGnBsYXllcl9kYW5tYWt1X2Jsb2NrYm90dG9tGAggASgIEiQKHHBsYXllcl9kYW5tYWt1X2Jsb2NrY29sb3JmdWwYCSABKAgSIgoacGxheWVyX2Rhbm1ha3VfYmxvY2tyZXBlYXQYCiABKAgSIwobcGxheWVyX2Rhbm1ha3VfYmxvY2tzcGVjaWFsGAsgASgIEh4KFnBsYXllcl9kYW5tYWt1X29wYWNpdHkYDCABKAISJAoccGxheWVyX2Rhbm1ha3Vfc2NhbGluZ2ZhY3RvchgNIAEoAhIdChVwbGF5ZXJfZGFubWFrdV9kb21haW4YDiABKAISHAoUcGxheWVyX2Rhbm1ha3Vfc3BlZWQYDyABKAUSJgoecGxheWVyX2Rhbm1ha3VfZW5hYmxlYmxvY2tsaXN0GBAgASgIEiQKHGlubGluZV9wbGF5ZXJfZGFubWFrdV9zd2l0Y2gYESABKAgSJAocaW5saW5lX3BsYXllcl9kYW5tYWt1X2NvbmZpZxgSIAEoBRImCh5wbGF5ZXJfZGFubWFrdV9pb3Nfc3dpdGNoX3NhdmUYEyABKAUSKQohcGxheWVyX2Rhbm1ha3Vfc2VuaW9yX21vZGVfc3dpdGNoGBQgASgFEi4KJnBsYXllcl9kYW5tYWt1X2FpX3JlY29tbWVuZGVkX2xldmVsX3YyGBUgASgFEpEBCipwbGF5ZXJfZGFubWFrdV9haV9yZWNvbW1lbmRlZF9sZXZlbF92Ml9tYXAYFiADKAsyXS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EYW5tdVBsYXllckNvbmZpZy5QbGF5ZXJEYW5tYWt1QWlSZWNvbW1lbmRlZExldmVsVjJNYXBFbnRyeRIlCh1wbGF5ZXJfZGFubWFrdV9lbmFibGVfaGVyZF9kbRgXIAEoCBImCh5wbGF5ZXJfZGFubWFrdV9ibG9ja3RvcF9ib3R0b20YGCABKAgSIAoYcGxheWVyX2Rhbm1ha3VfZG9tYWluX3YyGBkgASgFEh4KFnBsYXllcl9kYW5tYWt1X2RlbnNpdHkYGiABKAUSJQodcGxheWVyX2Rhbm1ha3Vfc3VidGl0bGVfcHJvb2YYGyABKAgSIwobcGxheWVyX2Rhbm1ha3VfcGVvcGxlX3Byb29mGBwgASgIGksKKVBsYXllckRhbm1ha3VBaVJlY29tbWVuZGVkTGV2ZWxWMk1hcEVudHJ5EgsKA2tleRgBIAEoBRINCgV2YWx1ZRgCIAEoBToCOAEiMAoWRGFubXVQbGF5ZXJDb25maWdQYW5lbBIWCg5zZWxlY3Rpb25fdGV4dBgBIAEoCSJLChhEYW5tdVBsYXllckR5bmFtaWNDb25maWcSEAoIcHJvZ3Jlc3MYASABKAUSHQoVcGxheWVyX2Rhbm1ha3VfZG9tYWluGA4gASgCIpADChVEYW5tdVBsYXllclZpZXdDb25maWcSYQodZGFubXVrdV9kZWZhdWx0X3BsYXllcl9jb25maWcYASABKAsyOi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EYW5tdURlZmF1bHRQbGF5ZXJDb25maWcSUgoVZGFubXVrdV9wbGF5ZXJfY29uZmlnGAIgASgLMjMuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRGFubXVQbGF5ZXJDb25maWcSYQodZGFubXVrdV9wbGF5ZXJfZHluYW1pY19jb25maWcYAyADKAsyOi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EYW5tdVBsYXllckR5bmFtaWNDb25maWcSXQobZGFubXVrdV9wbGF5ZXJfY29uZmlnX3BhbmVsGAQgASgLMjguYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRGFubXVQbGF5ZXJDb25maWdQYW5lbCKZBQoURGFubXVXZWJQbGF5ZXJDb25maWcSEQoJZG1fc3dpdGNoGAEgASgIEhEKCWFpX3N3aXRjaBgCIAEoCBIQCghhaV9sZXZlbBgDIAEoBRIQCghibG9ja3RvcBgEIAEoCBITCgtibG9ja3Njcm9sbBgFIAEoCBITCgtibG9ja2JvdHRvbRgGIAEoCBISCgpibG9ja2NvbG9yGAcgASgIEhQKDGJsb2Nrc3BlY2lhbBgIIAEoCBIUCgxwcmV2ZW50c2hhZGUYCSABKAgSDQoFZG1hc2sYCiABKAgSDwoHb3BhY2l0eRgLIAEoAhIOCgZkbWFyZWEYDCABKAUSEQoJc3BlZWRwbHVzGA0gASgCEhAKCGZvbnRzaXplGA4gASgCEhIKCnNjcmVlbnN5bmMYDyABKAgSEQoJc3BlZWRzeW5jGBAgASgIEhIKCmZvbnRmYW1pbHkYESABKAkSDAoEYm9sZBgSIAEoCBISCgpmb250Ym9yZGVyGBMgASgFEhEKCWRyYXdfdHlwZRgUIAEoCRIaChJzZW5pb3JfbW9kZV9zd2l0Y2gYFSABKAUSEwoLYWlfbGV2ZWxfdjIYFiABKAUSYQoPYWlfbGV2ZWxfdjJfbWFwGBcgAygLMkguYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRGFubXVXZWJQbGF5ZXJDb25maWcuQWlMZXZlbFYyTWFwRW50cnkSFwoPYmxvY2t0b3BfYm90dG9tGBggASgIEhIKCmRtX2FyZWFfdjIYGSABKAUSEgoKZG1fZGVuc2l0eRgaIAEoBRozChFBaUxldmVsVjJNYXBFbnRyeRILCgNrZXkYASABKAUSDQoFdmFsdWUYAiABKAU6AjgBIlkKCkRtQ29sb3JmdWwSPgoEdHlwZRgBIAEoDjIwLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRtQ29sb3JmdWxUeXBlEgsKA3NyYxgCIAEoCSJQCg9EbUV4cG9SZXBvcnRSZXESEgoKc2Vzc2lvbl9pZBgBIAEoCRILCgNvaWQYAiABKAMSDQoFZG1pZHMYAyABKAwSDQoFc3BtaWQYBCABKAkiEQoPRG1FeHBvUmVwb3J0UmVzIm0KCkRtSGVyZFZpZXcSGwoTZGlzcGxheV9oZXJkX2RtX251bRgBIAEoBRJCCghoZXJkX2RtcxgCIAMoCzIwLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlZpZXdIZXJkRG1FbGVtIpYCCgpEbU1hc2tXYWxsEg0KBXN0YXJ0GAEgASgDEgsKA2VuZBgCIAEoAxIPCgdjb250ZW50GAMgASgJEk0KDGNvbnRlbnRfdHlwZRgEIAEoDjI3LmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRtTWFza1dhbGxDb250ZW50VHlwZRJFCghiaXpfdHlwZRgFIAEoDjIzLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRtTWFza1dhbGxCaXpUeXBlEkUKCGNvbnRlbnRzGAYgAygLMjMuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRG1NYXNrV2FsbENvbnRlbnQiawoRRG1NYXNrV2FsbENvbnRlbnQSRQoEdHlwZRgBIAEoDjI3LmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRtTWFza1dhbGxDb250ZW50VHlwZRIPCgdjb250ZW50GAIgASgJIs0QChFEbVBsYXllckNvbmZpZ1JlcRIKCgJ0cxgBIAEoAxJFCgZzd2l0Y2gYAiABKAsyNS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5QbGF5ZXJEYW5tYWt1U3dpdGNoEk4KC3N3aXRjaF9zYXZlGAMgASgLMjkuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdVN3aXRjaFNhdmUSWwoSdXNlX2RlZmF1bHRfY29uZmlnGAQgASgLMj8uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdVVzZURlZmF1bHRDb25maWcSYQoVYWlfcmVjb21tZW5kZWRfc3dpdGNoGAUgASgLMkIuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdUFpUmVjb21tZW5kZWRTd2l0Y2gSXwoUYWlfcmVjb21tZW5kZWRfbGV2ZWwYBiABKAsyQS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5QbGF5ZXJEYW5tYWt1QWlSZWNvbW1lbmRlZExldmVsEkkKCGJsb2NrdG9wGAcgASgLMjcuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdUJsb2NrdG9wEk8KC2Jsb2Nrc2Nyb2xsGAggASgLMjouYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdUJsb2Nrc2Nyb2xsEk8KC2Jsb2NrYm90dG9tGAkgASgLMjouYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdUJsb2NrYm90dG9tElMKDWJsb2NrY29sb3JmdWwYCiABKAsyPC5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5QbGF5ZXJEYW5tYWt1QmxvY2tjb2xvcmZ1bBJPCgtibG9ja3JlcGVhdBgLIAEoCzI6LmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlBsYXllckRhbm1ha3VCbG9ja3JlcGVhdBJRCgxibG9ja3NwZWNpYWwYDCABKAsyOy5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5QbGF5ZXJEYW5tYWt1QmxvY2tzcGVjaWFsEkcKB29wYWNpdHkYDSABKAsyNi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5QbGF5ZXJEYW5tYWt1T3BhY2l0eRJTCg1zY2FsaW5nZmFjdG9yGA4gASgLMjwuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdVNjYWxpbmdmYWN0b3ISRQoGZG9tYWluGA8gASgLMjUuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdURvbWFpbhJDCgVzcGVlZBgQIAEoCzI0LmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlBsYXllckRhbm1ha3VTcGVlZBJXCg9lbmFibGVibG9ja2xpc3QYESABKAsyPi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5QbGF5ZXJEYW5tYWt1RW5hYmxlYmxvY2tsaXN0El4KGWlubGluZVBsYXllckRhbm1ha3VTd2l0Y2gYEiABKAsyOy5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5JbmxpbmVQbGF5ZXJEYW5tYWt1U3dpdGNoElsKEnNlbmlvcl9tb2RlX3N3aXRjaBgTIAEoCzI/LmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlBsYXllckRhbm1ha3VTZW5pb3JNb2RlU3dpdGNoEmQKF2FpX3JlY29tbWVuZGVkX2xldmVsX3YyGBQgASgLMkMuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdUFpUmVjb21tZW5kZWRMZXZlbFYyElMKDmVuYWJsZV9oZXJkX2RtGBUgASgLMjsuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdUVuYWJsZUhlcmREbRJWCg9ibG9ja3RvcF9ib3R0b20YFiABKAsyPS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5QbGF5ZXJEYW5tYWt1QmxvY2t0b3BCb3R0b20SSgoJZG9tYWluX3YyGBcgASgLMjcuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUGxheWVyRGFubWFrdURvbWFpblYyEkcKB2RlbnNpdHkYGCABKAsyNi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5QbGF5ZXJEYW5tYWt1RGVuc2l0eRJUCg5zdWJ0aXRsZV9wcm9vZhgZIAEoCzI8LmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlBsYXllckRhbm1ha3VTdWJ0aXRsZVByb29mElAKDHBlb3BsZV9wcm9vZhgaIAEoCzI6LmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlBsYXllckRhbm1ha3VQZW9wbGVQcm9vZiIvCgtEbVNlZ0NvbmZpZxIRCglwYWdlX3NpemUYASABKAMSDQoFdG90YWwYAiABKAMikQIKEERtU2VnTW9iaWxlUmVwbHkSPAoFZWxlbXMYASADKAsyLS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EYW5tYWt1RWxlbRINCgVzdGF0ZRgCIAEoBRJACgdhaV9mbGFnGAMgASgLMi8uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRGFubWFrdUFJRmxhZxIVCg1zZWdtZW50X3J1bGVzGAQgAygDEkIKDGNvbG9yZnVsX3NyYxgFIAMoCzIsLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRtQ29sb3JmdWwSEwoLY29udGV4dF9zcmMYBiABKAkiygEKDkRtU2VnTW9iaWxlUmVxEgsKA3BpZBgBIAEoAxILCgNvaWQYAiABKAMSDAoEdHlwZRgDIAEoBRIVCg1zZWdtZW50X2luZGV4GAQgASgDEhYKDnRlZW5hZ2Vyc19tb2RlGAUgASgFEgoKAnBzGAYgASgDEgoKAnBlGAcgASgDEhEKCXB1bGxfbW9kZRgIIAEoBRISCgpmcm9tX3NjZW5lGAkgASgFEg0KBXNwbWlkGAogASgJEhMKC2NvbnRleHRfZXh0GAsgASgJIlwKDURtU2VnT3R0UmVwbHkSPAoFZWxlbXMYASADKAsyLS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EYW5tYWt1RWxlbRINCgVzdGF0ZRgCIAEoBSJMCgtEbVNlZ090dFJlcRILCgNwaWQYASABKAMSCwoDb2lkGAIgASgDEgwKBHR5cGUYAyABKAUSFQoNc2VnbWVudF9pbmRleBgEIAEoAyJdCg1EbVNlZ1NES1JlcGx5Eg4KBmNsb3NlZBgBIAEoCBI8CgVlbGVtcxgCIAMoCzItLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRhbm1ha3VFbGVtIkwKC0RtU2VnU0RLUmVxEgsKA3BpZBgBIAEoAxILCgNvaWQYAiABKAMSDAoEdHlwZRgDIAEoBRIVCg1zZWdtZW50X2luZGV4GAQgASgDIncKCURtU3ViVmlldxIMCgR0eXBlGAEgASgFEgsKA29pZBgCIAEoAxILCgNwaWQYAyABKAMSQgoLcG9zdF9wYW5lbDIYBCADKAsyLS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5Qb3N0UGFuZWxWMiKhCQoLRG1WaWV3UmVwbHkSDgoGY2xvc2VkGAEgASgIEjkKBG1hc2sYAiABKAsyKy5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5WaWRlb01hc2sSQQoIc3VidGl0bGUYAyABKAsyLy5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5WaWRlb1N1YnRpdGxlEhMKC3NwZWNpYWxfZG1zGAQgAygJEkQKB2FpX2ZsYWcYBSABKAsyMy5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EYW5tYWt1RmxhZ0NvbmZpZxJOCg1wbGF5ZXJfY29uZmlnGAYgASgLMjcuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRGFubXVQbGF5ZXJWaWV3Q29uZmlnEhYKDnNlbmRfYm94X3N0eWxlGAcgASgFEg0KBWFsbG93GAggASgIEhEKCWNoZWNrX2JveBgJIAEoCBIaChJjaGVja19ib3hfc2hvd19tc2cYCiABKAkSGAoQdGV4dF9wbGFjZWhvbGRlchgLIAEoCRIZChFpbnB1dF9wbGFjZWhvbGRlchgMIAEoCRIdChVyZXBvcnRfZmlsdGVyX2NvbnRlbnQYDSADKAkSQQoLZXhwb19yZXBvcnQYDiABKAsyLC5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5FeHBvUmVwb3J0EkkKD2J1enp3b3JkX2NvbmZpZxgPIAEoCzIwLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkJ1enp3b3JkQ29uZmlnEkIKC2V4cHJlc3Npb25zGBAgAygLMi0uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRXhwcmVzc2lvbnMSPwoKcG9zdF9wYW5lbBgRIAMoCzIrLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlBvc3RQYW5lbBIVCg1hY3Rpdml0eV9tZXRhGBIgAygJEkIKC3Bvc3RfcGFuZWwyGBMgAygLMi0uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUG9zdFBhbmVsVjISQgoMZG1fbWFza193YWxsGBQgAygLMiwuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRG1NYXNrV2FsbBI9CgdkbV9oZXJkGBUgASgLMiwuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRG1IZXJkVmlldxI6Cgdjb21tYW5kGBYgASgLMikuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuQ29tbWFuZBIKCgJrdhgXIAEoCRI+CglzdWJfdmlld3MYGCADKAsyKy5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EbVN1YlZpZXcSNgoDcW9lGBkgASgLMikuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUW9lSW5mbyJtCglEbVZpZXdSZXESCwoDcGlkGAEgASgDEgsKA29pZBgCIAEoAxIMCgR0eXBlGAMgASgFEg0KBXNwbWlkGAQgASgJEhQKDGlzX2hhcmRfYm9vdBgFIAEoBRITCgtjb250ZXh0X2V4dBgGIAEoCSKBBgoORG1XZWJWaWV3UmVwbHkSDQoFc3RhdGUYASABKAUSDAoEdGV4dBgCIAEoCRIRCgl0ZXh0X3NpZGUYAyABKAkSPQoGZG1fc2dlGAQgASgLMi0uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRG1TZWdDb25maWcSQQoEZmxhZxgFIAEoCzIzLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRhbm1ha3VGbGFnQ29uZmlnEhMKC3NwZWNpYWxfZG1zGAYgAygJEhEKCWNoZWNrX2JveBgHIAEoCBINCgVjb3VudBgIIAEoAxJACgtjb21tYW5kX2RtcxgJIAMoCzIrLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkNvbW1hbmREbRJNCg1wbGF5ZXJfY29uZmlnGAogASgLMjYuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRGFubXVXZWJQbGF5ZXJDb25maWcSHQoVcmVwb3J0X2ZpbHRlcl9jb250ZW50GAsgAygJEkIKC2V4cHJlc3Npb25zGAwgAygLMi0uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRXhwcmVzc2lvbnMSPwoKcG9zdF9wYW5lbBgNIAMoCzIrLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlBvc3RQYW5lbBIVCg1hY3Rpdml0eV9tZXRhGA4gAygJEkIKC3Bvc3RfcGFuZWwyGA8gAygLMi0uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUG9zdFBhbmVsVjISPgoJc3ViX3ZpZXdzGBAgAygLMisuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRG1TdWJWaWV3EjYKA3FvZRgRIAEoCzIpLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlFvZUluZm8iKgoKRXhwb1JlcG9ydBIcChRzaG91bGRfcmVwb3J0X2F0X2VuZBgBIAEoCCJkCgpFeHByZXNzaW9uEg8KB2tleXdvcmQYASADKAkSCwoDdXJsGAIgASgJEjgKBnBlcmlvZBgDIAMoCzIoLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlBlcmlvZCJJCgtFeHByZXNzaW9ucxI6CgRkYXRhGAEgAygLMiwuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRXhwcmVzc2lvbiIqChlJbmxpbmVQbGF5ZXJEYW5tYWt1U3dpdGNoEg0KBXZhbHVlGAEgASgIIicKBUxhYmVsEg0KBXRpdGxlGAEgASgJEg8KB2NvbnRlbnQYAiADKAkihwEKB0xhYmVsVjISDQoFdGl0bGUYASABKAkSDwoHY29udGVudBgCIAMoCRIVCg1leHBvc3VyZV9vbmNlGAMgASgIEkUKDWV4cG9zdXJlX3R5cGUYBCABKA4yLi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5FeHBvc3VyZVR5cGUiJAoGUGVyaW9kEg0KBXN0YXJ0GAEgASgDEgsKA2VuZBgCIAEoAyIwCh9QbGF5ZXJEYW5tYWt1QWlSZWNvbW1lbmRlZExldmVsEg0KBXZhbHVlGAEgASgFIjIKIVBsYXllckRhbm1ha3VBaVJlY29tbWVuZGVkTGV2ZWxWMhINCgV2YWx1ZRgBIAEoBSIxCiBQbGF5ZXJEYW5tYWt1QWlSZWNvbW1lbmRlZFN3aXRjaBINCgV2YWx1ZRgBIAEoCCIpChhQbGF5ZXJEYW5tYWt1QmxvY2tib3R0b20SDQoFdmFsdWUYASABKAgiKwoaUGxheWVyRGFubWFrdUJsb2NrY29sb3JmdWwSDQoFdmFsdWUYASABKAgiKQoYUGxheWVyRGFubWFrdUJsb2NrcmVwZWF0Eg0KBXZhbHVlGAEgASgIIikKGFBsYXllckRhbm1ha3VCbG9ja3Njcm9sbBINCgV2YWx1ZRgBIAEoCCIqChlQbGF5ZXJEYW5tYWt1QmxvY2tzcGVjaWFsEg0KBXZhbHVlGAEgASgIIiYKFVBsYXllckRhbm1ha3VCbG9ja3RvcBINCgV2YWx1ZRgBIAEoCCIsChtQbGF5ZXJEYW5tYWt1QmxvY2t0b3BCb3R0b20SDQoFdmFsdWUYASABKAgiJQoUUGxheWVyRGFubWFrdURlbnNpdHkSDQoFdmFsdWUYASABKAUiJAoTUGxheWVyRGFubWFrdURvbWFpbhINCgV2YWx1ZRgBIAEoAiImChVQbGF5ZXJEYW5tYWt1RG9tYWluVjISDQoFdmFsdWUYASABKAUiKgoZUGxheWVyRGFubWFrdUVuYWJsZUhlcmREbRINCgV2YWx1ZRgBIAEoCCItChxQbGF5ZXJEYW5tYWt1RW5hYmxlYmxvY2tsaXN0Eg0KBXZhbHVlGAEgASgIIiUKFFBsYXllckRhbm1ha3VPcGFjaXR5Eg0KBXZhbHVlGAEgASgCIikKGFBsYXllckRhbm1ha3VQZW9wbGVQcm9vZhINCgV2YWx1ZRgBIAEoCCIrChpQbGF5ZXJEYW5tYWt1U2NhbGluZ2ZhY3RvchINCgV2YWx1ZRgBIAEoAiIuCh1QbGF5ZXJEYW5tYWt1U2VuaW9yTW9kZVN3aXRjaBINCgV2YWx1ZRgBIAEoBSIjChJQbGF5ZXJEYW5tYWt1U3BlZWQSDQoFdmFsdWUYASABKAUiKwoaUGxheWVyRGFubWFrdVN1YnRpdGxlUHJvb2YSDQoFdmFsdWUYASABKAgiOAoTUGxheWVyRGFubWFrdVN3aXRjaBINCgV2YWx1ZRgBIAEoCBISCgpjYW5faWdub3JlGAIgASgIIigKF1BsYXllckRhbm1ha3VTd2l0Y2hTYXZlEg0KBXZhbHVlGAEgASgIIi4KHVBsYXllckRhbm1ha3VVc2VEZWZhdWx0Q29uZmlnEg0KBXZhbHVlGAEgASgIIowDCglQb3N0UGFuZWwSDQoFc3RhcnQYASABKAMSCwoDZW5kGAIgASgDEhAKCHByaW9yaXR5GAMgASgDEg4KBmJpel9pZBgEIAEoAxJECghiaXpfdHlwZRgFIAEoDjIyLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlBvc3RQYW5lbEJpelR5cGUSQwoMY2xpY2tfYnV0dG9uGAYgASgLMi0uYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuQ2xpY2tCdXR0b24SPwoKdGV4dF9pbnB1dBgHIAEoCzIrLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlRleHRJbnB1dBI9CgljaGVja19ib3gYCCABKAsyKi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5DaGVja0JveBI2CgV0b2FzdBgJIAEoCzInLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlRvYXN0Iq0ECgtQb3N0UGFuZWxWMhINCgVzdGFydBgBIAEoAxILCgNlbmQYAiABKAMSRAoIYml6X3R5cGUYAyABKA4yMi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5Qb3N0UGFuZWxCaXpUeXBlEkUKDGNsaWNrX2J1dHRvbhgEIAEoCzIvLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkNsaWNrQnV0dG9uVjISQQoKdGV4dF9pbnB1dBgFIAEoCzItLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlRleHRJbnB1dFYyEj8KCWNoZWNrX2JveBgGIAEoCzIsLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkNoZWNrQm94VjISOAoFdG9hc3QYByABKAsyKS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5Ub2FzdFYyEjoKBmJ1YmJsZRgIIAEoCzIqLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkJ1YmJsZVYyEjgKBWxhYmVsGAkgASgLMikuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuTGFiZWxWMhJBCgtwb3N0X3N0YXR1cxgKIAEoDjIsLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlBvc3RTdGF0dXMiFwoHUW9lSW5mbxIMCgRpbmZvGAEgASgJIikKCFJlc3BvbnNlEgwKBGNvZGUYASABKAUSDwoHbWVzc2FnZRgCIAEoCSL5AgoMU3VidGl0bGVJdGVtEgoKAmlkGAEgASgDEg4KBmlkX3N0chgCIAEoCRILCgNsYW4YAyABKAkSDwoHbGFuX2RvYxgEIAEoCRIUCgxzdWJ0aXRsZV91cmwYBSABKAkSOgoGYXV0aG9yGAYgASgLMiouYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuVXNlckluZm8SPAoEdHlwZRgHIAEoDjIuLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlN1YnRpdGxlVHlwZRIVCg1sYW5fZG9jX2JyaWVmGAggASgJEkEKB2FpX3R5cGUYCSABKA4yMC5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5TdWJ0aXRsZUFpVHlwZRJFCglhaV9zdGF0dXMYCiABKA4yMi5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5TdWJ0aXRsZUFpU3RhdHVzIugCCglUZXh0SW5wdXQSHAoUcG9ydHJhaXRfcGxhY2Vob2xkZXIYASADKAkSHQoVbGFuZHNjYXBlX3BsYWNlaG9sZGVyGAIgAygJEkEKC3JlbmRlcl90eXBlGAMgASgOMiwuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUmVuZGVyVHlwZRIYChBwbGFjZWhvbGRlcl9wb3N0GAQgASgIEgwKBHNob3cYBSABKAgSOAoGYXZhdGFyGAYgAygLMiguYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuQXZhdGFyEkEKC3Bvc3Rfc3RhdHVzGAcgASgOMiwuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUG9zdFN0YXR1cxI2CgVsYWJlbBgIIAEoCzInLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkxhYmVsIvsBCgtUZXh0SW5wdXRWMhIcChRwb3J0cmFpdF9wbGFjZWhvbGRlchgBIAMoCRIdChVsYW5kc2NhcGVfcGxhY2Vob2xkZXIYAiADKAkSQQoLcmVuZGVyX3R5cGUYAyABKA4yLC5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5SZW5kZXJUeXBlEhgKEHBsYWNlaG9sZGVyX3Bvc3QYBCABKAgSOAoGYXZhdGFyGAUgAygLMiguYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuQXZhdGFyEhgKEHRleHRfaW5wdXRfbGltaXQYBiABKAUibwoFVG9hc3QSDAoEdGV4dBgBIAEoCRIQCghkdXJhdGlvbhgCIAEoBRIMCgRzaG93GAMgASgIEjgKBmJ1dHRvbhgEIAEoCzIoLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkJ1dHRvbiJiCg1Ub2FzdEJ1dHRvblYyEgwKBHRleHQYASABKAkSQwoGYWN0aW9uGAIgASgOMjMuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuVG9hc3RGdW5jdGlvblR5cGUicwoHVG9hc3RWMhIMCgR0ZXh0GAEgASgJEhAKCGR1cmF0aW9uGAIgASgFEkgKD3RvYXN0X2J1dHRvbl92MhgDIAEoCzIvLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlRvYXN0QnV0dG9uVjIiXAoIVXNlckluZm8SCwoDbWlkGAEgASgDEgwKBG5hbWUYAiABKAkSCwoDc2V4GAMgASgJEgwKBGZhY2UYBCABKAkSDAoEc2lnbhgFIAEoCRIMCgRyYW5rGAYgASgFIlMKCVZpZGVvTWFzaxILCgNjaWQYASABKAMSDAoEcGxhdBgCIAEoBRILCgNmcHMYAyABKAUSDAoEdGltZRgEIAEoAxIQCghtYXNrX3VybBgFIAEoCSJwCg1WaWRlb1N1YnRpdGxlEgsKA2xhbhgBIAEoCRIPCgdsYW5fZG9jGAIgASgJEkEKCXN1YnRpdGxlcxgDIAMoCzIuLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLlN1YnRpdGxlSXRlbSKSAQoOVmlld0hlcmREbUVsZW0SEAoIaGVyZF9tc2cYASABKAkSFgoOaGVyZF9zdGFydF9jbnQYAiABKAUSFAoMaGVyZF9lbmRfY250GAMgASgFEhIKCnJlZ2V4X3J1bGUYBCABKAkSFgoOc3RhcnRfcHJvZ3Jlc3MYBSABKAUSFAoMZW5kX3Byb2dyZXNzGAYgASgFKjMKCkF2YXRhclR5cGUSEgoOQXZhdGFyVHlwZU5vbmUQABIRCg1BdmF0YXJUeXBlTkZUEAEqWQoKQnViYmxlVHlwZRISCg5CdWJibGVUeXBlTm9uZRAAEhkKFUJ1YmJsZVR5cGVDbGlja0J1dHRvbhABEhwKGEJ1YmJsZVR5cGVEbVNldHRpbmdQYW5lbBACKlgKDENoZWNrYm94VHlwZRIUChBDaGVja2JveFR5cGVOb25lEAASGQoVQ2hlY2tib3hUeXBlRW5jb3VyYWdlEAESFwoTQ2hlY2tib3hUeXBlQ29sb3JETRACKjUKDkRtQ29sb3JmdWxUeXBlEgwKCE5vbmVUeXBlEAASFQoPVmlwR3JhZHVhbENvbG9yEOHUAypgChFEbU1hc2tXYWxsQml6VHlwZRILCgdVbmtub3duEAASBwoDT0dWEAESCgoGQml6UGljEAISCAoETXV0ZRADEgoKBlJlY29yZBAEEgkKBUNsb3VkEAUSCAoEQUlHQxAGKnYKFURtTWFza1dhbGxDb250ZW50VHlwZRIgChxEbU1hc2tXYWxsQ29udGVudFR5cGVVbmtub3duEAASHQoZRG1NYXNrV2FsbENvbnRlbnRUeXBlVGV4dBABEhwKGERtTWFza1dhbGxDb250ZW50VHlwZVBpYxACKjwKDEV4cG9zdXJlVHlwZRIUChBFeHBvc3VyZVR5cGVOb25lEAASFgoSRXhwb3N1cmVUeXBlRE1TZW5kEAEqgwIKEFBvc3RQYW5lbEJpelR5cGUSGAoUUG9zdFBhbmVsQml6VHlwZU5vbmUQABIdChlQb3N0UGFuZWxCaXpUeXBlRW5jb3VyYWdlEAESGwoXUG9zdFBhbmVsQml6VHlwZUNvbG9yRE0QAhIZChVQb3N0UGFuZWxCaXpUeXBlTkZURE0QAxIdChlQb3N0UGFuZWxCaXpUeXBlRnJhZ0Nsb3NlEAQSHQoZUG9zdFBhbmVsQml6VHlwZVJlY29tbWVuZBAFEhwKGFBvc3RQYW5lbEJpelR5cGVQbG90TGVhaxAGEiIKHlBvc3RQYW5lbEJpelR5cGVBbnRpSGFyYXNzbWVudBAHKjgKClBvc3RTdGF0dXMSFAoQUG9zdFN0YXR1c05vcm1hbBAAEhQKEFBvc3RTdGF0dXNDbG9zZWQQASpOCgpSZW5kZXJUeXBlEhIKDlJlbmRlclR5cGVOb25lEAASFAoQUmVuZGVyVHlwZVNpbmdsZRABEhYKElJlbmRlclR5cGVSb3RhdGlvbhACKjYKEFN1YnRpdGxlQWlTdGF0dXMSCAoETm9uZRAAEgwKCEV4cG9zdXJlEAESCgoGQXNzaXN0EAIqKwoOU3VidGl0bGVBaVR5cGUSCgoGTm9ybWFsEAASDQoJVHJhbnNsYXRlEAEqHgoMU3VidGl0bGVUeXBlEgYKAkNDEAASBgoCQUkQASpOChFUb2FzdEZ1bmN0aW9uVHlwZRIZChVUb2FzdEZ1bmN0aW9uVHlwZU5vbmUQABIeChpUb2FzdEZ1bmN0aW9uVHlwZVBvc3RQYW5lbBABMqAFCgJETRJzCgtEbVNlZ01vYmlsZRIwLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRtU2VnTW9iaWxlUmVxGjIuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRG1TZWdNb2JpbGVSZXBseRJkCgZEbVZpZXcSKy5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EbVZpZXdSZXEaLS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EbVZpZXdSZXBseRJxCg5EbVBsYXllckNvbmZpZxIzLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRtUGxheWVyQ29uZmlnUmVxGiouYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuUmVzcG9uc2USagoIRG1TZWdPdHQSLS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EbVNlZ090dFJlcRovLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRtU2VnT3R0UmVwbHkSagoIRG1TZWdTREsSLS5iaWxpYmlsaS5jb21tdW5pdHkuc2VydmljZS5kbS52MS5EbVNlZ1NES1JlcRovLmJpbGliaWxpLmNvbW11bml0eS5zZXJ2aWNlLmRtLnYxLkRtU2VnU0RLUmVwbHkSdAoMRG1FeHBvUmVwb3J0EjEuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRG1FeHBvUmVwb3J0UmVxGjEuYmlsaWJpbGkuY29tbXVuaXR5LnNlcnZpY2UuZG0udjEuRG1FeHBvUmVwb3J0UmVzYgZwcm90bzM");
/**
* @generated from message bilibili.community.service.dm.v1.Avatar
*/
export type Avatar = Message<"bilibili.community.service.dm.v1.Avatar"> & {
/**
* @generated from field: string id = 1;
*/
id: string;
/**
* @generated from field: string url = 2;
*/
url: string;
/**
* @generated from field: bilibili.community.service.dm.v1.AvatarType avatar_type = 3;
*/
avatarType: AvatarType;
};
/**
* Describes the message bilibili.community.service.dm.v1.Avatar.
* Use `create(AvatarSchema)` to create a new message.
*/
export const AvatarSchema: GenMessage<Avatar> = /*@__PURE__*/
messageDesc(file_bili_dm, 0);
/**
* @generated from message bilibili.community.service.dm.v1.Bubble
*/
export type Bubble = Message<"bilibili.community.service.dm.v1.Bubble"> & {
/**
* @generated from field: string text = 1;
*/
text: string;
/**
* @generated from field: string url = 2;
*/
url: string;
};
/**
* Describes the message bilibili.community.service.dm.v1.Bubble.
* Use `create(BubbleSchema)` to create a new message.
*/
export const BubbleSchema: GenMessage<Bubble> = /*@__PURE__*/
messageDesc(file_bili_dm, 1);
/**
* @generated from message bilibili.community.service.dm.v1.BubbleV2
*/
export type BubbleV2 = Message<"bilibili.community.service.dm.v1.BubbleV2"> & {
/**
* @generated from field: string text = 1;
*/
text: string;
/**
* @generated from field: string url = 2;
*/
url: string;
/**
* @generated from field: bilibili.community.service.dm.v1.BubbleType bubble_type = 3;
*/
bubbleType: BubbleType;
/**
* @generated from field: bool exposure_once = 4;
*/
exposureOnce: boolean;
/**
* @generated from field: bilibili.community.service.dm.v1.ExposureType exposure_type = 5;
*/
exposureType: ExposureType;
};
/**
* Describes the message bilibili.community.service.dm.v1.BubbleV2.
* Use `create(BubbleV2Schema)` to create a new message.
*/
export const BubbleV2Schema: GenMessage<BubbleV2> = /*@__PURE__*/
messageDesc(file_bili_dm, 2);
/**
* @generated from message bilibili.community.service.dm.v1.Button
*/
export type Button = Message<"bilibili.community.service.dm.v1.Button"> & {
/**
*
*
* @generated from field: string text = 1;
*/
text: string;
/**
*
*
* @generated from field: bilibili.community.service.dm.v1.ToastFunctionType action = 2;
*/
action: ToastFunctionType;
};
/**
* Describes the message bilibili.community.service.dm.v1.Button.
* Use `create(ButtonSchema)` to create a new message.
*/
export const ButtonSchema: GenMessage<Button> = /*@__PURE__*/
messageDesc(file_bili_dm, 3);
/**
* @generated from message bilibili.community.service.dm.v1.BuzzwordConfig
*/
export type BuzzwordConfig = Message<"bilibili.community.service.dm.v1.BuzzwordConfig"> & {
/**
* @generated from field: repeated bilibili.community.service.dm.v1.BuzzwordShowConfig keywords = 1;
*/
keywords: BuzzwordShowConfig[];
};
/**
* Describes the message bilibili.community.service.dm.v1.BuzzwordConfig.
* Use `create(BuzzwordConfigSchema)` to create a new message.
*/
export const BuzzwordConfigSchema: GenMessage<BuzzwordConfig> = /*@__PURE__*/
messageDesc(file_bili_dm, 4);
/**
* @generated from message bilibili.community.service.dm.v1.BuzzwordShowConfig
*/
export type BuzzwordShowConfig = Message<"bilibili.community.service.dm.v1.BuzzwordShowConfig"> & {
/**
* @generated from field: string name = 1;
*/
name: string;
/**
* @generated from field: string schema = 2;
*/
schema: string;
/**
* @generated from field: int32 source = 3;
*/
source: number;
/**
* @generated from field: int64 id = 4;
*/
id: bigint;
/**
* @generated from field: int64 buzzword_id = 5;
*/
buzzwordId: bigint;
/**
* @generated from field: int32 schema_type = 6;
*/
schemaType: number;
};
/**
* Describes the message bilibili.community.service.dm.v1.BuzzwordShowConfig.
* Use `create(BuzzwordShowConfigSchema)` to create a new message.
*/
export const BuzzwordShowConfigSchema: GenMessage<BuzzwordShowConfig> = /*@__PURE__*/
messageDesc(file_bili_dm, 5);
/**
* @generated from message bilibili.community.service.dm.v1.CheckBox
*/
export type CheckBox = Message<"bilibili.community.service.dm.v1.CheckBox"> & {
/**
* @generated from field: string text = 1;
*/
text: string;
/**
* @generated from field: bilibili.community.service.dm.v1.CheckboxType type = 2;
*/
type: CheckboxType;
/**
* @generated from field: bool default_value = 3;
*/
defaultValue: boolean;
/**
* @generated from field: bool show = 4;
*/
show: boolean;
};
/**
* Describes the message bilibili.community.service.dm.v1.CheckBox.
* Use `create(CheckBoxSchema)` to create a new message.
*/
export const CheckBoxSchema: GenMessage<CheckBox> = /*@__PURE__*/
messageDesc(file_bili_dm, 6);
/**
* @generated from message bilibili.community.service.dm.v1.CheckBoxV2
*/
export type CheckBoxV2 = Message<"bilibili.community.service.dm.v1.CheckBoxV2"> & {
/**
* @generated from field: string text = 1;
*/
text: string;
/**
* @generated from field: bilibili.community.service.dm.v1.CheckboxType type = 2;
*/
type: CheckboxType;
/**
* @generated from field: bool default_value = 3;
*/
defaultValue: boolean;
};
/**
* Describes the message bilibili.community.service.dm.v1.CheckBoxV2.
* Use `create(CheckBoxV2Schema)` to create a new message.
*/
export const CheckBoxV2Schema: GenMessage<CheckBoxV2> = /*@__PURE__*/
messageDesc(file_bili_dm, 7);
/**
* @generated from message bilibili.community.service.dm.v1.ClickButton
*/
export type ClickButton = Message<"bilibili.community.service.dm.v1.ClickButton"> & {
/**
* @generated from field: repeated string portrait_text = 1;
*/
portraitText: string[];
/**
* @generated from field: repeated string landscape_text = 2;
*/
landscapeText: string[];
/**
* @generated from field: repeated string portrait_text_focus = 3;
*/
portraitTextFocus: string[];
/**
* @generated from field: repeated string landscape_text_focus = 4;
*/
landscapeTextFocus: string[];
/**
* @generated from field: bilibili.community.service.dm.v1.RenderType render_type = 5;
*/
renderType: RenderType;
/**
* @generated from field: bool show = 6;
*/
show: boolean;
/**
* @generated from field: bilibili.community.service.dm.v1.Bubble bubble = 7;
*/
bubble?: Bubble;
};
/**
* Describes the message bilibili.community.service.dm.v1.ClickButton.
* Use `create(ClickButtonSchema)` to create a new message.
*/
export const ClickButtonSchema: GenMessage<ClickButton> = /*@__PURE__*/
messageDesc(file_bili_dm, 8);
/**
* @generated from message bilibili.community.service.dm.v1.ClickButtonV2
*/
export type ClickButtonV2 = Message<"bilibili.community.service.dm.v1.ClickButtonV2"> & {
/**
* @generated from field: repeated string portrait_text = 1;
*/
portraitText: string[];
/**
* @generated from field: repeated string landscape_text = 2;
*/
landscapeText: string[];
/**
* @generated from field: repeated string portrait_text_focus = 3;
*/
portraitTextFocus: string[];
/**
* @generated from field: repeated string landscape_text_focus = 4;
*/
landscapeTextFocus: string[];
/**
* @generated from field: bilibili.community.service.dm.v1.RenderType render_type = 5;
*/
renderType: RenderType;
/**
* @generated from field: bool text_input_post = 6;
*/
textInputPost: boolean;
/**
* @generated from field: bool exposure_once = 7;
*/
exposureOnce: boolean;
/**
* @generated from field: bilibili.community.service.dm.v1.ExposureType exposure_type = 8;
*/
exposureType: ExposureType;
};
/**
* Describes the message bilibili.community.service.dm.v1.ClickButtonV2.
* Use `create(ClickButtonV2Schema)` to create a new message.
*/
export const ClickButtonV2Schema: GenMessage<ClickButtonV2> = /*@__PURE__*/
messageDesc(file_bili_dm, 9);
/**
*
*
* @generated from message bilibili.community.service.dm.v1.Command
*/
export type Command = Message<"bilibili.community.service.dm.v1.Command"> & {
/**
*
*
* @generated from field: repeated bilibili.community.service.dm.v1.CommandDm command_dms = 1;
*/
commandDms: CommandDm[];
};
/**
* Describes the message bilibili.community.service.dm.v1.Command.
* Use `create(CommandSchema)` to create a new message.
*/
export const CommandSchema: GenMessage<Command> = /*@__PURE__*/
messageDesc(file_bili_dm, 10);
/**
* 互动弹幕条目信息
*
* @generated from message bilibili.community.service.dm.v1.CommandDm
*/
export type CommandDm = Message<"bilibili.community.service.dm.v1.CommandDm"> & {
/**
* 弹幕id
*
* @generated from field: int64 id = 1;
*/
id: bigint;
/**
* 对象视频cid
*
* @generated from field: int64 oid = 2;
*/
oid: bigint;
/**
* 发送者mid
*
* @generated from field: int64 mid = 3;
*/
mid: bigint;
/**
* 互动弹幕指令
*
* @generated from field: string command = 4;
*/
command: string;
/**
* 互动弹幕正文
*
* @generated from field: string content = 5;
*/
content: string;
/**
* 出现时间
*
* @generated from field: int32 progress = 6;
*/
progress: number;
/**
* 创建时间
*
* @generated from field: string ctime = 7;
*/
ctime: string;
/**
* 发布时间
*
* @generated from field: string mtime = 8;
*/
mtime: string;
/**
* 扩展json数据
*
* @generated from field: string extra = 9;
*/
extra: string;
/**
* 弹幕id str类型
*
* @generated from field: string idStr = 10;
*/
idStr: string;
/**
*
*
* @generated from field: int32 type = 11;
*/
type: number;
/**
*
*
* @generated from field: bool auto_create = 12;
*/
autoCreate: boolean;
/**
*
*
* @generated from field: int32 count_down = 13;
*/
countDown: number;
/**
*
*
* @generated from field: int32 attr = 14;
*/
attr: number;
};
/**
* Describes the message bilibili.community.service.dm.v1.CommandDm.
* Use `create(CommandDmSchema)` to create a new message.
*/
export const CommandDmSchema: GenMessage<CommandDm> = /*@__PURE__*/
messageDesc(file_bili_dm, 11);
/**
* 弹幕ai云屏蔽列表
*
* @generated from message bilibili.community.service.dm.v1.DanmakuAIFlag
*/
export type DanmakuAIFlag = Message<"bilibili.community.service.dm.v1.DanmakuAIFlag"> & {
/**
* 弹幕ai云屏蔽条目
*
* @generated from field: repeated bilibili.community.service.dm.v1.DanmakuFlag dm_flags = 1;
*/
dmFlags: DanmakuFlag[];
};
/**
* Describes the message bilibili.community.service.dm.v1.DanmakuAIFlag.
* Use `create(DanmakuAIFlagSchema)` to create a new message.
*/
export const DanmakuAIFlagSchema: GenMessage<DanmakuAIFlag> = /*@__PURE__*/
messageDesc(file_bili_dm, 12);
/**
* 弹幕条目
*
* @generated from message bilibili.community.service.dm.v1.DanmakuElem
*/
export type DanmakuElem = Message<"bilibili.community.service.dm.v1.DanmakuElem"> & {
/**
* 弹幕dmid
*
* @generated from field: int64 id = 1;
*/
id: bigint;
/**
* 弹幕出现位置(单位ms)
*
* @generated from field: int32 progress = 2;
*/
progress: number;
/**
* 弹幕类型 1 2 3:普通弹幕 4:底部弹幕 5:顶部弹幕 6:逆向弹幕 7:高级弹幕 8:代码弹幕 9:BAS弹幕(pool必须为2)
*
* @generated from field: int32 mode = 3;
*/
mode: number;
/**
* 弹幕字号
*
* @generated from field: int32 fontsize = 4;
*/
fontsize: number;
/**
* 弹幕颜色
*
* @generated from field: bilibili.community.service.dm.v1.DmColorfulType color = 5;
*/
color: DmColorfulType;
/**
* 发送者mid hash
*
* @generated from field: string mid_hash = 6;
*/
midHash: string;
/**
* 弹幕正文
*
* @generated from field: string content = 7;
*/
content: string;
/**
* 发送时间
*
* @generated from field: int64 ctime = 8;
*/
ctime: bigint;
/**
* 权重 用于屏蔽等级 区间:[1,10]
*
* @generated from field: int32 weight = 9;
*/
weight: number;
/**
* 动作
*
* @generated from field: string action = 10;
*/
action: string;
/**
* 弹幕池 0:普通池 1:字幕池 2:特殊池(代码/BAS弹幕)
*
* @generated from field: int32 pool = 11;
*/
pool: number;
/**
* 弹幕dmid str
*
* @generated from field: string id_str = 12;
*/
idStr: string;
/**
* 弹幕属性位(bin求AND)
* bit0:保护 bit1:直播 bit2:高赞
*
* @generated from field: int32 attr = 13;
*/
attr: number;
/**
* @generated from field: string animation = 22;
*/
animation: string;
/**
* @generated from field: string extra = 23;
*/
extra: string;
/**
* 大会员专属颜色
*
* @generated from field: bilibili.community.service.dm.v1.DmColorfulType colorful = 24;
*/
colorful: DmColorfulType;
/**
*
*
* @generated from field: int32 type = 25;
*/
type: number;
/**
*
*
* @generated from field: int64 oid = 26;
*/
oid: bigint;
};
/**
* Describes the message bilibili.community.service.dm.v1.DanmakuElem.
* Use `create(DanmakuElemSchema)` to create a new message.
*/
export const DanmakuElemSchema: GenMessage<DanmakuElem> = /*@__PURE__*/
messageDesc(file_bili_dm, 13);
/**
* 弹幕ai云屏蔽条目
*
* @generated from message bilibili.community.service.dm.v1.DanmakuFlag
*/
export type DanmakuFlag = Message<"bilibili.community.service.dm.v1.DanmakuFlag"> & {
/**
* 弹幕dmid
*
* @generated from field: int64 dmid = 1;
*/
dmid: bigint;
/**
* 评分
*
* @generated from field: int32 flag = 2;
*/
flag: number;
};
/**
* Describes the message bilibili.community.service.dm.v1.DanmakuFlag.
* Use `create(DanmakuFlagSchema)` to create a new message.
*/
export const DanmakuFlagSchema: GenMessage<DanmakuFlag> = /*@__PURE__*/
messageDesc(file_bili_dm, 14);
/**
* 云屏蔽配置信息
*
* @generated from message bilibili.community.service.dm.v1.DanmakuFlagConfig
*/
export type DanmakuFlagConfig = Message<"bilibili.community.service.dm.v1.DanmakuFlagConfig"> & {
/**
* 云屏蔽等级
*
* @generated from field: int32 rec_flag = 1;
*/
recFlag: number;
/**
* 云屏蔽文案
*
* @generated from field: string rec_text = 2;
*/
recText: string;
/**
* 云屏蔽开关
*
* @generated from field: int32 rec_switch = 3;
*/
recSwitch: number;
};
/**
* Describes the message bilibili.community.service.dm.v1.DanmakuFlagConfig.
* Use `create(DanmakuFlagConfigSchema)` to create a new message.
*/
export const DanmakuFlagConfigSchema: GenMessage<DanmakuFlagConfig> = /*@__PURE__*/
messageDesc(file_bili_dm, 15);
/**
* 弹幕默认配置
*
* @generated from message bilibili.community.service.dm.v1.DanmuDefaultPlayerConfig
*/
export type DanmuDefaultPlayerConfig = Message<"bilibili.community.service.dm.v1.DanmuDefaultPlayerConfig"> & {
/**
* 是否使用推荐弹幕设置
*
* @generated from field: bool player_danmaku_use_default_config = 1;
*/
playerDanmakuUseDefaultConfig: boolean;
/**
* 是否开启智能云屏蔽
*
* @generated from field: bool player_danmaku_ai_recommended_switch = 4;
*/
playerDanmakuAiRecommendedSwitch: boolean;
/**
* 智能云屏蔽等级
*
* @generated from field: int32 player_danmaku_ai_recommended_level = 5;
*/
playerDanmakuAiRecommendedLevel: number;
/**
* 是否屏蔽顶端弹幕
*
* @generated from field: bool player_danmaku_blocktop = 6;
*/
playerDanmakuBlocktop: boolean;
/**
* 是否屏蔽滚动弹幕
*
* @generated from field: bool player_danmaku_blockscroll = 7;
*/
playerDanmakuBlockscroll: boolean;
/**
* 是否屏蔽底端弹幕
*
* @generated from field: bool player_danmaku_blockbottom = 8;
*/
playerDanmakuBlockbottom: boolean;
/**
* 是否屏蔽彩色弹幕
*
* @generated from field: bool player_danmaku_blockcolorful = 9;
*/
playerDanmakuBlockcolorful: boolean;
/**
* 是否屏蔽重复弹幕
*
* @generated from field: bool player_danmaku_blockrepeat = 10;
*/
playerDanmakuBlockrepeat: boolean;
/**
* 是否屏蔽高级弹幕
*
* @generated from field: bool player_danmaku_blockspecial = 11;
*/
playerDanmakuBlockspecial: boolean;
/**
* 弹幕不透明度
*
* @generated from field: float player_danmaku_opacity = 12;
*/
playerDanmakuOpacity: number;
/**
* 弹幕缩放比例
*
* @generated from field: float player_danmaku_scalingfactor = 13;
*/
playerDanmakuScalingfactor: number;
/**
* 弹幕显示区域
*
* @generated from field: float player_danmaku_domain = 14;
*/
playerDanmakuDomain: number;
/**
* 弹幕速度
*
* @generated from field: int32 player_danmaku_speed = 15;
*/
playerDanmakuSpeed: number;
/**
* 是否开启弹幕
*
* @generated from field: bool inline_player_danmaku_switch = 16;
*/
inlinePlayerDanmakuSwitch: boolean;
/**
* @generated from field: int32 player_danmaku_senior_mode_switch = 17;
*/
playerDanmakuSeniorModeSwitch: number;
/**
* @generated from field: int32 player_danmaku_ai_recommended_level_v2 = 18;
*/
playerDanmakuAiRecommendedLevelV2: number;
/**
* @generated from field: map<int32, int32> player_danmaku_ai_recommended_level_v2_map = 19;
*/
playerDanmakuAiRecommendedLevelV2Map: { [key: number]: number };
/**
*
*
* @generated from field: bool player_danmaku_enable_herd_dm = 20;
*/
playerDanmakuEnableHerdDm: boolean;
};
/**
* Describes the message bilibili.community.service.dm.v1.DanmuDefaultPlayerConfig.
* Use `create(DanmuDefaultPlayerConfigSchema)` to create a new message.
*/
export const DanmuDefaultPlayerConfigSchema: GenMessage<DanmuDefaultPlayerConfig> = /*@__PURE__*/
messageDesc(file_bili_dm, 16);
/**
* 弹幕配置
*
* @generated from message bilibili.community.service.dm.v1.DanmuPlayerConfig
*/
export type DanmuPlayerConfig = Message<"bilibili.community.service.dm.v1.DanmuPlayerConfig"> & {
/**
* 是否开启弹幕
*
* @generated from field: bool player_danmaku_switch = 1;
*/
playerDanmakuSwitch: boolean;
/**
* 是否记录弹幕开关设置
*
* @generated from field: bool player_danmaku_switch_save = 2;
*/
playerDanmakuSwitchSave: boolean;
/**
* 是否使用推荐弹幕设置
*
* @generated from field: bool player_danmaku_use_default_config = 3;
*/
playerDanmakuUseDefaultConfig: boolean;
/**
* 是否开启智能云屏蔽
*
* @generated from field: bool player_danmaku_ai_recommended_switch = 4;
*/
playerDanmakuAiRecommendedSwitch: boolean;
/**
* 智能云屏蔽等级
*
* @generated from field: int32 player_danmaku_ai_recommended_level = 5;
*/
playerDanmakuAiRecommendedLevel: number;
/**
* 是否屏蔽顶端弹幕
*
* @generated from field: bool player_danmaku_blocktop = 6;
*/
playerDanmakuBlocktop: boolean;
/**
* 是否屏蔽滚动弹幕
*
* @generated from field: bool player_danmaku_blockscroll = 7;
*/
playerDanmakuBlockscroll: boolean;
/**
* 是否屏蔽底端弹幕
*
* @generated from field: bool player_danmaku_blockbottom = 8;
*/
playerDanmakuBlockbottom: boolean;
/**
* 是否屏蔽彩色弹幕
*
* @generated from field: bool player_danmaku_blockcolorful = 9;
*/
playerDanmakuBlockcolorful: boolean;
/**
* 是否屏蔽重复弹幕
*
* @generated from field: bool player_danmaku_blockrepeat = 10;
*/
playerDanmakuBlockrepeat: boolean;
/**
* 是否屏蔽高级弹幕
*
* @generated from field: bool player_danmaku_blockspecial = 11;
*/
playerDanmakuBlockspecial: boolean;
/**
* 弹幕不透明度
*
* @generated from field: float player_danmaku_opacity = 12;
*/
playerDanmakuOpacity: number;
/**
* 弹幕缩放比例
*
* @generated from field: float player_danmaku_scalingfactor = 13;
*/
playerDanmakuScalingfactor: number;
/**
* 弹幕显示区域
*
* @generated from field: float player_danmaku_domain = 14;
*/
playerDanmakuDomain: number;
/**
* 弹幕速度
*
* @generated from field: int32 player_danmaku_speed = 15;
*/
playerDanmakuSpeed: number;
/**
* 是否开启屏蔽列表
*
* @generated from field: bool player_danmaku_enableblocklist = 16;
*/
playerDanmakuEnableblocklist: boolean;
/**
* 是否开启弹幕
*
* @generated from field: bool inline_player_danmaku_switch = 17;
*/
inlinePlayerDanmakuSwitch: boolean;
/**
* @generated from field: int32 inline_player_danmaku_config = 18;
*/
inlinePlayerDanmakuConfig: number;
/**
* @generated from field: int32 player_danmaku_ios_switch_save = 19;
*/
playerDanmakuIosSwitchSave: number;
/**
* @generated from field: int32 player_danmaku_senior_mode_switch = 20;
*/
playerDanmakuSeniorModeSwitch: number;
/**
* @generated from field: int32 player_danmaku_ai_recommended_level_v2 = 21;
*/
playerDanmakuAiRecommendedLevelV2: number;
/**
* @generated from field: map<int32, int32> player_danmaku_ai_recommended_level_v2_map = 22;
*/
playerDanmakuAiRecommendedLevelV2Map: { [key: number]: number };
/**
*
*
* @generated from field: bool player_danmaku_enable_herd_dm = 23;
*/
playerDanmakuEnableHerdDm: boolean;
/**
*
*
* @generated from field: bool player_danmaku_blocktop_bottom = 24;
*/
playerDanmakuBlocktopBottom: boolean;
/**
*
*
* @generated from field: int32 player_danmaku_domain_v2 = 25;
*/
playerDanmakuDomainV2: number;
/**
*
*
* @generated from field: int32 player_danmaku_density = 26;
*/
playerDanmakuDensity: number;
/**
*
*
* @generated from field: bool player_danmaku_subtitle_proof = 27;
*/
playerDanmakuSubtitleProof: boolean;
/**
*
*
* @generated from field: bool player_danmaku_people_proof = 28;
*/
playerDanmakuPeopleProof: boolean;
};
/**
* Describes the message bilibili.community.service.dm.v1.DanmuPlayerConfig.
* Use `create(DanmuPlayerConfigSchema)` to create a new message.
*/
export const DanmuPlayerConfigSchema: GenMessage<DanmuPlayerConfig> = /*@__PURE__*/
messageDesc(file_bili_dm, 17);
/**
* @generated from message bilibili.community.service.dm.v1.DanmuPlayerConfigPanel
*/
export type DanmuPlayerConfigPanel = Message<"bilibili.community.service.dm.v1.DanmuPlayerConfigPanel"> & {
/**
* @generated from field: string selection_text = 1;
*/
selectionText: string;
};
/**
* Describes the message bilibili.community.service.dm.v1.DanmuPlayerConfigPanel.
* Use `create(DanmuPlayerConfigPanelSchema)` to create a new message.
*/
export const DanmuPlayerConfigPanelSchema: GenMessage<DanmuPlayerConfigPanel> = /*@__PURE__*/
messageDesc(file_bili_dm, 18);
/**
* 弹幕显示区域自动配置
*
* @generated from message bilibili.community.service.dm.v1.DanmuPlayerDynamicConfig
*/
export type DanmuPlayerDynamicConfig = Message<"bilibili.community.service.dm.v1.DanmuPlayerDynamicConfig"> & {
/**
* 时间
*
* @generated from field: int32 progress = 1;
*/
progress: number;
/**
* 弹幕显示区域
*
* @generated from field: float player_danmaku_domain = 14;
*/
playerDanmakuDomain: number;
};
/**
* Describes the message bilibili.community.service.dm.v1.DanmuPlayerDynamicConfig.
* Use `create(DanmuPlayerDynamicConfigSchema)` to create a new message.
*/
export const DanmuPlayerDynamicConfigSchema: GenMessage<DanmuPlayerDynamicConfig> = /*@__PURE__*/
messageDesc(file_bili_dm, 19);
/**
* 弹幕配置信息
*
* @generated from message bilibili.community.service.dm.v1.DanmuPlayerViewConfig
*/
export type DanmuPlayerViewConfig = Message<"bilibili.community.service.dm.v1.DanmuPlayerViewConfig"> & {
/**
* 弹幕默认配置
*
* @generated from field: bilibili.community.service.dm.v1.DanmuDefaultPlayerConfig danmuku_default_player_config = 1;
*/
danmukuDefaultPlayerConfig?: DanmuDefaultPlayerConfig;
/**
* 弹幕用户配置
*
* @generated from field: bilibili.community.service.dm.v1.DanmuPlayerConfig danmuku_player_config = 2;
*/
danmukuPlayerConfig?: DanmuPlayerConfig;
/**
* 弹幕显示区域自动配置列表
*
* @generated from field: repeated bilibili.community.service.dm.v1.DanmuPlayerDynamicConfig danmuku_player_dynamic_config = 3;
*/
danmukuPlayerDynamicConfig: DanmuPlayerDynamicConfig[];
/**
* @generated from field: bilibili.community.service.dm.v1.DanmuPlayerConfigPanel danmuku_player_config_panel = 4;
*/
danmukuPlayerConfigPanel?: DanmuPlayerConfigPanel;
};
/**
* Describes the message bilibili.community.service.dm.v1.DanmuPlayerViewConfig.
* Use `create(DanmuPlayerViewConfigSchema)` to create a new message.
*/
export const DanmuPlayerViewConfigSchema: GenMessage<DanmuPlayerViewConfig> = /*@__PURE__*/
messageDesc(file_bili_dm, 20);
/**
* web端用户弹幕配置
*
* @generated from message bilibili.community.service.dm.v1.DanmuWebPlayerConfig
*/
export type DanmuWebPlayerConfig = Message<"bilibili.community.service.dm.v1.DanmuWebPlayerConfig"> & {
/**
* 是否开启弹幕
*
* @generated from field: bool dm_switch = 1;
*/
dmSwitch: boolean;
/**
* 是否开启智能云屏蔽
*
* @generated from field: bool ai_switch = 2;
*/
aiSwitch: boolean;
/**
* 智能云屏蔽等级
*
* @generated from field: int32 ai_level = 3;
*/
aiLevel: number;
/**
* 是否屏蔽顶端弹幕
*
* @generated from field: bool blocktop = 4;
*/
blocktop: boolean;
/**
* 是否屏蔽滚动弹幕
*
* @generated from field: bool blockscroll = 5;
*/
blockscroll: boolean;
/**
* 是否屏蔽底端弹幕
*
* @generated from field: bool blockbottom = 6;
*/
blockbottom: boolean;
/**
* 是否屏蔽彩色弹幕
*
* @generated from field: bool blockcolor = 7;
*/
blockcolor: boolean;
/**
* 是否屏蔽重复弹幕
*
* @generated from field: bool blockspecial = 8;
*/
blockspecial: boolean;
/**
*
*
* @generated from field: bool preventshade = 9;
*/
preventshade: boolean;
/**
*
*
* @generated from field: bool dmask = 10;
*/
dmask: