{
  "version": "2.0",
  "components": [
    {
      "id": "comp_order_no",
      "url": "@/lib/registry/components/v2-input",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 20, "y": 20, "z": 1 },
      "overrides": {
        "type": "v2-input",
        "label": "Order No",
        "fieldName": "order_no",
        "placeholder": "Enter order number",
        "required": true
      },
      "displayOrder": 0
    },
    {
      "id": "comp_order_date",
      "url": "@/lib/registry/components/v2-date",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 340, "y": 20, "z": 1 },
      "overrides": {
        "type": "v2-date",
        "label": "Order Date",
        "fieldName": "order_date",
        "required": true
      },
      "displayOrder": 1
    },
    {
      "id": "comp_partner_id",
      "url": "@/lib/registry/components/v2-select",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 20, "y": 100, "z": 1 },
      "overrides": {
        "type": "v2-select",
        "label": "Customer",
        "fieldName": "partner_id",
        "required": true,
        "config": {
          "mode": "dropdown",
          "source": "table",
          "sourceTable": "customer_mng",
          "valueField": "id",
          "labelField": "name"
        }
      },
      "displayOrder": 2
    },
    {
      "id": "comp_part_code",
      "url": "@/lib/registry/components/v2-input",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 340, "y": 100, "z": 1 },
      "overrides": {
        "type": "v2-input",
        "label": "Part Code",
        "fieldName": "part_code",
        "placeholder": "Enter part code",
        "required": true
      },
      "displayOrder": 3
    },
    {
      "id": "comp_part_name",
      "url": "@/lib/registry/components/v2-input",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 20, "y": 180, "z": 1 },
      "overrides": {
        "type": "v2-input",
        "label": "Part Name",
        "fieldName": "part_name",
        "placeholder": "Enter part name"
      },
      "displayOrder": 4
    },
    {
      "id": "comp_spec",
      "url": "@/lib/registry/components/v2-input",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 340, "y": 180, "z": 1 },
      "overrides": {
        "type": "v2-input",
        "label": "Spec",
        "fieldName": "spec",
        "placeholder": "Enter spec"
      },
      "displayOrder": 5
    },
    {
      "id": "comp_material",
      "url": "@/lib/registry/components/v2-input",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 20, "y": 260, "z": 1 },
      "overrides": {
        "type": "v2-input",
        "label": "Material",
        "fieldName": "material",
        "placeholder": "Enter material"
      },
      "displayOrder": 6
    },
    {
      "id": "comp_order_qty",
      "url": "@/lib/registry/components/v2-input",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 340, "y": 260, "z": 1 },
      "overrides": {
        "type": "v2-input",
        "inputType": "number",
        "label": "Order Qty",
        "fieldName": "order_qty",
        "placeholder": "Enter order quantity",
        "required": true
      },
      "displayOrder": 7
    },
    {
      "id": "comp_unit_price",
      "url": "@/lib/registry/components/v2-input",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 20, "y": 340, "z": 1 },
      "overrides": {
        "type": "v2-input",
        "inputType": "number",
        "label": "Unit Price",
        "fieldName": "unit_price",
        "placeholder": "Enter unit price",
        "required": true
      },
      "displayOrder": 8
    },
    {
      "id": "comp_due_date",
      "url": "@/lib/registry/components/v2-date",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 340, "y": 340, "z": 1 },
      "overrides": {
        "type": "v2-date",
        "label": "Due Date",
        "fieldName": "due_date"
      },
      "displayOrder": 9
    },
    {
      "id": "comp_status",
      "url": "@/lib/registry/components/v2-select",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 20, "y": 420, "z": 1 },
      "overrides": {
        "type": "v2-select",
        "label": "Status",
        "fieldName": "status",
        "required": true,
        "config": {
          "mode": "dropdown",
          "source": "static",
          "options": [
            { "value": "수주", "label": "수주" },
            { "value": "진행중", "label": "진행중" },
            { "value": "완료", "label": "완료" },
            { "value": "취소", "label": "취소" }
          ]
        }
      },
      "displayOrder": 10
    },
    {
      "id": "comp_shipping_method",
      "url": "@/lib/registry/components/v2-select",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 340, "y": 420, "z": 1 },
      "overrides": {
        "type": "v2-select",
        "label": "Shipping Method",
        "fieldName": "shipping_method",
        "config": {
          "mode": "dropdown",
          "source": "static",
          "options": [
            { "value": "택배", "label": "택배" },
            { "value": "화물", "label": "화물" },
            { "value": "직송", "label": "직송" },
            { "value": "퀵서비스", "label": "퀵서비스" },
            { "value": "해상운송", "label": "해상운송" }
          ]
        }
      },
      "displayOrder": 11
    },
    {
      "id": "comp_delivery_address",
      "url": "@/lib/registry/components/v2-input",
      "size": { "width": 620, "height": 60 },
      "position": { "x": 20, "y": 500, "z": 1 },
      "overrides": {
        "type": "v2-input",
        "label": "Delivery Address",
        "fieldName": "delivery_address",
        "placeholder": "Enter delivery address"
      },
      "displayOrder": 12
    },
    {
      "id": "comp_manager_name",
      "url": "@/lib/registry/components/v2-input",
      "size": { "width": 300, "height": 60 },
      "position": { "x": 20, "y": 580, "z": 1 },
      "overrides": {
        "type": "v2-input",
        "label": "Manager",
        "fieldName": "manager_name",
        "placeholder": "Enter manager name"
      },
      "displayOrder": 13
    },
    {
      "id": "comp_memo",
      "url": "@/lib/registry/components/v2-input",
      "size": { "width": 620, "height": 80 },
      "position": { "x": 20, "y": 660, "z": 1 },
      "overrides": {
        "type": "v2-input",
        "inputType": "textarea",
        "label": "Memo",
        "fieldName": "memo",
        "placeholder": "Enter memo"
      },
      "displayOrder": 14
    },
    {
      "id": "comp_btn_save",
      "url": "@/lib/registry/components/v2-button-primary",
      "size": { "width": 100, "height": 40 },
      "position": { "x": 540, "y": 760, "z": 1 },
      "overrides": {
        "text": "Save",
        "type": "v2-button-primary",
        "label": "Save Button",
        "action": {
          "type": "save",
          "closeModalAfterSave": true,
          "refreshParentTable": true,
          "successMessage": "Saved successfully.",
          "errorMessage": "Error saving."
        },
        "variant": "primary",
        "actionType": "button"
      },
      "displayOrder": 15
    }
  ]
}
