# elementor/3.32.1/modules/atomic-widgets/elements/element-builder.php

Elementor Website Builder – more than just a page builder, version 3.32.1. 36 lines.

- Page: https://pluginprobe.com/plugins/elementor/3.32.1/code/modules/atomic-widgets/elements/element-builder.php
- Raw: https://pluginprobe.com/plugins/elementor/3.32.1/raw/modules/atomic-widgets/elements/element-builder.php
- Modified: 2025-09-15T10:10:16+00:00

Line numbers below start at 1. Link to a line or a range by appending a fragment to the
page URL, for example `https://pluginprobe.com/plugins/elementor/3.32.1/code/modules/atomic-widgets/elements/element-builder.php#L10-L20`.

```php
<?php

namespace Elementor\Modules\AtomicWidgets\Elements;

class Element_Builder {
	protected $element_type;
	protected $settings;
	protected $is_locked;

	public static function make( $element_type ) {
		return new self( $element_type );
	}

	private function __construct( $element_type ) {
		$this->element_type = $element_type;
	}

	public function settings( array $settings ) {
		$this->settings = $settings;
		return $this;
	}

	public function is_locked( $is_locked ) {
		$this->is_locked = $is_locked;
		return $this;
	}

	public function build() {
		return [
			'elType' => $this->element_type,
			'settings' => $this->settings,
			'isLocked' => $this->is_locked,
		];
	}
}

```
