This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| (function (){ | |
| const moduleDef = { | |
| "./a.tsx": { | |
| code: function (module, exports, require){ | |
| module.exports = 1 | |
| }, | |
| parent: ["./b.tsx"] | |
| }, | |
| "./b.tsx": { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| class BaseModel { | |
| private deepCloneImpl(oldObject: object, intrinsicTypes: string[], clonedMap: WeakMap<object, unknown>){ | |
| if (!oldObject || typeof oldObject !== "object") return oldObject; | |
| if(clonedMap.has(oldObject)){ | |
| return clonedMap.get(oldObject) | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import { Observable, SubscribableOrPromise, OperatorFunction } from "rxjs" | |
| import { switchMap, tap } from "rxjs/operators" | |
| export type MaterializedResponseState<T> = { loading: true, error: null, value: null | T } | { loading: false, error: Error } | { loading:false, value: T } | |
| export function materializeResponse<T1, T2>(performRequest: (t1: T1) => SubscribableOrPromise<T2>): OperatorFunction<T1, MaterializedResponseState<T2>> { | |
| return (observer: Observable<T1>) => { | |
| let lastResponse = null as null | T2 | |
| return new Observable<MaterializedResponseState<T2>>(subscriber => { | |
| return observer |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| type ObservedValueOfWithoutDefaultValue<T> = T extends Observable<infer U2> ? U2 : T extends Promise<infer U1> ? U1 : never | |
| export type ObservedValueTupleFromArrayWithoutDefaultValue<X> = X extends readonly (Observable<unknown> | Promise<unknown> | null | undefined)[] | |
| ? { [K in keyof X]: ObservedValueOfWithoutDefaultValue<X[K]> } | |
| : never | |
| const mapValue = new WeakMap< | |
| object, | |
| { |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import { Form, Col, Row, Button } from "antd" | |
| import { FormItemProps } from "antd/lib/form" | |
| import { useObservables } from "./use-observables" | |
| import * as React from "react" | |
| import { AbstractControl, ValidationInfo, FormControls, FormControlList } from "./model" | |
| import { CloseOutlined, PlusOutlined, MinusOutlined } from "@ant-design/icons" | |
| type FormItemRenderChildren<T, Meta> = (inputProps: { value?: T; onChange?: (v: T) => void }, behavior: Meta | null, err: ValidationInfo) => React.ReactNode | |
| export function FormItem<T, Meta>({ |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| const EOF = Symbol("EOF") | |
| type TokenStream = { | |
| token: Token | |
| start: number | |
| end: number | |
| }[] | |
| type Token = { | |
| kind: "token" |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| type Unsubscribe = () => void | |
| const NOOP: Unsubscribe = () => {} | |
| interface Observer<T> { | |
| (t: T): void | |
| } | |
| interface Observable<T> { | |
| (ob: Observer<T>): Unsubscribe |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import { Animation, CubicEase, EasingFunction, Mesh, MeshBuilder, MultiMaterial, Scene, Vector3, ActionManager, InterpolateValueAction } from "@babylonjs/core" | |
| import { RACK_HEIGHT, RACK_WIDTH, UNIT_HEIGHT } from "config/canvas-constants" | |
| import { genMultiMaterialMesh } from "utils/canvas-utils" | |
| export class DoorBuilder { | |
| constructor(private scene: Scene, material: MultiMaterial) { | |
| const doorCube = MeshBuilder.CreateBox("door", { width: RACK_WIDTH, height: RACK_HEIGHT, depth: UNIT_HEIGHT }) | |
| genMultiMaterialMesh(doorCube, material) |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| //Idea is borrowed from https://github.com/gnaeus/react-ioc | |
| //Differences are: | |
| //1. Does not require reflect-metadata | |
| //2. Has an additional "useProvider" method | |
| import * as React from "react" | |
| export interface Disposable { | |
| dispose?(): void | |
| } |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| import { BehaviorSubject, Observable, Subscription, SubscribableOrPromise, from } from "rxjs" | |
| import { skip } from "rxjs/operators" | |
| import * as React from "react" | |
| import { useSubscription } from "use-subscription" | |
| type ObservedValueOf<T> = T extends BehaviorSubject<infer U1> ? U1 : T extends Observable<infer U2> ? U2 | null : never | |
| export function useObservables<T>(ob: T | undefined | null): [ObservedValueOf<T>] | |
| export function useObservables<T1, T2>(ob1: T1 | undefined | null, ob2: T2 | undefined | null): [ObservedValueOf<T1>, ObservedValueOf<T2>] | |
| export function useObservables<T1, T2, T3>( |
NewerOlder