*/ final class CalendarMapper extends DataMapperFactory { /** * Columns. * * @var array * @since 1.0.0 */ public const COLUMNS = [ 'calendar_id' => ['name' => 'calendar_id', 'type' => 'int', 'internal' => 'id'], 'calendar_name' => ['name' => 'calendar_name', 'type' => 'string', 'internal' => 'name'], 'calendar_description' => ['name' => 'calendar_description', 'type' => 'string', 'internal' => 'description'], 'calendar_created_at' => ['name' => 'calendar_created_at', 'type' => 'DateTimeImmutable', 'internal' => 'createdAt', 'readonly' => true], ]; /** * Has many relation. * * @var array * @since 1.0.0 */ public const HAS_MANY = [ 'events' => [ 'mapper' => EventMapper::class, 'table' => 'calendar_event', 'self' => 'calendar_event_calendar', 'external' => null, ], ]; /** * Primary table. * * @var string * @since 1.0.0 */ public const TABLE = 'calendar'; /** * Created at. * * @var string * @since 1.0.0 */ public const CREATED_AT = 'calendar_created_at'; /** * Primary field name. * * @var string * @since 1.0.0 */ public const PRIMARYFIELD = 'calendar_id'; }