Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits
Multifunction Portable 11-in-1 Bike Repair Tool Kits

Multifunction Portable 11-in-1 Bike Repair Tool Kits

4 sold
$11.00
$0.00
-$-11.00
Color-Black
Please select a color
Shipping To-EU
Please select a shipping to
Quantity
SKU:
Shipping
/** @private {string} */ class SpzCustomAnchorScroll extends SPZ.BaseElement { static deferredMount() { return false; } constructor(element) { super(element); /** @private {Element} */ this.scrollableContainer_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } buildCallback() { this.viewport_ = this.getViewport(); this.initActions_(); } setTarget(containerId, targetId) { this.containerId = '#' + containerId; this.targetId = '#' + targetId; } scrollToTarget() { const container = document.querySelector(this.containerId); const target = container.querySelector(this.targetId); const {scrollTop} = container; const eleOffsetTop = this.getOffsetTop_(target, container); this.viewport_ .interpolateScrollIntoView_( container, scrollTop, scrollTop + eleOffsetTop ); } initActions_() { this.registerAction( 'scrollToTarget', (invocation) => this.scrollToTarget(invocation?.caller) ); this.registerAction( 'setTarget', (invocation) => this.setTarget(invocation?.args?.containerId, invocation?.args?.targetId) ); } /** * @param {Element} element * @param {Element} container * @return {number} * @private */ getOffsetTop_(element, container) { if (!element./*OK*/ getClientRects().length) { return 0; } const rect = element./*OK*/ getBoundingClientRect(); if (rect.width || rect.height) { return rect.top - container./*OK*/ getBoundingClientRect().top; } return rect.top; } } SPZ.defineElement('spz-custom-anchor-scroll', SpzCustomAnchorScroll); const STRENGTHEN_TRUST_URL = "/api/strengthen_trust/settings"; class SpzCustomStrengthenTrust extends SPZ.BaseElement { constructor(element) { super(element); this.renderElement_ = null; } isLayoutSupported(layout) { return layout == SPZCore.Layout.CONTAINER; } buildCallback() { this.xhr_ = SPZServices.xhrFor(this.win); const renderId = this.element.getAttribute('render-id'); SPZCore.Dom.waitForChild( document.body, () => !!document.getElementById(renderId), () => { this.renderElement_ = SPZCore.Dom.scopedQuerySelector( document.body, `#${renderId}` ); if (this.renderElement_) { this.render_(); } this.registerAction('track', (invocation) => { this.track_(invocation.args); }); } ); } render_() { this.fetchData_().then((data) => { if (!data) { return; } SPZ.whenApiDefined(this.renderElement_).then((apis) => { apis?.render(data); document.querySelector('#strengthen-trust-render-1539149753700').addEventListener('click',(event)=>{ if(event.target.nodeName == 'A'){ this.track_({type: 'trust_content_click'}); } }) }); }); } track_(data = {}) { const track = window.sa && window.sa.track; if (!track) { return; } track('trust_enhancement_event', data); } parseJSON_(string) { let result = {}; try { result = JSON.parse(string); } catch (e) {} return result; } fetchData_() { return this.xhr_ .fetchJson(STRENGTHEN_TRUST_URL) .then((responseData) => { if (!responseData || !responseData.data) { return null; } const data = responseData.data; const moduleSettings = (data.module_settings || []).reduce((result, moduleSetting) => { return result.concat(Object.assign(moduleSetting, { logos: (moduleSetting.logos || []).map((item) => { return moduleSetting.logos_type == 'custom' ? this.parseJSON_(item) : item; }) })); }, []); return Object.assign(data, { module_settings: moduleSettings, isEditor: window.self !== window.top, }); }); } } SPZ.defineElement('spz-custom-strengthen-trust', SpzCustomStrengthenTrust);

Made of high quality stainless steel, which makes the bike repair tool kits rust proof, durable and reusable. The surface of the bicycle multifunction repair tool is chromium plating. With this fine and professional workmanship, it is more durable and effective. It will meet your most repairing needs.

Includes 11 attachment tools: 7 kinds of different inner Hex Key Wrench (2 / 2.5 / 3 / 4 / 5 / 6 / 8mm); 1 Slotted Screwdriver; 1 Screwdriver; 1 Torx T-25; 1 Cut Universal Chain Device.

11Precision Bike Tools Including: Hex Wrench (Allen Key) 2 / 2.5 / 3 / 4 / 5 / 6 / 8 mm, Screwdriver, Slotted Screwdriver, T25 Torx and 1 Chain Cutting Tool. This multi repair tools kit can help you solve most bike problems.