{"version":3,"sources":["webpack:///scripts/plugin--tabs-controller--74609486eec37eac8823.js","webpack:///./project/client/src/core/modules/tabs/tabs-controller.js"],"names":["str001WebpackJsonp","/tool/node_modules/babel-loader/lib/index.js??ref--7-0!/tool/node_modules/eslint-loader/index.js!/tool/project/client/src/core/modules/tabs/tabs-controller.js","module","exports","__webpack_require__","_classCallCheck","instance","Constructor","TypeError","Object","defineProperty","value","_createClass","defineProperties","target","props","i","length","descriptor","enumerable","configurable","writable","key","protoProps","staticProps","prototype","_debug","_debug2","obj","__esModule","default","_selectors","log","TabsController","element","options","this","$element","$","tabs","selectTarget","tabsSelector","watch","$target","on","closeOtherTabs","bind","event","openingTab","filter","index","tab","each","dataset","collapsibleOpen","DEFAULTS"],"mappings":"AAAAA,oBAAoB,4BAEdC,iKACA,SAAUC,EAAQC,EAASC,GAEjC,YAiBA,SAASC,GAAgBC,EAAUC,GAAe,KAAMD,YAAoBC,IAAgB,KAAM,IAAIC,WAAU,qCAdhHC,OAAOC,eAAeP,EAAS,cAC9BQ,OAAO,GAGR,IAAIC,GAAe,WAAc,QAASC,GAAiBC,EAAQC,GAAS,IAAK,GAAIC,GAAI,EAAGA,EAAID,EAAME,OAAQD,IAAK,CAAE,GAAIE,GAAaH,EAAMC,EAAIE,GAAWC,WAAaD,EAAWC,aAAc,EAAOD,EAAWE,cAAe,EAAU,SAAWF,KAAYA,EAAWG,UAAW,GAAMZ,OAAOC,eAAeI,EAAQI,EAAWI,IAAKJ,IAAiB,MAAO,UAAUX,EAAagB,EAAYC,GAAiJ,MAA9HD,IAAYV,EAAiBN,EAAYkB,UAAWF,GAAiBC,GAAaX,EAAiBN,EAAaiB,GAAqBjB,MCZhiBmB,EAAAtB,EAAA,4IDgBIuB,EAIJ,SAAgCC,GAAO,MAAOA,IAAOA,EAAIC,WAAaD,GAAQE,QAASF,IAJlDF,GCfrCK,EAAA3B,EAAA,mJAEM4B,GAAM,EAAAL,EAAAG,SAAM,0BAEZG,EDqBe,WCpBpB,QAAAA,GAAYC,EAASC,GAAS9B,EAAA+B,KAAAH,GAC7BD,EAAI,UAAWE,GACfF,EAAI,UAAWG,GAEfC,KAAKD,QAAUA,EACfC,KAAKF,QAAUA,EACfE,KAAKC,SAAWC,EAAEJ,GAElBE,KAAKG,MAAO,EAAAR,EAAAS,cACXJ,KAAKD,QAAQM,aACbL,KAAKC,UAGND,KAAKM,QAELV,EAAI,QAASI,KAAMA,KAAKO,SD4CzB,MArBA/B,GAAaqB,IACZX,IAAK,QACLX,MAAO,WCrBPqB,EAAI,YACJI,KAAKC,SAASO,GAAG,cAAeR,KAAKS,eAAeC,KAAKV,UDyBzDd,IAAK,iBACLX,MAAO,SCvBOoC,GACd,GAAMC,GAAaD,EAAMjC,MAELsB,MAAKG,KAAKU,OAAO,SAASC,EAAOC,GACpD,MAAOA,KAAQH,IAGJI,KAAK,SAACF,EAAOC,GACxBA,EAAIE,QAAQC,iBAAkB,QD4BzBrB,ICtBRA,GAAesB,YD2BfpD,EAAQ2B,QCzBOG","file":"scripts/plugin--tabs-controller--74609486eec37eac8823.js","sourcesContent":["str001WebpackJsonp([\"plugin--tabs-controller\"],{\n\n/***/ \"/tool/node_modules/babel-loader/lib/index.js??ref--7-0!/tool/node_modules/eslint-loader/index.js!/tool/project/client/src/core/modules/tabs/tabs-controller.js\":\n/***/ (function(module, exports, __webpack_require__) {\n\n\"use strict\";\n\n\nObject.defineProperty(exports, \"__esModule\", {\n\tvalue: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _debug = __webpack_require__(\"/tool/node_modules/babel-loader/lib/index.js??ref--7-0!/tool/node_modules/eslint-loader/index.js!/tool/node_modules/debug/src/browser.js\");\n\nvar _debug2 = _interopRequireDefault(_debug);\n\nvar _selectors = __webpack_require__(\"/tool/node_modules/babel-loader/lib/index.js??ref--7-0!/tool/node_modules/eslint-loader/index.js!/tool/project/client/src/core/lib/selectors.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nvar log = (0, _debug2.default)('plugins/tabsController');\n\nvar TabsController = function () {\n\tfunction TabsController(element, options) {\n\t\t_classCallCheck(this, TabsController);\n\n\t\tlog('element', element);\n\t\tlog('options', options);\n\n\t\tthis.options = options;\n\t\tthis.element = element;\n\t\tthis.$element = $(element);\n\n\t\tthis.tabs = (0, _selectors.selectTarget)(this.options.tabsSelector, this.$element);\n\n\t\tthis.watch();\n\n\t\tlog('ready', this, this.$target);\n\t}\n\n\t_createClass(TabsController, [{\n\t\tkey: 'watch',\n\t\tvalue: function watch() {\n\t\t\tlog('watching');\n\t\t\tthis.$element.on('closeothers', this.closeOtherTabs.bind(this));\n\t\t}\n\t}, {\n\t\tkey: 'closeOtherTabs',\n\t\tvalue: function closeOtherTabs(event) {\n\t\t\tvar openingTab = event.target;\n\n\t\t\tvar tabsToClose = this.tabs.filter(function (index, tab) {\n\t\t\t\treturn tab !== openingTab;\n\t\t\t});\n\n\t\t\ttabsToClose.each(function (index, tab) {\n\t\t\t\ttab.dataset.collapsibleOpen = false;\n\t\t\t});\n\t\t}\n\t}]);\n\n\treturn TabsController;\n}();\n\nTabsController.DEFAULTS = {};\n\nexports.default = TabsController;\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// scripts/plugin--tabs-controller--74609486eec37eac8823.js","import debug from \"debug\";\r\nimport {selectTarget} from '../../lib/selectors';\r\n\r\nconst log = debug('plugins/tabsController');\r\n\r\nclass TabsController {\r\n\tconstructor(element, options) {\r\n\t\tlog('element', element);\r\n\t\tlog('options', options);\r\n\r\n\t\tthis.options = options;\r\n\t\tthis.element = element;\r\n\t\tthis.$element = $(element);\r\n\r\n\t\tthis.tabs = selectTarget(\r\n\t\t\tthis.options.tabsSelector,\r\n\t\t\tthis.$element\r\n\t\t);\r\n\r\n\t\tthis.watch();\r\n\r\n\t\tlog('ready', this, this.$target);\r\n\t}\r\n\r\n\twatch() {\r\n\t\tlog('watching');\r\n\t\tthis.$element.on('closeothers', this.closeOtherTabs.bind(this));\r\n\t}\r\n\r\n\tcloseOtherTabs(event){\r\n\t\tconst openingTab = event.target;\r\n\r\n\t\tconst tabsToClose = this.tabs.filter(function(index, tab) {\r\n\t\t\treturn tab !== openingTab;\r\n\t\t});\r\n\r\n\t\ttabsToClose.each((index, tab) => {\r\n\t\t\ttab.dataset.collapsibleOpen = false;\r\n\t\t});\r\n\r\n\t}\r\n}\r\n\r\nTabsController.DEFAULTS = {};\r\n\r\nexport default TabsController;\r\n\n\n\n// WEBPACK FOOTER //\n// ./project/client/src/core/modules/tabs/tabs-controller.js"],"sourceRoot":""}