├── .gitignore
├── .npmignore
├── .travis.yml
├── LICENSE
├── README.md
├── examples
└── simple
│ ├── .babelrc
│ ├── .editorconfig
│ ├── .eslintignore
│ ├── .eslintrc
│ ├── .flowconfig
│ ├── .gitignore
│ ├── .npmignore
│ ├── package.json
│ ├── sagui.config.js
│ ├── src
│ ├── index.css
│ ├── index.html
│ ├── index.js
│ ├── index.spec.js
│ └── plain-two-pages.sketch
│ └── yarn.lock
├── index.js
├── package.json
├── tests
├── fixtures
│ ├── simple.json
│ └── simple.sketch
└── index.js
└── yarn.lock
/.gitignore:
--------------------------------------------------------------------------------
1 | node_modules
2 | .DS_Store
3 |
--------------------------------------------------------------------------------
/.npmignore:
--------------------------------------------------------------------------------
1 | examples
2 | tests
3 |
--------------------------------------------------------------------------------
/.travis.yml:
--------------------------------------------------------------------------------
1 | language: node_js
2 | node_js:
3 | - 7
4 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2017 Fernando Vía Canel
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # sketch-loader
2 |
3 | [](https://travis-ci.org/xaviervia/sketch-loader/builds) [](https://www.npmjs.com/package/sketch-loader)
4 |
5 |
6 | Webpack loader for Sketch (+43) files
7 |
8 | ```
9 | npm install --save sketch-loader
10 | ```
11 |
12 | ```javascript
13 | module: {
14 | loaders: [
15 | {
16 | test: /\.sketch$/,
17 | loader: 'sketch'
18 | }
19 | ]
20 | }
21 | ```
22 |
23 | Then importing:
24 |
25 | ```javascript
26 | import sketchFile from './some-file.sketch'
27 |
28 | sketchFile.document // parsed contents of document.json
29 | sketchFile.user // parsed contents of user.json
30 | sketchFile.meta // parsed contents of meta.json
31 | sketchFile.pages['0F364A54-A488-4D6F-BAA4-F93FB057C5A3'] // parsed contents of pages/0F364A54-A488-4D6F-BAA4-F93FB057C5A3.json, and so on for every page file
32 | ```
33 |
34 | You can check the example in [examples/simple/sagui.config.js](examples/simple/sagui.config.js)
35 |
36 | ## What is the structure of the contents?
37 |
38 | As far as I know, there is no official documentation yet.
39 |
40 | Meanwhile here you can find [Flowtype definitions for Sketch 43+ JSON](https://github.com/darknoon/sketchapp-json-flow-types/blob/master/types.js) by @darknoon to use as guide.
41 |
42 | ## License
43 |
44 | MIT License
45 |
--------------------------------------------------------------------------------
/examples/simple/.babelrc:
--------------------------------------------------------------------------------
1 | {
2 | "presets": ["sagui"]
3 | }
4 |
--------------------------------------------------------------------------------
/examples/simple/.editorconfig:
--------------------------------------------------------------------------------
1 | root = true
2 |
3 | [*]
4 | end_of_line = lf
5 | insert_final_newline = true
6 | trim_trailing_whitespace = true
7 | indent_style = space
8 | indent_size = 2
9 |
--------------------------------------------------------------------------------
/examples/simple/.eslintignore:
--------------------------------------------------------------------------------
1 | coverage
2 | dist
3 | node_modules
4 |
--------------------------------------------------------------------------------
/examples/simple/.eslintrc:
--------------------------------------------------------------------------------
1 | {
2 | "extends": "sagui"
3 | }
4 |
--------------------------------------------------------------------------------
/examples/simple/.flowconfig:
--------------------------------------------------------------------------------
1 | [ignore]
2 | .*/node_modules/.*
3 | .*/package.json
4 | .*/sagui.config.js
5 |
6 | [include]
7 |
8 | [libs]
9 | node_modules/sagui/flowtype-interfaces/
10 |
11 | [options]
12 | module.system=haste
13 |
--------------------------------------------------------------------------------
/examples/simple/.gitignore:
--------------------------------------------------------------------------------
1 | coverage
2 | node_modules
3 | npm-debug.log
4 | dist
5 | .DS_Store
6 |
--------------------------------------------------------------------------------
/examples/simple/.npmignore:
--------------------------------------------------------------------------------
1 | .babelrc
2 | .editorconfig
3 | .eslintignore
4 | .eslintrc
5 | coverage
6 | node_modules
7 | npm-debug.log
8 | src
9 |
--------------------------------------------------------------------------------
/examples/simple/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "simple",
3 | "version": "1.0.0",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "build": "sagui build",
8 | "dist": "sagui dist",
9 | "start": "sagui develop --port 3000",
10 | "test": "sagui test",
11 | "test:lint": "sagui test:lint",
12 | "test:typecheck": "sagui test:typecheck",
13 | "test:unit": "sagui test:unit --coverage",
14 | "test:unit:watch": "sagui test:unit --watch"
15 | },
16 | "keywords": [],
17 | "author": "",
18 | "license": "ISC",
19 | "devDependencies": {
20 | "sagui": "^8.0.2"
21 | },
22 | "dependencies": {
23 | "sketch-loader": "^0.1.2"
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/examples/simple/sagui.config.js:
--------------------------------------------------------------------------------
1 | /**
2 | * Sagui configuration object
3 | * see: http://sagui.js.org/
4 | */
5 | module.exports = {
6 | pages: ['index'],
7 | webpack: {
8 | module: {
9 | loaders: [
10 | {
11 | test: /\.sketch$/,
12 | loader: 'sketch'
13 | }
14 | ]
15 | }
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/examples/simple/src/index.css:
--------------------------------------------------------------------------------
1 | .component {
2 |
3 | }
4 |
--------------------------------------------------------------------------------
/examples/simple/src/index.html:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | simple
5 |
6 |
7 |
8 |
9 |
10 |
11 |
12 |
--------------------------------------------------------------------------------
/examples/simple/src/index.js:
--------------------------------------------------------------------------------
1 | import plainTwoPages from './plain-two-pages.sketch'
2 |
3 | console.log(plainTwoPages)
4 |
--------------------------------------------------------------------------------
/examples/simple/src/index.spec.js:
--------------------------------------------------------------------------------
1 | describe('simple', function () {
2 | it('should work', function () {
3 |
4 | })
5 | })
6 |
--------------------------------------------------------------------------------
/examples/simple/src/plain-two-pages.sketch:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xaviervia/sketch-loader/4d7a8085b8c2a940d5543c362a840087c04044e9/examples/simple/src/plain-two-pages.sketch
--------------------------------------------------------------------------------
/index.js:
--------------------------------------------------------------------------------
1 | const sketch2json = require('sketch2json')
2 |
3 | module.exports = function (source) {
4 | var callback = this.async()
5 |
6 | sketch2json(source).then(result => {
7 | callback(null, 'module.exports = ' + JSON.stringify(result))
8 | })
9 | }
10 |
11 | module.exports.raw = true
12 |
--------------------------------------------------------------------------------
/package.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "sketch-loader",
3 | "version": "0.1.2",
4 | "description": "",
5 | "main": "index.js",
6 | "scripts": {
7 | "test": "washington tests"
8 | },
9 | "repository": {
10 | "type": "git",
11 | "url": "git+https://github.com/xaviervia/sketch-loader.git"
12 | },
13 | "keywords": [
14 | "sketch",
15 | "webpack",
16 | "design"
17 | ],
18 | "author": "Fernando Via Canel ",
19 | "license": "MIT",
20 | "bugs": {
21 | "url": "https://github.com/xaviervia/sketch-loader/issues"
22 | },
23 | "homepage": "https://github.com/xaviervia/sketch-loader#readme",
24 | "dependencies": {
25 | "sketch2json": "^0.1.0"
26 | },
27 | "devDependencies": {
28 | "washington": "^2.0.0-rc.2"
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/tests/fixtures/simple.json:
--------------------------------------------------------------------------------
1 | {
2 | "document": {"_class":"document","do_objectID":"9A448235-0DD9-4D1A-8ECF-E22FA074B710","assets":{"_class":"assetCollection","colors":[],"gradients":[],"imageCollection":{"_class":"imageCollection","images":{}},"images":[]},"currentPageIndex":1,"enableLayerInteraction":true,"enableSliceInteraction":true,"foreignSymbols":[],"layerStyles":{"_class":"sharedStyleContainer","objects":[]},"layerSymbols":{"_class":"symbolContainer","objects":[]},"layerTextStyles":{"_class":"sharedTextStyleContainer","objects":[]},"pages":[{"_class":"MSJSONFileReference","_ref_class":"MSImmutablePage","_ref":"pages\/0F364A54-A488-4D6F-BAA4-F93FB057C5A3"},{"_class":"MSJSONFileReference","_ref_class":"MSImmutablePage","_ref":"pages\/7BEBFBF7-DD75-41E2-8882-51A6E354169A"}]},
3 | "meta": {"commit":"839c310bc9b166440aab19d887eb2aa6f18049d7","appVersion":"43","build":38976,"app":"com.bohemiancoding.sketch3.beta","pagesAndArtboards":{"7BEBFBF7-DD75-41E2-8882-51A6E354169A":{"name":"Page 2","artboards":{"F8A0B4CA-D6D0-437A-B981-916117DD2D11":{"name":"Artboard"}}},"0F364A54-A488-4D6F-BAA4-F93FB057C5A3":{"name":"Page 1","artboards":{"6A7B057C-5BCD-48D5-A0E9-E43B9799335C":{"name":"Artboard"}}}},"fonts":[],"created":{"app":"com.bohemiancoding.sketch3.beta","commit":"839c310bc9b166440aab19d887eb2aa6f18049d7","build":38976,"appVersion":"43","variant":"BETA","version":88},"version":88,"saveHistory":["BETA.38976"],"autosaved":0,"variant":"BETA"},
4 | "user": {"9A448235-0DD9-4D1A-8ECF-E22FA074B710":{"pageListHeight":110},"7BEBFBF7-DD75-41E2-8882-51A6E354169A":{"scrollOrigin":"{345, 192}","zoomValue":1},"0F364A54-A488-4D6F-BAA4-F93FB057C5A3":{"scrollOrigin":"{0, 0}","zoomValue":1}},
5 | "pages": {
6 | "0F364A54-A488-4D6F-BAA4-F93FB057C5A3": {"_class":"page","do_objectID":"0F364A54-A488-4D6F-BAA4-F93FB057C5A3","exportOptions":{"_class":"exportOptions","exportFormats":[],"includedLayerIds":[],"layerOptions":0,"shouldTrim":false},"frame":{"_class":"rect","constrainProportions":false,"height":300,"width":300,"x":0,"y":0},"isFlippedHorizontal":false,"isFlippedVertical":false,"isLocked":false,"isVisible":true,"layerListExpandedType":0,"name":"Page 1","nameIsFixed":false,"resizingType":0,"rotation":0,"shouldBreakMaskChain":false,"style":{"_class":"style","endDecorationType":0,"miterLimit":10,"startDecorationType":0},"hasClickThrough":true,"layers":[{"_class":"artboard","do_objectID":"6A7B057C-5BCD-48D5-A0E9-E43B9799335C","exportOptions":{"_class":"exportOptions","exportFormats":[],"includedLayerIds":[],"layerOptions":0,"shouldTrim":false},"frame":{"_class":"rect","constrainProportions":false,"height":265,"width":267,"x":231,"y":163},"isFlippedHorizontal":false,"isFlippedVertical":false,"isLocked":false,"isVisible":true,"layerListExpandedType":0,"name":"Artboard","nameIsFixed":false,"resizingType":0,"rotation":0,"shouldBreakMaskChain":false,"style":{"_class":"style","endDecorationType":0,"miterLimit":10,"startDecorationType":0},"hasClickThrough":false,"layers":[],"backgroundColor":{"_class":"color","alpha":1,"blue":1,"green":1,"red":1},"hasBackgroundColor":false,"horizontalRulerData":{"_class":"rulerData","base":0,"guides":[]},"includeBackgroundColorInExport":true,"includeInCloudUpload":true,"verticalRulerData":{"_class":"rulerData","base":0,"guides":[]}}],"horizontalRulerData":{"_class":"rulerData","base":0,"guides":[]},"includeInCloudUpload":true,"verticalRulerData":{"_class":"rulerData","base":0,"guides":[]}},
7 | "7BEBFBF7-DD75-41E2-8882-51A6E354169A": {"_class":"page","do_objectID":"7BEBFBF7-DD75-41E2-8882-51A6E354169A","exportOptions":{"_class":"exportOptions","exportFormats":[],"includedLayerIds":[],"layerOptions":0,"shouldTrim":false},"frame":{"_class":"rect","constrainProportions":false,"height":300,"width":300,"x":0,"y":0},"isFlippedHorizontal":false,"isFlippedVertical":false,"isLocked":false,"isVisible":true,"layerListExpandedType":0,"name":"Page 2","nameIsFixed":false,"resizingType":0,"rotation":0,"shouldBreakMaskChain":false,"style":{"_class":"style","endDecorationType":0,"miterLimit":10,"startDecorationType":0},"hasClickThrough":true,"layers":[{"_class":"artboard","do_objectID":"F8A0B4CA-D6D0-437A-B981-916117DD2D11","exportOptions":{"_class":"exportOptions","exportFormats":[],"includedLayerIds":[],"layerOptions":0,"shouldTrim":false},"frame":{"_class":"rect","constrainProportions":false,"height":203,"width":356,"x":-84,"y":-76},"isFlippedHorizontal":false,"isFlippedVertical":false,"isLocked":false,"isVisible":true,"layerListExpandedType":0,"name":"Artboard","nameIsFixed":false,"resizingType":0,"rotation":0,"shouldBreakMaskChain":false,"style":{"_class":"style","endDecorationType":0,"miterLimit":10,"startDecorationType":0},"hasClickThrough":false,"layers":[],"backgroundColor":{"_class":"color","alpha":1,"blue":1,"green":1,"red":1},"hasBackgroundColor":false,"horizontalRulerData":{"_class":"rulerData","base":0,"guides":[]},"includeBackgroundColorInExport":true,"includeInCloudUpload":true,"verticalRulerData":{"_class":"rulerData","base":0,"guides":[]}}],"horizontalRulerData":{"_class":"rulerData","base":-346,"guides":[]},"includeInCloudUpload":true,"verticalRulerData":{"_class":"rulerData","base":-193,"guides":[]}}
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/tests/fixtures/simple.sketch:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/xaviervia/sketch-loader/4d7a8085b8c2a940d5543c362a840087c04044e9/tests/fixtures/simple.sketch
--------------------------------------------------------------------------------
/tests/index.js:
--------------------------------------------------------------------------------
1 | const fs = require('fs')
2 | const sketchLoader = require('../')
3 | const fixture = require('./fixtures/simple.json')
4 |
5 | module.exports = [
6 | {
7 | description: 'passes the parsed sketch data to the callback',
8 | test: check => {
9 | fs.readFile(__dirname + '/fixtures/simple.sketch', (error, data) => {
10 | const context = {
11 | async: () => (error, moduleValue) => {
12 | check(JSON.parse(moduleValue.slice(17)))
13 | }
14 | }
15 |
16 | sketchLoader.bind(context)(data)
17 | })
18 | },
19 | shouldEqual: fixture
20 | }
21 | ]
22 |
--------------------------------------------------------------------------------
/yarn.lock:
--------------------------------------------------------------------------------
1 | # THIS IS AN AUTOGENERATED FILE. DO NOT EDIT THIS FILE DIRECTLY.
2 | # yarn lockfile v1
3 |
4 |
5 | ansi-regex@^2.0.0:
6 | version "2.1.1"
7 | resolved "https://registry.yarnpkg.com/ansi-regex/-/ansi-regex-2.1.1.tgz#c3b33ab5ee360d86e0e628f0468ae7ef27d654df"
8 |
9 | ansi-styles@^2.2.1:
10 | version "2.2.1"
11 | resolved "https://registry.yarnpkg.com/ansi-styles/-/ansi-styles-2.2.1.tgz#b432dd3358b634cf75e1e4664368240533c1ddbe"
12 |
13 | chalk@^1.1.3:
14 | version "1.1.3"
15 | resolved "https://registry.yarnpkg.com/chalk/-/chalk-1.1.3.tgz#a8115c55e4a702fe4d150abd3872822a7e09fc98"
16 | dependencies:
17 | ansi-styles "^2.2.1"
18 | escape-string-regexp "^1.0.2"
19 | has-ansi "^2.0.0"
20 | strip-ansi "^3.0.0"
21 | supports-color "^2.0.0"
22 |
23 | core-js@~2.3.0:
24 | version "2.3.0"
25 | resolved "https://registry.yarnpkg.com/core-js/-/core-js-2.3.0.tgz#fab83fbb0b2d8dc85fa636c4b9d34c75420c6d65"
26 |
27 | core-util-is@~1.0.0:
28 | version "1.0.2"
29 | resolved "https://registry.yarnpkg.com/core-util-is/-/core-util-is-1.0.2.tgz#b5fd54220aa2bc5ab57aab7140c940754503c1a7"
30 |
31 | es6-promise@~3.0.2:
32 | version "3.0.2"
33 | resolved "https://registry.yarnpkg.com/es6-promise/-/es6-promise-3.0.2.tgz#010d5858423a5f118979665f46486a95c6ee2bb6"
34 |
35 | escape-string-regexp@^1.0.2:
36 | version "1.0.5"
37 | resolved "https://registry.yarnpkg.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz#1b61c0562190a8dff6ae3bb2cf0200ca130b86d4"
38 |
39 | folktale@^2.0.0-alpha2, folktale@^2.0.0-alpha3:
40 | version "2.0.0-alpha3"
41 | resolved "https://registry.yarnpkg.com/folktale/-/folktale-2.0.0-alpha3.tgz#45f51feb486f00aa3d1d6f0f51eb45406c344899"
42 |
43 | has-ansi@^2.0.0:
44 | version "2.0.0"
45 | resolved "https://registry.yarnpkg.com/has-ansi/-/has-ansi-2.0.0.tgz#34f5049ce1ecdf2b0649af3ef24e45ed35416d91"
46 | dependencies:
47 | ansi-regex "^2.0.0"
48 |
49 | immediate@~3.0.5:
50 | version "3.0.6"
51 | resolved "https://registry.yarnpkg.com/immediate/-/immediate-3.0.6.tgz#9db1dbd0faf8de6fbe0f5dd5e56bb606280de69b"
52 |
53 | immutable-ext@^1.0.8:
54 | version "1.0.8"
55 | resolved "https://registry.yarnpkg.com/immutable-ext/-/immutable-ext-1.0.8.tgz#be49852c009b9c06cbceaf166c873a1d109a4ddc"
56 |
57 | immutable@^3.8.1:
58 | version "3.8.1"
59 | resolved "https://registry.yarnpkg.com/immutable/-/immutable-3.8.1.tgz#200807f11ab0f72710ea485542de088075f68cd2"
60 |
61 | infestines@^0.4.2:
62 | version "0.4.2"
63 | resolved "https://registry.yarnpkg.com/infestines/-/infestines-0.4.2.tgz#05aef1b8b48a349914be6a6f7522199dff8b93b8"
64 |
65 | inherits@~2.0.1:
66 | version "2.0.3"
67 | resolved "https://registry.yarnpkg.com/inherits/-/inherits-2.0.3.tgz#633c2c83e3da42a502f52466022480f4208261de"
68 |
69 | isarray@~1.0.0:
70 | version "1.0.0"
71 | resolved "https://registry.yarnpkg.com/isarray/-/isarray-1.0.0.tgz#bb935d48582cba168c06834957a54a3e07124f11"
72 |
73 | jszip@^3.1.3:
74 | version "3.1.3"
75 | resolved "https://registry.yarnpkg.com/jszip/-/jszip-3.1.3.tgz#8a920403b2b1651c0fc126be90192d9080957c37"
76 | dependencies:
77 | core-js "~2.3.0"
78 | es6-promise "~3.0.2"
79 | lie "~3.1.0"
80 | pako "~1.0.2"
81 | readable-stream "~2.0.6"
82 |
83 | lie@~3.1.0:
84 | version "3.1.1"
85 | resolved "https://registry.yarnpkg.com/lie/-/lie-3.1.1.tgz#9a436b2cc7746ca59de7a41fa469b3efb76bd87e"
86 | dependencies:
87 | immediate "~3.0.5"
88 |
89 | pako@~1.0.2:
90 | version "1.0.4"
91 | resolved "https://registry.yarnpkg.com/pako/-/pako-1.0.4.tgz#412cc97c3b7ff06dc6c2557fd4f03d06f5e708d4"
92 |
93 | partial.lenses@^9.4.1:
94 | version "9.8.0"
95 | resolved "https://registry.yarnpkg.com/partial.lenses/-/partial.lenses-9.8.0.tgz#f8514fccc9eeb539b4dfcdb66249ed18d1f84202"
96 | dependencies:
97 | infestines "^0.4.2"
98 |
99 | process-nextick-args@~1.0.6:
100 | version "1.0.7"
101 | resolved "https://registry.yarnpkg.com/process-nextick-args/-/process-nextick-args-1.0.7.tgz#150e20b756590ad3f91093f25a4f2ad8bff30ba3"
102 |
103 | readable-stream@~2.0.6:
104 | version "2.0.6"
105 | resolved "https://registry.yarnpkg.com/readable-stream/-/readable-stream-2.0.6.tgz#8f90341e68a53ccc928788dacfcd11b36eb9b78e"
106 | dependencies:
107 | core-util-is "~1.0.0"
108 | inherits "~2.0.1"
109 | isarray "~1.0.0"
110 | process-nextick-args "~1.0.6"
111 | string_decoder "~0.10.x"
112 | util-deprecate "~1.0.1"
113 |
114 | sketch2json@^0.1.0:
115 | version "0.1.0"
116 | resolved "https://registry.yarnpkg.com/sketch2json/-/sketch2json-0.1.0.tgz#783964aa3a05dc14d1d71ff8819860e3807a25b9"
117 | dependencies:
118 | folktale "^2.0.0-alpha3"
119 | immutable "^3.8.1"
120 | immutable-ext "^1.0.8"
121 | jszip "^3.1.3"
122 |
123 | string_decoder@~0.10.x:
124 | version "0.10.31"
125 | resolved "https://registry.yarnpkg.com/string_decoder/-/string_decoder-0.10.31.tgz#62e203bc41766c6c28c9fc84301dab1c5310fa94"
126 |
127 | strip-ansi@^3.0.0:
128 | version "3.0.1"
129 | resolved "https://registry.yarnpkg.com/strip-ansi/-/strip-ansi-3.0.1.tgz#6a385fb8853d952d5ff05d0e8aaf94278dc63dcf"
130 | dependencies:
131 | ansi-regex "^2.0.0"
132 |
133 | supports-color@^2.0.0:
134 | version "2.0.0"
135 | resolved "https://registry.yarnpkg.com/supports-color/-/supports-color-2.0.0.tgz#535d045ce6b6363fa40117084629995e9df324c7"
136 |
137 | util-deprecate@~1.0.1:
138 | version "1.0.2"
139 | resolved "https://registry.yarnpkg.com/util-deprecate/-/util-deprecate-1.0.2.tgz#450d4dc9fa70de732762fbd2d4a28981419a0ccf"
140 |
141 | washington.core@^2.0.0-rc.2:
142 | version "2.0.0-rc.2"
143 | resolved "https://registry.yarnpkg.com/washington.core/-/washington.core-2.0.0-rc.2.tgz#e4569ef391dfb02e2652d7c0f1178445d8880285"
144 | dependencies:
145 | folktale "^2.0.0-alpha2"
146 | immutable "^3.8.1"
147 | immutable-ext "^1.0.8"
148 | partial.lenses "^9.4.1"
149 |
150 | washington.formatter.terminal@^2.0.0-rc.2:
151 | version "2.0.0-rc.2"
152 | resolved "https://registry.yarnpkg.com/washington.formatter.terminal/-/washington.formatter.terminal-2.0.0-rc.2.tgz#1852253555eb562ea9ef57f67cb69d88f315867b"
153 | dependencies:
154 | chalk "^1.1.3"
155 | folktale "^2.0.0-alpha2"
156 | partial.lenses "^9.4.1"
157 |
158 | washington@^2.0.0-rc.2:
159 | version "2.0.0-rc.2"
160 | resolved "https://registry.yarnpkg.com/washington/-/washington-2.0.0-rc.2.tgz#2b219f8abb3da53f636201a4f7bf4e91a2c7b2ba"
161 | dependencies:
162 | washington.core "^2.0.0-rc.2"
163 | washington.formatter.terminal "^2.0.0-rc.2"
164 |
--------------------------------------------------------------------------------