socket property

Implementation

static ComponentSchema<SocketComponent> get socket =>
    ComponentSchema<SocketComponent>(
      type: 'SocketComponent',
      id: 'socket_3d_5e0b7f13',
      create: SocketComponent.new,
      hints: const ComponentHints(
        dimensions: Dimensions.threeD,
        name: 'Socket',
        group: '3D',
        description: "Pins the entity to a joint of its parent's model.",
        icon: Icons.push_pin_outlined,
        accentColor: Color(0xFF8D6E63),
        fields: {'node': FieldHint(label: 'Joint')},
      ),
      fields: [
        SchemaField(
          name: 'node',
          kind: FieldTypes.text,
          read: (c) => (c as SocketComponent).node,
          write: (c, v) => (c as SocketComponent).node = v as String? ?? '',
        ),
      ],
    );