{
  "name": "file-upload-form",
  "kind": "block",
  "primary": "form",
  "page": "/apps/user-flow/app/registration/import/import.contents.html",
  "slots": [],
  "nested": [
    "reg-step-header",
    "reg-import-picker",
    "reg-step-footer",
    "reg-step-progress"
  ],
  "attrs": {
    "data-reg-input": "",
    "action": "/site/examples/registration/plan",
    "method": "get"
  },
  "html": "<form data-reg-input action=\"/site/examples/registration/plan\" method=\"get\">\n        <header data-reg-heading><!-- nested: reg-step-header --></header>\n\n        <section data-reg-form><!-- nested: reg-import-picker --></section>\n\n        <footer><!-- nested: reg-step-footer --></footer>\n      </form>",
  "source": "apps/user-flow/app/registration/import/import.contents.html",
  "metadata": {
    "domain": "forms",
    "description": "Complete data-import / file-upload form — heading, a source select, a file upload drop-zone field with an accepted-types hint, and a submit footer. The full upload-form composition with header and footer. Use for 'file upload form', 'import data form', 'form with a file drop zone and a select'.",
    "keywords": [
      "file",
      "upload",
      "form",
      "import",
      "data",
      "migration",
      "source",
      "select",
      "drop-zone",
      "accept",
      "file-types",
      "export",
      "hint",
      "complete",
      "card",
      "heading",
      "footer",
      "submit",
      "continue",
      "full-form"
    ],
    "related": [
      "reg-import-picker",
      "file-upload-dnd",
      "image-upload-preview",
      "reg-step-footer"
    ],
    "tags": {
      "complexity": "simple",
      "form": "upload"
    }
  },
  "captured_at": "2026-06-10T14:28:57.979Z",
  "template": [
    {
      "id": "text",
      "component": "Text",
      "variant": "display",
      "textContent": "Bring your existing data"
    },
    {
      "id": "text-2",
      "component": "Text",
      "color": "subtle",
      "textContent": "Import projects, tasks, and members from your previous tool — or start fresh."
    },
    {
      "id": "header-2",
      "component": "Header",
      "data-reg-heading": "",
      "children": [
        "text",
        "text-2"
      ]
    },
    {
      "id": "header",
      "component": "Header",
      "data-reg-heading": "",
      "children": [
        "header-2"
      ]
    },
    {
      "id": "source",
      "component": "ChoicePicker",
      "name": "source",
      "value": "notion",
      "options": [
        {
          "value": "notion",
          "label": "Notion"
        },
        {
          "value": "asana",
          "label": "Asana"
        },
        {
          "value": "trello",
          "label": "Trello"
        },
        {
          "value": "linear",
          "label": "Linear"
        },
        {
          "value": "jira",
          "label": "Jira"
        },
        {
          "value": "csv",
          "label": "CSV file"
        }
      ]
    },
    {
      "id": "field",
      "component": "Field",
      "inline": true,
      "label": "Source",
      "children": [
        "source"
      ]
    },
    {
      "id": "export",
      "component": "Upload",
      "accept": ".zip,.json,.csv",
      "name": "export"
    },
    {
      "id": "field-2",
      "component": "Field",
      "hint": "Drop the export from your previous tool. We accept .zip, .json, and .csv.",
      "inline": true,
      "label": "Export File",
      "children": [
        "export"
      ]
    },
    {
      "id": "text-3",
      "component": "Text",
      "variant": "body",
      "slot": "content",
      "textContent": "Imports run in the background — you can move on while it processes. We'll email you when it's done."
    },
    {
      "id": "alert",
      "component": "Alert",
      "icon": "info",
      "variant": "info",
      "children": [
        "text-3"
      ]
    },
    {
      "id": "section-2",
      "component": "Section",
      "data-reg-form": "",
      "children": [
        "field",
        "field-2",
        "alert"
      ]
    },
    {
      "id": "section",
      "component": "Section",
      "data-reg-form": "",
      "children": [
        "section-2"
      ]
    },
    {
      "id": "column",
      "component": "Column"
    },
    {
      "id": "text-4",
      "component": "Text",
      "textContent": "Back",
      "variant": "body"
    },
    {
      "id": "link",
      "component": "Link",
      "href": "/site/examples/registration/integrations",
      "text": "Back",
      "data-reg-back": "",
      "children": [
        "text-4"
      ]
    },
    {
      "id": "button",
      "component": "Button",
      "type": "submit",
      "text": "Start fresh",
      "variant": "outline"
    },
    {
      "id": "button-2",
      "component": "Button",
      "type": "submit",
      "text": "Import",
      "variant": "primary"
    },
    {
      "id": "column-2",
      "component": "Column",
      "data-reg-actions": "",
      "children": [
        "link",
        "button",
        "button-2"
      ]
    },
    {
      "id": "footer-2",
      "component": "Footer",
      "children": [
        "column",
        "column-2"
      ]
    },
    {
      "id": "footer",
      "component": "Footer",
      "children": [
        "footer-2"
      ]
    },
    {
      "id": "root",
      "component": "FormContainer",
      "data-reg-input": "",
      "children": [
        "header",
        "section",
        "footer"
      ]
    }
  ]
}
