@@ -11011,44 +11011,26 @@ DESCRIPTION
1101111011
1101211012 ``` json
1101311013 {
11014- "type" : " object" ,
11015- "properties" : {
11016- "$schema" : {
11017- "type" : " string" ,
11018- "const" : " https://www.speedscope.app/file-format-schema.json"
11019- },
11020- "shared" : {
11021- "$ref" : " #/definitions/ProfileShared"
11014+ "anyOf" : [
11015+ {
11016+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/0/properties/result"
1102211017 },
11023- "profiles" : {
11024- "type" : " array" ,
11025- "items" : {
11026- "anyOf" : [
11027- {
11028- "$ref" : " #/definitions/EventedProfile"
11029- },
11030- {
11031- "$ref" : " #/definitions/SampledProfile"
11018+ {
11019+ "type" : " object" ,
11020+ "properties" : {
11021+ "environments" : {
11022+ "type" : " array" ,
11023+ "items" : {
11024+ "$ref" : " #/definitions/ThemeEnvironment"
1103211025 }
11033- ]
11034- }
11035- },
11036- "name" : {
11037- "type" : " string"
11038- },
11039- "exporter" : {
11040- "type" : " string"
11041- },
11042- "activeProfileIndex" : {
11043- "type" : " number"
11026+ }
11027+ },
11028+ "required" : [
11029+ " environments"
11030+ ],
11031+ "additionalProperties" : false
1104411032 }
11045- },
11046- "required" : [
11047- " $schema" ,
11048- " shared" ,
11049- " profiles"
1105011033 ],
11051- "additionalProperties" : true ,
1105211034 "title" : " ThemeProfileResult" ,
1105311035 "definitions" : {
1105411036 "ProfileFrame" : {
@@ -11061,10 +11043,12 @@ DESCRIPTION
1106111043 "type" : " string"
1106211044 },
1106311045 "line" : {
11064- "type" : " number"
11046+ "type" : " integer" ,
11047+ "minimum" : 0
1106511048 },
1106611049 "col" : {
11067- "type" : " number"
11050+ "type" : " integer" ,
11051+ "minimum" : 0
1106811052 }
1106911053 },
1107011054 "required" : [
@@ -11086,7 +11070,8 @@ DESCRIPTION
1108611070 "type" : " number"
1108711071 },
1108811072 "frame" : {
11089- "type" : " number"
11073+ "type" : " integer" ,
11074+ "minimum" : 0
1109011075 }
1109111076 },
1109211077 "required" : [
@@ -11179,7 +11164,8 @@ DESCRIPTION
1117911164 "items" : {
1118011165 "type" : " array" ,
1118111166 "items" : {
11182- "type" : " number"
11167+ "type" : " integer" ,
11168+ "minimum" : 0
1118311169 }
1118411170 }
1118511171 },
@@ -11200,6 +11186,229 @@ DESCRIPTION
1120011186 " weights"
1120111187 ],
1120211188 "additionalProperties" : true
11189+ },
11190+ "ThemeEnvironment" : {
11191+ "anyOf" : [
11192+ {
11193+ "type" : " object" ,
11194+ "properties" : {
11195+ "environment" : {
11196+ "type" : " string"
11197+ },
11198+ "result" : {
11199+ "anyOf" : [
11200+ {
11201+ "type" : " object" ,
11202+ "properties" : {
11203+ "$schema" : {
11204+ "type" : " string" ,
11205+ "const" : " https://www.speedscope.app/file-format-schema.json"
11206+ },
11207+ "shared" : {
11208+ "$ref" : " #/definitions/ProfileShared"
11209+ },
11210+ "profiles" : {
11211+ "type" : " array" ,
11212+ "items" : {
11213+ "anyOf" : [
11214+ {
11215+ "$ref" : " #/definitions/EventedProfile"
11216+ },
11217+ {
11218+ "$ref" : " #/definitions/SampledProfile"
11219+ }
11220+ ]
11221+ }
11222+ },
11223+ "name" : {
11224+ "type" : " string"
11225+ },
11226+ "exporter" : {
11227+ "type" : " string"
11228+ },
11229+ "activeProfileIndex" : {
11230+ "type" : " integer" ,
11231+ "minimum" : 0
11232+ }
11233+ },
11234+ "required" : [
11235+ " $schema" ,
11236+ " shared" ,
11237+ " profiles"
11238+ ],
11239+ "additionalProperties" : true ,
11240+ "description" : " The native Speedscope file format, defined by its $schema URL. Original keys and extension fields are preserved."
11241+ },
11242+ {
11243+ "type" : " object" ,
11244+ "properties" : {
11245+ "status" : {
11246+ "type" : " string" ,
11247+ "const" : " cancelled"
11248+ }
11249+ },
11250+ "required" : [
11251+ " status"
11252+ ],
11253+ "additionalProperties" : false
11254+ }
11255+ ]
11256+ }
11257+ },
11258+ "required" : [
11259+ " environment" ,
11260+ " result"
11261+ ],
11262+ "additionalProperties" : false
11263+ },
11264+ {
11265+ "type" : " object" ,
11266+ "properties" : {
11267+ "environment" : {
11268+ "type" : " string"
11269+ },
11270+ "error" : {
11271+ "anyOf" : [
11272+ {
11273+ "type" : " object" ,
11274+ "properties" : {
11275+ "type" : {
11276+ "type" : " string" ,
11277+ "const" : " abort"
11278+ },
11279+ "message" : {
11280+ "type" : " string"
11281+ },
11282+ "tryMessage" : {
11283+ "type" : " string"
11284+ },
11285+ "nextSteps" : {
11286+ "type" : " array" ,
11287+ "items" : {
11288+ "type" : " string"
11289+ }
11290+ },
11291+ "customSections" : {
11292+ "type" : " array" ,
11293+ "items" : {
11294+ "type" : " object" ,
11295+ "properties" : {
11296+ "title" : {
11297+ "type" : " string"
11298+ },
11299+ "body" : {
11300+ "anyOf" : [
11301+ {
11302+ "type" : " string"
11303+ },
11304+ {
11305+ "type" : " array" ,
11306+ "items" : {
11307+ "type" : " array" ,
11308+ "items" : {
11309+ "type" : " string"
11310+ }
11311+ }
11312+ }
11313+ ]
11314+ }
11315+ },
11316+ "required" : [
11317+ " body"
11318+ ],
11319+ "additionalProperties" : false
11320+ }
11321+ },
11322+ "details" : {}
11323+ },
11324+ "required" : [
11325+ " type" ,
11326+ " message"
11327+ ],
11328+ "additionalProperties" : false
11329+ },
11330+ {
11331+ "type" : " object" ,
11332+ "properties" : {
11333+ "type" : {
11334+ "type" : " string" ,
11335+ "const" : " bug"
11336+ },
11337+ "message" : {
11338+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/1/properties/error/anyOf/0/properties/message"
11339+ },
11340+ "tryMessage" : {
11341+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/1/properties/error/anyOf/0/properties/tryMessage"
11342+ },
11343+ "nextSteps" : {
11344+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/1/properties/error/anyOf/0/properties/nextSteps"
11345+ },
11346+ "customSections" : {
11347+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/1/properties/error/anyOf/0/properties/customSections"
11348+ },
11349+ "details" : {
11350+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/1/properties/error/anyOf/0/properties/details"
11351+ },
11352+ "stack" : {
11353+ "type" : " string"
11354+ }
11355+ },
11356+ "required" : [
11357+ " type" ,
11358+ " message"
11359+ ],
11360+ "additionalProperties" : false
11361+ },
11362+ {
11363+ "type" : " object" ,
11364+ "properties" : {
11365+ "type" : {
11366+ "type" : " string" ,
11367+ "const" : " external"
11368+ },
11369+ "message" : {
11370+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/1/properties/error/anyOf/0/properties/message"
11371+ },
11372+ "tryMessage" : {
11373+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/1/properties/error/anyOf/0/properties/tryMessage"
11374+ },
11375+ "nextSteps" : {
11376+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/1/properties/error/anyOf/0/properties/nextSteps"
11377+ },
11378+ "customSections" : {
11379+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/1/properties/error/anyOf/0/properties/customSections"
11380+ },
11381+ "details" : {
11382+ "$ref" : " #/definitions/ThemeEnvironment/anyOf/1/properties/error/anyOf/0/properties/details"
11383+ },
11384+ "command" : {
11385+ "type" : " string"
11386+ },
11387+ "args" : {
11388+ "type" : " array" ,
11389+ "items" : {
11390+ "type" : " string"
11391+ }
11392+ }
11393+ },
11394+ "required" : [
11395+ " type" ,
11396+ " message" ,
11397+ " command" ,
11398+ " args"
11399+ ],
11400+ "additionalProperties" : false
11401+ }
11402+ ]
11403+ }
11404+ },
11405+ "required" : [
11406+ " environment" ,
11407+ " error"
11408+ ],
11409+ "additionalProperties" : false
11410+ }
11411+ ]
1120311412 }
1120411413 },
1120511414 "$schema" : " http://json-schema.org/draft-07/schema#"
0 commit comments