@charset "UTF-8";

// @description
// * err function.
// * This function accepts error message to only appear it when you
// * need to generate custom message when using testing module.

// @access private

// @version 1.2.1

// @author Miriam Suzanne
// @link: https://github.com/oddbird/true/issues/92

// @license MIT

// @repository: https://github.com/Black-Axis/sass-pire

// @namespace development-utils

// @module development-utils/err

// @dependencies:
// * - meta.type-of (SASS function).
// * - Config.$test-environment (config variable).

// @update We updated the function with validations

// @param {String} $message
// * The error message to be printed as expected value.

// @throw {Exception}
// * Throws exceptions if the provided parameter is not a string.

// @example
// * .example {
// *   content: err("This is just an error message.");
// * }

// @output
// * .example {
// *   content: "ERROR: This is just an error message.";
// * }

// @return {String} - Returns the provided error message.

@use "sass:meta";
@use "../abstract/config" as Config;

@function err($message) {
    @if meta.type-of($message) != string {
        @error "Error message must be in type string.";
    }

    $testing-message: "";

    @if Config.$test-environment {
        $testing-message: "ERROR: #{$message}";
    }

    @return $testing-message;
}
