1
1
import { require as requireDefault } from "d3-require" ;
2
2
import DOM from "./dom/index.js" ;
3
3
import Files from "./files/index.js" ;
4
- import { AbstractFile , NoFileAttachments } from "./fileAttachment.js" ;
4
+ import { AbstractFile , FileAttachment , NoFileAttachments } from "./fileAttachment.js" ;
5
5
import Generators from "./generators/index.js" ;
6
6
import html from "./html.js" ;
7
7
import md from "./md.js" ;
@@ -22,28 +22,45 @@ export default Object.assign(function Library(resolver) {
22
22
const require = requirer ( resolver ) ;
23
23
Object . defineProperties ( this , properties ( {
24
24
FileAttachment : ( ) => NoFileAttachments ,
25
- Arrow : ( ) => require ( arrow . resolve ( ) ) ,
26
- Inputs : ( ) => require ( inputs . resolve ( ) ) . then ( Inputs => ( { ...Inputs , file : Inputs . fileOf ( AbstractFile ) } ) ) ,
27
25
Mutable : ( ) => Mutable ,
28
- Plot : ( ) => require ( plot . resolve ( ) ) ,
29
- SQLite : ( ) => SQLite ( require ) ,
30
- SQLiteDatabaseClient : ( ) => SQLiteDatabaseClient ,
31
- _ : ( ) => require ( lodash . resolve ( ) ) ,
32
- aq : ( ) => require . alias ( { "apache-arrow" : arrow . resolve ( ) } ) ( arquero . resolve ( ) ) ,
33
- d3 : ( ) => require ( d3 . resolve ( ) ) ,
26
+ now,
27
+ width,
28
+
29
+ // Tagged template literals
34
30
dot : ( ) => require ( graphviz . resolve ( ) ) ,
35
31
htl : ( ) => require ( htl . resolve ( ) ) ,
36
32
html : ( ) => html ,
37
33
md : ( ) => md ( require ) ,
38
- mermaid : ( ) => mermaid ( require ) ,
39
- now,
40
- require : ( ) => require ,
41
- resolve : ( ) => resolve ,
42
34
svg : ( ) => svg ,
43
35
tex : ( ) => tex ( require ) ,
36
+
37
+ // Recommended libraries
38
+ // https://observablehq.com/@observablehq /recommended-libraries
39
+ _ : ( ) => require ( lodash . resolve ( ) ) ,
40
+ aq : ( ) => require . alias ( { "apache-arrow" : arrow . resolve ( ) } ) ( arquero . resolve ( ) ) ,
41
+ Arrow : ( ) => require ( arrow . resolve ( ) ) ,
42
+ d3 : ( ) => require ( d3 . resolve ( ) ) ,
43
+ Inputs : ( ) => require ( inputs . resolve ( ) ) . then ( Inputs => ( { ...Inputs , file : Inputs . fileOf ( AbstractFile ) } ) ) ,
44
+ mermaid : ( ) => mermaid ( require ) ,
45
+ Plot : ( ) => require ( plot . resolve ( ) ) ,
46
+ require : ( ) => require ,
47
+ resolve : ( ) => resolve , // deprecated; use async require.resolve instead
48
+ SQLite : ( ) => SQLite ( require ) ,
49
+ SQLiteDatabaseClient : ( ) => SQLiteDatabaseClient ,
44
50
topojson : ( ) => require ( topojson . resolve ( ) ) ,
45
51
vl : ( ) => vegalite ( require ) ,
46
- width,
52
+
53
+ // Sample datasets
54
+ // https://observablehq.com/@observablehq /datasets
55
+ aapl : ( ) => new FileAttachment ( "https://static.observableusercontent.com/files/3ccff97fd2d93da734e76829b2b066eafdaac6a1fafdec0faf6ebc443271cfc109d29e80dd217468fcb2aff1e6bffdc73f356cc48feb657f35378e6abbbb63b9" ) . csv ( { typed : true } ) ,
56
+ alphabet : ( ) => new FileAttachment ( "https://static.observableusercontent.com/files/75d52e6c3130b1cae83cda89305e17b50f33e7420ef205587a135e8562bcfd22e483cf4fa2fb5df6dff66f9c5d19740be1cfaf47406286e2eb6574b49ffc685d" ) . csv ( { typed : true } ) ,
57
+ cars : ( ) => new FileAttachment ( "https://static.observableusercontent.com/files/048ec3dfd528110c0665dfa363dd28bc516ffb7247231f3ab25005036717f5c4c232a5efc7bb74bc03037155cb72b1abe85a33d86eb9f1a336196030443be4f6" ) . csv ( { typed : true } ) ,
58
+ citywages : ( ) => new FileAttachment ( "https://static.observableusercontent.com/files/39837ec5121fcc163131dbc2fe8c1a2e0b3423a5d1e96b5ce371e2ac2e20a290d78b71a4fb08b9fa6a0107776e17fb78af313b8ea70f4cc6648fad68ddf06f7a" ) . csv ( { typed : true } ) ,
59
+ diamonds : ( ) => new FileAttachment ( "https://static.observableusercontent.com/files/87942b1f5d061a21fa4bb8f2162db44e3ef0f7391301f867ab5ba718b225a63091af20675f0bfe7f922db097b217b377135203a7eab34651e21a8d09f4e37252" ) . csv ( { typed : true } ) ,
60
+ industries : ( ) => new FileAttachment ( "https://static.observableusercontent.com/files/76f13741128340cc88798c0a0b7fa5a2df8370f57554000774ab8ee9ae785ffa2903010cad670d4939af3e9c17e5e18e7e05ed2b38b848ac2fc1a0066aa0005f" ) . csv ( { typed : true } ) ,
61
+ olympians : ( ) => new FileAttachment ( "https://static.observableusercontent.com/files/31ca24545a0603dce099d10ee89ee5ae72d29fa55e8fc7c9ffb5ded87ac83060d80f1d9e21f4ae8eb04c1e8940b7287d179fe8060d887fb1f055f430e210007c" ) . csv ( { typed : true } ) ,
62
+ penguins : ( ) => new FileAttachment ( "https://static.observableusercontent.com/files/715db1223e067f00500780077febc6cebbdd90c151d3d78317c802732252052ab0e367039872ab9c77d6ef99e5f55a0724b35ddc898a1c99cb14c31a379af80a" ) . csv ( { typed : true } ) ,
63
+ weather : ( ) => new FileAttachment ( "https://static.observableusercontent.com/files/693a46b22b33db0f042728700e0c73e836fa13d55446df89120682d55339c6db7cc9e574d3d73f24ecc9bc7eb9ac9a1e7e104a1ee52c00aab1e77eb102913c1f" ) . csv ( { typed : true } ) ,
47
64
48
65
// Note: these are namespace objects, and thus exposed directly rather than
49
66
// being wrapped in a function. This allows library.Generators to resolve,
0 commit comments