# -*- coding: utf-8 -*-"""Implements :class:`DataClassRecord`, a frozen record built on :mod:`dataclasses`."""importtypingasTimportuuidimportjsonimportdataclassesfromfunc_args.apiimportBaseFrozenModelfrom..utilsimportget_utc_nowfrom..recordimportBaseRecorddefid_factory()->str:returnstr(uuid.uuid4())defcreate_at_factory()->str:returnget_utc_now().isoformat()
[docs]@dataclasses.dataclass(frozen=True)classDataClassRecord(BaseRecord,BaseFrozenModel):""" Record built on top of `dataclasses <https://docs.python.org/3/library/dataclasses.html>`_. """id:str=dataclasses.field(default_factory=id_factory)create_at:str=dataclasses.field(default_factory=create_at_factory)