From bcccc003255c1659f3df9480e045f703bb25db0a Mon Sep 17 00:00:00 2001 From: tkqubo Date: Sun, 13 Sep 2015 06:38:35 +0900 Subject: [PATCH] Add svg-sprite --- svg-sprite/svg-sprite-tests.ts | 19 ++++++++++++++++++ svg-sprite/svg-sprite.d.ts | 36 ++++++++++++++++++++++++++++++++++ 2 files changed, 55 insertions(+) create mode 100644 svg-sprite/svg-sprite-tests.ts create mode 100644 svg-sprite/svg-sprite.d.ts diff --git a/svg-sprite/svg-sprite-tests.ts b/svg-sprite/svg-sprite-tests.ts new file mode 100644 index 0000000000..2a927998c4 --- /dev/null +++ b/svg-sprite/svg-sprite-tests.ts @@ -0,0 +1,19 @@ +/// + +import SVGSpriter = require('svg-sprite'); +import * as fs from 'fs'; + +var config: any = null; + +// Create spriter instance (see below for `config` examples) +var spriter = new SVGSpriter(config); + +// Add SVG source files — the manual way ... +spriter.add('assets/svg-1.svg', null, fs.readFileSync('assets/svg-1.svg', {encoding: 'utf-8'})); +spriter.add('assets/svg-2.svg', null, fs.readFileSync('assets/svg-2.svg', {encoding: 'utf-8'})); +/* ... */ + +// Compile the sprite +spriter.compile(function(error: any, result: any) { + /* ... Write `result` files to disk or do whatever with them ... */ +}); diff --git a/svg-sprite/svg-sprite.d.ts b/svg-sprite/svg-sprite.d.ts new file mode 100644 index 0000000000..240e14e68d --- /dev/null +++ b/svg-sprite/svg-sprite.d.ts @@ -0,0 +1,36 @@ +// Type definitions for svg-sprite +// Project: https://github.com/jkphl/svg-sprite +// Definitions by: Qubo +// Definitions: https://github.com/borisyankov/DefinitelyTyped + +/// + +declare module "svg-sprite" { + import File = require('vinyl'); + + namespace sprite { + interface SVGSpriterConstructor { + new(config: any): SVGSpriter; + } + + interface SVGSpriter { + add(file: string|File, name: string, svg: string): SVGSpriter; + compile(config: any, callback: CompileCallback): SVGSpriter; + compile(callback: CompileCallback): void; + getShapes(dest: string, callback: GetShapesCallback): void; + } + + interface CompileCallback { + (error: any, result: any, data: any): any; + } + + interface GetShapesCallback { + (error: any, result: File[]): any; + } + } + + var sprite: sprite.SVGSpriterConstructor; + + export = sprite; +} +