import Component  from '../component.js'

export default class CoUxNotificationItem extends Component {
    constructor(parent) {

      let selector = 'div[@data-e2e="ux-notification-item"]';
      super(parent, selector);
    }
    /**
    * @type WebdriverIO.Element
    */
    get itemContent() {
      let path = '//div[contains(@class, "ux-notification__item-content")]';
      return this.currentPath + path;
    }
    /**
    * @type WebdriverIO.Element
    */
    get itemLeftContent() {
      let path = '//div[contains(@class, "ux-notification__item-content-col--left")]';
      return this.itemContent + path;
    }
    /**
    * @type CoUxBadge
    */
    get badge() {
      return new CoUxBadge(this.itemLeftContent);
    }
    /**
    * @type WebdriverIO.Element
    */
    get badgeIcon() {
      let path = '//div[contains(@class, "ux-icon")]';
      return this.badge.currentPath + path;
    }
    /**
    * @type CoUxAdateTag
    */
    get dateTag() {
      return new CoUxAdateTag(this.itemContent);
    }
    /**
    * @type WebdriverIO.Element
    */
    get itemCenterContent() {
      let path = '//div[contains(@class, "ux-notification__item-content-col--center")]';
      return this.itemContent + path;
    }
    /**
    * @type WebdriverIO.Element
    */
    get itemLink() {
      return (this.itemCenterContent + '/a');
    }
    /**
    * @type WebdriverIO.Element
    */
    get itemSubLabel() {
      return (this.itemLink + '//span');
    }
    /**
    * @type WebdriverIO.Element
    */
    get itemLabel() {
      let path = '//b[contains(@class, "ng-star-inserted")]';
      return this.itemLink + path;
    }
    /**
    * @type WebdriverIO.Element
    */
    get itemRightContent() {
      let path = '//div[contains(@class, "ux-notification__item-content-col--right")]';
      return this.itemContent + path;
    }
    /**
    * @type CoUxButton
    */
    get markAsReadLabelCO() {
      let path = '//button[@class = "ux-notification__item-close"]';
      return new CoUxButton(this.itemRightContent + path);
    }
}


