Skip to content

Commit 890a0c8

Browse files
authored
fix #213; expose Generators as constant (#214)
1 parent 9a62592 commit 890a0c8

File tree

2 files changed

+17
-6
lines changed

2 files changed

+17
-6
lines changed

src/library.js

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -19,28 +19,32 @@ import width from "./width.js";
1919
export default Object.assign(function Library(resolver) {
2020
const require = requirer(resolver);
2121
Object.defineProperties(this, properties({
22-
DOM: () => DOM,
2322
FileAttachment: () => NoFileAttachments,
24-
Files: () => Files,
25-
Generators: () => Generators,
2623
Inputs: () => require("@observablehq/[email protected]/dist/inputs.umd.min.js"),
2724
Mutable: () => Mutable,
2825
Plot: () => require("@observablehq/[email protected]/dist/plot.umd.min.js"),
29-
Promises: () => Promises,
3026
SQLite: () => SQLite(require),
3127
_: () => require("[email protected]/lodash.min.js"),
3228
d3: () => require("[email protected]/dist/d3.min.js"),
3329
dot: () => require("@observablehq/[email protected]/dist/graphviz.min.js"),
3430
htl: () => require("[email protected]/dist/htl.min.js"),
3531
html: () => html,
3632
md: () => md(require),
37-
now: now,
33+
now,
3834
require: () => require,
3935
resolve: () => resolve,
4036
svg: () => svg,
4137
tex: () => tex(require),
4238
vl: () => vegalite(require),
43-
width: width
39+
width,
40+
41+
// Note: these are namespace objects, and thus exposed directly rather than
42+
// being wrapped in a function. This allows library.Generators to resolve,
43+
// rather than needing module.value.
44+
DOM,
45+
Files,
46+
Generators,
47+
Promises
4448
}));
4549
}, {resolve: requireDefault.resolve});
4650

test/generators/generators-test.js

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,13 @@ import range from "../../src/generators/range";
55
import valueAt from "../../src/generators/valueAt";
66
import observe from "../../src/generators/observe";
77
import queue from "../../src/generators/queue";
8+
import Library from "../../src/library";
9+
10+
test("library.Generators.observe is a function", t => {
11+
const library = new Library();
12+
t.equal(typeof library.Generators.observe, "function");
13+
t.end();
14+
});
815

916
test("filter(value, fn) filters", t => {
1017
function* input() {

0 commit comments

Comments
 (0)