Browse Source

[improvement] repo, scripts (#220)

* Fix menu, cleanup package.json

* update changelog
main
Steve Ruiz 4 years ago
parent
commit
ec3dae085c
No account linked to committer's email address

+ 4
- 0
CHANGELOG.md View File

1
+## 0.1.3
2
+
3
+- Update dependencies
4
+
1
 ## 0.1.2
5
 ## 0.1.2
2
 
6
 
3
 - Improve migrations.
7
 - Improve migrations.

+ 6
- 9
example/package.json View File

2
   "name": "@tldraw/tldraw-example",
2
   "name": "@tldraw/tldraw-example",
3
   "version": "0.1.2",
3
   "version": "0.1.2",
4
   "private": true,
4
   "private": true,
5
-  "description": "A tiny little drawing app example.",
5
+  "description": "An example project for @tldraw/tldraw.",
6
   "author": "@steveruizok",
6
   "author": "@steveruizok",
7
   "license": "MIT",
7
   "license": "MIT",
8
   "keywords": [
8
   "keywords": [
11
     "esbuild"
11
     "esbuild"
12
   ],
12
   ],
13
   "scripts": {
13
   "scripts": {
14
-    "start": "node ./esbuild.config.mjs --dev tsc --watch"
14
+    "start": "node scripts/dev.mjs -w",
15
+    "build": "node scripts/build.mjs"
15
   },
16
   },
16
-  "files": [
17
-    "README.md",
18
-    "src"
19
-  ],
20
-  "sideEffects": false,
21
   "devDependencies": {
17
   "devDependencies": {
22
-    "react": ">=16.8",
23
-    "react-dom": "^16.8 || ^17.0",
24
     "@liveblocks/client": "^0.12.1",
18
     "@liveblocks/client": "^0.12.1",
25
     "@liveblocks/react": "^0.12.1",
19
     "@liveblocks/react": "^0.12.1",
26
     "@tldraw/tldraw": "^0.1.2",
20
     "@tldraw/tldraw": "^0.1.2",
31
     "concurrently": "6.0.1",
25
     "concurrently": "6.0.1",
32
     "create-serve": "1.0.1",
26
     "create-serve": "1.0.1",
33
     "esbuild": "^0.13.8",
27
     "esbuild": "^0.13.8",
28
+    "esbuild-serve": "^1.0.1",
29
+    "react": ">=16.8",
30
+    "react-dom": "^16.8 || ^17.0",
34
     "react-router": "^5.2.1",
31
     "react-router": "^5.2.1",
35
     "react-router-dom": "^5.3.0",
32
     "react-router-dom": "^5.3.0",
36
     "rimraf": "3.0.2",
33
     "rimraf": "3.0.2",

+ 46
- 0
example/scripts/build.mjs View File

1
+/* eslint-disable */
2
+import fs from 'fs'
3
+import esbuild from 'esbuild'
4
+import { createRequire } from 'module'
5
+
6
+const pkg = createRequire(import.meta.url)('../package.json')
7
+
8
+async function main() {
9
+  if (fs.existsSync('./dist')) {
10
+    fs.rmSync('./dist', { recursive: true }, (e) => {
11
+      if (e) {
12
+        throw e
13
+      }
14
+    })
15
+  }
16
+
17
+  try {
18
+    esbuild.buildSync({
19
+      entryPoints: ['./src/index.tsx'],
20
+      outdir: 'dist',
21
+      minify: true,
22
+      bundle: true,
23
+      format: 'cjs',
24
+      target: 'es6',
25
+      jsxFactory: 'React.createElement',
26
+      jsxFragment: 'React.Fragment',
27
+      tsconfig: './tsconfig.json',
28
+      define: {
29
+        'process.env.NODE_ENV': '"production"',
30
+      },
31
+      metafile: false,
32
+      sourcemap: false,
33
+    })
34
+
35
+    fs.copyFile('./src/index.html', './dist/index.html', (err) => {
36
+      if (err) throw err
37
+    })
38
+
39
+    console.log(`✔ ${pkg.name}: Build completed.`)
40
+  } catch (e) {
41
+    console.log(`× ${pkg.name}: Build failed due to an error.`)
42
+    console.log(e)
43
+  }
44
+}
45
+
46
+main()

+ 45
- 0
example/scripts/dev.mjs View File

1
+/* eslint-disable no-undef */
2
+import fs from 'fs'
3
+import esbuildServe from 'esbuild-serve'
4
+
5
+async function main() {
6
+  if (!fs.existsSync('./dist')) {
7
+    fs.mkdirSync('./dist')
8
+  }
9
+
10
+  fs.copyFile('./src/index.html', './dist/index.html', (err) => {
11
+    if (err) throw err
12
+  })
13
+
14
+  try {
15
+    await esbuildServe(
16
+      {
17
+        entryPoints: ['src/index.tsx'],
18
+        bundle: true,
19
+        outfile: 'dist/bundle.js',
20
+        minify: false,
21
+        sourcemap: true,
22
+        incremental: true,
23
+        target: ['chrome58', 'firefox57', 'safari11', 'edge18'],
24
+        define: {
25
+          'process.env.NODE_ENV': '"development"',
26
+        },
27
+        watch: {
28
+          onRebuild(err) {
29
+            serve.update()
30
+            err ? error('❌ Failed') : log('✅ Updated')
31
+          },
32
+        },
33
+      },
34
+      {
35
+        port: 5000,
36
+        root: './dist',
37
+        live: true,
38
+      }
39
+    )
40
+  } catch (err) {
41
+    process.exit(1)
42
+  }
43
+}
44
+
45
+main()

+ 3
- 0
example/src/controlled.tsx View File

6
   SizeStyle,
6
   SizeStyle,
7
   TLDrawDocument,
7
   TLDrawDocument,
8
   TLDrawShapeType,
8
   TLDrawShapeType,
9
+  TLDrawState,
9
 } from '@tldraw/tldraw'
10
 } from '@tldraw/tldraw'
10
 
11
 
11
 export default function Controlled() {
12
 export default function Controlled() {
12
   const rDocument = React.useRef<TLDrawDocument>({
13
   const rDocument = React.useRef<TLDrawDocument>({
14
+    name: 'New Document',
15
+    version: TLDrawState.version,
13
     id: 'doc',
16
     id: 'doc',
14
     pages: {
17
     pages: {
15
       page1: {
18
       page1: {

+ 2
- 2
package.json View File

17
     "test": "jest",
17
     "test": "jest",
18
     "test:watch": "jest --watchAll",
18
     "test:watch": "jest --watchAll",
19
     "lerna": "lerna",
19
     "lerna": "lerna",
20
-    "start": "lerna run start:pre && lerna run start --stream --parallel",
20
+    "start": "lerna run start --stream --parallel",
21
     "start:www": "yarn build:packages && lerna run start --parallel & cd www && yarn dev",
21
     "start:www": "yarn build:packages && lerna run start --parallel & cd www && yarn dev",
22
     "build": "yarn build:packages && cd www && yarn build",
22
     "build": "yarn build:packages && cd www && yarn build",
23
     "build:packages": "cd packages/tldraw && yarn build",
23
     "build:packages": "cd packages/tldraw && yarn build",
24
-    "publish:patch": "yarn build:packages && lerna publish patch",
24
+    "publish:patch": "yarn test && yarn build:packages && lerna publish patch",
25
     "docs": "lerna run docs",
25
     "docs": "lerna run docs",
26
     "docs:watch": "lerna run docs:watch"
26
     "docs:watch": "lerna run docs:watch"
27
   },
27
   },

+ 190
- 0
packages/tldraw/CHANGELOG.md View File

1
+## 0.1.2
2
+
3
+- Improve migrations.
4
+
5
+## 0.1.1
6
+
7
+- Update dependencies
8
+
9
+## 0.1.0
10
+
11
+- Mark dependencies as external
12
+- Revamp UI
13
+
14
+## 0.0.133
15
+
16
+- Removed libraries (vec, svg, and intersect) to their own repositories.
17
+
18
+## 0.0.133
19
+
20
+- Migration for bindings.
21
+
22
+## 0.0.132
23
+
24
+- Fix bug with bounds handles.
25
+
26
+## 0.0.131
27
+
28
+### TLCore
29
+
30
+- Extracted into its own repository (`tldraw/core`) and open sourced! :clap:
31
+
32
+### TLDraw
33
+
34
+- Updated with latest `@tldraw/core`, updated ShapeUtils API.
35
+
36
+## 0.0.130
37
+
38
+### TLCore
39
+
40
+- Major change to ShapeUtils API
41
+
42
+### TLDraw
43
+
44
+- Rewrite utils with new API.
45
+
46
+## 0.0.126
47
+
48
+### TLDraw
49
+
50
+- Swap behavior of command and alt keys in arrow shapes.
51
+
52
+## 0.0.125
53
+
54
+### TLDraw
55
+
56
+- Bug fixes.
57
+
58
+## 0.0.124
59
+
60
+### TLDraw
61
+
62
+- Fix typings.
63
+
64
+## 0.0.123
65
+
66
+### TLDraw
67
+
68
+- Adds bound shape controls.
69
+- Drag a bound shape control to translate shapes in that direction.
70
+- Double click bound shape controls to select shapes in that direction.
71
+- Fix bug in arrow decorations toggle.
72
+
73
+## 0.0.122
74
+
75
+### TLDraw
76
+
77
+- Adds snapping for transforming shapes.
78
+
79
+## 0.0.121
80
+
81
+### Core
82
+
83
+- Adds `snapLines`.
84
+
85
+### TLDraw
86
+
87
+- Adds shape snapping while translating. Hold Command/Control to disable while dragging.
88
+
89
+## 0.0.120
90
+
91
+### TLDraw
92
+
93
+- Improves rectangle rendering.
94
+- Improves zoom to fit and zoom to selection.
95
+
96
+## 0.0.119
97
+
98
+### TLDraw
99
+
100
+- Fixes bug with bound arrows after undo.
101
+
102
+## 0.0.118
103
+
104
+### Core
105
+
106
+- Improves multiplayer features.
107
+
108
+### TLDraw
109
+
110
+- Fixes bugs in text, arrows, stickies.
111
+- Adds start binding for new arrows.
112
+- Adds copy painting (alt + shift + drag).
113
+- Adds side clonig.
114
+- Adds clone dragging.
115
+
116
+## 0.0.116
117
+
118
+### Core
119
+
120
+- Improves rendering on Safari.
121
+
122
+### TLDraw
123
+
124
+- Improves rendering on Safari.
125
+- Minor bug fixes around selection.
126
+- Fixes bug when undoing a newly created shape.
127
+
128
+## 0.0.115
129
+
130
+### Core
131
+
132
+- Adds [side cloning](https://github.com/tldraw/tldraw/pull/149).
133
+- Improves rendering.
134
+
135
+### TLDraw
136
+
137
+- Adds sticky note [side cloning](https://github.com/tldraw/tldraw/pull/149).
138
+
139
+## 0.0.114
140
+
141
+### TLDraw
142
+
143
+- Improves fills for filled shapes.
144
+
145
+## 0.0.113
146
+
147
+### TLDraw
148
+
149
+- Improves grouping and ungrouping.
150
+
151
+## 0.0.112
152
+
153
+### TLDraw
154
+
155
+- Fixes centering on embedded TLDraw components.
156
+- Removes expensive calls to window.
157
+
158
+## 0.0.111
159
+
160
+### TLDraw
161
+
162
+- Adjust stroke widths and sizes.
163
+- Fixes a bug on very small dashed shapes.
164
+
165
+## 0.0.110
166
+
167
+### Core
168
+
169
+- Adds `user` and `users` props (optional) for multiplayer cursors. This feature is very lightly implemented.
170
+
171
+### TLDraw
172
+
173
+- Adds multiplayer support.
174
+- Adds `showMenu` and `showPages` props.
175
+- Adds `mergeState`, `updateUsers`, and `removeUser` methods.
176
+
177
+## 0.0.109
178
+
179
+### TLDraw
180
+
181
+- Bumps perfect-freehand
182
+- Fixes dots for small sized draw shapes
183
+
184
+## 0.0.108
185
+
186
+- Adds CHANGELOG. Only 108 releases late!
187
+
188
+### TLDraw
189
+
190
+- Fixes a bug with bounding boxes on arrows.

+ 0
- 21
packages/tldraw/LICENSE View File

1
-MIT License
2
-
3
-Copyright (c) 2021 Stephen Ruiz Ltd
4
-
5
-Permission is hereby granted, free of charge, to any person obtaining a copy
6
-of this software and associated documentation files (the "Software"), to deal
7
-in the Software without restriction, including without limitation the rights
8
-to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9
-copies of the Software, and to permit persons to whom the Software is
10
-furnished to do so, subject to the following conditions:
11
-
12
-The above copyright notice and this permission notice shall be included in all
13
-copies or substantial portions of the Software.
14
-
15
-THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
-IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17
-FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18
-AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19
-LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20
-OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21
-SOFTWARE.

+ 13
- 11
packages/tldraw/package.json View File

1
 {
1
 {
2
   "name": "@tldraw/tldraw",
2
   "name": "@tldraw/tldraw",
3
   "version": "0.1.2",
3
   "version": "0.1.2",
4
-  "private": false,
5
   "description": "A tiny little drawing app (editor)",
4
   "description": "A tiny little drawing app (editor)",
6
   "author": "@steveruizok",
5
   "author": "@steveruizok",
7
   "repository": {
6
   "repository": {
8
     "type": "git",
7
     "type": "git",
9
-    "url": "git+https://github.com/tldraw/tldraw.git",
10
-    "directory": "packages/tldraw"
8
+    "url": "git+https://github.com/tldraw/tldraw.git"
11
   },
9
   },
12
   "license": "MIT",
10
   "license": "MIT",
13
-  "keywords": [],
11
+  "keywords": [
12
+    "react",
13
+    "canvas",
14
+    "zoom",
15
+    "drawing",
16
+    "whiteboard"
17
+  ],
14
   "files": [
18
   "files": [
15
     "dist/**/*"
19
     "dist/**/*"
16
   ],
20
   ],
17
   "main": "./dist/cjs/index.js",
21
   "main": "./dist/cjs/index.js",
18
   "module": "./dist/esm/index.js",
22
   "module": "./dist/esm/index.js",
19
   "types": "./dist/types/index.d.ts",
23
   "types": "./dist/types/index.d.ts",
20
-  "typings": "./dist/types/index.d.ts",
21
   "scripts": {
24
   "scripts": {
22
     "start": "node scripts/dev & yarn types:dev",
25
     "start": "node scripts/dev & yarn types:dev",
23
     "build": "node scripts/build && yarn types:build && node scripts/copy-readme",
26
     "build": "node scripts/build && yarn types:build && node scripts/copy-readme",
24
-    "types:pre": "tsc",
25
     "types:dev": "tsc -w",
27
     "types:dev": "tsc -w",
26
     "types:build": "tsc -p tsconfig.build.json && tsconfig-replace-paths -p tsconfig.build.json",
28
     "types:build": "tsc -p tsconfig.build.json && tsconfig-replace-paths -p tsconfig.build.json",
27
     "lint": "eslint src/ --ext .ts,.tsx",
29
     "lint": "eslint src/ --ext .ts,.tsx",
32
   },
34
   },
33
   "peerDependencies": {
35
   "peerDependencies": {
34
     "react": ">=16.8",
36
     "react": ">=16.8",
35
-    "react-dom": "^16.8 || ^17.0",
36
-    "tslib": "^2.3.1"
37
+    "react-dom": "^16.8 || ^17.0"
37
   },
38
   },
38
   "dependencies": {
39
   "dependencies": {
39
     "@radix-ui/react-alert-dialog": "^0.1.1",
40
     "@radix-ui/react-alert-dialog": "^0.1.1",
45
     "@radix-ui/react-radio-group": "^0.1.1",
46
     "@radix-ui/react-radio-group": "^0.1.1",
46
     "@radix-ui/react-tooltip": "^0.1.1",
47
     "@radix-ui/react-tooltip": "^0.1.1",
47
     "@stitches/react": "^1.2.5",
48
     "@stitches/react": "^1.2.5",
48
-    "@tldraw/core": "^0.1.17",
49
+    "@tldraw/core": "^0.1.18",
49
     "@tldraw/intersect": "^0.1.3",
50
     "@tldraw/intersect": "^0.1.3",
50
     "@tldraw/vec": "^0.1.3",
51
     "@tldraw/vec": "^0.1.3",
51
     "perfect-freehand": "^1.0.16",
52
     "perfect-freehand": "^1.0.16",
52
     "react-hotkeys-hook": "^3.4.0",
53
     "react-hotkeys-hook": "^3.4.0",
53
-    "rko": "^0.6.0"
54
+    "rko": "^0.6.0",
55
+    "tslib": "^2.3.1"
54
   },
56
   },
55
   "devDependencies": {
57
   "devDependencies": {
56
     "tsconfig-replace-paths": "^0.0.5"
58
     "tsconfig-replace-paths": "^0.0.5"
57
   },
59
   },
58
   "gitHead": "083b36e167b6911927a6b58cbbb830b11b33f00a"
60
   "gitHead": "083b36e167b6911927a6b58cbbb830b11b33f00a"
59
-}
61
+}

+ 5
- 43
packages/tldraw/scripts/build.js View File

2
 const fs = require('fs')
2
 const fs = require('fs')
3
 const esbuild = require('esbuild')
3
 const esbuild = require('esbuild')
4
 const { gzip } = require('zlib')
4
 const { gzip } = require('zlib')
5
-
6
-const name = process.env.npm_package_name || ''
5
+const pkg = require('../package.json')
7
 
6
 
8
 async function main() {
7
 async function main() {
9
   if (fs.existsSync('./dist')) {
8
   if (fs.existsSync('./dist')) {
25
       jsxFactory: 'React.createElement',
24
       jsxFactory: 'React.createElement',
26
       jsxFragment: 'React.Fragment',
25
       jsxFragment: 'React.Fragment',
27
       tsconfig: './tsconfig.json',
26
       tsconfig: './tsconfig.json',
28
-      external: [
29
-        'react',
30
-        'react-dom',
31
-        'tslib',
32
-        '@stitches/react',
33
-        '@radix-ui/react-alert-dialog',
34
-        '@radix-ui/react-checkbox',
35
-        '@radix-ui/react-context-menu',
36
-        '@radix-ui/react-dropdown-menu',
37
-        '@radix-ui/react-icons',
38
-        '@radix-ui/react-id',
39
-        '@radix-ui/react-radio',
40
-        '@radix-ui/react-tooltip',
41
-        'perfect-freehand',
42
-        'rko',
43
-        'react-hotkeys-hook',
44
-        'browser-fs-access',
45
-      ],
27
+      external: Object.keys(pkg.dependencies).concat(Object.keys(pkg.peerDependencies)),
46
       metafile: true,
28
       metafile: true,
47
     })
29
     })
48
 
30
 
56
       tsconfig: './tsconfig.build.json',
38
       tsconfig: './tsconfig.build.json',
57
       jsxFactory: 'React.createElement',
39
       jsxFactory: 'React.createElement',
58
       jsxFragment: 'React.Fragment',
40
       jsxFragment: 'React.Fragment',
59
-      external: [
60
-        'react',
61
-        'react-dom',
62
-        'tslib',
63
-        '@stitches/react',
64
-        '@radix-ui/react-alert-dialog',
65
-        '@radix-ui/react-checkbox',
66
-        '@radix-ui/react-context-menu',
67
-        '@radix-ui/react-dropdown-menu',
68
-        '@radix-ui/react-icons',
69
-        '@radix-ui/react-id',
70
-        '@radix-ui/react-radio',
71
-        '@radix-ui/react-tooltip',
72
-        '@tldraw/core',
73
-        '@tldraw/vec',
74
-        '@tldraw/intersect',
75
-        'perfect-freehand',
76
-        'rko',
77
-        'react-hotkeys-hook',
78
-        'browser-fs-access',
79
-      ],
41
+      external: Object.keys(pkg.dependencies).concat(Object.keys(pkg.peerDependencies)),
80
       metafile: true,
42
       metafile: true,
81
     })
43
     })
82
 
44
 
88
     fs.readFile('./dist/esm/index.js', (_err, data) => {
50
     fs.readFile('./dist/esm/index.js', (_err, data) => {
89
       gzip(data, (_err, result) => {
51
       gzip(data, (_err, result) => {
90
         console.log(
52
         console.log(
91
-          `✔ ${name}: Built package. ${(esmSize / 1000).toFixed(2)}kb (${(
53
+          `✔ ${pkg.name}: Built pkg. ${(esmSize / 1000).toFixed(2)}kb (${(
92
             result.length / 1000
54
             result.length / 1000
93
           ).toFixed(2)}kb minified)`
55
           ).toFixed(2)}kb minified)`
94
         )
56
         )
95
       })
57
       })
96
     })
58
     })
97
   } catch (e) {
59
   } catch (e) {
98
-    console.log(`× ${name}: Build failed due to an error.`)
60
+    console.log(`× ${pkg.name}: Build failed due to an error.`)
99
     console.log(e)
61
     console.log(e)
100
   }
62
   }
101
 }
63
 }

+ 1
- 1
packages/tldraw/scripts/copy-readme.js View File

1
 /* eslint-disable */
1
 /* eslint-disable */
2
 const fs = require('fs')
2
 const fs = require('fs')
3
 
3
 
4
-const filesToCopy = ['README.md', 'LICENSE.md', 'card-repo.png']
4
+const filesToCopy = ['README.md', 'CHANGELOG.md', 'LICENSE.md', 'card-repo.png']
5
 
5
 
6
 filesToCopy.forEach((file) => {
6
 filesToCopy.forEach((file) => {
7
   fs.copyFile(`../../${file}`, `./${file}`, (err) => {
7
   fs.copyFile(`../../${file}`, `./${file}`, (err) => {

+ 4
- 25
packages/tldraw/scripts/dev.js View File

1
 /* eslint-disable */
1
 /* eslint-disable */
2
 const esbuild = require('esbuild')
2
 const esbuild = require('esbuild')
3
-
4
-const name = process.env.npm_package_name || ''
3
+const pkg = require('../package.json')
5
 
4
 
6
 async function main() {
5
 async function main() {
7
   esbuild.build({
6
   esbuild.build({
14
     jsxFactory: 'React.createElement',
13
     jsxFactory: 'React.createElement',
15
     jsxFragment: 'React.Fragment',
14
     jsxFragment: 'React.Fragment',
16
     tsconfig: './tsconfig.build.json',
15
     tsconfig: './tsconfig.build.json',
17
-    external: [
18
-      'react',
19
-      'react-dom',
20
-      'tslib',
21
-      '@stitches/react',
22
-      '@radix-ui/react-alert-dialog',
23
-      '@radix-ui/react-checkbox',
24
-      '@radix-ui/react-context-menu',
25
-      '@radix-ui/react-dropdown-menu',
26
-      '@radix-ui/react-icons',
27
-      '@radix-ui/react-id',
28
-      '@radix-ui/react-radio',
29
-      '@radix-ui/react-tooltip',
30
-      '@tldraw/core',
31
-      '@tldraw/vec',
32
-      '@tldraw/intersect',
33
-      'perfect-freehand',
34
-      'rko',
35
-      'react-hotkeys-hook',
36
-      'browser-fs-access',
37
-    ],
16
+    external: Object.keys(pkg.dependencies).concat(Object.keys(pkg.peerDependencies)),
38
     sourcemap: true,
17
     sourcemap: true,
39
     incremental: true,
18
     incremental: true,
40
     watch: {
19
     watch: {
41
       onRebuild(error) {
20
       onRebuild(error) {
42
         if (error) {
21
         if (error) {
43
-          console.log(`× ${name}: An error in prevented the rebuild.`)
22
+          console.log(`× ${pkg.name}: An error in prevented the rebuild.`)
44
           return
23
           return
45
         }
24
         }
46
-        console.log(`✔ ${name}: Rebuilt.`)
25
+        console.log(`✔ ${pkg.name}: Rebuilt.`)
47
       },
26
       },
48
     },
27
     },
49
   })
28
   })

+ 0
- 47
packages/tldraw/scripts/pre-dev.js View File

1
-/* eslint-disable */
2
-const fs = require('fs')
3
-const esbuild = require('esbuild')
4
-
5
-async function main() {
6
-  if (fs.existsSync('./dist')) {
7
-    fs.rmSync('./dist', { recursive: true }, (e) => {
8
-      if (e) {
9
-        throw e
10
-      }
11
-    })
12
-  }
13
-
14
-  esbuild.build({
15
-    entryPoints: ['./src/index.ts'],
16
-    outdir: 'dist/esm',
17
-    minify: false,
18
-    bundle: true,
19
-    format: 'esm',
20
-    target: 'es6',
21
-    jsxFactory: 'React.createElement',
22
-    jsxFragment: 'React.Fragment',
23
-    tsconfig: './tsconfig.build.json',
24
-    external: [
25
-      'react',
26
-      'react-dom',
27
-      'tslib',
28
-      '@stitches/react',
29
-      '@radix-ui/react-alert-dialog',
30
-      '@radix-ui/react-checkbox',
31
-      '@radix-ui/react-context-menu',
32
-      '@radix-ui/react-dropdown-menu',
33
-      '@radix-ui/react-icons',
34
-      '@radix-ui/react-id',
35
-      '@radix-ui/react-radio',
36
-      '@radix-ui/react-tooltip',
37
-      '@tldraw/core',
38
-      '@tldraw/vec',
39
-      '@tldraw/intersect',
40
-      'perfect-freehand',
41
-      'rko',
42
-      'react-hotkeys-hook',
43
-    ],
44
-  })
45
-}
46
-
47
-main()

+ 1
- 1
packages/tldraw/src/components/TopPanel/Menu.tsx View File

121
         {showSignInOutMenu && (
121
         {showSignInOutMenu && (
122
           <>
122
           <>
123
             <DMDivider dir="ltr" />{' '}
123
             <DMDivider dir="ltr" />{' '}
124
-            {callbacks.onSignIn && <DMItem onSelect={handleSignOut}>Sign In</DMItem>}
124
+            {callbacks.onSignIn && <DMItem onSelect={handleSignIn}>Sign In</DMItem>}
125
             {callbacks.onSignOut && (
125
             {callbacks.onSignOut && (
126
               <DMItem onSelect={handleSignOut}>
126
               <DMItem onSelect={handleSignOut}>
127
                 Sign Out
127
                 Sign Out

+ 1
- 1
www/package.json View File

42
     "typescript": "^4.4.2"
42
     "typescript": "^4.4.2"
43
   },
43
   },
44
   "gitHead": "838fabdbff1a66d4d7ee8aa5c5d117bc55acbff2"
44
   "gitHead": "838fabdbff1a66d4d7ee8aa5c5d117bc55acbff2"
45
-}
45
+}

+ 23
- 10
yarn.lock View File

3014
     "@babel/runtime" "^7.12.5"
3014
     "@babel/runtime" "^7.12.5"
3015
     "@testing-library/dom" "^8.0.0"
3015
     "@testing-library/dom" "^8.0.0"
3016
 
3016
 
3017
-"@tldraw/core@^0.1.17":
3018
-  version "0.1.17"
3019
-  resolved "https://registry.yarnpkg.com/@tldraw/core/-/core-0.1.17.tgz#ff3868ab00f2b28a83259e84bfc534e4fac09bf4"
3020
-  integrity sha512-nWqQTQYQXgaB5vNI1N8AZlKOfsajVK1xBTnCCpkKzZuOcw+B7w0hTVwE0Mfy6HpONeBGWYoKyCC12ABQvqTV7Q==
3017
+"@tldraw/core@^0.1.18":
3018
+  version "0.1.18"
3019
+  resolved "https://registry.yarnpkg.com/@tldraw/core/-/core-0.1.18.tgz#b768c759c205038c9b8c7b9c9e018c67c49be0de"
3020
+  integrity sha512-Oe5cPVb76oENbvJa+QDuZLfW0wXwc1XNntDB0szFq4HUofd6CtG+4P5ZXtnc0pAff61Pyp5ajwozogNy5+sVlA==
3021
   dependencies:
3021
   dependencies:
3022
-    "@tldraw/intersect" "^0.1.3"
3023
-    "@tldraw/vec" "^0.1.3"
3022
+    "@tldraw/intersect" latest
3023
+    "@tldraw/vec" latest
3024
     "@use-gesture/react" "^10.1.3"
3024
     "@use-gesture/react" "^10.1.3"
3025
 
3025
 
3026
-"@tldraw/intersect@^0.1.3":
3026
+"@tldraw/intersect@^0.1.3", "@tldraw/intersect@latest":
3027
   version "0.1.3"
3027
   version "0.1.3"
3028
   resolved "https://registry.yarnpkg.com/@tldraw/intersect/-/intersect-0.1.3.tgz#ea784576632084710cebab0ff0a56de9d2cb6fa4"
3028
   resolved "https://registry.yarnpkg.com/@tldraw/intersect/-/intersect-0.1.3.tgz#ea784576632084710cebab0ff0a56de9d2cb6fa4"
3029
   integrity sha512-8NeLOuVmiqhHTBeqFuMP3ljS8vUirenMteX336O+/2H4IfT3FiJjeN3qZyTT5N5jZvaHJKraHOp4E45wraoNZQ==
3029
   integrity sha512-8NeLOuVmiqhHTBeqFuMP3ljS8vUirenMteX336O+/2H4IfT3FiJjeN3qZyTT5N5jZvaHJKraHOp4E45wraoNZQ==
3030
   dependencies:
3030
   dependencies:
3031
     "@tldraw/vec" "^0.1.3"
3031
     "@tldraw/vec" "^0.1.3"
3032
 
3032
 
3033
-"@tldraw/vec@^0.1.3":
3033
+"@tldraw/vec@^0.1.3", "@tldraw/vec@latest":
3034
   version "0.1.3"
3034
   version "0.1.3"
3035
   resolved "https://registry.yarnpkg.com/@tldraw/vec/-/vec-0.1.3.tgz#9c2ea9592058dd1458b49dbd817690a0c74e5473"
3035
   resolved "https://registry.yarnpkg.com/@tldraw/vec/-/vec-0.1.3.tgz#9c2ea9592058dd1458b49dbd817690a0c74e5473"
3036
   integrity sha512-QIQu6xHWqYBarfCR2Cd55pb+HECCEFI3RlU0VEueztzGe2k5Mwcv1EuuIdPTZ1tg5o95Deo7mYgZKeZTcUCIxA==
3036
   integrity sha512-QIQu6xHWqYBarfCR2Cd55pb+HECCEFI3RlU0VEueztzGe2k5Mwcv1EuuIdPTZ1tg5o95Deo7mYgZKeZTcUCIxA==
4802
     safe-buffer "^5.0.1"
4802
     safe-buffer "^5.0.1"
4803
     sha.js "^2.4.8"
4803
     sha.js "^2.4.8"
4804
 
4804
 
4805
-create-serve@1.0.1:
4805
+create-serve@1.0.1, create-serve@^1.0.1:
4806
   version "1.0.1"
4806
   version "1.0.1"
4807
   resolved "https://registry.yarnpkg.com/create-serve/-/create-serve-1.0.1.tgz#a52ec4cbd2d0f776d3e42338fa1f0dae69080c59"
4807
   resolved "https://registry.yarnpkg.com/create-serve/-/create-serve-1.0.1.tgz#a52ec4cbd2d0f776d3e42338fa1f0dae69080c59"
4808
   integrity sha512-cDAmBGhkwolS7ihq7SnPE8KwjYUZl5FaI9Pq5ZBwNelSKvFR9OoAA4/B5BfB/NC+eYaykBpX9RVMfuU4DHtrPw==
4808
   integrity sha512-cDAmBGhkwolS7ihq7SnPE8KwjYUZl5FaI9Pq5ZBwNelSKvFR9OoAA4/B5BfB/NC+eYaykBpX9RVMfuU4DHtrPw==
5461
   resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.12.tgz#adde32f2f1b05dc4bd4fc544d6ea5a4379f9ca4d"
5461
   resolved "https://registry.yarnpkg.com/esbuild-openbsd-64/-/esbuild-openbsd-64-0.13.12.tgz#adde32f2f1b05dc4bd4fc544d6ea5a4379f9ca4d"
5462
   integrity sha512-KuLCmYMb2kh05QuPJ+va60bKIH5wHL8ypDkmpy47lzwmdxNsuySeCMHuTv5o2Af1RUn5KLO5ZxaZeq4GEY7DaQ==
5462
   integrity sha512-KuLCmYMb2kh05QuPJ+va60bKIH5wHL8ypDkmpy47lzwmdxNsuySeCMHuTv5o2Af1RUn5KLO5ZxaZeq4GEY7DaQ==
5463
 
5463
 
5464
+esbuild-serve@^1.0.1:
5465
+  version "1.0.1"
5466
+  resolved "https://registry.yarnpkg.com/esbuild-serve/-/esbuild-serve-1.0.1.tgz#c388c8ff184477ec6b6278d615da8d3177e5174f"
5467
+  integrity sha512-VvYDThNuwg+YAuZC+RqAgw9TpEVGoDdcvm2mTL0lU+TxDXr+QGZfJ+zc6m7cXeJ940qijvdTSZl3mQbRGN4/PA==
5468
+  dependencies:
5469
+    create-serve "^1.0.1"
5470
+    esbuild "^0.9.0"
5471
+
5464
 esbuild-sunos-64@0.13.12:
5472
 esbuild-sunos-64@0.13.12:
5465
   version "0.13.12"
5473
   version "0.13.12"
5466
   resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.13.12.tgz#a7ecaf52b7364fbee76dc8aa707fa3e1cff3342c"
5474
   resolved "https://registry.yarnpkg.com/esbuild-sunos-64/-/esbuild-sunos-64-0.13.12.tgz#a7ecaf52b7364fbee76dc8aa707fa3e1cff3342c"
5504
     esbuild-windows-64 "0.13.12"
5512
     esbuild-windows-64 "0.13.12"
5505
     esbuild-windows-arm64 "0.13.12"
5513
     esbuild-windows-arm64 "0.13.12"
5506
 
5514
 
5515
+esbuild@^0.9.0:
5516
+  version "0.9.7"
5517
+  resolved "https://registry.yarnpkg.com/esbuild/-/esbuild-0.9.7.tgz#ea0d639cbe4b88ec25fbed4d6ff00c8d788ef70b"
5518
+  integrity sha512-VtUf6aQ89VTmMLKrWHYG50uByMF4JQlVysb8dmg6cOgW8JnFCipmz7p+HNBl+RR3LLCuBxFGVauAe2wfnF9bLg==
5519
+
5507
 escalade@^3.1.1:
5520
 escalade@^3.1.1:
5508
   version "3.1.1"
5521
   version "3.1.1"
5509
   resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
5522
   resolved "https://registry.yarnpkg.com/escalade/-/escalade-3.1.1.tgz#d8cfdc7000965c5a0174b4a82eaa5c0552742e40"
11565
   resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
11578
   resolved "https://registry.yarnpkg.com/tslib/-/tslib-1.14.1.tgz#cf2d38bdc34a134bcaf1091c41f6619e2f672d00"
11566
   integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
11579
   integrity sha512-Xni35NKzjgMrwevysHTCArtLDpPvye8zV/0E4EyYn43P7/7qvQwPh9BGkHewbMulVntbigmcT7rdX3BNo9wRJg==
11567
 
11580
 
11568
-tslib@^2.1.0, tslib@^2.3.0:
11581
+tslib@^2.1.0, tslib@^2.3.0, tslib@^2.3.1:
11569
   version "2.3.1"
11582
   version "2.3.1"
11570
   resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01"
11583
   resolved "https://registry.yarnpkg.com/tslib/-/tslib-2.3.1.tgz#e8a335add5ceae51aa261d32a490158ef042ef01"
11571
   integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==
11584
   integrity sha512-77EbyPPpMz+FRFRuAFlWMtmgUWGe9UOG2Z25NqCwiIjRhOf5iKGuzSe5P2w1laq+FkRy4p+PCuVkJSGkzTEKVw==

Loading…
Cancel
Save