s tag
sub tag
details tag
s tag
## `left` alignment
| (function(l, i, v, e) { v = l.createElement(i); v.async = 1; v.src = '//' + (location.host || 'localhost').split(':')[0] + ':35729/livereload.js?snipver=1'; e = l.getElementsByTagName(i)[0]; e.parentNode.insertBefore(v, e)})(document, 'script'); | |
| var viewer = (function (exports,svgPathdata) { | |
| 'use strict'; | |
| /*! ***************************************************************************** | |
| Copyright (c) Microsoft Corporation. All rights reserved. | |
| Licensed under the Apache License, Version 2.0 (the "License"); you may not use | |
| this file except in compliance with the License. You may obtain a copy of the | |
| License at http://www.apache.org/licenses/LICENSE-2.0 |
| var path = require('path'); | |
| var webpack = require('webpack'); | |
| console.log(path.join(__dirname, 'node_modules/brepts/dist/bundle.js')) | |
| module.exports = { | |
| devtool: 'eval-source-map', | |
| entry: [ | |
| 'webpack-dev-server/client?http://localhost:2000', | |
| './src/index' | |
| ], | |
| output: { |
| import fs = require('fs'); | |
| import ts = require('typescript'); | |
| // Create the language service host to allow the LS to communicate with the host | |
| const servicesHost: ts.LanguageServiceHost = { | |
| getScriptFileNames: () => rootFileNames, | |
| getScriptVersion: (fileName) => files[fileName] && files[fileName].version.toString(), | |
| getScriptSnapshot: (fileName) => { | |
| if (!fs.existsSync(fileName)) { | |
| return undefined; |
| // Type definitions for Electron 9.9.9 | |
| // Project: http://electron.atom.io/ | |
| // Definitions by: The Electron Team <https://github.com/electron/electron> | |
| // Definitions: https://github.com/electron/electron-typescript-definitions | |
| /// <reference types="node" /> | |
| type GlobalEvent = Event; | |
| /** @deprecated */ |
| declare module 'r-script' { | |
| interface R { | |
| data(...args: any[]): this | |
| call(callback: (err: any, d: any) => void): void | |
| call(options: R.Options, callback: (err: any, d: any) => void): void | |
| callSync(options: R.Options): any | |
| } | |
| namespace R { | |
| interface Options { | |
| dataframe?: 'rows' | 'colums' | 'values' |
Until microsoft/TypeScript#5453 is implemented, you'll need to create multiple overloads, one for each number of arguments. For example, this is the type definition of a function which takes a function and returns a function with the same arguments but the result wrapped in a Promise.
declare function wrapPromise<R>(f: () => R): () => Promise<R>
declare function wrapPromise<A1, R>(f: (a1: A1) => R): (a1: A1) => Promise<R>
declare function wrapPromise<A1, A2, R>(f: (a1: A1, a2: A2) => R): (a1: A1, a2: A2) => Promise<R>
declare function wrapPromise<A1, A2, A3, R>(f: (a1: A1, a2: A2, a3: A3) => R): (a1: A1, a2: A2, a3: A3) => Promise<R>
declare function wrapPromise<A1, A2, A3, A4, R>(f: (a1: A1, a2: A2, a3: A3, a4: A4) => R): (a1: A1, a2: A2, a3: A3, a4: A4) => Promise<R>
// etc. 8 arguments should be enough for everyone :-P| // see also https://www.npmjs.com/package/subtractiontype.ts | |
| // for literal unions | |
| type Sub0< | |
| O extends string, | |
| D extends string, | |
| > = {[K in O]: (Record<D, never> & Record<string, K>)[K]} | |
| type Sub< |
| ///<reference path="NLA.ts"/> | |
| ///<reference path="NLA.ts"/> | |
| /** | |
| * Java style map. | |
| */ | |
| class CustomMap<K extends { hashCode(): int, equals(x: any): boolean, hashCodes?(): int[], like(x: any): boolean }, V> implements Map<K, V> { | |
| [Symbol.toStringTag]: 'Map' = 'Map' | |
| toString() { |
| ///<reference path="NLA.ts"/> | |
| class CustomSet<T extends Equalable> implements Set<T> { | |
| [Symbol.toStringTag]:'Set' = 'Set' | |
| forEach(callbackfn: (value: T, index: T, set: Set<T>)=>void, thisArg?: any): void { | |
| for (const value of this.entries()) { | |
| callbackfn.call(thisArg, value, value, this) |