{"version":3,"file":"component---src-pages-what-we-do-economic-surveillance-js-080dac52f5f3c06a7fe8.js","mappings":"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","sources":["webpack://imf-2021/./src/components/mobile-only.js","webpack://imf-2021/./src/components/page-column.js","webpack://imf-2021/./src/components/read-next.js","webpack://imf-2021/./src/pages/what-we-do/economic-surveillance.js"],"sourcesContent":["import React from \"react\"\n\nexport default function MobileOnly({ children }) {\n return
{children}
\n}\n","import React from \"react\"\n\nexport function PageColumns({ children, modifiers }) {\n return (\n
\n {children}\n
\n )\n}\n\nexport function Column({ children, type, classes }) {\n return type === \"media\" ? (\n \n
{children}
\n \n ) : (\n \n
\n {children}\n
\n \n )\n}\n","import React, { useState } from \"react\"\nimport Image from \"../components/image\"\nimport menuData from \"../data/menu.json\"\nimport findObject from \"../helpers/find-object\"\nimport { Link } from \"gatsby\"\nimport VisibilitySensor from \"react-visibility-sensor\"\n\nexport default function ReadNext({ sectionID, pageID }) {\n const [loaded, setLoaded] = useState(false)\n const onChange = isVisible => {\n isVisible ? setLoaded(true) : setLoaded(false)\n }\n\n const menu = findObject(menuData, \"id\", sectionID)\n const content =\n menu && pageID ? findObject(menu.children, \"id\", pageID) : menu\n\n return (\n
\n \n \n
Read Next
\n
\n {content.thumbnail && (\n \n )}\n
\n

{content.name}

\n {content.deck && (\n

{content.deck}

\n )}\n
\n
\n \n \n
\n )\n}\n","import React, { useState, useEffect } from \"react\"\nimport { withPrefix } from \"gatsby\"\nimport Layout from \"../../components/layout\"\nimport Hero from \"../../components/hero\"\nimport MobileOnly from \"../../components/mobile-only\"\nimport ReadNext from \"../../components/read-next\"\nimport boardActionsData from \"../../data/board-actions-data.json\"\nimport boardActionsFilters from \"../../data/board-actions-filters.json\"\nimport { slugify } from \"../../helpers/strings\"\nimport Image from \"../../components/image\"\nimport { AppendixWaypoint, Appendix } from \"../../components/appendix\"\nimport { PageColumns, Column } from \"../../components/page-column\"\n\nconst PAGESLUG = \"economic-surveillance\"\n\nexport default function EconomicSurveillance() {\n const [actionsFilter, setActionsFilter] = useState(\"all\") // Accepts a filter slug\n const [actionsTruncated, setActionsTruncated] = useState(true)\n\n // Process and store the board actions data *once* into datasets based on the filters\n var processedData = []\n\n boardActionsFilters.forEach(filter => {\n if (filter.slug) {\n if (filter.slug === \"all\") {\n processedData[filter.slug] = boardActionsData\n } else {\n processedData[filter.slug] = boardActionsData.filter(action =>\n action.categories.includes(filter.title)\n )\n }\n }\n })\n\n // Update the current dataset according to the actionsFilter state\n var filteredData = processedData[actionsFilter]\n\n //\n // Event Handlers\n //\n\n function handleSelectChange(e) {\n setActionsFilter(e.target.value)\n }\n\n // Hide the load more button if less than 7 items\n useEffect(() => {\n if (filteredData.length <= 6) {\n setActionsTruncated(false)\n } else {\n setActionsTruncated(true)\n }\n }, [actionsFilter])\n\n return (\n \n
\n \n\n
\n

\n \n Through surveillance, the IMF monitors the international monetary\n system and global economic developments\n {\" \"}\n and engages in a health check of the economic and financial policies\n of its 190 member countries. In addition, the IMF highlights\n possible stability risks to its member countries and advises their\n governments on potential policy adjustments, enabling the\n international monetary system to achieve its goal of facilitating\n the exchange of goods, services, and capital among countries,\n thereby sustaining sound economic growth. The IMF advises on the\n policies of each member country through “bilateral surveillance” and\n provides analysis of the international monetary system and global\n and regional economic developments through “multilateral\n surveillance.” In practice, these two aspects of surveillance inform\n one another, ensuring a more comprehensive, consistent analysis of\n “spillovers”—how one country’s policies affect other countries.\n

\n
\n\n \n \n

Bilateral surveillance

\n \n

\n Article IV consultations consist of a two-way policy dialogue\n between the IMF and country authorities and cover a range of\n important macro-critical issues: financial, fiscal, foreign\n exchange, monetary, and structural. Because of the unprecedented\n demand for financing and support at the onset of the COVID-19\n crisis, the IMF’s work priorities had to be shifted, its\n procedures streamlined, and its staff redeployed. Staff work on\n Article IV consultations and the FSAP—the main vehicles for\n bilateral surveillance—was temporarily put on hold as a result,\n and consultation cycles were extended to ensure the postponement\n had no impact on IMF members’ surveillance obligations.\n

\n

\n Article IV consultations and assessments under the FSAP have since\n resumed remotely, but because of the pandemic, the IMF conducted\n only 36 Article IV consultations in FY 2021 (see{\" \"}\n \n Web Table 2\n \n )—less than half the usual number of consultations held annually—\n and eight Financial System Stability Assessments under the FSAP.\n

\n \n \n \n

\n Follow-up work as part of the 2021 Comprehensive Surveillance\n Review will help strengthen systemic financial risk analysis and\n macroprudential policy advice in Article IV consultations, as\n bilateral surveillance ramps up.{\" \"}\n

\n
\n\n \n \n \n
\n\n {/* The 2021 Comprehensive Surveillance Review */}\n \n \n\n \n

The 2021 Comprehensive Surveillance Review

\n \n

\n Work on the 2021 Comprehensive Surveillance Review was underway\n during FY 2021 (and was completed in May 2021, after this report\n was finalized). This review aims to strengthen IMF surveillance to\n help countries navigate the challenges of the next decade by\n better integrating aspects of the IMF’s work into surveillance,\n from macro-financial analysis to climate to capacity development.\n The IMF will also draw on new technologies, data, and partnerships\n to support more timely, more focused, and better-informed policy\n advice.\n

\n
\n
\n\n {/* Multilateral surveillance */}\n \n \n

Multilateral surveillance

\n

\n As part of its multilateral surveillance, the IMF issues biannual\n reports and updates on the latest global economic developments:\n the World Economic Outlook, the{\" \"}\n Global Financial Stability Report, and the{\" \"}\n Fiscal Monitor. Interim updates are also provided when\n warranted. In addition, as part of an ongoing effort to provide a\n rigorous and candid assessment of global excess imbalances and\n their causes, the External Sector Report is published\n annually. Article IV consultations and Financial System Stability\n Assessments under the FSAP also discuss issues related to\n multilateral surveillance, where relevant.\n

\n
\n\n \n
\n\n {/* Policy advice */}\n \n \n\n \n

Policy advice

\n

\n The IMF Executive Board discusses all aspects of the IMF’s work,\n from Article IV consultations to policy issues relevant to the\n global economy. The Board carries out its work largely on the\n basis of policy papers prepared by IMF management and staff. In FY\n 2021, the IMF published 54 of these policy papers externally.\n

\n
\n
\n\n {/* Policy Papers */}\n
\n \n
\n

Policy Papers

\n
\n \n Filter By\n
\n \n {boardActionsFilters.map((filter, index) => {\n return (\n \n {filter.title}\n \n )\n })}\n \n
\n \n
    \n {filteredData.map((action, index) => {\n // Action id must be totally unique or the list will not render/filter correctly\n let id = `board-actions-item-${slugify(action.title)}-${slugify(\n action.date\n )}-${\n action.series_number && slugify(action.series_number)\n }-${index}`\n\n return \n })}\n
\n {actionsTruncated && (\n setActionsTruncated(false)}\n >\n Load More\n \n )}\n \n \n
\n\n \n \n
\n )\n}\n\n//\n// Subcomponents\n//\n\nfunction BoardActionItem({ id, action }) {\n const [textIsTruncated, setTextIsTruncated] = useState(true)\n\n var truncatedText = action.summary && truncateText(action.summary)\n\n function truncateText(str) {\n return str.split(\" \").splice(0, 25).join(\" \")\n }\n\n function formatDate(dateString) {\n const months = [\n \"January\",\n \"February\",\n \"March\",\n \"April\",\n \"May\",\n \"June\",\n \"July\",\n \"August\",\n \"September\",\n \"October\",\n \"November\",\n \"December\",\n ]\n\n let dateStringArray = dateString.split(\"/\")\n\n return `${months[dateStringArray[0] - 1]} ${dateStringArray[1]}, ${\n dateStringArray[2]\n }`\n }\n\n function handleReadMoreButtonClick() {\n setTextIsTruncated(false)\n }\n\n return (\n
  • \n
    \n

    {formatDate(action.date)}

    \n
    \n
    \n
    \n
    \n

    \n {action.categories}\n

    \n

    \n {action.link ? (\n \n {action.title}\n \n ) : (\n action.title\n )}\n

    \n
    \n\n {action.summary?.length &&\n (truncatedText?.length &&\n action.summary?.length > truncatedText?.length ? (\n <>\n

    \n {truncatedText}…{\" \"}\n \n Read More\n \n

    \n

    \n {action.summary}\n

    \n {action.press_release && (\n

    \n For more information, read the{\" \"}\n \n press release\n \n .\n

    \n )}\n \n ) : (\n <>\n

    {action.summary}

    \n {action.press_release && (\n

    \n For more information, read the{\" \"}\n \n press release\n \n .\n

    \n )}\n \n ))}\n
    \n
  • \n )\n}\n"],"names":["MobileOnly","children","className","PageColumns","modifiers","Column","type","classes","ReadNext","sectionID","pageID","useState","loaded","setLoaded","menu","findObject","menuData","content","onChange","isVisible","partialVisibility","offset","bottom","Link","to","href","thumbnail","path","alt","name","deck","PAGESLUG","EconomicSurveillance","actionsFilter","setActionsFilter","actionsTruncated","setActionsTruncated","processedData","boardActionsFilters","filter","slug","boardActionsData","action","categories","includes","title","filteredData","useEffect","length","image","page","id","withPrefix","value","e","target","index","key","map","slugify","date","series_number","BoardActionItem","onClick","dateString","dateStringArray","textIsTruncated","setTextIsTruncated","truncatedText","summary","split","splice","join","link","rel","press_release"],"sourceRoot":""}