<?php
if ( ! defined( 'ABSPATH' ) ) {
	exit;
}

return array(
	'blockName'                     => array(
		'type'    => 'string',
		'default' => '',
	),
	'uniqueId'                      => array(
		'type'    => 'string',
		'default' => '',
	),
	'fontLists'                     => array(
		'type'    => 'string',
		'default' => '',
	),
	'dynamicCss'                    => array(
		'type'    => 'object',
		'default' => array(),
	),

	'isPreview'                     => array(
		'type'    => 'boolean',
		'default' => false,
	),
	'customCss'                     => array( 'type' => 'string' ),
	'globalBreakPointData'          => array(
		'type'    => 'object',
		'default' => array(),
	),

	'contentTypography'             => array(
		'type'    => 'object',
		'default' => array(
			'googleFont' => array(
				'family'   => 'Default',
				'variants' => array( '300', '400', '500', '600', '700', '800' ),
			),
			'typography' => array(
				'family'     => '',
				'fontWeight' => '',
				'style'      => '',
				'transform'  => '',
				'decoration' => '',
			),
		),
	),


	'globalContentTypography'       => array(
		'type'    => 'object',
		'default' => array(),
	),

	'contentFontSize'               => $this->ranger_attribute( '', '', '', 'px' ),
	'contentLatterSpacing'          => $this->ranger_attribute( '' ),
	'contentWordSpacing'            => $this->ranger_attribute( '' ),
	'contentLineHeight'             => array(
		'type'    => 'object',
		'default' => array(
			'device' => array(
				'Desktop' => '',
				'Tablet'  => '',
				'Mobile'  => '',
			),

		),
	),
	'contentColor'                  => array(
		'type'    => 'string',
		'default' => '',
	),


	'advancedBg'                    => array(
		'type'    => 'object',
		'default' => array(
			'color' => array(
				'style'       => 'transparent',
				'transparent' => '',
				'solidColor'  => '#E9F4FFF2',
				'gradient'    => 'linear-gradient(135deg,rgba(179,50,95,0.44) 0%,rgba(227,86,43,0.45) 100%)',
			),
			'hover' => array(
				'style'       => 'bgColor',
				'transparent' => '',
				'solidColor'  => '',
				'gradient'    => 'linear-gradient(135deg,rgba(179,50,95,0.44) 0%,rgba(227,86,43,0.45) 100%)',
			),
		),
	),

	'advancedBorderStyle'           => array(
		'type'    => 'object',
		'default' => array(
			'style'      => 'none',
			'hoverStyle' => '',
			'color'      => '#cccccc',
			'hoverColor' => '#000000',
		),
	),
	'advancedBorderStyleWidth'      => $this->spacing_attribute( 1, 1, 1, 1, 'px', true ),
	'advancedBorderStyleWidthHover' => $this->spacing_attribute( '', '', '', '', 'px', true ),
	'advancedBorderRadius'          => $this->spacing_attribute( 0, 0, 0, 0, 'px', true ),
	'advancedBorderRadiusHover'     => $this->spacing_attribute( '', '', '', '', 'px', true ),
	'advancedMargin'                => $this->spacing_attribute( 8, 0, 8, 0, 'px', false ),
	'advancedPadding'               => $this->spacing_attribute( '', '', '', '', 'px', false ),
	'advancedBoxShadowEnable'       => array(
		'type'    => 'boolean',
		'default' => false,
	),
	'advancedBoxShadow'             => array(
		'type'    => 'object',
		'default' => array(
			'device'        => array(
				'Desktop' => array(
					'top'    => 8,
					'right'  => 8,
					'bottom' => 16,
					'left'   => 0,
				),
				'Tablet'  => array(
					'top'    => '',
					'right'  => '',
					'bottom' => '',
					'left'   => '',
				),
				'Mobile'  => array(
					'top'    => '',
					'right'  => '',
					'bottom' => '',
					'left'   => '',
				),
			),
			'unit'          => array(
				'Desktop' => 'outset',
				'Tablet'  => 'outset',
				'Mobile'  => 'outset',
			),
			'color'         => '#4E4F521A',
			'selectDefault' => 'var(--smart-post-shadow-medium-4dp)',
		),
	),
	'hideOnMobile'                  => array(
		'type'    => 'boolean',
		'default' => false,
	),
	'hideOnDesktop'                 => array(
		'type'    => 'boolean',
		'default' => false,
	),
	'hideOnTablet'                  => array(
		'type'    => 'boolean',
		'default' => false,
	),
	'advancedAdditionalID'          => array(
		'type'    => 'string',
		'default' => '',
	),
	'advancedAdditionalClass'       => array(
		'type'    => 'string',
		'default' => '',
	),


	'showIcon'                      => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'iconSource'                    => array(
		'type'    => 'string',
		'default' => 'classic',
	),


	'iconGap'                       => $this->ranger_attribute( 4, 'px' ),
	'labelShow'                     => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'labelText'                     => array(
		'type'    => 'string',
		'default' => 'View',
	),


	'prefixAuthorGap'               => $this->ranger_attribute( 4, 'px' ),
	'gravatarSize'                  => array(
		'type'    => 'object',
		'default' => array(
			'value' => 24,
			'unit'  => 'px',
		),
	),
	'gravatarGap'                   => $this->ranger_attribute( 4, 'px' ),
	'alignment'                     => array(
		'type'    => 'string',
		'default' => 'left',
	),

	'nameColor'                     => array(
		'type'    => 'string',
		'default' => '',
	),

	'hoverNameColor'                => array(
		'type'    => 'string',
		'default' => '',
	),
	'prefixColor'                   => array(
		'type'    => 'string',
		'default' => '',
	),

	'hoverPrefixColor'              => array(
		'type'    => 'string',
		'default' => '',
	),

	'metaSeparator'                 => array(
		'type'    => 'string',
		'default' => 'straight',
	),
	'showAuthorPrefix'              => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'prefixLabelText'               => array(
		'type'    => 'string',
		'default' => 'By',
	),
	'metaUserIcon'                  => array(
		'type'    => 'string',
		'default' => 'author-outline',
	),

	'metaDataAllContentArray'       => array(
		'type'    => 'array',
		'default' => array(
			array(
				'label' => 'Author',
				'value' => 'author',
				'id'    => 1,
				'show'  => true,
			),
			array(
				'label' => 'Date',
				'value' => 'date',
				'id'    => 2,
				'show'  => true,
			),
			array(
				'label' => 'Comments',
				'value' => 'comments',
				'id'    => 3,
				'show'  => true,
			),
			array(
				'label' => 'Views',
				'value' => 'views',
				'id'    => 4,
				'show'  => false,
			),
			array(
				'label' => 'Likes',
				'value' => 'likes',
				'id'    => 5,
				'show'  => false,
			),
			array(
				'label' => 'Reading Time',
				'value' => 'reading-time',
				'id'    => 6,
				'show'  => false,
			),
			array(
				'label' => 'Category',
				'value' => 'category',
				'id'    => 7,
				'show'  => false,
			),
			array(
				'label' => 'Tag',
				'value' => 'tag',
				'id'    => 8,
				'show'  => false,
			),
		),
	),

	'gapBetweenMetaFields'          => array(
		'type'    => 'object',
		'default' => array(
			'value' => 14,
			'unit'  => 'px',
		),
	),
	'prefixMetaGap'                 => array(
		'type'    => 'object',
		'default' => array(
			'value' => 5,
			'unit'  => 'px',
		),
	),
	'iconSize'                      => array(
		'type'    => 'object',
		'default' => array(
			'device' => array(
				'Desktop' => 14,
				'Tablet'  => 14,
				'Mobile'  => 14,
			),
			'unit'   => array(
				'Desktop' => 'px',
				'Tablet'  => 'px',
				'Mobile'  => 'px',
			),
		),
	),

	'separatorColor'                => array(
		'type'    => 'string',
		'default' => '',
	),
	'hoverSeparatorColor'           => array(
		'type'    => 'string',
		'default' => '',
	),
	'showLikeIcon'                  => array(
		'type'    => 'boolean',
		'default' => true,
	),

	'likeIconSource'                => array(
		'type'    => 'string',
		'default' => 'loveOutline',
	),
	'likeLabelShow'                 => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'likeLabelText'                 => array(
		'type'    => 'string',
		'default' => 'Like',
	),
	'likeLabelPosition'             => array(
		'type'    => 'string',
		'default' => 'after',
	),
	'likeMoveRight'                 => array(
		'type'    => 'boolean',
		'default' => false,
	),


	'showViewIcon'                  => array(
		'type'    => 'boolean',
		'default' => true,
	),

	'viewIconSource'                => array(
		'type'    => 'string',
		'default' => 'view-classic',
	),
	'viewLabelShow'                 => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'viewLabelText'                 => array(
		'type'    => 'string',
		'default' => 'View',
	),
	'viewLabelPosition'             => array(
		'type'    => 'string',
		'default' => 'after',
	),
	'viewMoveRight'                 => array(
		'type'    => 'boolean',
		'default' => false,
	),

	'showReadingIcon'               => array(
		'type'    => 'boolean',
		'default' => true,
	),

	'readingIconSource'             => array(
		'type'    => 'string',
		'default' => 'reading-outline',
	),
	'readingLabelShow'              => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'readingLabelText'              => array(
		'type'    => 'string',
		'default' => 'Reads',
	),
	'readingLabelPosition'          => array(
		'type'    => 'string',
		'default' => 'after',
	),
	'readingMoveRight'              => array(
		'type'    => 'boolean',
		'default' => false,
	),
	'showCommentsIcon'              => array(
		'type'    => 'boolean',
		'default' => true,
	),

	'commentsIconSource'            => array(
		'type'    => 'string',
		'default' => 'classic-dots',
	),
	'commentsLabelShow'             => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'commentsLabelText'             => array(
		'type'    => 'string',
		'default' => 'Comments',
	),
	'commentsLabelPosition'         => array(
		'type'    => 'string',
		'default' => 'after',
	),
	'commentsMoveRight'             => array(
		'type'    => 'boolean',
		'default' => false,
	),

	'dateTimeDisplay'               => array(
		'type'    => 'string',
		'default' => 'auto-date-display',
	),
	'enablePublishDatePrefix'       => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'enableUpdateDatePrefix'        => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'publishedPrefixLabel'          => array(
		'type'    => 'string',
		'default' => 'Published on',
	),
	'dateTimeFormat'                => array(
		'type'    => 'string',
		'default' => 'publish-date',
	),
	'showDateIcon'                  => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'dateIconStyle'                 => array(
		'type'    => 'string',
		'default' => 'date-classic',
	),
	'updatePrefixLabel'             => array(
		'type'    => 'string',
		'default' => 'Updated on',
	),

	'gapBetweenCategories'          => $this->ranger_attribute( 5 ),
	'categorySeparator'             => array(
		'type'    => 'string',
		'default' => 'none',
	),
	'categoryCustomSeparator'       => array(
		'type'    => 'string',
		'default' => '',
	),
	'metaCustomSeparator'           => array(
		'type'    => 'string',
		'default' => '',
	),
	'enableCategoryHeading'         => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'categoryHeadingLabel'          => array(
		'type'    => 'string',
		'default' => 'Categories:',
	),
	'enableCategoryIcon'            => array(
		'type'    => 'boolean',
		'default' => true,
	),

	'categoryIconStyle'             => array(
		'type'    => 'string',
		'default' => 'category-default',
	),

	'gapBetweenTag'                 => $this->ranger_attribute( 8 ),
	'tagSeparator'                  => array(
		'type'    => 'string',
		'default' => 'none',
	),
	'tagCustomSeparator'            => array(
		'type'    => 'string',
		'default' => '',
	),
	'enableTagHeading'              => array(
		'type'    => 'boolean',
		'default' => true,
	),
	'tagHeadingLabel'               => array(
		'type'    => 'string',
		'default' => 'Tags:',
	),
	'enableTagIcon'                 => array(
		'type'    => 'boolean',
		'default' => true,
	),

	'tagIconStyle'                  => array(
		'type'    => 'string',
		'default' => 'tag-default',
	),
	'categorySeparatorColor'        => array(
		'type'    => 'string',
		'default' => '#111111',
	),
	'categorySpecificColor'         => array(
		'type'    => 'boolean',
		'default' => false,
	),
	'tagSeparatorColor'             => array(
		'type'    => 'string',
		'default' => '#111111',
	),
	'authorStyle'                   => array(
		'type'    => 'string',
		'default' => 'ShowNameIcon',
	),

);
