Compare commits

...

26 Commits

Author SHA1 Message Date
437aacf477 Fix isEditingSketch guard to handle no variable 2024-09-27 11:16:50 -04:00
c6fb56058b Add warning 2024-09-27 11:16:50 -04:00
ca2fc1bf38 Change setupSketch to use artifacts output from executor 2024-09-27 11:16:50 -04:00
8e62f07d71 Remove dead code 2024-09-27 11:16:50 -04:00
55ef40d136 Add artifact tracking to line 2024-09-27 11:16:50 -04:00
3b7bbc1642 WIP: Fix setUpDraftSegment to work without a variable
This isn't finished.  It needs to look up the SketchGroup coordinates
without a variable.
2024-09-27 11:16:50 -04:00
1a569af476 Fix modifyAst() to work with top-level expression statements 2024-09-27 11:16:50 -04:00
e9fe455607 WIP: Enable Edit Sketch without variable declaration 2024-09-27 11:16:50 -04:00
35387bbd7d WIP: Add saving artifact from click and getting plane 2024-09-27 11:16:49 -04:00
b26a0f98fc Add id to all artifact types 2024-09-27 11:16:49 -04:00
b697258ad5 Add tracking of artifacts for lineTo, close, circle, and extrude 2024-09-27 11:16:49 -04:00
6c8aa799b4 Add fnv dependency 2024-09-27 11:16:49 -04:00
9ceb247fcd Make engine stream react to prefers-color-scheme media query change (#4008)
* Add event listener for theme media query to update engine theme

* tsc fixes

* Add a Playwright test for UI and engine theme switch

* A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu-latest)

---------

Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-27 11:14:03 -04:00
6303130e08 kcl std lib docs use handlebars now so making changes should be better (1st pass) (#4007)
* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* start of types docs

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu-latest)

* add types files

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* add links

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* better

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* uodates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu-latest)

* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-27 10:37:46 -04:00
47b1c1654a Fix type-check error due to field addition (#4010) 2024-09-27 09:37:27 -04:00
e53bb07843 Bump electron from 32.0.1 to 32.1.2 (#4006)
Bumps [electron](https://github.com/electron/electron) from 32.0.1 to 32.1.2.
- [Release notes](https://github.com/electron/electron/releases)
- [Changelog](https://github.com/electron/electron/blob/main/docs/breaking-changes.md)
- [Commits](https://github.com/electron/electron/compare/v32.0.1...v32.1.2)

---
updated-dependencies:
- dependency-name: electron
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2024-09-27 01:16:07 -04:00
9d0f06b58f add max-min to schemars (#4005)
Signed-off-by: Jess Frazelle <github@jessfraz.com>
2024-09-26 16:33:49 -07:00
20777a60aa KCL: Better docs for patternTransform and int (#4002) 2024-09-26 16:39:19 -05:00
71c5451e3a fix once cell version (#4004)
* updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* A snapshot a day keeps the bugs away! 📷🐛 (OS: ubuntu-latest)

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-26 14:21:28 -07:00
fd21850e48 KCL: 'rem' fn in stdlib (#3999) 2024-09-26 16:00:07 -05:00
294040b618 remove .only error (#4003) 2024-09-27 06:47:18 +10:00
ca95427f21 KCL: Rotations in pattern transform (#3979)
Pattern transforms now have a new `rotation` parameter, letting you rotate each instance of the shape. Currently only rotation around the local origin (i.e. rotating the object around the center of its own bounding box) works correctly. Rotating around a global origin (i.e. center of the scene) will be fixed on the server side soon.
2024-09-26 15:02:45 -05:00
27c6f75a49 disable failing step export test (#4000) 2024-09-27 05:55:42 +10:00
579151a9bb Sketch on chamfer UI (#3918)
* sketch on chamfer start

* working

* step app from getting in weird state when selection face to sketch on

* sketch on chamfer tests

* clean up

* fix test

* fix click selections for chamfers, add tests

* fixture setup (#3964)

* initial break up

* rename main fixture file

* add more expect state pattern

* add fixture comment

* add comments to chamfer function

* typos

* works without pipeExpr
2024-09-26 18:25:05 +10:00
90f0f13d26 Bump kittycad-modeling-cmds (#3971) 2024-09-25 19:23:19 -05:00
1a23d96f7e 2D unclosed sketch Mirror (#3851)
* start of mirror

Signed-off-by: Jess Frazelle <github@jessfraz.com>

fmt

Signed-off-by: Jess Frazelle <github@jessfraz.com>

fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

cleanup

Signed-off-by: Jess Frazelle <github@jessfraz.com>

fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

add mirror

Signed-off-by: Jess Frazelle <github@jessfraz.com>

updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

fixes

Signed-off-by: Jess Frazelle <github@jessfraz.com>

updates

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* fix export tests

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* fix export tests

Signed-off-by: Jess Frazelle <github@jessfraz.com>

* Look at this (photo)Graph *in the voice of Nickelback*

* empty

---------

Signed-off-by: Jess Frazelle <github@jessfraz.com>
Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
2024-09-25 16:12:18 -07:00
232 changed files with 15038 additions and 36890 deletions

View File

@ -4,6 +4,7 @@ on:
- main
paths:
- 'src/wasm-lib/**.rs'
- 'src/wasm-lib/**.hbs'
- '**/Cargo.toml'
- '**/Cargo.lock'
- '**/rust-toolchain.toml'
@ -13,6 +14,7 @@ on:
pull_request:
paths:
- 'src/wasm-lib/**.rs'
- 'src/wasm-lib/**.hbs'
- '**/Cargo.toml'
- '**/Cargo.lock'
- '**/rust-toolchain.toml'

View File

@ -5,6 +5,7 @@ coverage
# Ignore Rust projects:
*.rs
*.hbs
target
src/wasm-lib/pkg
src/wasm-lib/kcl/bindings

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -64,6 +64,7 @@ layout: manual
* [`m`](kcl/m)
* [`max`](kcl/max)
* [`min`](kcl/min)
* [`mirror2d`](kcl/mirror2d)
* [`mm`](kcl/mm)
* [`offsetPlane`](kcl/offsetPlane)
* [`patternCircular2d`](kcl/patternCircular2d)
@ -77,6 +78,7 @@ layout: manual
* [`profileStart`](kcl/profileStart)
* [`profileStartX`](kcl/profileStartX)
* [`profileStartY`](kcl/profileStartY)
* [`rem`](kcl/rem)
* [`revolve`](kcl/revolve)
* [`segAng`](kcl/segAng)
* [`segEndX`](kcl/segEndX)

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -16,20 +16,23 @@ legAngX(hypotenuse: number, leg: number) -> number
* `utilities`
### Arguments
| Name | Type | Description | Required |
|----------|------|-------------|----------|
| `hypotenuse` | `number` | | Yes |
| `leg` | `number` | | Yes |
### Returns
`number`
### Examples
```js
legAngX(5, 3)
```
### Arguments
* `hypotenuse`: `number` (REQUIRED)
* `leg`: `number` (REQUIRED)
### Returns
`number`

View File

@ -16,20 +16,23 @@ legAngY(hypotenuse: number, leg: number) -> number
* `utilities`
### Arguments
| Name | Type | Description | Required |
|----------|------|-------------|----------|
| `hypotenuse` | `number` | | Yes |
| `leg` | `number` | | Yes |
### Returns
`number`
### Examples
```js
legAngY(5, 3)
```
### Arguments
* `hypotenuse`: `number` (REQUIRED)
* `leg`: `number` (REQUIRED)
### Returns
`number`

View File

@ -16,20 +16,23 @@ legLen(hypotenuse: number, leg: number) -> number
* `utilities`
### Arguments
| Name | Type | Description | Required |
|----------|------|-------------|----------|
| `hypotenuse` | `number` | | Yes |
| `leg` | `number` | | Yes |
### Returns
`number`
### Examples
```js
legLen(5, 3)
```
### Arguments
* `hypotenuse`: `number` (REQUIRED)
* `leg`: `number` (REQUIRED)
### Returns
`number`

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

97
docs/kcl/mirror2d.md Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

42
docs/kcl/rem.md Normal file

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,45 @@
---
title: "AngledLineData"
excerpt: "Data to draw an angled line."
layout: manual
---
Data to draw an angled line.
**This schema accepts any of the following:**
An angle and length with explicitly named parameters
**Type:** `object`
## Properties
| Property | Type | Description | Required |
|----------|------|-------------|----------|
| `angle` |`number` (`double`)| The angle of the line (in degrees). | No |
| `length` |`number` (`double`)| The length of the line. | No |
----
An angle and length given as a pair
**Type:** `array`
----

View File

@ -0,0 +1,23 @@
---
title: "AngledLineThatIntersectsData"
excerpt: "Data for drawing an angled line that intersects with a given line."
layout: manual
---
Data for drawing an angled line that intersects with a given line.
**Type:** `object`
## Properties
| Property | Type | Description | Required |
|----------|------|-------------|----------|
| `angle` |`number` (`double`)| The angle of the line. | No |
| `intersectTag` |`object`| The tag of the line to intersect with. | No |
| `offset` |`number` (`double`)| The offset from the intersecting line. | No |

View File

@ -0,0 +1,22 @@
---
title: "AngledLineToData"
excerpt: "Data to draw an angled line to a point."
layout: manual
---
Data to draw an angled line to a point.
**Type:** `object`
## Properties
| Property | Type | Description | Required |
|----------|------|-------------|----------|
| `angle` |`number` (`double`)| The angle of the line. | No |
| `to` |`number` (`double`)| The point to draw to. | No |

53
docs/kcl/types/ArcData.md Normal file
View File

@ -0,0 +1,53 @@
---
title: "ArcData"
excerpt: "Data to draw an arc."
layout: manual
---
Data to draw an arc.
**This schema accepts any of the following:**
Angles and radius with an optional tag.
**Type:** `object`
## Properties
| Property | Type | Description | Required |
|----------|------|-------------|----------|
| `angleEnd` |`number` (`double`)| The end angle. | No |
| `angleStart` |`number` (`double`)| The start angle. | No |
| `radius` |`number` (`double`)| The radius. | No |
----
Center, to and radius with an optional tag.
**Type:** `object`
## Properties
| Property | Type | Description | Required |
|----------|------|-------------|----------|
| `center` |`array`| The center. | No |
| `radius` |`number` (`double`)| The radius. | No |
| `to` |`array`| The to point. | No |
----

View File

@ -0,0 +1,23 @@
---
title: "BezierData"
excerpt: "Data to draw a bezier curve."
layout: manual
---
Data to draw a bezier curve.
**Type:** `object`
## Properties
| Property | Type | Description | Required |
|----------|------|-------------|----------|
| `control1` |`array`| The first control point. | No |
| `control2` |`array`| The second control point. | No |
| `to` |`array`| The to point. | No |

View File

@ -0,0 +1,22 @@
---
title: "ChamferData"
excerpt: "Data for chamfers."
layout: manual
---
Data for chamfers.
**Type:** `object`
## Properties
| Property | Type | Description | Required |
|----------|------|-------------|----------|
| `length` |`number` (`double`)| The length of the chamfer. | No |
| `tags` |`array`| The tags of the paths you want to chamfer. | No |

View File

@ -0,0 +1,22 @@
---
title: "CircleData"
excerpt: "Data for drawing an circle"
layout: manual
---
Data for drawing an circle
**Type:** `object`
## Properties
| Property | Type | Description | Required |
|----------|------|-------------|----------|
| `center` |`array`| The center of the circle. | No |
| `radius` |`number` (`double`)| The circle radius | No |

Some files were not shown because too many files have changed in this diff Show More