{"version":3,"file":"Menu.min.mjs","sources":["../../../src/shapes/Menu.ts"],"sourcesContent":["//*PMW* class addded for menu\nimport { Table } from './Table';\nimport { classRegistry } from '../ClassRegistry';\nimport { FabricObject } from './Object/Object';\n\nexport class CustomBorderTable extends Table {\n  /**\n   * Renders vertical borders for table Style Menu Layouts\n   * @param {CanvasRenderingContext2D} ctx context to render on\n   */\n  drawColumnBorders(ctx: CanvasRenderingContext2D) {\n    const groups = this.getObjects();\n    let  w,\n      maxWidth = 0,\n      left = 0;\n\n    for (let i = 0; i < groups.length; i++) {\n      // @ts-ignore\n      const items = groups[i].getObjects();\n      w = items[1].width;\n      if (w > maxWidth) {\n        maxWidth = w;\n        left = this.width / 2 - maxWidth;\n      }\n    }\n    const oldPadding = 11;\n    ctx.beginPath();\n    ctx.moveTo(left - oldPadding * 2, -(this.height / 2));\n    ctx.lineTo(left - oldPadding * 2, -(this.height / 2) + this.height);\n    ctx.stroke();\n  }\n\n  /**\n   * Returns true if design is simple table structure('layout-13'), false otherwise\n   * @returns {boolean}\n   */\n  isTableLayout() {\n    return this.layoutType == 'layout-13';\n  }\n}\n"],"names":["CustomBorderTable","Table","drawColumnBorders","ctx","groups","this","getObjects","w","maxWidth","left","i","length","width","beginPath","moveTo","oldPadding","height","lineTo","stroke","isTableLayout","layoutType"],"mappings":"wCAKO,MAAMA,UAA0BC,EAKrCC,iBAAAA,CAAkBC,GAChB,MAAMC,EAASC,KAAKC,aACpB,IAAKC,EACHC,EAAW,EACXC,EAAO,EAET,IAAK,IAAIC,EAAI,EAAGA,EAAIN,EAAOO,OAAQD,IAAK,CAGtCH,EADcH,EAAOM,GAAGJ,aACd,GAAGM,MACTL,EAAIC,IACNA,EAAWD,EACXE,EAAOJ,KAAKO,MAAQ,EAAIJ,EAE5B,CAEAL,EAAIU,YACJV,EAAIW,OAAOL,EAAOM,IAAkBV,KAAKW,OAAS,GAClDb,EAAIc,OAAOR,EAAOM,IAAkBV,KAAKW,OAAS,EAAKX,KAAKW,QAC5Db,EAAIe,QACN,CAMAC,aAAAA,GACE,MAA0B,aAAnBd,KAAKe,UACd"}