{
  "version": 3,
  "sources": ["/cdn/shop/t/1064/assets/avatar-tracking.js?auto=format%2Ccompress"],
  "sourcesContent": ["(function () {\n  var root = document.getElementById(\"ninja-avatar-builder\");\n  if (!root) return;\n\n  var environment =\n    window.Shopify && window.Shopify.theme && window.Shopify.theme.role === \"main\"\n      ? \"production\"\n      : \"staging\";\n\n  var TAB_LABEL_TO_ID = {\n    Headwear: \"headwear\",\n    Outfits: \"bodies\",\n    Companions: \"companions\",\n    Backgrounds: \"backgrounds\",\n  };\n\n  var UNLOCK_LABEL_TO_KEY = {\n    \"White Belt\": \"white_belt\",\n    \"Orange Belt\": \"orange_belt\",\n    \"Green Belt\": \"green_belt\",\n    \"Blue Belt\": \"belt_blue\",\n    \"Black Belt\": \"belt_black\",\n    \"Gang Sheets\": \"gang_sheets\",\n    \"Ninja Blanks\": \"order_blanks\",\n    \"Patches\": \"order_patches\",\n    \"Plushie\": \"order_plushie\",\n    \"Birthday\": \"year_1\",\n    \"Seasonal \u00B7 Oct\u2013Nov\": \"season_oct_nov\",\n    \"Seasonal \u00B7 December\": \"season_dec\",\n    \"Seasonal \u00B7 July\": \"season_jul\",\n    \"Locked\": \"unknown\",\n  };\n\n  var activeTab = \"headwear\";\n  var lastSelectedItem = \"\";\n\n  function fireEvent(name, params) {\n    if (typeof gtag !== \"undefined\") {\n      params.device_type = window.innerWidth <= 767 ? \"mobile\" : \"desktop\";\n      params.environment = environment;\n      gtag(\"event\", name, params);\n    }\n  }\n\n  fireEvent(\"avatar_builder_opened\", { source: \"sidebar\" });\n\n  // --- avatar_tab_view (delegated on root \u2014 .avatar-right-panel may not exist\n  //     yet when this script runs because React renders asynchronously) ---\n  root.addEventListener(\n    \"click\",\n    function (e) {\n      var btn = e.target.closest(\".hide-scrollbar > button\");\n      if (!btn) return;\n      var label = btn.textContent.trim();\n      var tabId = TAB_LABEL_TO_ID[label];\n      if (!tabId) return;\n      activeTab = tabId;\n      fireEvent(\"avatar_tab_view\", { tab_name: tabId });\n    },\n    true\n  );\n\n  // --- avatar_item_select + avatar_locked_item_click (mutually exclusive) ---\n  root.addEventListener(\n    \"click\",\n    function (e) {\n      var btn = e.target.closest(\".avatar-category-grid button\");\n      if (!btn) return;\n\n      var isLocked = btn.getAttribute(\"aria-disabled\") === \"true\";\n      var title = btn.getAttribute(\"title\") || \"\";\n\n      if (isLocked) {\n        var unlockLabel = \"\";\n        var match = title.match(/^Locked\\s*\u2014\\s*(.+)$/);\n        if (match) unlockLabel = match[1];\n        var unlockKey = UNLOCK_LABEL_TO_KEY[unlockLabel];\n        if (!unlockKey && unlockLabel) {\n          console.warn(\"[avatar-tracking] unmapped unlock label:\", unlockLabel);\n          unlockKey = unlockLabel;\n        }\n        fireEvent(\"avatar_locked_item_click\", {\n          item_name: unlockLabel || title,\n          item_category: activeTab,\n          unlock_condition: unlockKey || \"\",\n        });\n      } else {\n        lastSelectedItem = title;\n        fireEvent(\"avatar_item_select\", {\n          item_name: title,\n          item_category: activeTab,\n          locked: false,\n        });\n      }\n    },\n    true\n  );\n\n  // --- avatar_saved (class transition to --saved) ---\n  var saveObserver = new MutationObserver(function (mutations) {\n    for (var i = 0; i < mutations.length; i++) {\n      var m = mutations[i];\n      if (\n        m.type === \"attributes\" &&\n        m.attributeName === \"class\" &&\n        m.target.classList.contains(\"ninja-save-btn--saved\")\n      ) {\n        fireEvent(\"avatar_saved\", {\n          tab_name: activeTab,\n          last_item_name: lastSelectedItem,\n        });\n        break;\n      }\n    }\n  });\n\n  function observeSaveBtn() {\n    var btn = root.querySelector(\".ninja-save-btn\");\n    if (btn) {\n      saveObserver.observe(btn, { attributes: true, attributeFilter: [\"class\"] });\n    } else {\n      var poll = setInterval(function () {\n        var b = root.querySelector(\".ninja-save-btn\");\n        if (b) {\n          clearInterval(poll);\n          saveObserver.observe(b, { attributes: true, attributeFilter: [\"class\"] });\n        }\n      }, 500);\n    }\n  }\n  observeSaveBtn();\n\n  // --- avatar_shared ---\n  root.addEventListener(\n    \"click\",\n    function (e) {\n      var btn = e.target.closest('.ninja-icon-btn[title=\"Share\"]');\n      if (!btn) return;\n      fireEvent(\"avatar_shared\", {});\n    },\n    true\n  );\n})();\n"],
  "mappings": "CAAC,UAAY,CACX,IAAI,KAAO,SAAS,eAAe,sBAAsB,EACzD,GAAI,CAAC,KAAM,OAEX,IAAI,YACF,OAAO,SAAW,OAAO,QAAQ,OAAS,OAAO,QAAQ,MAAM,OAAS,OACpE,aACA,UAEF,gBAAkB,CACpB,SAAU,WACV,QAAS,SACT,WAAY,aACZ,YAAa,aACf,EAEI,oBAAsB,CACxB,aAAc,aACd,cAAe,cACf,aAAc,aACd,YAAa,YACb,aAAc,aACd,cAAe,cACf,eAAgB,eAChB,QAAW,gBACX,QAAW,gBACX,SAAY,SACZ,6BAAsB,iBACtB,yBAAuB,aACvB,qBAAmB,aACnB,OAAU,SACZ,EAEI,UAAY,WACZ,iBAAmB,GAEvB,SAAS,UAAU,KAAM,OAAQ,CAC3B,OAAO,MAAS,cAClB,OAAO,YAAc,OAAO,YAAc,IAAM,SAAW,UAC3D,OAAO,YAAc,YACrB,KAAK,QAAS,KAAM,MAAM,EAE9B,CAEA,UAAU,wBAAyB,CAAE,OAAQ,SAAU,CAAC,EAIxD,KAAK,iBACH,QACA,SAAU,EAAG,CACX,IAAI,IAAM,EAAE,OAAO,QAAQ,0BAA0B,EACrD,GAAK,IACL,KAAI,MAAQ,IAAI,YAAY,KAAK,EAC7B,MAAQ,gBAAgB,KAAK,EAC5B,QACL,UAAY,MACZ,UAAU,kBAAmB,CAAE,SAAU,KAAM,CAAC,GAClD,EACA,EACF,EAGA,KAAK,iBACH,QACA,SAAU,EAAG,CACX,IAAI,IAAM,EAAE,OAAO,QAAQ,8BAA8B,EACzD,GAAK,IAEL,KAAI,SAAW,IAAI,aAAa,eAAe,IAAM,OACjD,MAAQ,IAAI,aAAa,OAAO,GAAK,GAEzC,GAAI,SAAU,CACZ,IAAI,YAAc,GACd,MAAQ,MAAM,MAAM,qBAAqB,EACzC,QAAO,YAAc,MAAM,CAAC,GAChC,IAAI,UAAY,oBAAoB,WAAW,EAC3C,CAAC,WAAa,cAChB,QAAQ,KAAK,2CAA4C,WAAW,EACpE,UAAY,aAEd,UAAU,2BAA4B,CACpC,UAAW,aAAe,MAC1B,cAAe,UACf,iBAAkB,WAAa,EACjC,CAAC,CACH,MACE,iBAAmB,MACnB,UAAU,qBAAsB,CAC9B,UAAW,MACX,cAAe,UACf,OAAQ,EACV,CAAC,EAEL,EACA,EACF,EAGA,IAAI,aAAe,IAAI,iBAAiB,SAAU,UAAW,CAC3D,QAAS,EAAI,EAAG,EAAI,UAAU,OAAQ,IAAK,CACzC,IAAI,EAAI,UAAU,CAAC,EACnB,GACE,EAAE,OAAS,cACX,EAAE,gBAAkB,SACpB,EAAE,OAAO,UAAU,SAAS,uBAAuB,EACnD,CACA,UAAU,eAAgB,CACxB,SAAU,UACV,eAAgB,gBAClB,CAAC,EACD,KACF,CACF,CACF,CAAC,EAED,SAAS,gBAAiB,CACxB,IAAI,IAAM,KAAK,cAAc,iBAAiB,EAC9C,GAAI,IACF,aAAa,QAAQ,IAAK,CAAE,WAAY,GAAM,gBAAiB,CAAC,OAAO,CAAE,CAAC,MAE1E,KAAI,KAAO,YAAY,UAAY,CACjC,IAAI,EAAI,KAAK,cAAc,iBAAiB,EACxC,IACF,cAAc,IAAI,EAClB,aAAa,QAAQ,EAAG,CAAE,WAAY,GAAM,gBAAiB,CAAC,OAAO,CAAE,CAAC,EAE5E,EAAG,GAAG,CAEV,CACA,eAAe,EAGf,KAAK,iBACH,QACA,SAAU,EAAG,CACX,IAAI,IAAM,EAAE,OAAO,QAAQ,gCAAgC,EACtD,KACL,UAAU,gBAAiB,CAAC,CAAC,CAC/B,EACA,EACF,CACF,GAAG",
  "names": []
}
