char/avril

(wip) why'd you have to go and make things so complicaaaaated?

git clone https://git.t4t.associates/char/avril

Charlotte Somport webstreams extension to typescripte9b1b43

main
2.0 KiB32 linesraw
1use avril_core::Extension;
2
3pub fn init() -> Extension {
4    Extension {
5        name: "ext:webstreams",
6        dependencies: &["ext:web"],
7        ops: vec![],
8        modules: &[
9            (
10                "ext:webstreams/streams.js",
11                include_str!(concat!(env!("OUT_DIR"), "/streams.js")),
12            ),
13            (
14                "ext:webstreams/main.js",
15                concat!(
16                    "import { Array, ArrayBuffer, Object, ObjectDefineProperty as define, ObjectGetOwnPropertyDescriptor as descriptor, ObjectGetPrototypeOf as getPrototype, ObjectSetPrototypeOf as setPrototype, RangeError, ReflectApply as apply, TypeError, Uint8Array, WeakMap, WeakMapPrototypeGet as get, WeakMapPrototypeSet as set, Map, MapPrototypeGet as mapGet, MapPrototypeSet as mapSet, MapPrototypeDelete as mapDelete, MapPrototypeClear as mapClear, MapPrototypeForEach as mapForEach } from 'ext:core/primordials';\n",
17                    "import { markPromiseHandled, newPromise as safeNewPromise, promiseResolve as safePromiseResolve, promiseReject as safePromiseReject, promiseThen as then, promiseAll as safePromiseAll } from 'ext:core/promises';\n",
18                    "import { cloneValue, markUncloneable, registerMarkedTransferable, registerWire } from 'ext:web/serialization.js';\n",
19                    "import { dataCloneError } from 'ext:web/events.js';\n",
20                    include_str!("vendor/polyfill.avril.js"),
21                    "\n",
22                    include_str!(concat!(env!("OUT_DIR"), "/transfer.js")),
23                    "\nimport { op_port_pair, op_port_move, op_port_close } from 'ext:core/ops';\n",
24                    "import { adoptPort, MessagePort, messageData, referencePort, setPortCloseHandler, startPort } from 'ext:web/messaging.js';\n",
25                    "import { addListener } from 'ext:web/events.js';\n",
26                    include_str!(concat!(env!("OUT_DIR"), "/message_transfer.js")),
27                ),
28            ),
29        ],
30        entry_point: Some("ext:webstreams/main.js"),
31    }
32}