Cash on Delivery to Japan,Taiwan HongKong and Singapore ,Free shipping over USD$59
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
1 / 8
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
Multi-purpose water pipe puller
You May Also Like Don't Like These?
mysite

Multi-purpose water pipe puller

$18.88 $28.32
1 sold
Colour
Typ
Qty 1000 in stock

Professional tools for installing components such as taps, sinks or ball valves.<br><br>A must-have for daily use!

Main features

  • EASY TO USE - Can easily turn hard-to-reach mounting nuts on taps, syringes and ball valves, basket plastic, set pipe to repair keep your site dry.
  • LABOUR-SAVING - Includes a rod that inserts into the dovetail, this product wrench for common faucet installations, and sink strainers can easily rotate at awkward angles without scratching your chrome, three-way nut tightening nuts, installing hand plumber drain kit pipes.
  • DURABILITY: Made from lightweight and strong plastic construction - Aluminium inserts to turn the angle stop handle and hold the strainer basket, this tap nut removal tool can be used for as long as you expect.

Scenarios for use

  • This repair and installation hand tool is suitable for tap and sink installers. Especially for nuts / shut-off valves / strainer baskets / supply line nut / tap nuts - toilet bowl / sink / bathroom / kitchen plumbing and more.

Methods used

  • Simply snap into position and rotate quickly, then replace the nut installed from the tap. When removing both inserts, the notched ends engage 2, 3, 4 and 6 tab nuts.

Specification

  • Material: Zinc alloy, steel.
  • Colour: red, yellow.
  • Type: Single-ended wrench, double-ended wrench, three-headed wrench (with extractor).
  • Size:

The package includes

  • 1 × Water pipe wrench with multiple functions.

Noter

  • Due to manual measurements, please allow small dimensional deviations.
  • Due to various display and lighting effects, the actual colour of the item may differ slightly from the colour shown in the image.
    You May Also Like Don't Like These?
    const TAG = 'spz-custom-painter-button-animation'; const MAX_ITERATION_COUNT = 99999999; const SITE = (window.C_SETTINGS && window.C_SETTINGS.routes && window.C_SETTINGS.routes.root) || ''; const ADD_TO_CART_ANIMATION_SETTING = `${SITE}/api/marketing_atmosphere_app/add_to_cart_btn_animation/setting`; class SpzCustomPainterButtonAnimation extends SPZ.BaseElement { /**@override */ static deferredMount() { return false; } /** @param {!SpzElement} element */ constructor(element) { super(element); /** @private {!../../src/service/xhr-impl.Xhr} */ this.xhr_ = SPZServices.xhrFor(this.win); /** @private {Object} */ this.data_ = null; /** @private {Element} */ this.addToCartButton_ = null; /** @private {boolean} */ this.productAvailable_ = true; /** @private {number} */ this.timerId_ = null; /** @private {number} */ this.animationExecutionCount_ = 0; /** @private {boolean} */ this.selectedVariantAvailable_ = true; /** @private {number} */ this.delay_ = 5000; /** @private {number} */ this.iterationCount_ = 5; /** @private {string} */ this.animationClass_ = ''; } /** @override */ isLayoutSupported(layout) { return layout == SPZCore.Layout.LOGIC; } /** @override */ buildCallback() { this.productAvailable_ = this.element.hasAttribute('product-available'); this.selectedVariantAvailable_ = this.element.hasAttribute('selected-variant-available'); } /** @override */ mountCallback() { this.render_(); } /** @private */ render_() { if (!this.productAvailable_) { return; } this.fetch_().then((data) => { if (!data) { return; } this.data_ = data; this.animationClass_ = `painter-${data.animation_name}-animation`; this.iterationCount_ = data.animation_iteration_count === 'infinite' ? MAX_ITERATION_COUNT : data.animation_iteration_count; const animationDuration = 1; const animationDelay = data.animation_delay || 5; this.delay_ = (animationDuration + animationDelay) * 1000; this.handleButtonEffect_(); }); } /** * @param {JsonObject} data * @return {(null|Object)} * @private */ parseJson_(data) { try { return JSON.parse(data); } catch (e) { return null; } } /** * @return {Promise} * @private */ fetch_() { return this.xhr_.fetchJson(ADD_TO_CART_ANIMATION_SETTING).then((data) => { if (!data || !data.enabled) { return null; } return this.parseJson_(data.detail); }); } /** @private */ getAddToCartButton_() { this.addToCartButton_ = SPZCore.Dom.scopedQuerySelector( document.body, '[data-section-type="product"] [role="addToCart"], [data-section-type="product_detail"] [role="addToCart"], [data-section-type="product_detail"] [data-click="addToCart"], [data-section-type="product"] [data-click="addToCart"]' ); } /** @private */ restartAnimation_() { this.addToCartButton_.classList.remove(this.animationClass_); this.addToCartButton_./* OK */ offsetWidth; this.addToCartButton_.classList.add(this.animationClass_); this.animationExecutionCount_++; } /** @private */ clearTimer_() { this.win.clearInterval(this.timerId_); this.timerId_ = null; } /** @private */ setupTimer_() { this.timerId_ = this.win.setInterval(() => { this.restartAnimation_(); if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); this.clearTimer_(); } }, this.delay_); } /** @private */ restartTimer_() { if (this.animationExecutionCount_ >= this.iterationCount_) { this.removeAnimationClass_(); return; } this.setupTimer_(); } /** @private */ listenVariantChange_() { SPZUtils.Event.listen(self.document, 'dj.variantChange', (e) => { const selectedVariant = e.detail && e.detail.selected; if (!selectedVariant) { return; } const {available} = selectedVariant; if (this.selectedVariantAvailable_ !== available) { this.selectedVariantAvailable_ = available; this.clearTimer_(); if (available) { this.restartTimer_(); } } }); } /** @private */ removeAnimationClass_() { this.win.setTimeout(() => { this.addToCartButton_.classList.remove(this.animationClass_); }, 1000); } /** @private */ handleButtonEffect_() { this.getAddToCartButton_(); if (!this.addToCartButton_) { return; } if (this.selectedVariantAvailable_) { ++this.animationExecutionCount_; this.addToCartButton_.classList.add(this.animationClass_); if (this.iterationCount_ === 1) { this.removeAnimationClass_(); return; } this.setupTimer_(); } this.listenVariantChange_(); } } SPZ.defineElement(TAG, SpzCustomPainterButtonAnimation);