{"_id":"@bacalaocortao/json-to-bubble-object","name":"@bacalaocortao/json-to-bubble-object","dist-tags":{"latest":"1.0.6"},"versions":{"1.0.6":{"name":"@bacalaocortao/json-to-bubble-object","version":"1.0.6","description":"Convert a JSON object to a Bubble object for plugin purposes. (Bubble.io)","main":"index.js","scripts":{"test":"mocha"},"keywords":["bubble.is"],"author":{"name":"lottemint.md"},"license":"MIT","repository":{"type":"git","url":"git+https://github.com/Lottemint/json-to-bubble-object.git"},"bugs":{"url":"https://github.com/Lottemint/json-to-bubble-object/issues"},"homepage":"https://github.com/Lottemint/json-to-bubble-object#readme","devDependencies":{"mocha":"^10.8.2"},"_id":"@bacalaocortao/json-to-bubble-object@1.0.6","gitHead":"3758f63b4c83999380fed695059ab99a8cf4d49e","_nodeVersion":"22.12.0","_npmVersion":"10.9.0","dist":{"integrity":"sha512-22wNAlsjWF39ATbPaG+wr4SO57XsksC147VSNpm8C7US1r5U631dxP6ccMlOUzDGMO12CeCQjbOB61hAwQbwow==","shasum":"f3cda7a2ce816102938d55001b839d4674217ac7","tarball":"https://registry.npmjs.org/@bacalaocortao/json-to-bubble-object/-/json-to-bubble-object-1.0.6.tgz","fileCount":3,"unpackedSize":7743,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIQCVrpcT7BBH89mMtsyFaoROiN/rHiiqBZi9c0DfJghSlQIgdsqvobjH0hqPwPiWUxjOMnbVGvE9Q3AI9I9YOOOVPZM="}]},"_npmUser":{"name":"bacalaocortao","email":"diego@kujahkujah.org"},"directories":{},"maintainers":[{"name":"bacalaocortao","email":"diego@kujahkujah.org"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/json-to-bubble-object_1.0.6_1762962156770_0.08016593120473092"},"_hasShrinkwrap":false}},"time":{"created":"2025-11-12T15:42:36.654Z","1.0.6":"2025-11-12T15:42:36.940Z","modified":"2025-11-12T15:42:37.223Z"},"maintainers":[{"name":"bacalaocortao","email":"diego@kujahkujah.org"}],"description":"Convert a JSON object to a Bubble object for plugin purposes. (Bubble.io)","homepage":"https://github.com/Lottemint/json-to-bubble-object#readme","keywords":["bubble.is"],"repository":{"type":"git","url":"git+https://github.com/Lottemint/json-to-bubble-object.git"},"author":{"name":"lottemint.md"},"bugs":{"url":"https://github.com/Lottemint/json-to-bubble-object/issues"},"license":"MIT","readme":"# json-to-bubble-object\r\n\r\nConvert a JSON object to a Bubble object for plugin purposes. (Bubble.io)\r\n<br>\r\n<br>This module relates to the following topic:\r\n<br>https://forum.bubble.io/t/output-an-object-for-server-side-client-side/59419\r\n\r\n\r\n### Installing\r\n<b>Step 1.</b>\r\n<br>You need to install the following module:\r\n\r\n```\r\nnpm i json-to-bubble-object\r\n```\r\n\r\n<br>\r\n<b>Step 2.</b>\r\n<br>Add the convert function from the installed module:\r\n\r\n\r\n```javascript\r\nconst {convert} = require('json-to-bubble-object');\r\n```\r\n\r\n<br>\r\n<b>Step 3.</b>\r\n<br>Now, you can convert any JSON object into a Bubble object.\r\n<br>That may help to avoid manual preparation of a large and complex object.\r\n<br>For example, let's use the following JSON:\r\n<br>\r\n\r\n```javascript\r\nlet obj = {\r\n    \"@metadata.context\": \"testing at symbol and dot\",\r\n    \"status\": \"success\",\r\n    \"locale\": \"tr\",\r\n    \"systemTime\": 1470731191116,\r\n    \"conversationId\": \"123456789\",\r\n    \"price\": 1,\r\n    \"paidPrice\": 1.2,\r\n    \"installment\": 1,\r\n    \"paymentId\": \"26143\",\r\n    \"fraudStatus\": 1,\r\n    \"merchantCommissionRate\": 20,\r\n    \"merchantCommissionRateAmount\": 0.2,\r\n    \"iyziCommissionRateAmount\": 0.0354,\r\n    \"iyziCommissionFee\": 0.25,\r\n    \"cardType\": \"CREDIT_CARD\",\r\n    \"cardAssociation\": \"MASTER_CARD\",\r\n    \"cardFamily\": \"Cardfinans\",\r\n    \"cardToken\": \"123\",\r\n    \"cardUserKey\": \"123'\",\r\n    \"binNumber\": \"531157\",\r\n    \"basketId\": \"B67832\",\r\n    \"currency\": \"TRY\",\r\n    \"itemTransactions\": [\r\n        {\r\n            \"itemId\": \"BI101\",\r\n            \"paymentTransactionId\": \"38226\",\r\n            \"transactionStatus\": 2,\r\n            \"price\": 0.3,\r\n            \"paidPrice\": 0.36,\r\n            \"merchantCommissionRate\": 20,\r\n            \"merchantCommissionRateAmount\": 0.06,\r\n            \"iyziCommissionRateAmount\": 0.01062,\r\n            \"iyziCommissionFee\": 0.075,\r\n            \"blockageRate\": 10,\r\n            \"blockageRateAmountMerchant\": 0.036,\r\n            \"blockageRateAmountSubMerchant\": 0,\r\n            \"blockageResolvedDate\": \"2016-08-16 11:25:58\",\r\n            \"subMerchantPrice\": 0,\r\n            \"subMerchantPayoutRate\": 0,\r\n            \"subMerchantPayoutAmount\": 0,\r\n            \"merchantPayoutAmount\": 0.23838,\r\n            \"convertedPayout\": {\r\n                \"paidPrice\": 0.36,\r\n                \"iyziCommissionRateAmount\": 0.01062,\r\n                \"iyziCommissionFee\": 0.075,\r\n                \"blockageRateAmountMerchant\": 0.036,\r\n                \"blockageRateAmountSubMerchant\": 0,\r\n                \"subMerchantPayoutAmount\": 0,\r\n                \"merchantPayoutAmount\": 0.23838,\r\n                \"iyziConversionRate\": 0,\r\n                \"iyziConversionRateAmount\": 0,\r\n                \"currency\": \"TRY\"\r\n            }\r\n        }\r\n    ],\r\n    \"token\": \"123\",\r\n    \"callbackUrl\": \"https://www.merchant.com/callback\",\r\n    \"paymentStatus\": \"SUCCESS\",\r\n    \"test\": {\r\n        \"a\": 1,\r\n        \"b\": 2,\r\n        \"c\": {\r\n            \"c1\": 1,\r\n            \"c2\": 1,\r\n            \"c3\": {\r\n                \"c31\": 1,\r\n                \"c32\": 2\r\n            }\r\n        }\r\n    }\r\n};\r\n```\r\n\r\n<br>\r\n<b>Step 4.</b>\r\n<br>Let's output the converted object:\r\n<br>\r\n\r\n```javascript\r\nconsole.log(JSON.stringify(convert(obj)));\r\n```\r\n\r\n<br>\r\n<b>Output:</b>\r\n<br>\r\n\r\n```json\r\n{\r\n  \"_p_@metadata__dot__context\": \"testing at symbol and dot\",\r\n  \"_p_status\": \"success\",\r\n  \"_p_locale\": \"tr\",\r\n  \"_p_systemTime\": 1470731191116,\r\n  \"_p_conversationId\": \"123456789\",\r\n  \"_p_price\": 1,\r\n  \"_p_paidPrice\": 1.2,\r\n  \"_p_installment\": 1,\r\n  \"_p_paymentId\": \"26143\",\r\n  \"_p_fraudStatus\": 1,\r\n  \"_p_merchantCommissionRate\": 20,\r\n  \"_p_merchantCommissionRateAmount\": 0.2,\r\n  \"_p_iyziCommissionRateAmount\": 0.0354,\r\n  \"_p_iyziCommissionFee\": 0.25,\r\n  \"_p_cardType\": \"CREDIT_CARD\",\r\n  \"_p_cardAssociation\": \"MASTER_CARD\",\r\n  \"_p_cardFamily\": \"Cardfinans\",\r\n  \"_p_cardToken\": \"123\",\r\n  \"_p_cardUserKey\": \"123'\",\r\n  \"_p_binNumber\": \"531157\",\r\n  \"_p_basketId\": \"B67832\",\r\n  \"_p_currency\": \"TRY\",\r\n  \"_p_itemTransactions\": [\r\n    {\r\n      \"_p_itemId\": \"BI101\",\r\n      \"_p_paymentTransactionId\": \"38226\",\r\n      \"_p_transactionStatus\": 2,\r\n      \"_p_price\": 0.3,\r\n      \"_p_paidPrice\": 0.36,\r\n      \"_p_merchantCommissionRate\": 20,\r\n      \"_p_merchantCommissionRateAmount\": 0.06,\r\n      \"_p_iyziCommissionRateAmount\": 0.01062,\r\n      \"_p_iyziCommissionFee\": 0.075,\r\n      \"_p_blockageRate\": 10,\r\n      \"_p_blockageRateAmountMerchant\": 0.036,\r\n      \"_p_blockageResolvedDate\": \"2016-08-16 11:25:58\",\r\n      \"_p_merchantPayoutAmount\": 0.23838,\r\n      \"_p_convertedPayout.paidPrice\": 0.36,\r\n      \"_p_convertedPayout.iyziCommissionRateAmount\": 0.01062,\r\n      \"_p_convertedPayout.iyziCommissionFee\": 0.075,\r\n      \"_p_convertedPayout.blockageRateAmountMerchant\": 0.036,\r\n      \"_p_convertedPayout.merchantPayoutAmount\": 0.23838,\r\n      \"_p_convertedPayout.currency\": \"TRY\"\r\n    }\r\n  ],\r\n  \"_p_token\": \"123\",\r\n  \"_p_callbackUrl\": \"https://www.merchant.com/callback\",\r\n  \"_p_paymentStatus\": \"SUCCESS\",\r\n  \"_p_test.a\": 1,\r\n  \"_p_test.b\": 2,\r\n  \"_p_test.c.c1\": 1,\r\n  \"_p_test.c.c2\": 1,\r\n  \"_p_test.c.c3.c31\": 1,\r\n  \"_p_test.c.c3.c32\": 2\r\n}\r\n```","readmeFilename":"README.md","_rev":"1-29ec31caa7ada978f02b562a2ddb581b"}