{"version":3,"sources":["webpack:///9b55160eb96627ffe3f1.js","webpack:///./LeLab.Portneuf.Web/src/utils/event-css-modifier/event-css-modifier.js"],"names":["webpackJsonp","117","module","exports","evtCssMod","emptySelectorText","uidPrefix","uidCount","eventState","eventInitiate","stylesheet","error","msg","info","console","uid","CSSStyleSheet","ownerNode","id","touchCssText","cssText","selectorText","arr","split","newSelectorText","i","length","selector","trim","match","replace","parseRuleList","CSSRuleList","rulelist","rule","tmp","index","cssRules","type","push","css","base","touch","parseStyleSheet","document","styleSheets","err","href","reference","replaceStyleRule","CSSGroupingRule","deleteRule","insertRule","updateRuleList","update","updateEvent","onTouchStart","evt","onMouseMove","init","window","addEventListener"],"mappings":"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","file":"9b55160eb96627ffe3f1.js","sourcesContent":["webpackJsonp([0],{\n\n/***/ 117:\n/***/ (function(module, exports) {\n\n/**\r\n * Event CSS Modifier\r\n * \r\n * Remove / Add :hover pseudo-class from selector text\r\n * base on event use for interaction.\r\n * \r\n * On mobile, we don't want :hover state because they always\r\n * show up, but we need them on desktop. There is also a need\r\n * for computer having both touch and mouse event.\r\n * \r\n * This JS remove :hover selector when using touch event.\r\n * If a mouse event is use, the default selector is restored.\r\n */\r\n\r\n// This object is \"private\" and should not be expose\r\nvar evtCssMod = {\r\n\r\n //\r\n // Variables\r\n //\r\n\r\n // Default selector, matching nothing, if a selectorText\r\n // is empty after modification.\r\n emptySelectorText: \"#evtCssModEmpty\",\r\n\r\n // Unique ID prefix\r\n uidPrefix: \"evtCssMod\",\r\n\r\n // Unique ID counter\r\n uidCount: 0,\r\n\r\n // Current event state applied to CSS modification\r\n eventState: \"base\",\r\n\r\n // Boolean mentionning if an event is currently initiated\r\n eventInitiate: false,\r\n\r\n // StyleSheet\r\n stylesheet: [],\r\n\r\n\r\n\r\n //\r\n // Functions\r\n //\r\n\r\n\r\n // Throw error\r\n //\r\n error: function (msg) {\r\n throw \"Event CSS Modifier : \" + msg;\r\n },\r\n\r\n // Console log information\r\n //\r\n info: function (msg) {\r\n console.info(\"Event CSS Modifier : \" + msg);\r\n },\r\n\r\n\r\n // Apply and return a unique ID for the CSSStyleSheet\r\n //\r\n uid: function (CSSStyleSheet) {\r\n if (CSSStyleSheet && CSSStyleSheet.ownerNode) {\r\n if (CSSStyleSheet.ownerNode.id != \"\") {\r\n return CSSStyleSheet.ownerNode.id;\r\n }\r\n else {\r\n evtCssMod.uidCount = evtCssMod.uidCount + 1;\r\n return evtCssMod.uidPrefix + evtCssMod.uidCount;\r\n }\r\n }\r\n return false;\r\n },\r\n\r\n\r\n // Return a \"cssText\" without :hover pseudo-class\r\n //\r\n touchCssText: function (cssText, selectorText) {\r\n\r\n // Build the new selector text without :hover\r\n //\r\n var arr = selectorText.split(\",\");\r\n var newSelectorText = \"\";\r\n\r\n for (var i = 0; i < arr.length; i++) {\r\n var selector = arr[i].trim();\r\n if (selector.match(\":hover\")) {\r\n continue;\r\n } else {\r\n if (newSelectorText != \"\") {\r\n newSelectorText = newSelectorText + \", \";\r\n }\r\n newSelectorText = newSelectorText + selector;\r\n }\r\n }\r\n\r\n // If new selector text is empty, \r\n // assign a selector matching nothing\r\n if (newSelectorText == \"\") {\r\n newSelectorText = evtCssMod.emptySelectorText;\r\n }\r\n\r\n // Replace selector of cssTest\r\n cssText = cssText.replace(selectorText, newSelectorText);\r\n\r\n return cssText;\r\n },\r\n\r\n\r\n // Parse rule list (recursive)\r\n //\r\n parseRuleList: function (CSSRuleList) {\r\n var rulelist = [];\r\n\r\n if (CSSRuleList) {\r\n // Loop through each rule in sheet\r\n for (var i = 0; i < CSSRuleList.length; i++) {\r\n\r\n // CSSStyleRule or CSSMediaRule\r\n var rule = CSSRuleList[i];\r\n // Temporary object with rulelist info\r\n var tmp = {\r\n index: i\r\n };\r\n\r\n // CSSMediaRule\r\n if (rule.cssRules) {\r\n // Store object name\r\n tmp.type = 'CSSMediaRule';\r\n // Recursion\r\n tmp.rulelist = evtCssMod.parseRuleList(rule.cssRules);\r\n // Push to array (if not empty)\r\n if (tmp.rulelist.length > 0) {\r\n rulelist.push(tmp);\r\n }\r\n }\r\n // CSSStyleRule\r\n else {\r\n // Store object name\r\n tmp.type = 'CSSStyleRule';\r\n // If selector text contain :hover pseudo-class\r\n if (rule.selectorText && rule.selectorText.match(\":hover\")) {\r\n // Store information about the selector\r\n // Base : It's the original\r\n // Touch : Modified for touch event\r\n tmp.css = {};\r\n tmp.css.base = rule.cssText;\r\n tmp.css.touch = evtCssMod.touchCssText(rule.cssText, rule.selectorText);\r\n // Push to array\r\n rulelist.push(tmp);\r\n }\r\n }\r\n\r\n }\r\n }\r\n\r\n return rulelist;\r\n },\r\n\r\n\r\n // Parse all stylesheet\r\n //\r\n parseStyleSheet: function () {\r\n // Loop through each stylesheet\r\n for (var i = 0; i < document.styleSheets.length; i++) {\r\n var CSSStyleSheet = document.styleSheets[i];\r\n // Apply a unique ID to the stylesheet (if none)\r\n if (CSSStyleSheet.ownerNode.id == \"\") {\r\n var uid = CSSStyleSheet.ownerNode.id = evtCssMod.uid(CSSStyleSheet);\r\n }\r\n // Retreive the ID (if exist)\r\n else if (CSSStyleSheet.ownerNode.id) {\r\n var uid = CSSStyleSheet.ownerNode.id;\r\n }\r\n // Can't assign or retreive ID\r\n else {\r\n evtCssMod.error(\"Impossible to assing unique ID to stylesheet.\");\r\n continue;\r\n }\r\n // Try to retreive the cssRules\r\n try {\r\n var cssRules = CSSStyleSheet.cssRules;\r\n }\r\n catch (err) {\r\n evtCssMod.info(\"Failed to read the 'cssRules' from '\" + CSSStyleSheet.href + \"'.\");\r\n continue;\r\n }\r\n // Add to the stylesheed\r\n if (!evtCssMod.stylesheet[uid]) {\r\n evtCssMod.stylesheet.push({\r\n id: uid,\r\n reference: CSSStyleSheet,\r\n rulelist: evtCssMod.parseRuleList(cssRules)\r\n });\r\n }\r\n }\r\n },\r\n\r\n\r\n // Replace a CSSStyleRule\r\n //\r\n replaceStyleRule: function (CSSGroupingRule, cssText, index) {\r\n CSSGroupingRule.deleteRule(index);\r\n CSSGroupingRule.insertRule(cssText, index);\r\n },\r\n\r\n\r\n // Update RuleList base on event\r\n //\r\n updateRuleList: function (CSSGroupingRule, rulelist) {\r\n for (var i = 0; i < rulelist.length; i++) {\r\n var rule = rulelist[i];\r\n\r\n // CSSMediaRule\r\n if (rule.type == 'CSSMediaRule') {\r\n evtCssMod.updateRuleList(CSSGroupingRule.cssRules[rule.index], rule.rulelist);\r\n }\r\n\r\n // CSSStyleRule\r\n else if (rule.type == 'CSSStyleRule') {\r\n // Apply touch modified selector\r\n if (evtCssMod.eventState == \"touch\") {\r\n evtCssMod.replaceStyleRule(CSSGroupingRule, rule.css.touch, rule.index);\r\n }\r\n // Restore original (base) selector\r\n else {\r\n evtCssMod.replaceStyleRule(CSSGroupingRule, rule.css.base, rule.index);\r\n }\r\n }\r\n }\r\n },\r\n\r\n\r\n // Update CSS Rules base on event for each stylesheet\r\n //\r\n update: function () {\r\n for (var i = 0; i < evtCssMod.stylesheet.length; i++) {\r\n var stylesheet = evtCssMod.stylesheet[i];\r\n if (stylesheet.rulelist.length > 0) {\r\n evtCssMod.updateRuleList(stylesheet.reference, stylesheet.rulelist);\r\n }\r\n }\r\n },\r\n\r\n\r\n // Update CSS Rules base on event\r\n //\r\n updateEvent: function (eventState) {\r\n // Save the event state\r\n evtCssMod.eventState = eventState;\r\n // Update\r\n evtCssMod.update();\r\n },\r\n\r\n\r\n // Touch Start\r\n //\r\n onTouchStart: function (evt) {\r\n // Update if not the \"touch\" state\r\n if (evtCssMod.eventState != \"touch\" && evtCssMod.eventInitiate == false) {\r\n evtCssMod.updateEvent(\"touch\");\r\n }\r\n // Flag to prevent event execution in \"mouse move\"\r\n evtCssMod.eventInitiate = true;\r\n },\r\n\r\n onMouseMove: function (evt) {\r\n // Update if not the \"base\" state\r\n if (evtCssMod.eventState != \"base\" && evtCssMod.eventInitiate == false) {\r\n evtCssMod.updateEvent(\"base\");\r\n }\r\n // Flag to restore event execution in \"mouse move\"\r\n if (evtCssMod.eventInitiate) {\r\n evtCssMod.eventInitiate = false;\r\n }\r\n },\r\n\r\n\r\n // Init\r\n //\r\n init: function () {\r\n // Parse stylesheet to build new rule\r\n evtCssMod.parseStyleSheet();\r\n // If device support touch, \r\n // there's a high chance it's a mobile (touch).\r\n // Transform the CSS by anticipation.\r\n if ('ontouchstart' in window) {\r\n evtCssMod.updateEvent(\"touch\");\r\n };\r\n // Listen for event\r\n document.addEventListener(\"touchstart\", evtCssMod.onTouchStart, false);\r\n document.addEventListener(\"mousemove\", evtCssMod.onMouseMove, false);\r\n }\r\n};\r\n\r\n// Expose the \"eventCssModifier\" to be used\r\n// has an API\r\nmodule.exports = {\r\n init: evtCssMod.init,\r\n update: evtCssMod.update\r\n}\r\n\n\n/***/ })\n\n});\n\n\n// WEBPACK FOOTER //\n// 9b55160eb96627ffe3f1.js","/**\r\n * Event CSS Modifier\r\n * \r\n * Remove / Add :hover pseudo-class from selector text\r\n * base on event use for interaction.\r\n * \r\n * On mobile, we don't want :hover state because they always\r\n * show up, but we need them on desktop. There is also a need\r\n * for computer having both touch and mouse event.\r\n * \r\n * This JS remove :hover selector when using touch event.\r\n * If a mouse event is use, the default selector is restored.\r\n */\r\n\r\n// This object is \"private\" and should not be expose\r\nvar evtCssMod = {\r\n\r\n //\r\n // Variables\r\n //\r\n\r\n // Default selector, matching nothing, if a selectorText\r\n // is empty after modification.\r\n emptySelectorText: \"#evtCssModEmpty\",\r\n\r\n // Unique ID prefix\r\n uidPrefix: \"evtCssMod\",\r\n\r\n // Unique ID counter\r\n uidCount: 0,\r\n\r\n // Current event state applied to CSS modification\r\n eventState: \"base\",\r\n\r\n // Boolean mentionning if an event is currently initiated\r\n eventInitiate: false,\r\n\r\n // StyleSheet\r\n stylesheet: [],\r\n\r\n\r\n\r\n //\r\n // Functions\r\n //\r\n\r\n\r\n // Throw error\r\n //\r\n error: function (msg) {\r\n throw \"Event CSS Modifier : \" + msg;\r\n },\r\n\r\n // Console log information\r\n //\r\n info: function (msg) {\r\n console.info(\"Event CSS Modifier : \" + msg);\r\n },\r\n\r\n\r\n // Apply and return a unique ID for the CSSStyleSheet\r\n //\r\n uid: function (CSSStyleSheet) {\r\n if (CSSStyleSheet && CSSStyleSheet.ownerNode) {\r\n if (CSSStyleSheet.ownerNode.id != \"\") {\r\n return CSSStyleSheet.ownerNode.id;\r\n }\r\n else {\r\n evtCssMod.uidCount = evtCssMod.uidCount + 1;\r\n return evtCssMod.uidPrefix + evtCssMod.uidCount;\r\n }\r\n }\r\n return false;\r\n },\r\n\r\n\r\n // Return a \"cssText\" without :hover pseudo-class\r\n //\r\n touchCssText: function (cssText, selectorText) {\r\n\r\n // Build the new selector text without :hover\r\n //\r\n var arr = selectorText.split(\",\");\r\n var newSelectorText = \"\";\r\n\r\n for (var i = 0; i < arr.length; i++) {\r\n var selector = arr[i].trim();\r\n if (selector.match(\":hover\")) {\r\n continue;\r\n } else {\r\n if (newSelectorText != \"\") {\r\n newSelectorText = newSelectorText + \", \";\r\n }\r\n newSelectorText = newSelectorText + selector;\r\n }\r\n }\r\n\r\n // If new selector text is empty, \r\n // assign a selector matching nothing\r\n if (newSelectorText == \"\") {\r\n newSelectorText = evtCssMod.emptySelectorText;\r\n }\r\n\r\n // Replace selector of cssTest\r\n cssText = cssText.replace(selectorText, newSelectorText);\r\n\r\n return cssText;\r\n },\r\n\r\n\r\n // Parse rule list (recursive)\r\n //\r\n parseRuleList: function (CSSRuleList) {\r\n var rulelist = [];\r\n\r\n if (CSSRuleList) {\r\n // Loop through each rule in sheet\r\n for (var i = 0; i < CSSRuleList.length; i++) {\r\n\r\n // CSSStyleRule or CSSMediaRule\r\n var rule = CSSRuleList[i];\r\n // Temporary object with rulelist info\r\n var tmp = {\r\n index: i\r\n };\r\n\r\n // CSSMediaRule\r\n if (rule.cssRules) {\r\n // Store object name\r\n tmp.type = 'CSSMediaRule';\r\n // Recursion\r\n tmp.rulelist = evtCssMod.parseRuleList(rule.cssRules);\r\n // Push to array (if not empty)\r\n if (tmp.rulelist.length > 0) {\r\n rulelist.push(tmp);\r\n }\r\n }\r\n // CSSStyleRule\r\n else {\r\n // Store object name\r\n tmp.type = 'CSSStyleRule';\r\n // If selector text contain :hover pseudo-class\r\n if (rule.selectorText && rule.selectorText.match(\":hover\")) {\r\n // Store information about the selector\r\n // Base : It's the original\r\n // Touch : Modified for touch event\r\n tmp.css = {};\r\n tmp.css.base = rule.cssText;\r\n tmp.css.touch = evtCssMod.touchCssText(rule.cssText, rule.selectorText);\r\n // Push to array\r\n rulelist.push(tmp);\r\n }\r\n }\r\n\r\n }\r\n }\r\n\r\n return rulelist;\r\n },\r\n\r\n\r\n // Parse all stylesheet\r\n //\r\n parseStyleSheet: function () {\r\n // Loop through each stylesheet\r\n for (var i = 0; i < document.styleSheets.length; i++) {\r\n var CSSStyleSheet = document.styleSheets[i];\r\n // Apply a unique ID to the stylesheet (if none)\r\n if (CSSStyleSheet.ownerNode.id == \"\") {\r\n var uid = CSSStyleSheet.ownerNode.id = evtCssMod.uid(CSSStyleSheet);\r\n }\r\n // Retreive the ID (if exist)\r\n else if (CSSStyleSheet.ownerNode.id) {\r\n var uid = CSSStyleSheet.ownerNode.id;\r\n }\r\n // Can't assign or retreive ID\r\n else {\r\n evtCssMod.error(\"Impossible to assing unique ID to stylesheet.\");\r\n continue;\r\n }\r\n // Try to retreive the cssRules\r\n try {\r\n var cssRules = CSSStyleSheet.cssRules;\r\n }\r\n catch (err) {\r\n evtCssMod.info(\"Failed to read the 'cssRules' from '\" + CSSStyleSheet.href + \"'.\");\r\n continue;\r\n }\r\n // Add to the stylesheed\r\n if (!evtCssMod.stylesheet[uid]) {\r\n evtCssMod.stylesheet.push({\r\n id: uid,\r\n reference: CSSStyleSheet,\r\n rulelist: evtCssMod.parseRuleList(cssRules)\r\n });\r\n }\r\n }\r\n },\r\n\r\n\r\n // Replace a CSSStyleRule\r\n //\r\n replaceStyleRule: function (CSSGroupingRule, cssText, index) {\r\n CSSGroupingRule.deleteRule(index);\r\n CSSGroupingRule.insertRule(cssText, index);\r\n },\r\n\r\n\r\n // Update RuleList base on event\r\n //\r\n updateRuleList: function (CSSGroupingRule, rulelist) {\r\n for (var i = 0; i < rulelist.length; i++) {\r\n var rule = rulelist[i];\r\n\r\n // CSSMediaRule\r\n if (rule.type == 'CSSMediaRule') {\r\n evtCssMod.updateRuleList(CSSGroupingRule.cssRules[rule.index], rule.rulelist);\r\n }\r\n\r\n // CSSStyleRule\r\n else if (rule.type == 'CSSStyleRule') {\r\n // Apply touch modified selector\r\n if (evtCssMod.eventState == \"touch\") {\r\n evtCssMod.replaceStyleRule(CSSGroupingRule, rule.css.touch, rule.index);\r\n }\r\n // Restore original (base) selector\r\n else {\r\n evtCssMod.replaceStyleRule(CSSGroupingRule, rule.css.base, rule.index);\r\n }\r\n }\r\n }\r\n },\r\n\r\n\r\n // Update CSS Rules base on event for each stylesheet\r\n //\r\n update: function () {\r\n for (var i = 0; i < evtCssMod.stylesheet.length; i++) {\r\n var stylesheet = evtCssMod.stylesheet[i];\r\n if (stylesheet.rulelist.length > 0) {\r\n evtCssMod.updateRuleList(stylesheet.reference, stylesheet.rulelist);\r\n }\r\n }\r\n },\r\n\r\n\r\n // Update CSS Rules base on event\r\n //\r\n updateEvent: function (eventState) {\r\n // Save the event state\r\n evtCssMod.eventState = eventState;\r\n // Update\r\n evtCssMod.update();\r\n },\r\n\r\n\r\n // Touch Start\r\n //\r\n onTouchStart: function (evt) {\r\n // Update if not the \"touch\" state\r\n if (evtCssMod.eventState != \"touch\" && evtCssMod.eventInitiate == false) {\r\n evtCssMod.updateEvent(\"touch\");\r\n }\r\n // Flag to prevent event execution in \"mouse move\"\r\n evtCssMod.eventInitiate = true;\r\n },\r\n\r\n onMouseMove: function (evt) {\r\n // Update if not the \"base\" state\r\n if (evtCssMod.eventState != \"base\" && evtCssMod.eventInitiate == false) {\r\n evtCssMod.updateEvent(\"base\");\r\n }\r\n // Flag to restore event execution in \"mouse move\"\r\n if (evtCssMod.eventInitiate) {\r\n evtCssMod.eventInitiate = false;\r\n }\r\n },\r\n\r\n\r\n // Init\r\n //\r\n init: function () {\r\n // Parse stylesheet to build new rule\r\n evtCssMod.parseStyleSheet();\r\n // If device support touch, \r\n // there's a high chance it's a mobile (touch).\r\n // Transform the CSS by anticipation.\r\n if ('ontouchstart' in window) {\r\n evtCssMod.updateEvent(\"touch\");\r\n };\r\n // Listen for event\r\n document.addEventListener(\"touchstart\", evtCssMod.onTouchStart, false);\r\n document.addEventListener(\"mousemove\", evtCssMod.onMouseMove, false);\r\n }\r\n};\r\n\r\n// Expose the \"eventCssModifier\" to be used\r\n// has an API\r\nmodule.exports = {\r\n init: evtCssMod.init,\r\n update: evtCssMod.update\r\n}\r\n\n\n\n//////////////////\n// WEBPACK FOOTER\n// ./LeLab.Portneuf.Web/src/utils/event-css-modifier/event-css-modifier.js\n// module id = 117\n// module chunks = 0"],"sourceRoot":""}