@@ -741,6 +741,17 @@ import { UserField } from './widgets/UserField';
741741import { ObjectField } from './widgets/ObjectField' ;
742742import { VectorField } from './widgets/VectorField' ;
743743import { GridField } from './widgets/GridField' ;
744+ // New widgets according to @objectstack /spec
745+ import { ColorField } from './widgets/ColorField' ;
746+ import { SliderField } from './widgets/SliderField' ;
747+ import { RatingField } from './widgets/RatingField' ;
748+ import { CodeField } from './widgets/CodeField' ;
749+ import { AvatarField } from './widgets/AvatarField' ;
750+ import { AddressField } from './widgets/AddressField' ;
751+ import { GeolocationField } from './widgets/GeolocationField' ;
752+ import { SignatureField } from './widgets/SignatureField' ;
753+ import { QRCodeField } from './widgets/QRCodeField' ;
754+ import { MasterDetailField } from './widgets/MasterDetailField' ;
744755
745756// Create wrapper renderers for field widgets to work with ComponentDemo
746757function createFieldRenderer ( FieldWidget : React . ComponentType < any > ) {
@@ -822,7 +833,7 @@ export function registerFields() {
822833 ComponentRegistry . register ( 'markdown' , createFieldRenderer ( RichTextField ) ) ;
823834 ComponentRegistry . register ( 'html' , createFieldRenderer ( RichTextField ) ) ;
824835 ComponentRegistry . register ( 'lookup' , createFieldRenderer ( LookupField ) ) ;
825- ComponentRegistry . register ( 'master_detail' , createFieldRenderer ( LookupField ) ) ;
836+ ComponentRegistry . register ( 'master_detail' , createFieldRenderer ( MasterDetailField ) ) ;
826837
827838 // File fields
828839 ComponentRegistry . register ( 'file' , createFieldRenderer ( FileField ) ) ;
@@ -845,6 +856,17 @@ export function registerFields() {
845856 ComponentRegistry . register ( 'vector' , createFieldRenderer ( VectorField ) ) ;
846857 ComponentRegistry . register ( 'grid' , createFieldRenderer ( GridField ) ) ;
847858
859+ // NEW: Additional field types from @objectstack /spec
860+ ComponentRegistry . register ( 'color' , createFieldRenderer ( ColorField ) ) ;
861+ ComponentRegistry . register ( 'slider' , createFieldRenderer ( SliderField ) ) ;
862+ ComponentRegistry . register ( 'rating' , createFieldRenderer ( RatingField ) ) ;
863+ ComponentRegistry . register ( 'code' , createFieldRenderer ( CodeField ) ) ;
864+ ComponentRegistry . register ( 'avatar' , createFieldRenderer ( AvatarField ) ) ;
865+ ComponentRegistry . register ( 'address' , createFieldRenderer ( AddressField ) ) ;
866+ ComponentRegistry . register ( 'geolocation' , createFieldRenderer ( GeolocationField ) ) ;
867+ ComponentRegistry . register ( 'signature' , createFieldRenderer ( SignatureField ) ) ;
868+ ComponentRegistry . register ( 'qrcode' , createFieldRenderer ( QRCodeField ) ) ;
869+
848870 // Register with field: prefix for explicit field widgets
849871 ComponentRegistry . register ( 'field:text' , TextField ) ;
850872 ComponentRegistry . register ( 'field:textarea' , TextAreaField ) ;
@@ -864,6 +886,18 @@ export function registerFields() {
864886 ComponentRegistry . register ( 'field:location' , LocationField ) ;
865887 ComponentRegistry . register ( 'field:user' , UserField ) ;
866888 ComponentRegistry . register ( 'field:object' , ObjectField ) ;
889+
890+ // NEW: field: prefix registrations for new widgets
891+ ComponentRegistry . register ( 'field:color' , ColorField ) ;
892+ ComponentRegistry . register ( 'field:slider' , SliderField ) ;
893+ ComponentRegistry . register ( 'field:rating' , RatingField ) ;
894+ ComponentRegistry . register ( 'field:code' , CodeField ) ;
895+ ComponentRegistry . register ( 'field:avatar' , AvatarField ) ;
896+ ComponentRegistry . register ( 'field:address' , AddressField ) ;
897+ ComponentRegistry . register ( 'field:geolocation' , GeolocationField ) ;
898+ ComponentRegistry . register ( 'field:signature' , SignatureField ) ;
899+ ComponentRegistry . register ( 'field:qrcode' , QRCodeField ) ;
900+ ComponentRegistry . register ( 'field:master_detail' , MasterDetailField ) ;
867901}
868902
869903export * from './widgets/types' ;
@@ -893,3 +927,14 @@ export * from './widgets/UserField';
893927export * from './widgets/ObjectField' ;
894928export * from './widgets/VectorField' ;
895929export * from './widgets/GridField' ;
930+ // New widgets according to @objectstack /spec
931+ export * from './widgets/ColorField' ;
932+ export * from './widgets/SliderField' ;
933+ export * from './widgets/RatingField' ;
934+ export * from './widgets/CodeField' ;
935+ export * from './widgets/AvatarField' ;
936+ export * from './widgets/AddressField' ;
937+ export * from './widgets/GeolocationField' ;
938+ export * from './widgets/SignatureField' ;
939+ export * from './widgets/QRCodeField' ;
940+ export * from './widgets/MasterDetailField' ;
0 commit comments