react-native-unit-components
Version:
Unit React Native components
53 lines (52 loc) • 2.79 kB
JavaScript
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.injectRequestAccountActionScript = exports.injectRefreshEventIfNeeded = exports.injectOpenActionsMenuScript = exports.getAccountScript = exports.getAccountParams = exports.getAccountActionType = void 0;
var _UNAccountComponent = require("./UNAccountComponent");
var _webComponent = require("../../types/internal/webComponent.types");
var _bodyScript = require("../../scripts/html/bodyScript");
const getAccountParams = props => {
const accountIdParam = props.accountId ? `account-id="${props.accountId}"` : '';
const menuItemsParam = props.menuItems ? `menu-items="${props.menuItems.join()}"` : '';
return `
${accountIdParam}
hide-actions-menu-button="${props.hideActionsMenuButton || false}"
hide-selection-menu-button="${props.hideSelectionMenuButton || false}"
hide-account-status="${props.hideAccountStatus || false}"
hide-account-details="${props.hideAccountDetails || false}"
hide-account-buttons="${props.hideAccountButtons || false}"
hide-account-cta-banner="${props.hideAccountCtaBanner || false}"
show-left-to-spend="${props.showLeftToSpend || false}"
enable-fund-account-button="${props.enableFundAccountButton || false}"
enable-pay-someone-account-button="${props.enablePaySomeoneAccountButton || false}"
${menuItemsParam}
`;
};
exports.getAccountParams = getAccountParams;
const getAccountScript = () => {
return `
${_bodyScript.DISPATCH_REQUEST_REFRESH}
${_bodyScript.LISTENERS.unitRequestLeftToSpendDetails}
`;
};
exports.getAccountScript = getAccountScript;
const injectOpenActionsMenuScript = currentWeb => {
currentWeb?.injectJavaScript(`dispatchOpenActionsMenu('${_webComponent.WebComponentType.account}')`);
};
exports.injectOpenActionsMenuScript = injectOpenActionsMenuScript;
const injectRequestAccountActionScript = (currentWeb, action) => {
currentWeb?.injectJavaScript(`dispatchRequestAccountAction('${action}')`);
};
exports.injectRequestAccountActionScript = injectRequestAccountActionScript;
const injectRefreshEventIfNeeded = (currentWeb, requestRefreshEvent) => {
if (requestRefreshEvent && requestRefreshEvent.dependencies.includes(_webComponent.WebComponentType.account.valueOf())) {
currentWeb?.injectJavaScript(`dispatchRefreshEvent('${JSON.stringify(requestRefreshEvent)}')`);
}
};
exports.injectRefreshEventIfNeeded = injectRefreshEventIfNeeded;
const getAccountActionType = requestRendering => {
return requestRendering.data.nativeComponent.includes(_UNAccountComponent.UNAccountAction.List) ? _UNAccountComponent.UNAccountAction.List : _UNAccountComponent.UNAccountAction.Menu;
};
exports.getAccountActionType = getAccountActionType;
//# sourceMappingURL=UNAccountComponent.utils.js.map
;