{"version":3,"sources":["webpack://app.[name]/./source/App/Views/Containers/TabsContainer.js"],"names":["_interopRequireDefault","_typeof","Object","defineProperty","exports","value","default","_classCallCheck2","_createClass2","_assertThisInitialized2","_inherits2","_possibleConstructorReturn2","_getPrototypeOf2","_defineProperty2","_react","obj","nodeInterop","__esModule","cache","_getRequireWildcardCache","has","get","newObj","hasPropertyDescriptor","getOwnPropertyDescriptor","key","prototype","hasOwnProperty","call","desc","set","_interopRequireWildcard","_jsCookie","_reactRedux","_reactHtmlParser","_reactInlinesvg","_redux","_flightSearch","_tabs","_jetstarJcl","_Tabs","_functions","_strings","WeakMap","cacheBabelInterop","cacheNodeInterop","_createSuper","Derived","hasNativeReflectConstruct","Reflect","construct","sham","Proxy","Boolean","valueOf","e","_isNativeReflectConstruct","result","Super","NewTarget","this","constructor","arguments","apply","TAB_CHANGE","ANALYTICS_EVENT_TYPES","TAB_CONTAINER","AUTOMATION_ATTRIBUTE","TabsContainer","_Component","_super","_this","_len","length","args","Array","_key","concat","index","_this$props","props","onTabChanged","analyticsUtil","data","activeTab","tabDetails","name","getIn","triggerEvent","singleTabOnly","undefined","_this$props2","tabData","tabs","map","tab","children","title","iconSrc","imageToSrc","iconSVG","createElement","src","Tabs","Item","iconDefault","iconActive","variant","autoHook","initialKey","onChange","handleTabSelection","_this$props3","initScript","size","isSitecoreEditingMode","tabPanelScript","document","id","innerHTML","body","appendChild","prevProps","prevState","existingScript","getElementById","parentNode","removeChild","_this$props4","nextProps","nextState","initialised","disableTabsCookie","shouldRenderSingleTab","toLowerCase","Fragment","renderTabs","Component","_default","connect","state","ownProps","config","dispatch","bindActionCreators","tabOperations"],"mappings":"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","file":"scripts/50.bundle.js","sourcesContent":["\"use strict\";\n\nrequire(\"core-js/modules/es6.reflect.construct.js\");\n\nrequire(\"core-js/modules/es6.weak-map.js\");\n\nrequire(\"core-js/modules/es6.string.iterator.js\");\n\nrequire(\"core-js/modules/es6.object.to-string.js\");\n\nrequire(\"core-js/modules/es6.array.iterator.js\");\n\nrequire(\"core-js/modules/web.dom.iterable.js\");\n\nrequire(\"core-js/modules/es6.object.get-own-property-descriptor.js\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nvar _typeof = require(\"@babel/runtime/helpers/typeof\");\n\nObject.defineProperty(exports, \"__esModule\", {\n  value: true\n});\nexports.default = void 0;\n\nrequire(\"core-js/modules/es6.array.map.js\");\n\nvar _classCallCheck2 = _interopRequireDefault(require(\"@babel/runtime/helpers/classCallCheck\"));\n\nvar _createClass2 = _interopRequireDefault(require(\"@babel/runtime/helpers/createClass\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inherits2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inherits\"));\n\nvar _possibleConstructorReturn2 = _interopRequireDefault(require(\"@babel/runtime/helpers/possibleConstructorReturn\"));\n\nvar _getPrototypeOf2 = _interopRequireDefault(require(\"@babel/runtime/helpers/getPrototypeOf\"));\n\nvar _defineProperty2 = _interopRequireDefault(require(\"@babel/runtime/helpers/defineProperty\"));\n\nvar _react = _interopRequireWildcard(require(\"react\"));\n\nvar _immutable = require(\"immutable\");\n\nvar _jsCookie = _interopRequireDefault(require(\"js-cookie\"));\n\nvar _reactRedux = require(\"react-redux\");\n\nvar _reactHtmlParser = _interopRequireDefault(require(\"react-html-parser\"));\n\nvar _reactInlinesvg = _interopRequireDefault(require(\"react-inlinesvg\"));\n\nvar _redux = require(\"redux\");\n\nvar _flightSearch = require(\"../../Constants/flightSearch\");\n\nvar _tabs = require(\"../../Constants/tabs\");\n\nvar _jetstarJcl = require(\"jetstar-jcl\");\n\nvar _Tabs = require(\"../../State/Ducks/Tabs/\");\n\nvar _functions = require(\"../../Utils/functions\");\n\nvar _strings = require(\"../../Utils/strings\");\n\nfunction _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== \"function\") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }\n\nfunction _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== \"default\" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = (0, _getPrototypeOf2.default)(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = (0, _getPrototypeOf2.default)(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return (0, _possibleConstructorReturn2.default)(this, result); }; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Boolean.prototype.valueOf.call(Reflect.construct(Boolean, [], function () {})); return true; } catch (e) { return false; } }\n\nvar TAB_CHANGE = _flightSearch.ANALYTICS_EVENT_TYPES.TAB_CHANGE;\nvar TAB_CONTAINER = _tabs.AUTOMATION_ATTRIBUTE.TAB_CONTAINER;\nvar TAB_PANEL_SCRIPT_ID = 'TAB_PANEL_SCRIPT';\nvar DISABLE_MULTI_PRODUCTS_COOKIE_NAME = 'jq-disable-multi-products';\n\nvar TabsContainer = /*#__PURE__*/function (_Component) {\n  (0, _inherits2.default)(TabsContainer, _Component);\n\n  var _super = _createSuper(TabsContainer);\n\n  function TabsContainer() {\n    var _this;\n\n    (0, _classCallCheck2.default)(this, TabsContainer);\n\n    for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n      args[_key] = arguments[_key];\n    }\n\n    _this = _super.call.apply(_super, [this].concat(args));\n    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), \"handleTabSelection\", function (index) {\n      var _this$props = _this.props,\n          onTabChanged = _this$props.onTabChanged,\n          analyticsUtil = _this$props.analyticsUtil,\n          data = _this$props.data,\n          activeTab = _this$props.activeTab;\n\n      if (index === activeTab) {\n        return;\n      }\n\n      var tabDetails = {\n        name: data.get(index).getIn(['label', 'Title'])\n      };\n      analyticsUtil.triggerEvent(TAB_CHANGE, tabDetails);\n      onTabChanged(index);\n    });\n    (0, _defineProperty2.default)((0, _assertThisInitialized2.default)(_this), \"renderTabs\", function () {\n      var singleTabOnly = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n      var _this$props2 = _this.props,\n          activeTab = _this$props2.activeTab,\n          data = _this$props2.data;\n      var tabData = singleTabOnly ? data.get(activeTab) : data;\n      var tabs = tabData.map(function (tab, index) {\n        var children = tab.get('children');\n        var key = \"\".concat(index, \"-\").concat(tab.get('id'), \"-\").concat(tab.get('renderingId'));\n        var title = tab.getIn(['label', 'Title']);\n        var iconSrc = (0, _strings.imageToSrc)(tab.getIn(['label', 'Icon']));\n\n        var iconSVG = iconSrc && /*#__PURE__*/_react.default.createElement(_reactInlinesvg.default, {\n          src: iconSrc\n        });\n\n        return /*#__PURE__*/_react.default.createElement(_jetstarJcl.Tabs.Item, {\n          key: key,\n          title: title,\n          iconDefault: iconSVG,\n          iconActive: iconSVG,\n          variant: \"vanilla\"\n        }, (0, _reactHtmlParser.default)(children));\n      });\n      return /*#__PURE__*/_react.default.createElement(_jetstarJcl.Tabs, {\n        autoHook: TAB_CONTAINER,\n        initialKey: activeTab,\n        onChange: _this.handleTabSelection\n      }, tabs);\n    });\n    return _this;\n  }\n\n  (0, _createClass2.default)(TabsContainer, [{\n    key: \"componentDidMount\",\n    value: function componentDidMount() {\n      var _this$props3 = this.props,\n          activeTab = _this$props3.activeTab,\n          data = _this$props3.data;\n      var initScript = data.size && data.get(activeTab) && data.get(activeTab).get('initScript');\n\n      if ((0, _functions.isSitecoreEditingMode)() || !initScript) {\n        return;\n      }\n\n      var tabPanelScript = document.createElement('script');\n      tabPanelScript.id = TAB_PANEL_SCRIPT_ID;\n      tabPanelScript.innerHTML = initScript;\n      document.body.appendChild(tabPanelScript);\n    }\n  }, {\n    key: \"componentDidUpdate\",\n    value: function componentDidUpdate(prevProps, prevState) {\n      var existingScript = document.getElementById('TAB_PANEL_SCRIPT');\n\n      if (existingScript) {\n        existingScript.parentNode.removeChild(existingScript);\n      }\n\n      var _this$props4 = this.props,\n          activeTab = _this$props4.activeTab,\n          data = _this$props4.data;\n      var initScript = data.size && data.get(activeTab).get('initScript');\n\n      if ((0, _functions.isSitecoreEditingMode)() || !initScript) {\n        return;\n      }\n\n      var tabPanelScript = document.createElement('script');\n      tabPanelScript.id = TAB_PANEL_SCRIPT_ID;\n      tabPanelScript.innerHTML = initScript;\n      document.body.appendChild(tabPanelScript);\n    }\n  }, {\n    key: \"shouldComponentUpdate\",\n    value: function shouldComponentUpdate(nextProps, nextState) {\n      var activeTab = this.props.activeTab;\n      var nextActiveTab = nextProps.activeTab;\n      return activeTab !== nextActiveTab;\n    }\n  }, {\n    key: \"render\",\n    value: function render() {\n      var initialised = this.props.initialised;\n\n      var disableTabsCookie = _jsCookie.default.get(DISABLE_MULTI_PRODUCTS_COOKIE_NAME);\n\n      var shouldRenderSingleTab = disableTabsCookie && disableTabsCookie.toLowerCase() === 'true';\n      return initialised && /*#__PURE__*/_react.default.createElement(_react.Fragment, null, shouldRenderSingleTab ? this.renderTabs(true) : this.renderTabs());\n    }\n  }]);\n  return TabsContainer;\n}(_react.Component);\n\nvar mapStateToProps = function mapStateToProps(state, ownProps) {\n  var data = ownProps.config;\n  var tabs = state.tabs;\n  return {\n    initialised: tabs.get('initialised'),\n    activeTab: tabs.get('activeTab'),\n    data: data\n  };\n};\n\nvar mapDispatchToProps = function mapDispatchToProps(dispatch) {\n  return (0, _redux.bindActionCreators)(_Tabs.tabOperations, dispatch);\n};\n\nvar _default = (0, _reactRedux.connect)(mapStateToProps, mapDispatchToProps)(TabsContainer);\n\nexports.default = _default;"],"sourceRoot":""}