* Only show axis planes when there are no errors * run prettier * A snapshot a day keeps the bugs away! 📷🐛 * KclSingleton hasErrors refactor * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 * A snapshot a day keeps the bugs away! 📷🐛 --------- Co-authored-by: github-actions[bot] <github-actions[bot]@users.noreply.github.com>
This commit is contained in:
Binary file not shown.
Before Width: | Height: | Size: 50 KiB After Width: | Height: | Size: 49 KiB |
Binary file not shown.
Before Width: | Height: | Size: 72 KiB After Width: | Height: | Size: 72 KiB |
@ -78,7 +78,7 @@ export class KclManager {
|
|||||||
private _isExecuting = false
|
private _isExecuting = false
|
||||||
private _executeIsStale: ExecuteArgs | null = null
|
private _executeIsStale: ExecuteArgs | null = null
|
||||||
private _wasmInitFailed = true
|
private _wasmInitFailed = true
|
||||||
private _hasErrors = false
|
private _astParseFailed = false
|
||||||
private _switchedFiles = false
|
private _switchedFiles = false
|
||||||
private _fileSettings: KclSettingsAnnotation = {}
|
private _fileSettings: KclSettingsAnnotation = {}
|
||||||
private _kclVersion: string | undefined = undefined
|
private _kclVersion: string | undefined = undefined
|
||||||
@ -167,7 +167,7 @@ export class KclManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
hasErrors(): boolean {
|
hasErrors(): boolean {
|
||||||
return this._hasErrors
|
return this._astParseFailed || this._errors.length > 0
|
||||||
}
|
}
|
||||||
|
|
||||||
setDiagnosticsForCurrentErrors() {
|
setDiagnosticsForCurrentErrors() {
|
||||||
@ -278,7 +278,7 @@ export class KclManager {
|
|||||||
private async checkIfSwitchedFilesShouldClear() {
|
private async checkIfSwitchedFilesShouldClear() {
|
||||||
// If we were switching files and we hit an error on parse we need to bust
|
// If we were switching files and we hit an error on parse we need to bust
|
||||||
// the cache and clear the scene.
|
// the cache and clear the scene.
|
||||||
if (this._hasErrors && this._switchedFiles) {
|
if (this._astParseFailed && this._switchedFiles) {
|
||||||
await rustContext.clearSceneAndBustCache(
|
await rustContext.clearSceneAndBustCache(
|
||||||
{ settings: await jsAppSettings() },
|
{ settings: await jsAppSettings() },
|
||||||
codeManager.currentFilePath || undefined
|
codeManager.currentFilePath || undefined
|
||||||
@ -292,12 +292,12 @@ export class KclManager {
|
|||||||
async safeParse(code: string): Promise<Node<Program> | null> {
|
async safeParse(code: string): Promise<Node<Program> | null> {
|
||||||
const result = parse(code)
|
const result = parse(code)
|
||||||
this.diagnostics = []
|
this.diagnostics = []
|
||||||
this._hasErrors = false
|
this._astParseFailed = false
|
||||||
|
|
||||||
if (err(result)) {
|
if (err(result)) {
|
||||||
const kclerror: KCLError = result as KCLError
|
const kclerror: KCLError = result as KCLError
|
||||||
this.diagnostics = kclErrorsToDiagnostics([kclerror])
|
this.diagnostics = kclErrorsToDiagnostics([kclerror])
|
||||||
this._hasErrors = true
|
this._astParseFailed = true
|
||||||
|
|
||||||
await this.checkIfSwitchedFilesShouldClear()
|
await this.checkIfSwitchedFilesShouldClear()
|
||||||
return null
|
return null
|
||||||
@ -313,7 +313,7 @@ export class KclManager {
|
|||||||
this.addDiagnostics(complilationErrorsToDiagnostics(result.errors))
|
this.addDiagnostics(complilationErrorsToDiagnostics(result.errors))
|
||||||
this.addDiagnostics(complilationErrorsToDiagnostics(result.warnings))
|
this.addDiagnostics(complilationErrorsToDiagnostics(result.warnings))
|
||||||
if (result.errors.length > 0) {
|
if (result.errors.length > 0) {
|
||||||
this._hasErrors = true
|
this._astParseFailed = true
|
||||||
|
|
||||||
await this.checkIfSwitchedFilesShouldClear()
|
await this.checkIfSwitchedFilesShouldClear()
|
||||||
return null
|
return null
|
||||||
|
@ -484,6 +484,9 @@ export const modelingMachine = setup({
|
|||||||
'Selection is on face': () => false,
|
'Selection is on face': () => false,
|
||||||
'Has exportable geometry': () => false,
|
'Has exportable geometry': () => false,
|
||||||
'has valid selection for deletion': () => false,
|
'has valid selection for deletion': () => false,
|
||||||
|
'no kcl errors': () => {
|
||||||
|
return !kclManager.hasErrors()
|
||||||
|
},
|
||||||
'is editing existing sketch': ({ context: { sketchDetails } }) =>
|
'is editing existing sketch': ({ context: { sketchDetails } }) =>
|
||||||
isEditingExistingSketch({ sketchDetails }),
|
isEditingExistingSketch({ sketchDetails }),
|
||||||
'Can make selection horizontal': ({ context: { selectionRanges } }) => {
|
'Can make selection horizontal': ({ context: { selectionRanges } }) => {
|
||||||
@ -2694,7 +2697,10 @@ export const modelingMachine = setup({
|
|||||||
states: {
|
states: {
|
||||||
hidePlanes: {
|
hidePlanes: {
|
||||||
on: {
|
on: {
|
||||||
'Artifact graph populated': 'showPlanes',
|
'Artifact graph populated': {
|
||||||
|
target: 'showPlanes',
|
||||||
|
guard: 'no kcl errors',
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
entry: 'hide default planes',
|
entry: 'hide default planes',
|
||||||
|
Reference in New Issue
Block a user