blob: 640615bacdaf21076992a680b5b50ed6307c65e6 [file] [log] [blame]
Roman Elizarov94fb2a32018-03-05 17:32:59 +03001
2apply plugin: 'com.moowork.node'
3
4node {
5 version = "$node_version"
6 npmVersion = "$npm_version"
7 download = true
Roman Elizarovf0fc7702018-03-06 12:45:08 +03008 nodeModulesDir = file(buildDir)
Roman Elizarov94fb2a32018-03-05 17:32:59 +03009}
Roman Elizarovf0fc7702018-03-06 12:45:08 +030010
11// Configures testing for JS modules
12
13task prepareNodePackage(type: Copy) {
14 from("npm") {
15 include 'package.json'
Ilya Gorbunovcc084262018-04-18 18:16:17 +030016 expand (project.properties + [kotlinDependency: ""])
Roman Elizarovf0fc7702018-03-06 12:45:08 +030017 }
18 from("npm") {
19 exclude 'package.json'
20 }
21 into "$node.nodeModulesDir"
22}
23
24npmInstall.dependsOn prepareNodePackage
25
26task populateNodeModules(type: Copy, dependsOn: [compileKotlin2Js]) {
27 from compileKotlin2Js.destinationDir
28 into "$node.nodeModulesDir/node_modules"
29
30 afterEvaluate {
31 configurations.testCompile.each {
32 if (it.absolutePath.endsWith(".jar")) {
33 from zipTree(it.absolutePath).matching {
34 include '*.js'
35 include '*.js.map'
36 }
37 }
38 }
39 }
40}
41
42npmInstall.dependsOn populateNodeModules