@@ -152,18 +152,18 @@ definitions:
152152 ControlTypeId-oneOf-3P-types :
153153 $comment : The set of ControlTypeIds that represent third-party controls.
154154 oneOf :
155- - $ref : " #/definitions/ControlTypeId-Component "
155+ - $ref : " #/definitions/ControlTypeId-CanvasComponent "
156156 - $ref : " #/definitions/ControlTypeId-CodeComponent"
157157
158158 # TODO: Implement a way that some controls may define a limited subset of child control types
159159 # e.g. The 'Form' control's children must be of type 'TypedDataCard':
160160 # - $ref: "#/definitions/ControlTypeId-TypedDataCard"
161161
162- ControlTypeId-Component :
162+ ControlTypeId-CanvasComponent :
163163 description : |-
164- Identifies a custom component instance. This control type requires additional properties to be specified.
164+ Identifies a canvas component instance. This control type requires additional properties to be specified.
165165 type : string
166- const : Component
166+ const : CanvasComponent
167167
168168 ControlTypeId-CodeComponent :
169169 description : |-
@@ -201,7 +201,7 @@ definitions:
201201 allOf :
202202 - if :
203203 properties :
204- Control : { $ref: "#/definitions/ControlTypeId-Component " }
204+ Control : { $ref: "#/definitions/ControlTypeId-CanvasComponent " }
205205 then :
206206 required : [ComponentName]
207207 additionalProperties : false
@@ -220,10 +220,10 @@ definitions:
220220 additionalProperties : false
221221 properties :
222222 Control : true
223- ComponentName : { $ref: "#/definitions/CodeComponent-name " }
223+ ComponentName : { $ref: "#/definitions/CodeComponent-ComponentName " }
224224 Group : true
225225 Properties : true
226- # Note: CodeComponent instances do not support Variants or Children.
226+ Children : { $ref: "#/definitions/ Children-Control-instance-sequence" }
227227 else :
228228 # Expected to be a built-in control library template
229229 additionalProperties : false
@@ -252,14 +252,14 @@ definitions:
252252 allOf :
253253 - { $ref: "#/definitions/Control-instance-name" }
254254
255- CodeComponent-name :
255+ CodeComponent-ComponentName :
256256 description : |-
257257 The unique name of the Code Component (aka PCF control) as it occurs in Dataverse.
258- The format is: <publisher-prefix> '_' <JS-Namespace> '.' <JS-ClassName>
258+ The format is: ( <publisher-prefix> '_' )? ( <JS-Namespace> '.' )+ <JS-ClassName> ( '(' <GUID> ')' )?
259259 type : string
260260 # TODO: The JS regex pattern doesn't easily support unicode chars which are valid JS identifiers.
261261 pattern : |-
262- ^([a-z ][a-z0- 9]{1,7})_([a-zA-Z0-9]\ .)+[a-zA-Z0-9]+ $
262+ ^([a-zA-Z ][a-zA-Z0- 9]{1,7})_)?(\w+\ .)+(\w+)(\([0-9a-f-]{36}\))? $
263263
264264 ComponentDefinitions-name-instance-map :
265265 type : object
0 commit comments