import { h as e } from "./p-9b9ccd0c.js";

import { g as r } from "./p-d42e842b.js";

import "./p-6534555e.js";

import "lit";

import "lit/directives/when.js";

import "lit/directives/if-defined.js";

// Stencil
const s = r({
  category: "system",
  name: "add",
  colorType: "success"
});

const o = r({
  category: "system",
  name: "edit",
  colorType: "warning"
});

const t = r({
  category: "system",
  name: "substract",
  colorType: "error"
});

const c = r({
  category: "system",
  name: "warning",
  colorType: "warning"
});

/**
 * Renders a visual indicator (icon and label) for a given object state.
 *
 * This helper function maps a fixed set of object states to corresponding icons
 *
 * Supported states:
 * - "inserted": Displays a green "add" icon.
 * - "modified": Displays a yellow "edit" icon.
 * - "deleted": Displays a red "subtract" icon.
 * - "conflicted": Displays a yellow "warning" icon.
 *
 * @param {ObjectState} objectState - The current state of the object.
 * @returns {HTMLChImageElement} A span element containing the corresponding icon and state label.
 */ const renderObjectStateWithIcon = r => {
  let a;
  switch (r) {
   case "inserted":
    a = s;
    break;

   case "modified":
    a = o;
    break;

   case "deleted":
    a = t;
    break;

   case "conflicted":
    a = c;
    break;
  }
  return e("span", {
    class: "custom-icon-text-wrapper"
  }, e("ch-image", {
    class: "icon-m",
    src: a
  }), `${r.charAt(0).toUpperCase() + r.slice(1)}`);
};

/**
 * Renders a GeneXus object type as a span element containing its icon and name.
 *
 * @param {ObjectType} objectType - The GeneXus object type to render, including its `icon` and `name` properties.
 * @returns {JSX.Element} A span element with the object's icon and label.
 */ const renderObjectTypeWithIcon = r => {
  // bring changes
  const s = r.icon;
  return e("span", {
    class: "custom-icon-text-wrapper"
  }, e("ch-image", {
    class: "icon-m",
    src: s
  }), `${r.name}`);
};

const a = "All";

const n = {
  HEADER: "header spacing-body-inline spacing-body-block-start",
  HEADER_DETAILS: "header__details",
  FILTER: "filter",
  MAIN: "main spacing-body",
  GRID_CELL_DESCRIPTION: "tabular-grid-cell-description-custom-selector"
};

const i = {
  add: r({
    category: "system",
    name: "add",
    colorType: "on-surface"
  }),
  edit: r({
    category: "system",
    name: "edit",
    colorType: "on-surface"
  }),
  error: r({
    category: "system",
    name: "error",
    colorType: "error"
  }),
  filter: r({
    category: "window-tools",
    name: "filter",
    colorType: "interactive"
  }),
  filterWithConditions: r({
    category: "window-tools",
    name: "filter-conditions",
    colorType: "interactive"
  }),
  info: r({
    category: "system",
    name: "information",
    colorType: "on-surface"
  }),
  refresh: r({
    category: "gemini-tools",
    name: "reset",
    colorType: "interactive"
  }),
  search: r({
    category: "system",
    name: "search",
    colorType: "on-surface"
  }),
  success: r({
    category: "system",
    name: "check",
    colorType: "success"
  }),
  substract: r({
    category: "system",
    name: "substract",
    colorType: "on-surface"
  }),
  warning: r({
    category: "system",
    name: "warning",
    colorType: "warning"
  })
};

export { a as A, n as C, i as I, renderObjectStateWithIcon as a, renderObjectTypeWithIcon as r };
//# sourceMappingURL=p-2eae8843.js.map