/*! elementor - v3.23.0 - 25-07-2024 */
/******/ (() => { // webpackBootstrap
/******/ var __webpack_modules__ = ({
/***/ "../assets/dev/js/admin/new-template/behaviors/lock-pro.js":
/*!*****************************************************************!*\
!*** ../assets/dev/js/admin/new-template/behaviors/lock-pro.js ***!
\*****************************************************************/
/***/ ((__unused_webpack_module, exports, __webpack_require__) => {
"use strict";
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
Object.defineProperty(exports, "__esModule", ({
value: true
}));
exports["default"] = void 0;
var _classCallCheck2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/classCallCheck */ "../node_modules/@babel/runtime/helpers/classCallCheck.js"));
var _createClass2 = _interopRequireDefault(__webpack_require__(/*! @babel/runtime/helpers/createClass */ "../node_modules/@babel/runtime/helpers/createClass.js"));
var LockPro = /*#__PURE__*/function () {
function LockPro(elements) {
(0, _classCallCheck2.default)(this, LockPro);
this.elements = elements;
}
(0, _createClass2.default)(LockPro, [{
key: "bindEvents",
value: function bindEvents() {
var _this$elements = this.elements,
form = _this$elements.form,
templateType = _this$elements.templateType;
form.addEventListener('submit', this.onFormSubmit.bind(this));
templateType.addEventListener('change', this.onTemplateTypeChange.bind(this));
// Force checking on render, to make sure that default values are also checked.
this.onTemplateTypeChange();
}
}, {
key: "onFormSubmit",
value: function onFormSubmit(e) {
var lockOptions = this.getCurrentLockOptions();
if (lockOptions.is_locked) {
e.preventDefault();
}
}
}, {
key: "onTemplateTypeChange",
value: function onTemplateTypeChange() {
var lockOptions = this.getCurrentLockOptions();
if (lockOptions.is_locked) {
this.lock(lockOptions);
} else {
this.unlock();
}
}
}, {
key: "getCurrentLockOptions",
value: function getCurrentLockOptions() {
var templateType = this.elements.templateType,
currentOption = templateType.options[templateType.selectedIndex];
return JSON.parse(currentOption.dataset.lock || '{}');
}
}, {
key: "lock",
value: function lock(lockOptions) {
this.showLockBadge(lockOptions.badge);
this.showLockButton(lockOptions.button);
this.hideSubmitButton();
}
}, {
key: "unlock",
value: function unlock() {
this.hideLockBadge();
this.hideLockButton();
this.showSubmitButton();
}
}, {
key: "showLockBadge",
value: function showLockBadge(badgeConfig) {
var _this$elements2 = this.elements,
lockBadge = _this$elements2.lockBadge,
lockBadgeText = _this$elements2.lockBadgeText,
lockBadgeIcon = _this$elements2.lockBadgeIcon;
lockBadgeText.innerText = badgeConfig.text;
lockBadgeIcon.className = badgeConfig.icon;
lockBadge.classList.remove('e-hidden');
}
}, {
key: "hideLockBadge",
value: function hideLockBadge() {
this.elements.lockBadge.classList.add('e-hidden');
}
}, {
key: "showLockButton",
value: function showLockButton(buttonConfig) {
var lockButton = this.elements.lockButton;
lockButton.href = this.replaceLockLinkPlaceholders(buttonConfig.url);
lockButton.innerText = buttonConfig.text;
lockButton.classList.remove('e-hidden');
}
}, {
key: "hideLockButton",
value: function hideLockButton() {
this.elements.lockButton.classList.add('e-hidden');
}
}, {
key: "showSubmitButton",
value: function showSubmitButton() {
this.elements.submitButton.classList.remove('e-hidden');
}
}, {
key: "hideSubmitButton",
value: function hideSubmitButton() {
this.elements.submitButton.classList.add('e-hidden');
}
}, {
key: "replaceLockLinkPlaceholders",
value: function replaceLockLinkPlaceholders(link) {
return link.replace(/%%utm_source%%/g, 'wp-add-new').replace(/%%utm_medium%%/g, 'wp-dash');
}
}]);
return LockPro;
}();
exports["default"] = LockPro;
/***/ }),
/***/ "../assets/dev/js/admin/new-template/layout.js":
/*!*****************************************************!*\
!*** ../assets/dev/js/admin/new-template/layout.js ***!
\*****************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
"use strict";
/* provided dependency */ var __ = __webpack_require__(/*! @wordpress/i18n */ "@wordpress/i18n")["__"];
var _interopRequireDefault = __webpack_require__(/*! @babel/runtime/helpers/interopRequireDefault */ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js");
var _lockPro = _interopRequireDefault(__webpack_require__(/*! ./behaviors/lock-pro */ "../assets/dev/js/admin/new-template/behaviors/lock-pro.js"));
var NewTemplateView = __webpack_require__(/*! elementor-admin/new-template/view */ "../assets/dev/js/admin/new-template/view.js");
module.exports = elementorModules.common.views.modal.Layout.extend({
getModalOptions: function getModalOptions() {
return {
id: 'elementor-new-template-modal'
};
},
getLogoOptions: function getLogoOptions() {
return {
title: __('New Template', 'elementor')
};
},
initialize: function initialize() {
elementorModules.common.views.modal.Layout.prototype.initialize.apply(this, arguments);
var lookupControlIdPrefix = 'elementor-new-template__form__';
var templateTypeSelectId = "".concat(lookupControlIdPrefix, "template-type");
this.showLogo();
this.showContentView();
this.initElements();
this.lockProBehavior = new _lockPro.default(this.elements);
this.lockProBehavior.bindEvents();
var dynamicControlsVisibilityListener = function dynamicControlsVisibilityListener() {
elementorAdmin.templateControls.setDynamicControlsVisibility(lookupControlIdPrefix, elementor_new_template_form_controls);
};
this.getModal().onShow = function () {
dynamicControlsVisibilityListener();
document.getElementById(templateTypeSelectId).addEventListener('change', dynamicControlsVisibilityListener);
};
this.getModal().onHide = function () {
document.getElementById(templateTypeSelectId).removeEventListener('change', dynamicControlsVisibilityListener);
};
},
initElements: function initElements() {
var container = this.$el[0],
root = '#elementor-new-template__form';
this.elements = {
form: container.querySelector(root),
submitButton: container.querySelector("".concat(root, "__submit")),
lockButton: container.querySelector("".concat(root, "__lock_button")),
templateType: container.querySelector("".concat(root, "__template-type")),
lockBadge: container.querySelector("".concat(root, "__template-type-badge")),
lockBadgeText: container.querySelector("".concat(root, "__template-type-badge__text")),
lockBadgeIcon: container.querySelector("".concat(root, "__template-type-badge__icon"))
};
},
showContentView: function showContentView() {
this.modalContent.show(new NewTemplateView());
}
});
/***/ }),
/***/ "../assets/dev/js/admin/new-template/view.js":
/*!***************************************************!*\
!*** ../assets/dev/js/admin/new-template/view.js ***!
\***************************************************/
/***/ ((module) => {
"use strict";
module.exports = Marionette.ItemView.extend({
id: 'elementor-new-template-dialog-content',
template: '#tmpl-elementor-new-template',
ui: {},
events: {},
onRender: function onRender() {}
});
/***/ }),
/***/ "@wordpress/i18n":
/*!**************************!*\
!*** external "wp.i18n" ***!
\**************************/
/***/ ((module) => {
"use strict";
module.exports = wp.i18n;
/***/ }),
/***/ "../node_modules/@babel/runtime/helpers/classCallCheck.js":
/*!****************************************************************!*\
!*** ../node_modules/@babel/runtime/helpers/classCallCheck.js ***!
\****************************************************************/
/***/ ((module) => {
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
module.exports = _classCallCheck, module.exports.__esModule = true, module.exports["default"] = module.exports;
/***/ }),
/***/ "../node_modules/@babel/runtime/helpers/createClass.js":
/*!*************************************************************!*\
!*** ../node_modules/@babel/runtime/helpers/createClass.js ***!
\*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
var toPropertyKey = __webpack_require__(/*! ./toPropertyKey.js */ "../node_modules/@babel/runtime/helpers/toPropertyKey.js");
function _defineProperties(target, props) {
for (var i = 0; i < props.length; i++) {
var descriptor = props[i];
descriptor.enumerable = descriptor.enumerable || false;
descriptor.configurable = true;
if ("value" in descriptor) descriptor.writable = true;
Object.defineProperty(target, toPropertyKey(descriptor.key), descriptor);
}
}
function _createClass(Constructor, protoProps, staticProps) {
if (protoProps) _defineProperties(Constructor.prototype, protoProps);
if (staticProps) _defineProperties(Constructor, staticProps);
Object.defineProperty(Constructor, "prototype", {
writable: false
});
return Constructor;
}
module.exports = _createClass, module.exports.__esModule = true, module.exports["default"] = module.exports;
/***/ }),
/***/ "../node_modules/@babel/runtime/helpers/interopRequireDefault.js":
/*!***********************************************************************!*\
!*** ../node_modules/@babel/runtime/helpers/interopRequireDefault.js ***!
\***********************************************************************/
/***/ ((module) => {
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
"default": obj
};
}
module.exports = _interopRequireDefault, module.exports.__esModule = true, module.exports["default"] = module.exports;
/***/ }),
/***/ "../node_modules/@babel/runtime/helpers/toPrimitive.js":
/*!*************************************************************!*\
!*** ../node_modules/@babel/runtime/helpers/toPrimitive.js ***!
\*************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
function toPrimitive(t, r) {
if ("object" != _typeof(t) || !t) return t;
var e = t[Symbol.toPrimitive];
if (void 0 !== e) {
var i = e.call(t, r || "default");
if ("object" != _typeof(i)) return i;
throw new TypeError("@@toPrimitive must return a primitive value.");
}
return ("string" === r ? String : Number)(t);
}
module.exports = toPrimitive, module.exports.__esModule = true, module.exports["default"] = module.exports;
/***/ }),
/***/ "../node_modules/@babel/runtime/helpers/toPropertyKey.js":
/*!***************************************************************!*\
!*** ../node_modules/@babel/runtime/helpers/toPropertyKey.js ***!
\***************************************************************/
/***/ ((module, __unused_webpack_exports, __webpack_require__) => {
var _typeof = (__webpack_require__(/*! ./typeof.js */ "../node_modules/@babel/runtime/helpers/typeof.js")["default"]);
var toPrimitive = __webpack_require__(/*! ./toPrimitive.js */ "../node_modules/@babel/runtime/helpers/toPrimitive.js");
function toPropertyKey(t) {
var i = toPrimitive(t, "string");
return "symbol" == _typeof(i) ? i : String(i);
}
module.exports = toPropertyKey, module.exports.__esModule = true, module.exports["default"] = module.exports;
/***/ }),
/***/ "../node_modules/@babel/runtime/helpers/typeof.js":
/*!********************************************************!*\
!*** ../node_modules/@babel/runtime/helpers/typeof.js ***!
\********************************************************/
/***/ ((module) => {
function _typeof(o) {
"@babel/helpers - typeof";
return (module.exports = _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) {
return typeof o;
} : function (o) {
return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o;
}, module.exports.__esModule = true, module.exports["default"] = module.exports), _typeof(o);
}
module.exports = _typeof, module.exports.__esModule = true, module.exports["default"] = module.exports;
/***/ })
/******/ });
/************************************************************************/
/******/ // The module cache
/******/ var __webpack_module_cache__ = {};
/******/
/******/ // The require function
/******/ function __webpack_require__(moduleId) {
/******/ // Check if module is in cache
/******/ var cachedModule = __webpack_module_cache__[moduleId];
/******/ if (cachedModule !== undefined) {
/******/ return cachedModule.exports;
/******/ }
/******/ // Create a new module (and put it into the cache)
/******/ var module = __webpack_module_cache__[moduleId] = {
/******/ // no module.id needed
/******/ // no module.loaded needed
/******/ exports: {}
/******/ };
/******/
/******/ // Execute the module function
/******/ __webpack_modules__[moduleId](module, module.exports, __webpack_require__);
/******/
/******/ // Return the exports of the module
/******/ return module.exports;
/******/ }
/******/
/************************************************************************/
var __webpack_exports__ = {};
// This entry need to be wrapped in an IIFE because it need to be in strict mode.
(() => {
"use strict";
/*!***********************************************************!*\
!*** ../assets/dev/js/admin/new-template/new-template.js ***!
\***********************************************************/
var NewTemplateLayout = __webpack_require__(/*! elementor-admin/new-template/layout */ "../assets/dev/js/admin/new-template/layout.js");
var NewTemplateModule = elementorModules.ViewModule.extend({
getDefaultSettings: function getDefaultSettings() {
return {
selectors: {
addButton: '.page-title-action:first, #elementor-template-library-add-new'
}
};
},
getDefaultElements: function getDefaultElements() {
var selectors = this.getSettings('selectors');
return {
$addButton: jQuery(selectors.addButton)
};
},
bindEvents: function bindEvents() {
this.elements.$addButton.on('click', this.onAddButtonClick);
elementorCommon.elements.$window.on('hashchange', this.showModalByHash.bind(this));
},
showModalByHash: function showModalByHash() {
if ('#add_new' === location.hash) {
this.layout.showModal();
location.hash = '';
}
},
onInit: function onInit() {
elementorModules.ViewModule.prototype.onInit.apply(this, arguments);
this.layout = new NewTemplateLayout();
this.showModalByHash();
},
onAddButtonClick: function onAddButtonClick(event) {
event.preventDefault();
this.layout.showModal();
}
});
jQuery(function () {
window.elementorNewTemplate = new NewTemplateModule();
});
})();
/******/ })()
;
//# sourceMappingURL=new-template.js.map
What is Foreign Exchange Reserves? Definition of Foreign Exchange Reserves, Foreign Exchange Reserves Meaning – Sarvodaya Inter College
Skip to content
In addition, most commodity markets (such as crude oil and gold) use the US dollar. The countries with the largest trade surpluses are the ones with the greatest foreign reserves. They wind up stockpiling dollars because they export more than they A stock-buying strategy to beat inflation and generate income import. The banks prefer to use the cash to buy sovereign debt because it pays a small interest rate.
Foreign Currency Reserves
These reserves can also include gold, special drawing rights (SDRs), and other reserve assets. The central bank acquires these reserves through various channels, such as trade surplus, foreign investments, and borrowing from international financial institutions. Reserves assets allow a central bank to purchase the domestic currency, which is considered a liability for the central bank (since it prints the money or fiat currency as IOUs). Hence, in a world 3 types of crms and how to use them of perfect capital mobility, a country with fixed exchange rate would not be able to execute an independent monetary policy. For example, US government bonds pay interest in US dollars, and Japanese government bonds pay interest in Japanese yen. A reserve currency is a foreign currency held in a nation’s central bank and used for international trade and other purposes.
India’s forex reserves fall to $624 billion, down by 1.8 billion as of January 17
Seventh, most central banks want to boost returns without compromising safety. Sixth, some countries use their reserves to fund sectors, How to analyze a company such as infrastructure. China, for instance, has used part of its forex reserves for recapitalizing some of its state-owned banks. These reserve requirements are established by the Fed’s Board of Governors. Reserves also keep the banks secure by reducing the risk that they will default by ensuring that they maintain a minimum amount of physical funds in their reserves.
Forex reserve or foreign currency reserves include cash (foreign currency) and other assets like gold that are held by the central banks of any country or other financial institutions like the International Monetary Fund (IMF).
The U.S. dollar went off the gold standard in the 1970s, leading to contemporary floating exchange rates.
A rule usually followed by central banks is to hold in reserve at least three months of imports.
There is no counterpart for reserve assets in liabilities of the International Investment Position.
Japan came in second, holding $1.3 trillion, and Switzerland followed with $890 billion.
The caveat is that higher reserves can decrease the perception of risk and thus the government bond interest rate, so this measures can overstate the cost.
Weekly Updates
However, the opposite happened and foreign reserves present a strong upward trend. Reserves grew more than gross domestic product (GDP) and imports in many countries. The only ratio that is relatively stable is foreign reserves over M2.7 Below are some theories that can explain this trend. Treasury bills, often referred to as T-bills, are short-term debt instruments issued by the government to raise funds to meet short-term financial requirements. They are one of the safest and most liquid investments available in the financial markets. Treasury bills are issued by the government through the central bank and are backed by the full faith and credit of the government.
It is a common practice in countries around the world for a central bank to hold a significant amount of reserves in its foreign exchange.
Periods of global economic volatility, such as the global financial crisis in 2008 and the COVID-19 pandemic, prompted increased interventions by the RBI to maintain stability in the forex market.
Instead of keeping supplies of gold, other countries accumulated reserves of U.S. dollars; central banks would maintain fixed exchange rates between their currencies and the greenback.
A reserve currency is a foreign currency held in a nation’s central bank and used for international trade and other purposes.
The U.S. dollar wields such power due to the economic strength of the country.
There were many budding players that helped the country reach this historically-noted value in Forex reserves.
A third and critical function is to maintain liquidity in case of an economic crisis.
Adequacy and excess reserves
A case to point out is that of the Swiss National Bank, the central bank of Switzerland. The Swiss franc is regarded as a safe haven currency, so it usually appreciates during market’s stress. In the aftermath of the 2008 crisis and during the initial stages of the Eurozone crisis, the Swiss franc (CHF) appreciated sharply. After accumulating reserves during 15 months until June 2010, the SNB let the currency appreciate. U.S. foreign exchange reserves totaled over $244 billion as of the last week of July 2024. The RBI monitors the foreign exchange market closely, intervening only when necessary to ensure orderly market conditions and curb excessive volatility in the rupee exchange rate.
In a conservative view, forex should only contain foreign banknotes, foreign treasury bills, foreign bank deposits, and long and short-term foreign government securities. But, in practice, it also contains gold reserves, IMF reserve positions, and SDRs, or special drawing rights. The latter figure is more easily available and is officially known as the international reserves. A third and critical function is to maintain liquidity in case of an economic crisis.
Under perfect capital mobility, the change in reserves is a temporary measure, since the fixed exchange rate attaches the domestic monetary policy to that of the country of the base currency. Hence, in the long term, the monetary policy has to be adjusted in order to be compatible with that of the country of the base currency. Without that, the country will experience outflows or inflows of capital.