selectors; return self::general_settings() + TitleSettings::title_settings( self::$widget ) + self::review_tables(); } /** * Widget Field * * @return array */ public static function general_settings() { // The function will Overwrite. $fields = TitleSettings::general_settings(); $new_fields['table_horizontal_scroll_on_mobile'] = [ 'label' => esc_html__( 'Show default Table View On Mobile?', 'shopbuilder' ), 'type' => 'switch', 'description' => esc_html__( 'Show default Table View On Mobile?', 'shopbuilder' ), 'default' => '', 'separator' => rtsb()->has_pro() ? 'default' : 'before-short', ]; $new_fields['table_min_width'] = [ 'mode' => 'responsive', 'label' => esc_html__( 'Table Minimum Width', 'shopbuilder' ), 'description' => esc_html__( 'Enter table min-width (in px),', 'shopbuilder' ), 'type' => 'slider', 'size_units' => [ 'px' ], 'range' => [ 'px' => [ 'min' => 0, 'max' => 1000, 'step' => 5, ], ], 'condition' => [ 'table_horizontal_scroll_on_mobile' => 'yes', ], 'selectors' => [ self::$selectors['table_min_width'] => 'min-width: {{SIZE}}{{UNIT}};', ], ]; return Fns::insert_controls( 'show_title', $fields, $new_fields, true ); } /** * Widget Field * * @return array */ public static function review_tables(): array { // The function will Overwrite. return [ 'review_table_start' => [ 'mode' => 'section_start', 'tab' => 'style', 'label' => esc_html__( 'Review Table', 'shopbuilder' ), ], 'table_wrapper_border' => [ 'mode' => 'group', 'type' => 'border', 'selector' => self::$selectors['table_wrapper_border'], 'size_units' => [ 'px' ], 'separator' => 'default', 'fields_options' => [ 'border' => [ 'label' => esc_html__( 'Table Wrapper Border', 'shopbuilder' ), 'label_block' => true, 'default' => 'solid', ], 'width' => [ 'default' => [ 'top' => '0', 'right' => '0', 'bottom' => '0', 'left' => '0', 'isLinked' => true, ], ], 'color' => [ 'label' => esc_html__( 'Border Color', 'shopbuilder' ), ], ], ], 'table_border' => [ 'mode' => 'group', 'type' => 'border', 'selector' => self::$selectors['table_border'], 'size_units' => [ 'px' ], 'separator' => 'default', 'fields_options' => [ 'border' => [ 'label' => esc_html__( 'Table Cell Border', 'shopbuilder' ), 'label_block' => true, ], 'color' => [ 'label' => esc_html__( 'Border Color', 'shopbuilder' ), ], ], ], 'table_wrapper_padding' => [ 'label' => esc_html__( 'Wrapper Padding (px)', 'shopbuilder' ), 'type' => 'dimensions', 'mode' => 'responsive', 'size_units' => [ 'px' ], 'default' => [ 'top' => '0', 'right' => '0', 'bottom' => '0', 'left' => '0', 'unit' => 'px', 'isLinked' => true, ], 'selectors' => [ self::$selectors['table_wrapper_padding'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}} !important;', ], ], 'table_wrapper_margin' => [ 'label' => esc_html__( 'Wrapper Margin (px)', 'shopbuilder' ), 'type' => 'dimensions', 'mode' => 'responsive', 'size_units' => [ 'px' ], 'selectors' => [ self::$selectors['table_wrapper_margin'] => 'margin: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}} !important;', ], ], 'table_label' => [ 'type' => 'html', 'raw' => sprintf( '

%s

', esc_html__( 'Label', 'shopbuilder' ) ), 'content_classes' => 'elementor-panel-heading-title', 'separator' => 'default', ], 'label_typo' => [ 'mode' => 'group', 'type' => 'typography', 'label' => esc_html__( 'Label Typography', 'shopbuilder' ), 'selector' => self::$selectors['label_typo'], ], 'label_color' => [ 'label' => esc_html__( 'Label Color', 'shopbuilder' ), 'type' => 'color', 'selectors' => [ self::$selectors['label_color'] => 'color: {{VALUE}} !important;', ], ], 'label_item_padding' => [ 'label' => esc_html__( 'Item Padding (px)', 'shopbuilder' ), 'type' => 'dimensions', 'mode' => 'responsive', 'size_units' => [ 'px' ], 'selectors' => [ self::$selectors['label_item_padding'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}} !important;', ], ], 'label_bg_color' => [ 'label' => esc_html__( 'Background Color', 'shopbuilder' ), 'type' => 'color', 'alpha' => true, 'selectors' => [ self::$selectors['label_bg_color'] => 'background-color: {{VALUE}};', ], ], 'table_body' => [ 'type' => 'html', 'raw' => sprintf( '

%s

', esc_html__( 'Table Body', 'shopbuilder' ) ), 'content_classes' => 'elementor-panel-heading-title', 'separator' => 'default', ], 'body_text_typo' => [ 'mode' => 'group', 'type' => 'typography', 'label' => esc_html__( 'Typography', 'shopbuilder' ), 'selector' => self::$selectors['body_text_typo'], ], 'table_text_color' => [ 'label' => esc_html__( 'Body Text Color', 'shopbuilder' ), 'type' => 'color', 'selectors' => [ self::$selectors['body_text_color'] => 'color: {{VALUE}} !important;', ], ], 'table_body_bg_color' => [ 'label' => esc_html__( 'Table Body Background Color', 'shopbuilder' ), 'type' => 'color', 'alpha' => true, 'selectors' => [ self::$selectors['table_body_bg_color'] => 'background-color: {{VALUE}};', ], ], 'body_item_padding' => [ 'label' => esc_html__( 'Item Padding (px)', 'shopbuilder' ), 'type' => 'dimensions', 'mode' => 'responsive', 'size_units' => [ 'px' ], 'selectors' => [ self::$selectors['body_item_padding'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}} !important;', ], ], 'counter_text_color' => [ 'label' => esc_html__( 'Counter Text Color', 'shopbuilder' ), 'type' => 'color', 'selectors' => [ self::$selectors['counter_text_color'] => 'color: {{VALUE}} !important;', ], ], 'counter_style' => [ 'label' => esc_html__( 'Counter Style', 'shopbuilder' ), 'type' => 'choose', 'default' => 'column', 'options' => [ 'auto' => [ 'title' => esc_html__( 'Inline', 'shopbuilder' ), 'icon' => 'eicon-ellipsis-h', ], '100%' => [ 'title' => esc_html__( 'New Line', 'shopbuilder' ), 'icon' => 'eicon-editor-list-ul', ], ], 'selectors' => [ self::$selectors['counter_style'] => 'width:{{VALUE}};', ], ], 'table_footer' => [ 'type' => 'html', 'raw' => sprintf( '

%s

', esc_html__( 'Table Footer', 'shopbuilder' ) ), 'content_classes' => 'elementor-panel-heading-title', 'separator' => 'default', ], 'table_footer_label_typo' => [ 'mode' => 'group', 'type' => 'typography', 'label' => esc_html__( 'Footer Typography', 'shopbuilder' ), 'selector' => self::$selectors['table_footer_label_typo'], ], 'table_footer_label_color' => [ 'label' => esc_html__( 'Label Color', 'shopbuilder' ), 'type' => 'color', 'selectors' => [ self::$selectors['table_footer_label_color'] => 'color: {{VALUE}} !important;', ], ], 'table_footer_text_color' => [ 'label' => esc_html__( 'Value Color', 'shopbuilder' ), 'type' => 'color', 'selectors' => [ self::$selectors['table_footer_text_color'] => 'color: {{VALUE}} !important;', ], ], 'table_footer_label_bg_color' => [ 'label' => esc_html__( 'Footer Background Color', 'shopbuilder' ), 'type' => 'color', 'alpha' => true, 'selectors' => [ self::$selectors['table_footer_label_bg_color'] => 'background-color: {{VALUE}};', ], ], 'table_footer_item_padding' => [ 'label' => esc_html__( 'Item Padding (px)', 'shopbuilder' ), 'type' => 'dimensions', 'mode' => 'responsive', 'size_units' => [ 'px' ], 'selectors' => [ self::$selectors['table_footer_item_padding'] => 'padding: {{TOP}}{{UNIT}} {{RIGHT}}{{UNIT}} {{BOTTOM}}{{UNIT}} {{LEFT}}{{UNIT}} !important;', ], ], 'review_table_end' => [ 'mode' => 'section_end', ], ]; } }