{"version":3,"file":"index.mjs","sources":[""],"sourcesContent":["import type { TStaticElementCfg } from \"../../utils/getCfg\";\r\nimport { getCfg } from \"../../utils/getCfg\";\r\nimport type { TCollectionItemDefaultCfg } from \"../collection\";\r\n\r\n/**\r\n * Factory. Предоставляет готовые поля `instance` и `cfg`.\r\n * @module CollectionItem\r\n * @param element{Element} передаваемый элемент DOM\r\n * @param selector{String=} передаваемый селектор элемента\r\n * @param defaultCfg{Object=} конфигурация плагина по умолчанию\r\n * @example\r\n * import { CollectionItem } from \"@delement/ui/plugins\"\r\n *\r\n * class MyPlugin extends CollectionItem {\r\n *\r\n *   constructor(el) {\r\n *     super(el);\r\n *     // console.debug(this.instance, this.cfg);\r\n *   }\r\n *\r\n * }\r\n */\r\nclass CollectionItem<T extends TCollectionItemDefaultCfg = TCollectionItemDefaultCfg> {\r\n\r\n  instance: HTMLElement;\r\n\r\n  cfg: TStaticElementCfg<T>;\r\n\r\n  constructor(element: HTMLElement, selector = \"\", defaultCfg: T = {} as T) {\r\n    this.instance = element;\r\n    this.cfg = getCfg(this.instance, selector, defaultCfg);\r\n  }\r\n\r\n}\r\n\r\nexport {\r\n  CollectionItem,\r\n};\r\n"],"names":["CollectionItem","instance","cfg","constructor","element","selector","defaultCfg","this","getCfg"],"mappings":";;;;;;;;;;;;;;;;;;GAsBA,MAAMA,eAEJC,SAEAC,IAEA,WAAAC,CAAYC,QAAsBC,SAAW,GAAIC,WAAgB,CAAA,GAC/DC,KAAKN,SAAWG,QAChBG,KAAKL,IAAMM,OAAOD,KAAKN,SAAUI,SAAUC,WAC7C"}