"use strict";
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
    function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
    return new (P || (P = Promise))(function (resolve, reject) {
        function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
        function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
        function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
        step((generator = generator.apply(thisArg, _arguments || [])).next());
    });
};
Object.defineProperty(exports, "__esModule", { value: true });
const path_1 = require("path");
const tempseal_1 = require("@sealcode/tempseal");
const photo_in_logo_1 = require("../../elements/photo-in-logo/photo-in-logo");
const button_1 = require("../../elements/button/button");
let NiceHeader;
NiceHeader = (add_effect, config, { img_direction, img_path = path_1.resolve(__dirname, "./nice-header.jpg"), dirname = __dirname, img_color_mode, header_text, description, alt, btn_config, shape_outside = false, img_side = "left", }) => __awaiter(void 0, void 0, void 0, function* () {
    const html = /* HTML */ `
		<section
			class="nice-header ${shape_outside
        ? `nice-header--shaped`
        : ``} nice-header--image-on-${img_side}"
		>
			${yield tempseal_1.embedComponent(add_effect, config, {
        direction: img_direction,
        image_path: img_path,
        img_color_mode: img_color_mode,
        dirname,
        alt: alt,
    }, photo_in_logo_1.default)}
			<div class="nice-header__description">
				<h2>${header_text}</h2>
				<p>
					${description}
				</p>
				${btn_config
        ? yield tempseal_1.embedComponent(add_effect, config, btn_config, button_1.default)
        : ""}
			</div>
		</section>
	`;
    yield Promise.all([
        tempseal_1.SideEffects.Scss.addFromPath(add_effect, config, path_1.resolve(__dirname, "nice-header.scss")),
        add_effect(new tempseal_1.SideEffects.HtmlChunk(html)),
    ]);
});
NiceHeader.identifier = "nice-header";
exports.default = NiceHeader;
//# sourceMappingURL=nice-header.js.map