import { registerUnbound } from "discourse-common/lib/helpers";
import I18n from "I18n";
import Handlebars from "handlebars";

export default registerUnbound(
  "wizard-char-counter",
  function (body, maxLength) {
    let bodyLength = body ? body.length : 0;
    let finalString;

    if (maxLength) {
      let isOverMax = bodyLength > maxLength ? "true" : "false";
      finalString = `<div class="body-length" data-length=${bodyLength} data-over-max=${isOverMax}>${bodyLength} / ${I18n.t(
        "wizard.x_characters",
        { count: parseInt(maxLength, 10) }
      )}</div>`;
    } else {
      finalString = `<div class="body-length">${I18n.t("wizard.x_characters", {
        count: parseInt(bodyLength, 10),
      })}</div>`;
    }

    return new Handlebars.SafeString(finalString);
  }
);