Compare commits

...

14 Commits

2 changed files with 38 additions and 4 deletions

View File

@ -31,6 +31,9 @@ import { useSettingsAuthContext } from 'hooks/useSettingsAuthContext'
import { markOnce } from 'lib/performance'
import { commandBarActor } from 'machines/commandBarMachine'
import { useToken } from 'machines/appMachine'
import { unit } from '@kittycad/lib/dist/types/src'
import { changeKclSettings, unitLengthToUnitLen } from 'lang/wasm'
import { err } from 'lib/trap'
type MachineContext<T extends AnyStateMachine> = {
state: StateFrom<T>
@ -159,7 +162,14 @@ export const FileMachineProvider = ({
createdPath
)
} else {
await window.electron.writeFile(createdPath, input.content ?? '')
const codeToWrite = changeKclSettings(input.content ?? '', {
defaultLengthUnits: unitLengthToUnitLen(
settings.context.modeling.defaultUnit.current
),
defaultAngleUnits: { type: 'Degrees' },
})
if (err(codeToWrite)) return Promise.reject(codeToWrite)
await window.electron.writeFile(createdPath, codeToWrite)
}
}
@ -188,7 +198,15 @@ export const FileMachineProvider = ({
})
createdName = name
createdPath = path
await window.electron.writeFile(createdPath, input.content ?? '')
const codeToWrite = changeKclSettings(input.content ?? '', {
defaultLengthUnits: unitLengthToUnitLen(
settings.context.modeling.defaultUnit.current
),
defaultAngleUnits: { type: 'Degrees' },
})
if (err(codeToWrite)) return Promise.reject(codeToWrite)
await window.electron.writeFile(createdPath, codeToWrite)
}
return {

View File

@ -32,6 +32,8 @@ import {
} from 'lib/constants'
import { codeManager, kclManager } from 'lib/singletons'
import { Project } from 'lib/project'
import { changeKclSettings, unitLengthToUnitLen } from 'lang/wasm'
import { err } from 'lib/trap'
type MachineContext<T extends AnyStateMachine> = {
state?: StateFrom<T>
@ -122,7 +124,14 @@ const ProjectsContextWeb = ({ children }: { children: React.ReactNode }) => {
createFile: fromPromise(async ({ input }) => {
// Browser version doesn't navigate, just overwrites the current file
clearImportSearchParams()
codeManager.updateCodeStateEditor(input.code || '')
const codeToWrite = changeKclSettings(input.code ?? '', {
defaultLengthUnits: unitLengthToUnitLen(
settings.modeling.defaultUnit.current
),
defaultAngleUnits: { type: 'Degrees' },
})
if (err(codeToWrite)) return Promise.reject(codeToWrite)
codeManager.updateCodeStateEditor(codeToWrite)
await codeManager.writeToFile()
await kclManager.executeCode(true)
@ -406,7 +415,14 @@ const ProjectsContextDesktop = ({
})
fileName = name
await window.electron.writeFile(path, input.code || '')
const codeToWrite = changeKclSettings(input.code ?? '', {
defaultLengthUnits: unitLengthToUnitLen(
settings.modeling.defaultUnit.current
),
defaultAngleUnits: { type: 'Degrees' },
})
if (err(codeToWrite)) return Promise.reject(codeToWrite)
await window.electron.writeFile(path, codeToWrite)
return {
message,