{
  "docId": "019de06f-a937-74e5-a93a-c869a1890818",
  "docSlug": "db1818cdab816d6807094fc88536c9a2",
  "documentTitle": "Roblox | Product Presentation Deck | 29 slides",
  "authorId": "roblox",
  "authorName": "Roblox",
  "documentKindSlug": "conference-presentation",
  "documentKindLabel": "Conference presentation",
  "sourceTypeSlug": "investor_relations",
  "sourceTypeLabel": "Investor relations",
  "presentationDate": "2018-07-01 00:00:00",
  "orientation": "landscape",
  "aspectRatio": 1.7927171,
  "pageNumber": 27,
  "pageCount": 29,
  "prevPage": 26,
  "nextPage": 28,
  "slideType": "other",
  "function": "present_solution",
  "density": "dense",
  "nDataPoints": 0,
  "notes": "The slide illustrates a basic data-driven UI update pattern (reconciliation).",
  "elementsJson": null,
  "metadataConfidence": 0.9,
  "imagePath": null,
  "slideHref": "/slides/019de06f-a937-74e5-a93a-c869a1890818/27",
  "deckHref": "/decks/019de06f-a937-74e5-a93a-c869a1890818",
  "deckJsonHref": "/decks/019de06f-a937-74e5-a93a-c869a1890818.json",
  "deckAnchorHref": "/decks/019de06f-a937-74e5-a93a-c869a1890818#slide-27",
  "components": [
    {
      "bbox": {
        "h": 0.15,
        "w": 0.65,
        "x": 0.29,
        "y": 0.25
      },
      "kind": "other",
      "text": "local ui = e(Inventory, { items = items }) local handle = Roact.mount(ui, PlayerGui)",
      "attrs": null,
      "subkind": "unclassified",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "4d60081e-9839-42fc-bbe3-dcfc22a19f0d",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.18,
        "w": 0.65,
        "x": 0.29,
        "y": 0.05
      },
      "kind": "other",
      "text": "local items = { { name = \"Katana of Doom\" }, { name = \"Health Potion\" } }",
      "attrs": null,
      "subkind": "unclassified",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "81dd5239-2f81-4e7b-8293-fb4314691b57",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.25,
        "w": 0.65,
        "x": 0.29,
        "y": 0.48
      },
      "kind": "other",
      "text": "table.insert(items, { name = \"Super Health Potion\" }) ui = e(Inventory, { items = items }) Roact.reconcile(handle, ui)",
      "attrs": null,
      "subkind": "unclassified",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "d65640fb-0ab6-4c32-90dd-ad79e5cb91db",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.05,
        "w": 0.28,
        "x": 0.02,
        "y": 0.52
      },
      "kind": "paragraph",
      "text": "Update data and UI:",
      "attrs": null,
      "subkind": "paragraph",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "5d3ec861-2e85-4be8-938f-b30ff515607d",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.05,
        "w": 0.15,
        "x": 0.14,
        "y": 0.28
      },
      "kind": "paragraph",
      "text": "Create UI:",
      "attrs": null,
      "subkind": "paragraph",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "b4cdb381-4724-4226-91d5-eac764074f46",
      "frameworkName": null,
      "frameworkSlug": null
    },
    {
      "bbox": {
        "h": 0.05,
        "w": 0.2,
        "x": 0.08,
        "y": 0.08
      },
      "kind": "paragraph",
      "text": "Describe data:",
      "attrs": null,
      "subkind": "paragraph",
      "toolName": null,
      "toolSlug": null,
      "confidence": null,
      "componentId": "ccb5a4cc-5e49-447d-b02b-f74e6de4ee1d",
      "frameworkName": null,
      "frameworkSlug": null
    }
  ],
  "metrics": [],
  "tools": [],
  "frameworks": [],
  "arcBeats": [],
  "loops": [],
  "imagePathAlt": null,
  "thumbSrc": null,
  "thumbSrcAlt": null,
  "locked": true
}