| @@ -0,0 +1,46 | |||
|
|
1 | import { Uuid } from "../Uuid"; | |
|
|
2 | import { argumentNotEmptyString } from "../safe"; | |
|
|
3 | import { TraceSource } from "../log/TraceSource"; | |
|
|
4 | ||
|
|
5 | export interface RequireFn { | |
|
|
6 | (module: string): any; | |
|
|
7 | (modules: string[], cb?: (...args: any[]) => any): void; | |
|
|
8 | } | |
|
|
9 | ||
|
|
10 | declare const require: RequireFn; | |
|
|
11 | ||
|
|
12 | export const rjs = require; | |
|
|
13 | ||
|
|
14 | declare function define(name: string, modules: string[], cb?: (...args: any[]) => any, eb?: (e) => any): void; | |
|
|
15 | declare function define(modules: string[], cb?: (...args: any[]) => any, eb?: (e) => any): void; | |
|
|
16 | ||
|
|
17 | interface RequireJsResolverParams { | |
|
|
18 | contextRequire: RequireFn; | |
|
|
19 | } | |
|
|
20 | ||
|
|
21 | const trace = TraceSource.get("@implab/core/di/RequireJsHelper"); | |
|
|
22 | ||
|
|
23 | export async function createContextRequire(moduleName: string): Promise<RequireFn> { | |
|
|
24 | argumentNotEmptyString(moduleName, "moduleName"); | |
|
|
25 | ||
|
|
26 | const parts = moduleName.split("/"); | |
|
|
27 | if (parts[0] === ".") | |
|
|
28 | throw new Error("An absolute module path is required"); | |
|
|
29 | ||
|
|
30 | if (parts.length > 1) | |
|
|
31 | parts.splice(-1, 1, Uuid()); | |
|
|
32 | else | |
|
|
33 | parts.push(Uuid()); | |
|
|
34 | ||
|
|
35 | const shim = parts.join("/"); | |
|
|
36 | ||
|
|
37 | trace.debug(`define shim ${shim}`); | |
|
|
38 | ||
|
|
39 | return new Promise<RequireFn>(fulfill => { | |
|
|
40 | define(shim, ["require"], r => { | |
|
|
41 | trace.debug("shim resolved"); | |
|
|
42 | return r; | |
|
|
43 | }); | |
|
|
44 | require([shim], fulfill); | |
|
|
45 | }); | |
|
|
46 | } | |
| @@ -12,9 +12,11 def distDir = "$packageDir/$platform" | |||
|
|
12 | 12 | def testDir = "$packageDir/$platform" |
|
|
13 | 13 | |
|
|
14 | 14 | task printVersion { |
|
|
15 | println "version: $version" | |
|
|
16 | println "packageName: $packageName" | |
|
|
17 |
println "p |
|
|
|
15 | doLast { | |
|
|
16 | println "version: $version" | |
|
|
17 | println "packageName: $packageName" | |
|
|
18 | println "platform: $platform" | |
|
|
19 | } | |
|
|
18 | 20 | } |
|
|
19 | 21 | |
|
|
20 | 22 | |
| @@ -48,10 +50,14 task _legacyJs(type:Copy) { | |||
|
|
48 | 50 | |
|
|
49 | 51 | task _buildTs(dependsOn: _npmInstall, type:Exec) { |
|
|
50 | 52 | inputs.dir('src/ts') |
|
|
51 | inputs.file('tsconfig.json') | |
|
|
53 | inputs.file('src/tsconfig.json') | |
|
|
52 | 54 | outputs.dir(distDir) |
|
|
53 | 55 | |
|
|
54 |
commandLine 'node_modules/.bin/tsc', |
|
|
|
56 | commandLine 'node_modules/.bin/tsc', | |
|
|
57 | '-p', 'src/tsconfig.json', | |
|
|
58 | '--outDir', distDir, | |
|
|
59 | '--listFiles', | |
|
|
60 | '--traceResolution' | |
|
|
55 | 61 | } |
|
|
56 | 62 | |
|
|
57 | 63 | task _packageMeta(type: Copy) { |
| @@ -84,7 +84,7 | |||
|
|
84 | 84 | }, |
|
|
85 | 85 | "duplexer": { |
|
|
86 | 86 | "version": "0.1.1", |
|
|
87 | "resolved": "http://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", | |
|
|
87 | "resolved": "https://registry.npmjs.org/duplexer/-/duplexer-0.1.1.tgz", | |
|
|
88 | 88 | "integrity": "sha1-rOb/gIwc5mtX0ev5eXessCM0z8E=", |
|
|
89 | 89 | "dev": true |
|
|
90 | 90 | }, |
| @@ -129,7 +129,7 | |||
|
|
129 | 129 | "dependencies": { |
|
|
130 | 130 | "tape": { |
|
|
131 | 131 | "version": "2.3.3", |
|
|
132 | "resolved": "http://registry.npmjs.org/tape/-/tape-2.3.3.tgz", | |
|
|
132 | "resolved": "https://registry.npmjs.org/tape/-/tape-2.3.3.tgz", | |
|
|
133 | 133 | "integrity": "sha1-Lnzgox3wn41oUWZKcYQuDKUFevc=", |
|
|
134 | 134 | "dev": true, |
|
|
135 | 135 | "requires": { |
| @@ -289,7 +289,7 | |||
|
|
289 | 289 | }, |
|
|
290 | 290 | "path-is-absolute": { |
|
|
291 | 291 | "version": "1.0.1", |
|
|
292 | "resolved": "http://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", | |
|
|
292 | "resolved": "https://registry.npmjs.org/path-is-absolute/-/path-is-absolute-1.0.1.tgz", | |
|
|
293 | 293 | "integrity": "sha1-F0uSaHNVNP+8es5r9TpanhtcX18=", |
|
|
294 | 294 | "dev": true |
|
|
295 | 295 | }, |
| @@ -301,7 +301,7 | |||
|
|
301 | 301 | }, |
|
|
302 | 302 | "readable-stream": { |
|
|
303 | 303 | "version": "1.1.14", |
|
|
304 | "resolved": "http://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", | |
|
|
304 | "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-1.1.14.tgz", | |
|
|
305 | 305 | "integrity": "sha1-fPTFTvZI44EwhMY23SB54WbAgdk=", |
|
|
306 | 306 | "dev": true, |
|
|
307 | 307 | "requires": { |
| @@ -354,7 +354,7 | |||
|
|
354 | 354 | }, |
|
|
355 | 355 | "string_decoder": { |
|
|
356 | 356 | "version": "0.10.31", |
|
|
357 | "resolved": "http://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", | |
|
|
357 | "resolved": "https://registry.npmjs.org/string_decoder/-/string_decoder-0.10.31.tgz", | |
|
|
358 | 358 | "integrity": "sha1-YuIDvEF2bGwoyfyEMB2rHFMQ+pQ=", |
|
|
359 | 359 | "dev": true |
|
|
360 | 360 | }, |
| @@ -411,13 +411,13 | |||
|
|
411 | 411 | }, |
|
|
412 | 412 | "through": { |
|
|
413 | 413 | "version": "2.3.8", |
|
|
414 | "resolved": "http://registry.npmjs.org/through/-/through-2.3.8.tgz", | |
|
|
414 | "resolved": "https://registry.npmjs.org/through/-/through-2.3.8.tgz", | |
|
|
415 | 415 | "integrity": "sha1-DdTJ/6q8NXlgsbckEV1+Doai4fU=", |
|
|
416 | 416 | "dev": true |
|
|
417 | 417 | }, |
|
|
418 | 418 | "through2": { |
|
|
419 | 419 | "version": "0.2.3", |
|
|
420 | "resolved": "http://registry.npmjs.org/through2/-/through2-0.2.3.tgz", | |
|
|
420 | "resolved": "https://registry.npmjs.org/through2/-/through2-0.2.3.tgz", | |
|
|
421 | 421 | "integrity": "sha1-6zKE2k6jEbbMis42U3SKUqvyWj8=", |
|
|
422 | 422 | "dev": true, |
|
|
423 | 423 | "requires": { |
| @@ -6,7 +6,9 | |||
|
|
6 | 6 | // Copyright (c) 2010-2012 Robert Kieffer |
|
|
7 | 7 | // MIT License - http://opensource.org/licenses/mit-license.php |
|
|
8 | 8 | |
|
|
9 |
declare |
|
|
|
9 | declare const window: any; | |
|
|
10 | declare const require; | |
|
|
11 | declare const Buffer; | |
|
|
10 | 12 | |
|
|
11 | 13 | const _window: any = "undefined" !== typeof window ? window : null; |
|
|
12 | 14 | |
| @@ -20,7 +20,7 import { Container } from "./Container"; | |||
|
|
20 | 20 | import { ReferenceDescriptor } from "./ReferenceDescriptor"; |
|
|
21 | 21 | import { TypeServiceDescriptor } from "./TypeServiceDescriptor"; |
|
|
22 | 22 | import { FactoryServiceDescriptor } from "./FactoryServiceDescriptor"; |
|
|
23 | import { rjs, createContextRequire, RequireFn } from "./RequireJsHelper"; | |
|
|
23 | import { rjs, createContextRequire, RequireFn } from "../../amd/ts/RequireJsHelper"; | |
|
|
24 | 24 | import { TraceSource } from "../log/TraceSource"; |
|
|
25 | 25 | import { ConfigError } from "./ConfigError"; |
|
|
26 | 26 | import { Cancellation } from "../Cancellation"; |
| @@ -7,10 +7,16 | |||
|
|
7 | 7 | "lib": [ |
|
|
8 | 8 | "es5", |
|
|
9 | 9 | "es2015.promise", |
|
|
10 | "es2015.symbol" | |
|
|
11 |
|
|
|
|
10 | "es2015.symbol", | |
|
|
11 | "dom" | |
|
|
12 | ], | |
|
|
13 | "rootDirs": [ | |
|
|
14 | "ts", | |
|
|
15 | "amd/ts" | |
|
|
16 | ], | |
|
|
17 | "types": [] | |
|
|
12 | 18 | }, |
|
|
13 | 19 | "include" : [ |
|
|
14 | "ts/**/*.ts" | |
|
|
20 | "ts/**/*.ts", "amd/ts/**/*.ts" | |
|
|
15 | 21 | ] |
|
|
16 | 22 | } No newline at end of file |
|
|
1 | NO CONTENT: file was removed |
General Comments 0
You need to be logged in to leave comments.
Login now
