text: /**
   * Registers a new block provided a unique name and an object defining its behavior.
   *
   * @see https://developer.wordpress.org/block-editor/developers/block-api/#registering-a-block
   */
  import { registerBlockType } from '@wordpress/blocks';
  
  /**
   * Retrieves the translation of text.
   *
   * @see https://developer.wordpress.org/block-editor/packages/packages-i18n/
   */
  import { __ } from '@wordpress/i18n';
  
  /**
   * Lets webpack process CSS, SASS or SCSS files referenced in JavaScript files.
   * All files containing `style` keyword are bundled together. The code used
   * gets applied both to the front of your site and to the editor.
   *
   * @see https://www.npmjs.com/package/@wordpress/scripts#using-css
   */
  import './style.scss';
  
  /**
   * Internal dependencies
   */
  import edit from './edit';
  import save from './save';
  
  /**
   * Every block starts by registering a new block type definition.
   *
   * @see https://developer.wordpress.org/block-editor/developers/block-api/#registering-a-block
   */
  registerBlockType( 'wp-top12/wp-top12', {
  	/**
  	 * This is the display title for your block, which can be translated with `i18n` functions.
  	 * The block inserter will show this name.
  	 */
  	title: __( 'Top plugins', 'wp-top12' ),
  
  	/**
  	 * This is a short description for your block, can be translated with `i18n` functions.
  	 * It will be shown in the Block Tab in the Settings Sidebar.
  	 */
  	description: __( 'Displays the top 12 plugins.', 'wp-top12' ),
  
  	/**
  	 * Blocks are grouped into categories to help users browse and discover them.
  	 * The categories provided by core are `common`, `embed`, `formatting`, `layout` and `widgets`.
  	 */
  	category: 'widgets',
  
  	/**
  	 * An icon property should be specified to make it easier to identify a block.
  	 * These can be any of WordPress’ Dashicons, or a custom svg element.
  	 */
  	icon: 'admin-plugins',
  
  	keywords: [
  		__( 'Plugins', 'wp-top12' ),
  		__( 'Top n', 'wp-top12' ),
  	],
  
  	/**
  	 * Optional block extended support features.
  	 */
  	supports: {
  		// Removes support for an HTML mode.
  		html: false,
  		align: false,
  	},
  
  	attributes: {
  		includes: { type: 'string', default: '', },
  		excludes: { type: 'string', default: '', },
  		slugs: { type: 'string', default: ''},
  		limit: { type: 'integer', default: 12 },
  	},
  
  	/**
  	 * @see ./edit.js
  	 */
  	edit: edit,
  
  	/**
  	 * @see ./save.js
  	 */
  	save,
  } );
  