{"payload":{"feedbackUrl":"https://github.com/orgs/community/discussions/53140","repo":{"id":647195011,"defaultBranch":"trunk","name":"playground-tools","ownerLogin":"WordPress","currentUserCanPush":false,"isFork":false,"isEmpty":false,"createdAt":"2023-05-30T09:02:59.000Z","ownerAvatar":"https://avatars.githubusercontent.com/u/276006?v=4","public":true,"private":false,"isOrgOwned":true},"refInfo":{"name":"","listCacheKey":"v0:1716421688.0","currentOid":""},"activityList":{"items":[{"before":"f6a15e458ef21ffae81b5702fde63288771fda49","after":"0902bf3a238c8969f12110875c4598239612cc7e","ref":"refs/heads/trunk","pushedAt":"2024-05-23T00:06:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"adamziel","name":"Adam Zieliński","path":"/adamziel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/205419?s=80&v=4"},"commit":{"message":"Playground Block: Version bump 0.2.8","shortMessageHtmlLink":"Playground Block: Version bump 0.2.8"}},{"before":"be916cee7117246f470fdb16037035df424cdce0","after":"f6a15e458ef21ffae81b5702fde63288771fda49","ref":"refs/heads/trunk","pushedAt":"2024-05-23T00:03:44.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"adamziel","name":"Adam Zieliński","path":"/adamziel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/205419?s=80&v=4"},"commit":{"message":"Playground block: Enable managing file name and URL separately","shortMessageHtmlLink":"Playground block: Enable managing file name and URL separately"}},{"before":"5ec134386d9f22519e325cd11e7aa712a6ac05a1","after":"be916cee7117246f470fdb16037035df424cdce0","ref":"refs/heads/trunk","pushedAt":"2024-05-22T23:59:50.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"adamziel","name":"Adam Zieliński","path":"/adamziel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/205419?s=80&v=4"},"commit":{"message":"Playground Block: Version bump 0.2.7","shortMessageHtmlLink":"Playground Block: Version bump 0.2.7"}},{"before":"6e50907b5b3bfec7f235cae1fc0299c948ccb1de","after":"5ec134386d9f22519e325cd11e7aa712a6ac05a1","ref":"refs/heads/trunk","pushedAt":"2024-05-22T23:56:27.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"adamziel","name":"Adam Zieliński","path":"/adamziel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/205419?s=80&v=4"},"commit":{"message":"Linters: Ignore wordpress-es-modules-plugin","shortMessageHtmlLink":"Linters: Ignore wordpress-es-modules-plugin"}},{"before":"ad82663ad974e13eac13ea61741a1272049bcf20","after":"6e50907b5b3bfec7f235cae1fc0299c948ccb1de","ref":"refs/heads/trunk","pushedAt":"2024-05-22T23:55:29.000Z","pushType":"push","commitsCount":1,"pusher":{"login":"adamziel","name":"Adam Zieliński","path":"/adamziel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/205419?s=80&v=4"},"commit":{"message":"Playground block: Credentialless fetch, communicate fetch errors more clearly","shortMessageHtmlLink":"Playground block: Credentialless fetch, communicate fetch errors more…"}},{"before":"64adfd520664e200b108740d3ac2118a80db1907","after":"ad82663ad974e13eac13ea61741a1272049bcf20","ref":"refs/heads/trunk","pushedAt":"2024-05-22T23:48:08.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"adamziel","name":"Adam Zieliński","path":"/adamziel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/205419?s=80&v=4"},"commit":{"message":"Playground block: Support remote files (#282)\n\nEnables providing remote URLs as filenames in the Playground Block's\r\ncode editor:\r\n\r\n![CleanShot 2024-05-22 at 18 19\r\n40@2x](https://github.com/WordPress/playground-tools/assets/205419/a357b230-90ff-47e1-a78a-04971f4ab4e0)\r\n\r\nWith this change, you can write an interactive WordPress tutorial using\r\nsource code hosted on GitHub. It's easier to manage, preview, clone, and\r\nfork. While the remote URL is a source of truth for the block, it still\r\nstores a copy of the code in block attributes.\r\n\r\n## Testing Instructions\r\n\r\n1. Insert the Playground block.\r\n2. Create a new file, paste this URL as its name:\r\nhttps://raw.githubusercontent.com/WordPress/block-development-examples/trunk/plugins/data-basics-59c8f8/_playground/blueprint.json\r\n3. Confirm a new file was created with the \"link\" icon at the top.\r\n4. Try changing its content, saving the post, and refreshing the page.\r\nIt should have no effect.\r\n5. Confirm regular files still work as they used to.\r\n\r\ncc @juanmaguitar @ryanwelcher","shortMessageHtmlLink":"Playground block: Support remote files (#282)"}},{"before":"462c30c101572fe0d0e902b9a270b56064c4a75c","after":null,"ref":"refs/heads/github-files","pushedAt":"2024-05-22T23:48:08.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"adamziel","name":"Adam Zieliński","path":"/adamziel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/205419?s=80&v=4"}},{"before":"f6415ea30a77c30f0ff58945b37104aaed33bfc7","after":"462c30c101572fe0d0e902b9a270b56064c4a75c","ref":"refs/heads/github-files","pushedAt":"2024-05-22T23:45:37.000Z","pushType":"push","commitsCount":19,"pusher":{"login":"adamziel","name":"Adam Zieliński","path":"/adamziel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/205419?s=80&v=4"},"commit":{"message":"Merge branch 'trunk' into github-files","shortMessageHtmlLink":"Merge branch 'trunk' into github-files"}},{"before":"4742c9ae83eff8ddc3485f4b2d53c4309b895c2e","after":null,"ref":"refs/heads/jsx-support","pushedAt":"2024-05-22T23:44:16.000Z","pushType":"branch_deletion","commitsCount":0,"pusher":{"login":"adamziel","name":"Adam Zieliński","path":"/adamziel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/205419?s=80&v=4"}},{"before":"0e905cddd7261eb185bee398e375a6a8b382b566","after":"64adfd520664e200b108740d3ac2118a80db1907","ref":"refs/heads/trunk","pushedAt":"2024-05-22T23:44:15.000Z","pushType":"pr_merge","commitsCount":1,"pusher":{"login":"adamziel","name":"Adam Zieliński","path":"/adamziel","primaryAvatarUrl":"https://avatars.githubusercontent.com/u/205419?s=80&v=4"},"commit":{"message":"Playground Block: Support JSX source transpilation (#280)\n\nAdds a \"Transpile JSX\" attribute to the Playground block that enables\r\nblock-building examples using JSX syntax. This enables reusing existing\r\nJSX code examples in interactive tutorials on building WordPress blocks.\r\n\r\nOn the technical end, this PR uses `esbuild-wasm` to run the\r\ntranspilation in the browser.\r\n\r\n## Testing instructions\r\n\r\n1. Insert the Playground block\r\n2. Recreate this code example in the code editor:\r\nhttps://github.com/WordPress/gutenberg-examples/tree/trunk/blocks-jsx/01-basic-esnext\r\n3. Apply the Blueprint below\r\n4. Confirm the block displays a page with a \"Hello world example\" block\r\n\r\n```json\r\n{\r\n \"landingPage\": \"/?page_id=1\",\r\n \"phpExtensionBundles\": [\r\n \"kitchen-sink\"\r\n ],\r\n \"preferredVersions\": {\r\n \"php\": \"7.4\",\r\n \"wp\": \"5.9\"\r\n },\r\n \"login\": true,\r\n \"steps\": [\r\n {\r\n \"step\": \"unzip\",\r\n \"extractToPath\": \"/tmp\",\r\n \"zipFile\": {\r\n \"resource\": \"url\",\r\n \"url\": \"https://github-proxy.com/proxy/?repo=wordpress/playground-tools&pr=133&directory=packages/wordpress-es-modules-plugin/src\"\r\n }\r\n },\r\n {\r\n \"step\": \"mv\",\r\n \"fromPath\": \"/tmp/packages/wordpress-es-modules-plugin/src\",\r\n \"toPath\": \"/wordpress/wp-content/plugins/esm\"\r\n },\r\n {\r\n \"step\": \"activatePlugin\",\r\n \"pluginPath\": \"esm/index.php\"\r\n },\r\n {\r\n \"step\": \"resetData\"\r\n },\r\n {\r\n \"step\": \"runPHP\",\r\n \"code\": \" 'page',\\n\\t'post_status' => 'publish',\\n\\t'post_title' => 'Hello World example',\\n\\t'post_content' => '