• Модуль: ui
  • Путь к файлу: ~/bitrix/modules/ui/lib/Avatar/Mask/Item.php
  • Класс: BitrixUIAvatarMaskItem
  • Вызов: Item::getMap
static function getMap(): array
{
	return array(
		(new IntegerField('ID'))
			->configurePrimary()
			->configureAutocomplete(),
		(new IntegerField('FILE_ID'))->configureRequired(),

		(new StringField('OWNER_TYPE'))->configureRequired()->configureSize(100),
		(new StringField('OWNER_ID', []))->configureRequired()->configureSize(20),

		new StringField('GROUP_ID'),

		new StringField('TITLE'),
		new TextField('DESCRIPTION'),
		(new IntegerField('SORT'))->configureDefaultValue(100),

		(new DatetimeField('TIMESTAMP_X'))
			->configureRequired()
			->configureDefaultValue(function() {
				return new DateTime();
			}),

		(new Reference(
			'FILE',
			FileTable::class,
			Join::on('this.FILE_ID', 'ref.ID')
		))->configureJoinType(Join::TYPE_INNER),

		(new Reference(
			'SHARED_FOR',
			AvatarMaskAccessTable::class,
			Join::on('this.ID', 'ref.ITEM_ID')
		))->configureJoinType(Join::TYPE_INNER),

		(new Reference(
			'RECENTLY_USED_BY',
			AvatarMaskRecentlyUsedTable::class,
			Join::on('this.ID', 'ref.ITEM_ID')
		))->configureJoinType(Join::TYPE_INNER)
	);
}