{"record":{"id":"fbc236e9b9df1106","repo":"medusajs/medusa","slug":"failed-to-fetch-icon-icon-name-skipping","errorCode":null,"errorMessage":"Failed to fetch icon ${icon.name}. Skipping...","messagePattern":"Failed to fetch icon (.+?)\\. Skipping\\.\\.\\.","errorType":"console","errorClass":null,"httpStatus":null,"severity":"warning","filePath":"packages/design-system/toolbox/src/commands/icons/command.ts","lineNumber":93,"sourceCode":"  const URLData = await client.getImage(FIGMA_FILE_ID, {\n    ids: iconNodes.map((icon) => icon.node_id),\n    format: \"svg\",\n    scale: 1,\n  })\n\n  logger.success(\"Successfully fetched URLs for SVGs\")\n\n  const length = iconNodes.length\n\n  logger.info(\"Transforming SVGs\")\n  for (let i = 0; i < length; i += 20) {\n    const slice = iconNodes.slice(i, i + 20)\n\n    const requests = slice.map(async (icon) => {\n      const URL = URLData.images[icon.node_id]\n\n      if (!URL) {\n        logger.warn(`Failed to fetch icon ${icon.name}. Skipping...`)\n        skippedIcons.push(icon.name)\n        return\n      }\n\n      let code: string | null = null\n\n      try {\n        code = await client.getResource(URL)\n      } catch (e) {\n        logger.warn(`Failed to fetch icon ${icon.name}. Skipping...`)\n        skippedIcons.push(icon.name)\n      }\n\n      if (!code) {\n        return\n      }\n\n      const { componentName, fileName, testName, fixed } = getIconData(","sourceCodeStart":75,"sourceCodeEnd":111,"githubUrl":"https://github.com/medusajs/medusa/blob/5e06e544a296b9033f20f71f11c559f81a0e5739/packages/design-system/toolbox/src/commands/icons/command.ts#L75-L111","documentation":"In the design-system toolbox icon generation command, each Figma icon node is looked up in a URL map (URLData.images keyed by node_id). If the icon's node_id has no entry in that map, the icon cannot be fetched, is counted as skipped, and processing continues with the remaining icons.","triggerScenarios":"Running the icons generation command against a Figma file where an icon frame/node id present in the icon list is missing from the images response — renamed/moved nodes, stale node ids, or icons excluded from the export settings.","commonSituations":"Figma file restructured after the icon list was generated; node ids changed when icons were moved between pages; the export request only returned images for a subset of nodes.","solutions":["Re-run the icon list fetch so node ids match the current Figma file, then regenerate","Verify the icon frames in Figma still exist and are included in the export/images request","Check the printed skipped icon names and fix or remove those nodes in Figma"],"exampleFix":null,"handlingStrategy":"fallback","validationCode":"if (!URLData.images[icon.node_id]) {\n  skippedIcons.push(icon.name) // log and continue without fetching\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Re-sync the icon node list before generation","Verify Figma nodes exist and are exported before batch runs"],"tags":["design-system","toolbox","figma","icons"],"backgroundTag":"asset-not-found","analyzedSha":"5e06e544a296b9033f20f71f11c559f81a0e5739","analyzedAt":"2026-08-27T07:24:39.599Z","schemaVersion":2},"datasetVersion":"2026-08-27T08:17:20.692Z"}