Code Duplication    Length = 16-17 lines in 3 locations

_inc/lib/class.core-rest-api-endpoints.php 3 locations

@@ 1121-1137 (lines=17) @@
1118
				break;
1119
1120
			// Protect
1121
			case 'protect':
1122
				$options = array(
1123
					'jetpack_protect_key' => array(
1124
						'description'        => esc_html__( 'Protect API key', 'jetpack' ),
1125
						'type'               => 'string',
1126
						'default'            => '',
1127
						'validate_callback'  => __CLASS__ . '::validate_alphanum',
1128
					),
1129
					'jetpack_protect_global_whitelist' => array(
1130
						'description'        => esc_html__( 'Protect global whitelist', 'jetpack' ),
1131
						'type'               => 'string',
1132
						'default'            => '',
1133
						'validate_callback'  => __CLASS__ . '::validate_string',
1134
						'sanitize_callback'  => 'esc_textarea',
1135
					),
1136
				);
1137
				break;
1138
1139
			// Sharing
1140
			case 'sharedaddy':
@@ 1210-1225 (lines=16) @@
1207
				break;
1208
1209
			// SSO
1210
			case 'sso':
1211
				$options = array(
1212
					'jetpack_sso_require_two_step' => array(
1213
						'description'        => esc_html__( 'Require Two-Step Authentication', 'jetpack' ),
1214
						'type'               => 'boolean',
1215
						'default'            => 0,
1216
						'validate_callback'  => __CLASS__ . '::validate_boolean',
1217
					),
1218
					'jetpack_sso_match_by_email' => array(
1219
						'description'        => esc_html__( 'Match by Email', 'jetpack' ),
1220
						'type'               => 'boolean',
1221
						'default'            => 0,
1222
						'validate_callback'  => __CLASS__ . '::validate_boolean',
1223
					),
1224
				);
1225
				break;
1226
1227
			// Site Icon
1228
			case 'site-icon':
@@ 885-901 (lines=17) @@
882
883
		switch ( $module ) {
884
			// VideoPress
885
			case 'videopress':
886
				// Holder for options to send to React
887
				$options = array(
888
					'videopress_free_formats' => array(
889
						'description' => esc_html__( 'Only display videos in free software formats', 'jetpack' ),
890
						'type' => 'boolean',
891
						'default' => 0,
892
						'validate_callback' => __CLASS__ . '::validate_boolean',
893
					),
894
					'videopress_default_quality' => array(
895
						'description' => esc_html__( 'Display higher quality videos by default', 'jetpack' ),
896
						'type' => 'boolean',
897
						'default' => 1,
898
						'validate_callback' => __CLASS__ . '::validate_boolean',
899
					),
900
				);
901
				break;
902
903
			// Carousel
904
			case 'carousel':