This commit is contained in:
2025-12-11 11:23:02 +00:00
parent 52ffe81352
commit 278000bb36
6 changed files with 50 additions and 48 deletions

View File

@@ -13,60 +13,60 @@ export class TestEdgeCases extends DeesElement {
// Property with null value
@property({ type: String })
public nullableString: string | null = null;
accessor nullableString: string | null = null;
// Property with undefined value
@property({ type: Number })
public undefinedNumber: number | undefined = undefined;
accessor undefinedNumber: number | undefined = undefined;
// Very long string
@property({ type: String })
public longString: string = 'Lorem ipsum '.repeat(50);
accessor longString: string = 'Lorem ipsum '.repeat(50);
// Property with special characters
@property({ type: String })
public specialChars: string = '!@#$%^&*()_+-=[]{}|;\':",./<>?`~';
accessor specialChars: string = '!@#$%^&*()_+-=[]{}|;\':",./<>?`~';
// Property that could cause rendering issues
@property({ type: String })
public htmlString: string = '<script>alert("test")</script><b>Bold text</b>';
accessor htmlString: string = '<script>alert("test")</script><b>Bold text</b>';
// Numeric edge cases
@property({ type: Number })
public infinityNumber: number = Infinity;
accessor infinityNumber: number = Infinity;
@property({ type: Number })
public nanNumber: number = NaN;
accessor nanNumber: number = NaN;
@property({ type: Number })
public veryLargeNumber: number = Number.MAX_SAFE_INTEGER;
accessor veryLargeNumber: number = Number.MAX_SAFE_INTEGER;
@property({ type: Number })
public verySmallNumber: number = Number.MIN_SAFE_INTEGER;
accessor verySmallNumber: number = Number.MIN_SAFE_INTEGER;
@property({ type: Number })
public floatNumber: number = 3.14159265359;
accessor floatNumber: number = 3.14159265359;
// Boolean-like values
@property({ type: String })
public booleanString: string = 'false';
accessor booleanString: string = 'false';
@property({ type: Number })
public booleanNumber: number = 0;
accessor booleanNumber: number = 0;
// Empty values
@property({ type: String })
public emptyString: string = '';
accessor emptyString: string = '';
@property({ type: Array })
public emptyArray: any[] = [];
accessor emptyArray: any[] = [];
@property({ type: Object })
public emptyObject: {} = {};
accessor emptyObject: {} = {};
// Circular reference (should not break properties panel)
@property({ attribute: false })
public circularRef: any = (() => {
accessor circularRef: any = (() => {
const obj: any = { name: 'circular' };
obj.self = obj;
return obj;