playhtml 1.3.0 → 2.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +34 -0
- package/README.md +27 -35
- package/dist/main.d.ts +138 -23
- package/dist/playhtml.es.js +5689 -2830
- package/dist/playhtml.umd.js +7 -7
- package/package.json +25 -3
- package/dist/candle-gif.gif +0 -0
- package/dist/candle-off.png +0 -0
- package/dist/elements.d.ts +0 -88
- package/dist/icon.png +0 -0
- package/dist/noguchi-akari-a1.png +0 -0
- package/dist/noguchi-hanging-lamp.png +0 -0
- package/dist/playhtml-fridge.png +0 -0
- package/dist/playhtml-story.png +0 -0
- package/dist/playhtml.png +0 -0
- package/dist/server.d.ts +0 -4
- package/dist/tags.d.ts +0 -0
- package/dist/types.d.ts +0 -22
package/package.json
CHANGED
|
@@ -1,11 +1,33 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "playhtml",
|
|
3
|
-
"
|
|
3
|
+
"title": "playhtml",
|
|
4
|
+
"description": "Create interactive, collaborative html elements with a single attribute",
|
|
5
|
+
"version": "2.0.0",
|
|
4
6
|
"license": "MIT",
|
|
5
7
|
"type": "module",
|
|
8
|
+
"keywords": [
|
|
9
|
+
"html",
|
|
10
|
+
"collaboration",
|
|
11
|
+
"fun",
|
|
12
|
+
"real-time",
|
|
13
|
+
"persistence",
|
|
14
|
+
"html energy"
|
|
15
|
+
],
|
|
16
|
+
"author": {
|
|
17
|
+
"name": "Spencer Chang",
|
|
18
|
+
"email": "spencerc99@gmail.com"
|
|
19
|
+
},
|
|
20
|
+
"repository": {
|
|
21
|
+
"type": "git",
|
|
22
|
+
"url": "github:spencerc99/playhtml"
|
|
23
|
+
},
|
|
24
|
+
"bugs": {
|
|
25
|
+
"url": "https://github.com/spencerc99/playhtml/issues"
|
|
26
|
+
},
|
|
6
27
|
"main": "./dist/playhtml.umd.js",
|
|
7
28
|
"types": "./dist/main.d.ts",
|
|
8
29
|
"module": "./dist/playhtml.es.js",
|
|
30
|
+
"homepage": "https://playhtml.fun",
|
|
9
31
|
"files": [
|
|
10
32
|
"dist"
|
|
11
33
|
],
|
|
@@ -16,7 +38,7 @@
|
|
|
16
38
|
}
|
|
17
39
|
},
|
|
18
40
|
"scripts": {
|
|
19
|
-
"dev": "vite",
|
|
41
|
+
"dev": "vite --config vite.config.site.ts",
|
|
20
42
|
"build": "tsc && vite build",
|
|
21
43
|
"build-site": "vite build --config vite.config.site.ts",
|
|
22
44
|
"preview": "vite preview",
|
|
@@ -32,7 +54,7 @@
|
|
|
32
54
|
},
|
|
33
55
|
"dependencies": {
|
|
34
56
|
"partykit": "^0.0.0-39cf5ce",
|
|
35
|
-
"
|
|
57
|
+
"profane-words": "^1.5.10",
|
|
36
58
|
"y-indexeddb": "^9.0.11",
|
|
37
59
|
"y-partykit": "^0.0.0-39cf5ce",
|
|
38
60
|
"yjs": "^13.5.44"
|
package/dist/candle-gif.gif
DELETED
|
Binary file
|
package/dist/candle-off.png
DELETED
|
Binary file
|
package/dist/elements.d.ts
DELETED
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
/// <reference lib="dom" />
|
|
2
|
-
import { TagType } from "./types";
|
|
3
|
-
type ModifierKey = "ctrlKey" | "altKey" | "shiftKey" | "metaKey";
|
|
4
|
-
export interface ElementInitializer<T = any, U = any, V = any> {
|
|
5
|
-
defaultData: T | ((element: HTMLElement) => T);
|
|
6
|
-
defaultLocalData?: U | ((element: HTMLElement) => U);
|
|
7
|
-
myDefaultAwareness?: V | ((element: HTMLElement) => V);
|
|
8
|
-
updateElement: (data: ElementEventHandlerData<T, U, V>) => void;
|
|
9
|
-
updateElementAwareness?: (data: ElementAwarenessEventHandlerData<T, U, V>) => void;
|
|
10
|
-
onDrag?: (e: MouseEvent | TouchEvent, eventData: ElementEventHandlerData<T, U, V>) => void;
|
|
11
|
-
onClick?: (e: MouseEvent, eventData: ElementEventHandlerData<T, U, V>) => void;
|
|
12
|
-
onDragStart?: (e: MouseEvent | TouchEvent, eventData: ElementEventHandlerData<T, U, V>) => void;
|
|
13
|
-
additionalSetup?: (eventData: ElementSetupData<T, U, V>) => void;
|
|
14
|
-
resetShortcut?: ModifierKey;
|
|
15
|
-
debounceMs?: number;
|
|
16
|
-
}
|
|
17
|
-
export interface ElementData<T = any, U = any, V = any> extends ElementInitializer<T> {
|
|
18
|
-
data?: T;
|
|
19
|
-
localData?: U;
|
|
20
|
-
awareness?: V;
|
|
21
|
-
element: HTMLElement;
|
|
22
|
-
onChange: (data: T) => void;
|
|
23
|
-
onAwarenessChange: (data: V) => void;
|
|
24
|
-
triggerAwarenessUpdate: () => void;
|
|
25
|
-
}
|
|
26
|
-
interface ElementEventHandlerData<T = any, U = any, V = any> {
|
|
27
|
-
data: T;
|
|
28
|
-
localData: U;
|
|
29
|
-
awareness: V[];
|
|
30
|
-
element: HTMLElement;
|
|
31
|
-
setData: (data: T) => void;
|
|
32
|
-
setLocalData: (data: U) => void;
|
|
33
|
-
setLocalAwareness: (data: V) => void;
|
|
34
|
-
}
|
|
35
|
-
interface ElementAwarenessEventHandlerData<T = any, U = any, V = any> extends ElementEventHandlerData<T, U, V> {
|
|
36
|
-
myAwareness?: V;
|
|
37
|
-
}
|
|
38
|
-
interface ElementSetupData<T = any, U = any, V = any> {
|
|
39
|
-
getData: () => T;
|
|
40
|
-
getLocalData: () => U;
|
|
41
|
-
getAwareness: () => V[];
|
|
42
|
-
getElement: () => HTMLElement;
|
|
43
|
-
setData: (data: T) => void;
|
|
44
|
-
setLocalData: (data: U) => void;
|
|
45
|
-
setLocalAwareness: (data: V) => void;
|
|
46
|
-
}
|
|
47
|
-
export declare const TagTypeToElement: Record<Exclude<TagType, "can-play">, ElementInitializer>;
|
|
48
|
-
export declare class ElementHandler<T = any, U = any, V = any> {
|
|
49
|
-
defaultData: T;
|
|
50
|
-
localData: U;
|
|
51
|
-
awareness: V[];
|
|
52
|
-
selfAwareness?: V;
|
|
53
|
-
element: HTMLElement;
|
|
54
|
-
_data: T;
|
|
55
|
-
onChange: (data: T) => void;
|
|
56
|
-
onAwarenessChange: (data: V) => void;
|
|
57
|
-
debouncedOnChange: (data: T) => void;
|
|
58
|
-
resetShortcut?: ModifierKey;
|
|
59
|
-
updateElement: (data: ElementEventHandlerData<T, U, V>) => void;
|
|
60
|
-
updateElementAwareness?: (data: ElementAwarenessEventHandlerData<T, U, V>) => void;
|
|
61
|
-
triggerAwarenessUpdate?: () => void;
|
|
62
|
-
constructor({ element, onChange, onAwarenessChange, defaultData, defaultLocalData, myDefaultAwareness, data, awareness: awarenessData, updateElement, updateElementAwareness, onClick, onDrag, onDragStart, additionalSetup, resetShortcut, debounceMs, triggerAwarenessUpdate, }: ElementData<T>);
|
|
63
|
-
get data(): T;
|
|
64
|
-
setLocalData(localData: U): void;
|
|
65
|
-
/**
|
|
66
|
-
* // PRIVATE USE ONLY \\
|
|
67
|
-
*
|
|
68
|
-
* Updates the internal state with the given data and handles all the downstream effects. Should only be used by the sync code to ensure one-way
|
|
69
|
-
* reactivity.
|
|
70
|
-
* (e.g. calling `updateElement` and `onChange`)
|
|
71
|
-
*/
|
|
72
|
-
set __data(data: T);
|
|
73
|
-
set __awareness(data: V[]);
|
|
74
|
-
getEventHandlerData(): ElementEventHandlerData<T, U, V>;
|
|
75
|
-
getAwarenessEventHandlerData(): ElementAwarenessEventHandlerData<T, U, V>;
|
|
76
|
-
getSetupData(): ElementSetupData<T, U>;
|
|
77
|
-
/**
|
|
78
|
-
* Public-use setter for data that makes the change to all clients.
|
|
79
|
-
*/
|
|
80
|
-
setData(data: T): void;
|
|
81
|
-
setLocalAwareness(data: V): void;
|
|
82
|
-
setDataDebounced(data: T): void;
|
|
83
|
-
/**
|
|
84
|
-
* Resets the element to its default state.
|
|
85
|
-
*/
|
|
86
|
-
reset(): void;
|
|
87
|
-
}
|
|
88
|
-
export {};
|
package/dist/icon.png
DELETED
|
Binary file
|
|
Binary file
|
|
Binary file
|
package/dist/playhtml-fridge.png
DELETED
|
Binary file
|
package/dist/playhtml-story.png
DELETED
|
Binary file
|
package/dist/playhtml.png
DELETED
|
Binary file
|
package/dist/server.d.ts
DELETED
package/dist/tags.d.ts
DELETED
|
File without changes
|
package/dist/types.d.ts
DELETED
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
export type MoveData = {
|
|
2
|
-
x: number;
|
|
3
|
-
y: number;
|
|
4
|
-
};
|
|
5
|
-
export type SpinData = {
|
|
6
|
-
rotation: number;
|
|
7
|
-
};
|
|
8
|
-
export type GrowData = {
|
|
9
|
-
scale: number;
|
|
10
|
-
maxScale: number;
|
|
11
|
-
isHovering: boolean;
|
|
12
|
-
};
|
|
13
|
-
export declare const CanDuplicateTo = "can-duplicate-to";
|
|
14
|
-
export declare enum TagType {
|
|
15
|
-
"CanPlay" = "can-play",
|
|
16
|
-
"CanMove" = "can-move",
|
|
17
|
-
"CanSpin" = "can-spin",
|
|
18
|
-
"CanGrow" = "can-grow",
|
|
19
|
-
"CanToggle" = "can-toggle",
|
|
20
|
-
"CanDuplicate" = "can-duplicate",
|
|
21
|
-
"CanPost" = "can-post"
|
|
22
|
-
}
|