Skip to content

Commit

Permalink
fix all eslint error
Browse files Browse the repository at this point in the history
  • Loading branch information
naiteluo committed Jan 17, 2022
1 parent f216376 commit f9f2c33
Show file tree
Hide file tree
Showing 30 changed files with 164 additions and 119 deletions.
3 changes: 3 additions & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
Expand Up @@ -5,3 +5,6 @@ dist
.eslintrc.js
server
*.js
out
**/types/**/*
!tests
3 changes: 2 additions & 1 deletion .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -1,5 +1,6 @@
{
"javascript.preferences.importModuleSpecifier": "relative",
"typescript.preferences.importModuleSpecifier": "relative",
"yarn.enableTouchbar": true
"eslint.alwaysShowStatus": true,
"eslint.lintTask.enable": true
}
30 changes: 30 additions & 0 deletions .vscode/tasks.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
{
// See https://go.microsoft.com/fwlink/?LinkId=733558
// for the documentation about the tasks.json format
"version": "2.0.0",
"tasks": [
{
"label": "eslint project",
"type": "npm",
"script": "eslint",
"problemMatcher": [
{
"owner": "eslint",
"fileLocation": ["relative", "${workspaceFolder}"],
"pattern": {
"regexp": "^(.+):\\s(.+)\\((.+)\\)\\sat\\s(.+):(\\d+):(\\d+):$",
"severity": 1,
"message": 2,
"code": 3,
"file": 4,
"line": 5,
"column": 6
}
}
],
"options": {
"cwd": "${workspaceFolder}"
}
}
]
}
19 changes: 14 additions & 5 deletions global.d.ts
Original file line number Diff line number Diff line change
@@ -1,27 +1,36 @@
import { Mondrian } from "mondrian/lib/mondrian";
declare module "*.svg" {
const value: string;

export default value;
}
declare module "*.jpg" {
const value: string;

export default value;
}

declare module "*.png" {
const value: any;
const value: string;
export default value;
}

declare module "*.frag" {
const value: string;

export default value;
}

declare module "*.vert" {
const value: string;

export default value;
}

declare global {
interface Window {
mo: Mondrian;
moApp: {
mo: Mondrian;
[key: string]: unknown;
};
}
}

export {};
12 changes: 9 additions & 3 deletions packages/mondrian/src/container-manager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,7 @@ export class MondrianContainerManager extends MondrianModuleBase {
*/
private _$container: HTMLElement;

private _$panel: HTMLDivElement | undefined;
private _$panel?: HTMLDivElement;

constructor(private shared: MondrianShared) {
super();
Expand Down Expand Up @@ -76,10 +76,16 @@ export class MondrianContainerManager extends MondrianModuleBase {
}

hidePannel() {
this._$panel!.style.visibility = "hidden";
if (!this._$panel) {
return;
}
this._$panel.style.visibility = "hidden";
}

showPannel() {
this._$panel!.style.visibility = "visible";
if (!this._$panel) {
return;
}
this._$panel.style.visibility = "visible";
}
}
15 changes: 12 additions & 3 deletions packages/mondrian/src/data-manager/data-manager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -72,7 +72,10 @@ export class MondrianDataManager extends MondrianModuleBase {
}

async startRead() {
this.reader = this.downStream!.getReader();
if (!this.downStream) {
throw new Error("downStream is not initialized");
}
this.reader = this.downStream.getReader();
// eslint-disable-next-line no-constant-condition
while (true) {
const { done, value } = await this.reader.read();
Expand All @@ -83,7 +86,10 @@ export class MondrianDataManager extends MondrianModuleBase {
}

async startWrite() {
this.writer = this.upStream!.getWriter();
if (!this.upStream) {
throw new Error("upStream is not initialized");
}
this.writer = this.upStream.getWriter();
}

private delayTime = 300;
Expand Down Expand Up @@ -114,7 +120,10 @@ export class MondrianDataManager extends MondrianModuleBase {
}

async push(datas: IMondrianData[]) {
await this.writer!.write(datas);
if (!this.writer) {
throw new Error("writer is not initialized");
}
await this.writer.write(datas);
}

static EVENT_RECOVER_CONSUMED = "recover:consumed";
Expand Down
4 changes: 2 additions & 2 deletions packages/mondrian/src/data-manager/data.ts
Original file line number Diff line number Diff line change
Expand Up @@ -46,7 +46,7 @@ export interface IMondrianInteractData extends IMondrianCommonData {

export interface IMondrianState {
player: IMondrianPlayerState;
[key: string]: any;
[key: string]: string | number | boolean | object;
}

export interface IMondrianStateData extends IMondrianCommonData {
Expand All @@ -58,7 +58,7 @@ export interface IMondrianActionData extends IMondrianCommonData {
type: MondrianDataType.COMMAND;
data: {
subType: MondrianActionType;
[key: string]: any;
[key: string]: string | number | boolean | object;
};
}

Expand Down
1 change: 0 additions & 1 deletion packages/mondrian/src/data-manager/stream.ts

This file was deleted.

3 changes: 1 addition & 2 deletions packages/mondrian/src/mondrian.ts
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,7 @@ export class Mondrian extends MondrianModuleBase {
this.start();
}

// todo debug only
(window as any).mo = this;
window.mo = this;
}

override async start() {
Expand Down
3 changes: 2 additions & 1 deletion packages/mondrian/src/player/player-manager.ts
Original file line number Diff line number Diff line change
Expand Up @@ -78,7 +78,8 @@ export class MondrianPlayerManager extends MondrianModuleBase {
this.consumers.set(consumerId, consumer);
}

getConsumerByID(id: string) {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
getConsumerByID(_id: string) {
console.warn("to be implemented");
}

Expand Down
18 changes: 11 additions & 7 deletions packages/mondrian/src/player/producer.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,3 @@
import { Application, Container } from "pixi.js";
import { MondrianShared } from "../shared";
import {
IMondrianInteractor,
Expand All @@ -12,7 +11,7 @@ import {
MondrianActionType,
IMondrianState,
} from "../data-manager";
import { MondrianPlayer, IMondrianPlayerState } from "./player";
import { MondrianPlayer } from "./player";
import { MondrianRenderer } from "../renderer/renderer";

export class MondrianProducer
Expand Down Expand Up @@ -65,7 +64,8 @@ export class MondrianProducer
]);
}

onUndo(event: any): void {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
onUndo(_event: unknown): void {
this.dataManager.push([
{
playerID: this.id,
Expand All @@ -75,7 +75,8 @@ export class MondrianProducer
]);
}

onRedo(event: any): void {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
onRedo(_event: unknown): void {
this.dataManager.push([
{
playerID: this.id,
Expand All @@ -85,7 +86,8 @@ export class MondrianProducer
]);
}

onClear(event: any): void {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
onClear(_event: unknown): void {
this.dataManager.push([
{
playerID: this.id,
Expand Down Expand Up @@ -129,11 +131,13 @@ export class MondrianProducer
}
}

onClick(event: any): void {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
onClick(_event: unknown): void {
console.log("implement it");
}

onInput(event: any): void {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
onInput(_event: unknown): void {
console.log("implement it");
}

Expand Down
13 changes: 9 additions & 4 deletions packages/mondrian/src/plugin/brush-plugin.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,8 @@
import { IMondrianData, IMondrianStateData } from "../data-manager";
import {
IMondrianData,
IMondrianInteractData,
IMondrianStateData,
} from "../data-manager";
import { MondrianPlugin, PluginType } from "./plugin";

import { ILineStyleOptions, LINE_CAP, LINE_JOIN } from "@pixi/graphics";
Expand Down Expand Up @@ -106,7 +110,7 @@ export class BrushPlugin extends MondrianPlugin {
return true;
}

override reactDragStart(data: IMondrianData): boolean {
override reactDragStart(data: IMondrianInteractData): boolean {
// todo if we should handle isDrawing === ture here?
const p = { x: data.data.x, y: data.data.y };
this.isDrawing = true;
Expand All @@ -116,14 +120,15 @@ export class BrushPlugin extends MondrianPlugin {
return true;
}

override reactDragMove(data: IMondrianData): boolean {
override reactDragMove(data: IMondrianInteractData): boolean {
if (!this.isDrawing) return false;
const p = { x: data.data.x, y: data.data.y };
this.currentPos = { ...p };
return true;
}

override reactDragEnd(data: IMondrianData): boolean {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
override reactDragEnd(_data: IMondrianInteractData): boolean {
if (!this.isDrawing) return false;
this.isDrawing = false;
this.handler.stop();
Expand Down
7 changes: 1 addition & 6 deletions packages/mondrian/src/plugin/circle-plugin.ts
Original file line number Diff line number Diff line change
@@ -1,10 +1,8 @@
import { MondrianUtils } from "../common/utils";
import {
IMondrianData,
IMondrianStateData,
MondrianDataType,
} from "../data-manager";
import { MondrianShared } from "../shared";
import { BrushName } from "./brush-plugin";
import { PluginType } from "./plugin";
import { ShapePlugin } from "./shape-plugin";
Expand All @@ -14,10 +12,7 @@ export class CirclePlugin extends ShapePlugin {

static override PID = Symbol("circle-plugin");

static override predicate(
data: IMondrianData | null,
shared?: MondrianShared
): boolean {
static override predicate(data: IMondrianData | null): boolean {
if (data === null) return false;
if (data.type === MondrianDataType.SET_STATE) {
if (data as IMondrianStateData) {
Expand Down
9 changes: 2 additions & 7 deletions packages/mondrian/src/plugin/clear-plugin.ts
Original file line number Diff line number Diff line change
@@ -1,19 +1,14 @@
import { BLEND_MODES } from "@pixi/constants";
import { IMondrianData } from "../data-manager";
import { MondrianGraphicsHandler } from "../renderer/grapichs-handler";
import { MondrianRenderer } from "../renderer/renderer";
import { MondrianShared } from "../shared";
import { MondrianPlugin, PluginType } from "./plugin";

export class ClearPlugin extends MondrianPlugin {
static Type = PluginType.Global;

static override PID = Symbol("clear-plugin");

static override predicate(
data: IMondrianData | null,
shared?: MondrianShared
): boolean {
static override predicate(data: IMondrianData | null): boolean {
if (data === null) {
return true;
}
Expand All @@ -24,7 +19,7 @@ export class ClearPlugin extends MondrianPlugin {

// todo do have racing issue in this kind of command
// todo don't react continuous clear command
override reactClear(event: any): boolean {
override reactClear(): boolean {
this.handler = this.renderer.startGraphicsHandler();
this.handler.config({
enableDiscrete: false,
Expand Down
10 changes: 6 additions & 4 deletions packages/mondrian/src/plugin/cursor-plugin.ts
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
import { IMondrianData } from "../data-manager";
import { IMondrianData, IMondrianInteractData } from "../data-manager";
import { MondrianRenderer } from "../renderer/renderer";
import { Sprite, Texture } from "pixi.js";
import { MondrianPlugin, PluginType } from "./plugin";
Expand Down Expand Up @@ -61,7 +61,7 @@ export class CursorPlugin extends MondrianPlugin {
this.triggerHideWhenIdle();
}

override reactDragMove(data: IMondrianData): boolean {
override reactDragMove(data: IMondrianInteractData): boolean {
this.cursor.visible = true;
this.cursor.x = data.data.x;
this.cursor.y = data.data.y - this.cursor.height;
Expand All @@ -83,15 +83,17 @@ export class CursorPlugin extends MondrianPlugin {
}, 1000);
}

override reactKeyDown(data: IMondrianData) {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
override reactKeyDown(_data: IMondrianInteractData) {
if (this.shared.settings.viewport) {
this.cursor.texture = this.cursorDargTexture;
return true;
}
return false;
}

override reactKeyUp(data: IMondrianData) {
// eslint-disable-next-line @typescript-eslint/no-unused-vars
override reactKeyUp(_data: IMondrianInteractData) {
if (this.shared.settings.viewport) {
this.cursor.texture = this.cursorDrawTexture;
return true;
Expand Down
6 changes: 1 addition & 5 deletions packages/mondrian/src/plugin/eraser-plugin.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,6 @@ import {
IMondrianStateData,
MondrianDataType,
} from "../data-manager";
import { MondrianShared } from "../shared";
import { BrushName } from "./brush-plugin";
import { PencilBrushPlugin } from "./pencil-plugin";
import { PluginType } from "./plugin";
Expand All @@ -14,10 +13,7 @@ export class EraserBrushPlugin extends PencilBrushPlugin {

static override PID = Symbol("eraser-plugin");

static override predicate(
data: IMondrianData | null,
shared?: MondrianShared
): boolean {
static override predicate(data: IMondrianData | null): boolean {
if (data === null) return false;
if (data.type === MondrianDataType.SET_STATE) {
if (data as IMondrianStateData) {
Expand Down
Loading

0 comments on commit f9f2c33

Please sign in to comment.