\n-
Insert into
\n+
Insert into
\n+
\n+
\n+
\n+
\n+
\n+ {onClickCloseButton != null ? (","path":"editor/src/components/navigator/navigator-item/component-picker.tsx","commit_id":"9194eb601c4fbfee273290a84fd3f8248a060920","original_commit_id":"9194eb601c4fbfee273290a84fd3f8248a060920","user":{"login":"Rheeseyb","id":1044774,"node_id":"MDQ6VXNlcjEwNDQ3NzQ=","avatar_url":"https://avatars.githubusercontent.com/u/1044774?v=4","gravatar_id":"","url":"https://api.github.com/users/Rheeseyb","html_url":"https://github.com/Rheeseyb","followers_url":"https://api.github.com/users/Rheeseyb/followers","following_url":"https://api.github.com/users/Rheeseyb/following{/other_user}","gists_url":"https://api.github.com/users/Rheeseyb/gists{/gist_id}","starred_url":"https://api.github.com/users/Rheeseyb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rheeseyb/subscriptions","organizations_url":"https://api.github.com/users/Rheeseyb/orgs","repos_url":"https://api.github.com/users/Rheeseyb/repos","events_url":"https://api.github.com/users/Rheeseyb/events{/privacy}","received_events_url":"https://api.github.com/users/Rheeseyb/received_events","type":"User","site_admin":false},"body":"I originally went with that, but annoyingly it prevents TS from inferring that `onClickCloseButton` is non-null ","created_at":"2024-03-26T17:16:08Z","updated_at":"2024-03-26T17:16:08Z","html_url":"https://github.com/concrete-utopia/utopia/pull/5114#discussion_r1539765868","pull_request_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114","author_association":"CONTRIBUTOR","_links":{"self":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/comments/1539765868"},"html":{"href":"https://github.com/concrete-utopia/utopia/pull/5114#discussion_r1539765868"},"pull_request":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114"}},"reactions":{"url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/comments/1539765868/reactions","total_count":0,"+1":0,"-1":0,"laugh":0,"hooray":0,"confused":0,"heart":0,"rocket":0,"eyes":0},"start_line":null,"original_start_line":null,"start_side":null,"line":149,"original_line":149,"side":"RIGHT","in_reply_to_id":1539759603,"original_position":140,"position":140,"subject_type":"line"},"pull_request":{"url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114","id":1789878575,"node_id":"PR_kwDOD_CmjM5qr2Ev","html_url":"https://github.com/concrete-utopia/utopia/pull/5114","diff_url":"https://github.com/concrete-utopia/utopia/pull/5114.diff","patch_url":"https://github.com/concrete-utopia/utopia/pull/5114.patch","issue_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/5114","number":5114,"state":"open","locked":false,"title":"Render prop picker improvements","user":{"login":"Rheeseyb","id":1044774,"node_id":"MDQ6VXNlcjEwNDQ3NzQ=","avatar_url":"https://avatars.githubusercontent.com/u/1044774?v=4","gravatar_id":"","url":"https://api.github.com/users/Rheeseyb","html_url":"https://github.com/Rheeseyb","followers_url":"https://api.github.com/users/Rheeseyb/followers","following_url":"https://api.github.com/users/Rheeseyb/following{/other_user}","gists_url":"https://api.github.com/users/Rheeseyb/gists{/gist_id}","starred_url":"https://api.github.com/users/Rheeseyb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rheeseyb/subscriptions","organizations_url":"https://api.github.com/users/Rheeseyb/orgs","repos_url":"https://api.github.com/users/Rheeseyb/repos","events_url":"https://api.github.com/users/Rheeseyb/events{/privacy}","received_events_url":"https://api.github.com/users/Rheeseyb/received_events","type":"User","site_admin":false},"body":"Follow on from #5101 \r\n\r\nThis PR introduces the following tweaks to the Component Picker popup that is used for render prop slots:\r\n\r\n1. I've split up the `ComponentPicker` component into several components. _For now_ I have kept them all in `component-picker.tsx`, as their individual locations (and that file's location) would have to change anyway when re-using this for the Insert Menu pane, so I'd rather wait until then before further generalising it.\r\n2. We now use the `pointer` cursor when hovering over the clickable elements in the popup\r\n3. We now also use the `pointer` cursor when hovering over the slot itself in the navigator, meaning that it is now clear you can click the slot for a render prop (note also that you now click the empty slot itself rather than the actual row, as per the gif below)\r\n4. All registered components now come with an `(empty)` variant, which just inserts the component as `
`\r\n\r\n[**Try it here**](https://utopia.fish/p/2e3389de-emphasized-trumpet/?branch_name=feature-render-prop-insert-picker-2)\r\n\r\n![component-picker](https://github.com/concrete-utopia/utopia/assets/1044774/828a4753-6a3c-46e9-b31a-2995263f1489)\r\n","created_at":"2024-03-25T17:05:26Z","updated_at":"2024-03-26T17:16:08Z","closed_at":null,"merged_at":null,"merge_commit_sha":"b4094fa3dededce85116a103eeb2514da3a26631","assignee":null,"assignees":[],"requested_reviewers":[{"login":"gbalint","id":127662,"node_id":"MDQ6VXNlcjEyNzY2Mg==","avatar_url":"https://avatars.githubusercontent.com/u/127662?v=4","gravatar_id":"","url":"https://api.github.com/users/gbalint","html_url":"https://github.com/gbalint","followers_url":"https://api.github.com/users/gbalint/followers","following_url":"https://api.github.com/users/gbalint/following{/other_user}","gists_url":"https://api.github.com/users/gbalint/gists{/gist_id}","starred_url":"https://api.github.com/users/gbalint/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gbalint/subscriptions","organizations_url":"https://api.github.com/users/gbalint/orgs","repos_url":"https://api.github.com/users/gbalint/repos","events_url":"https://api.github.com/users/gbalint/events{/privacy}","received_events_url":"https://api.github.com/users/gbalint/received_events","type":"User","site_admin":false},{"login":"seanparsons","id":217400,"node_id":"MDQ6VXNlcjIxNzQwMA==","avatar_url":"https://avatars.githubusercontent.com/u/217400?v=4","gravatar_id":"","url":"https://api.github.com/users/seanparsons","html_url":"https://github.com/seanparsons","followers_url":"https://api.github.com/users/seanparsons/followers","following_url":"https://api.github.com/users/seanparsons/following{/other_user}","gists_url":"https://api.github.com/users/seanparsons/gists{/gist_id}","starred_url":"https://api.github.com/users/seanparsons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seanparsons/subscriptions","organizations_url":"https://api.github.com/users/seanparsons/orgs","repos_url":"https://api.github.com/users/seanparsons/repos","events_url":"https://api.github.com/users/seanparsons/events{/privacy}","received_events_url":"https://api.github.com/users/seanparsons/received_events","type":"User","site_admin":false},{"login":"balazsbajorics","id":2226774,"node_id":"MDQ6VXNlcjIyMjY3NzQ=","avatar_url":"https://avatars.githubusercontent.com/u/2226774?v=4","gravatar_id":"","url":"https://api.github.com/users/balazsbajorics","html_url":"https://github.com/balazsbajorics","followers_url":"https://api.github.com/users/balazsbajorics/followers","following_url":"https://api.github.com/users/balazsbajorics/following{/other_user}","gists_url":"https://api.github.com/users/balazsbajorics/gists{/gist_id}","starred_url":"https://api.github.com/users/balazsbajorics/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/balazsbajorics/subscriptions","organizations_url":"https://api.github.com/users/balazsbajorics/orgs","repos_url":"https://api.github.com/users/balazsbajorics/repos","events_url":"https://api.github.com/users/balazsbajorics/events{/privacy}","received_events_url":"https://api.github.com/users/balazsbajorics/received_events","type":"User","site_admin":false},{"login":"liady","id":7003853,"node_id":"MDQ6VXNlcjcwMDM4NTM=","avatar_url":"https://avatars.githubusercontent.com/u/7003853?v=4","gravatar_id":"","url":"https://api.github.com/users/liady","html_url":"https://github.com/liady","followers_url":"https://api.github.com/users/liady/followers","following_url":"https://api.github.com/users/liady/following{/other_user}","gists_url":"https://api.github.com/users/liady/gists{/gist_id}","starred_url":"https://api.github.com/users/liady/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/liady/subscriptions","organizations_url":"https://api.github.com/users/liady/orgs","repos_url":"https://api.github.com/users/liady/repos","events_url":"https://api.github.com/users/liady/events{/privacy}","received_events_url":"https://api.github.com/users/liady/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114/commits","review_comments_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114/comments","review_comment_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/comments{/number}","comments_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/5114/comments","statuses_url":"https://api.github.com/repos/concrete-utopia/utopia/statuses/9194eb601c4fbfee273290a84fd3f8248a060920","head":{"label":"concrete-utopia:feature/render-prop-insert-picker-2","ref":"feature/render-prop-insert-picker-2","sha":"9194eb601c4fbfee273290a84fd3f8248a060920","user":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"repo":{"id":267429516,"node_id":"MDEwOlJlcG9zaXRvcnkyNjc0Mjk1MTY=","name":"utopia","full_name":"concrete-utopia/utopia","private":false,"owner":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/concrete-utopia/utopia","description":"Design ❤️ Code","fork":false,"url":"https://api.github.com/repos/concrete-utopia/utopia","forks_url":"https://api.github.com/repos/concrete-utopia/utopia/forks","keys_url":"https://api.github.com/repos/concrete-utopia/utopia/keys{/key_id}","collaborators_url":"https://api.github.com/repos/concrete-utopia/utopia/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/concrete-utopia/utopia/teams","hooks_url":"https://api.github.com/repos/concrete-utopia/utopia/hooks","issue_events_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/events{/number}","events_url":"https://api.github.com/repos/concrete-utopia/utopia/events","assignees_url":"https://api.github.com/repos/concrete-utopia/utopia/assignees{/user}","branches_url":"https://api.github.com/repos/concrete-utopia/utopia/branches{/branch}","tags_url":"https://api.github.com/repos/concrete-utopia/utopia/tags","blobs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/concrete-utopia/utopia/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/refs{/sha}","trees_url":"https://api.github.com/repos/concrete-utopia/utopia/git/trees{/sha}","statuses_url":"https://api.github.com/repos/concrete-utopia/utopia/statuses/{sha}","languages_url":"https://api.github.com/repos/concrete-utopia/utopia/languages","stargazers_url":"https://api.github.com/repos/concrete-utopia/utopia/stargazers","contributors_url":"https://api.github.com/repos/concrete-utopia/utopia/contributors","subscribers_url":"https://api.github.com/repos/concrete-utopia/utopia/subscribers","subscription_url":"https://api.github.com/repos/concrete-utopia/utopia/subscription","commits_url":"https://api.github.com/repos/concrete-utopia/utopia/commits{/sha}","git_commits_url":"https://api.github.com/repos/concrete-utopia/utopia/git/commits{/sha}","comments_url":"https://api.github.com/repos/concrete-utopia/utopia/comments{/number}","issue_comment_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/comments{/number}","contents_url":"https://api.github.com/repos/concrete-utopia/utopia/contents/{+path}","compare_url":"https://api.github.com/repos/concrete-utopia/utopia/compare/{base}...{head}","merges_url":"https://api.github.com/repos/concrete-utopia/utopia/merges","archive_url":"https://api.github.com/repos/concrete-utopia/utopia/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/concrete-utopia/utopia/downloads","issues_url":"https://api.github.com/repos/concrete-utopia/utopia/issues{/number}","pulls_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls{/number}","milestones_url":"https://api.github.com/repos/concrete-utopia/utopia/milestones{/number}","notifications_url":"https://api.github.com/repos/concrete-utopia/utopia/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/concrete-utopia/utopia/labels{/name}","releases_url":"https://api.github.com/repos/concrete-utopia/utopia/releases{/id}","deployments_url":"https://api.github.com/repos/concrete-utopia/utopia/deployments","created_at":"2020-05-27T21:25:28Z","updated_at":"2024-03-26T16:36:35Z","pushed_at":"2024-03-26T16:37:58Z","git_url":"git://github.com/concrete-utopia/utopia.git","ssh_url":"git@github.com:concrete-utopia/utopia.git","clone_url":"https://github.com/concrete-utopia/utopia.git","svn_url":"https://github.com/concrete-utopia/utopia","homepage":"https://utopia.app","size":193115,"stargazers_count":3665,"watchers_count":3665,"language":"TypeScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":156,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":274,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["future","now","utopia"],"visibility":"public","forks":156,"open_issues":274,"watchers":3665,"default_branch":"master"}},"base":{"label":"concrete-utopia:master","ref":"master","sha":"2d1bc1728b592f0bb0a2aadb6d3e616187ccc24e","user":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"repo":{"id":267429516,"node_id":"MDEwOlJlcG9zaXRvcnkyNjc0Mjk1MTY=","name":"utopia","full_name":"concrete-utopia/utopia","private":false,"owner":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/concrete-utopia/utopia","description":"Design ❤️ Code","fork":false,"url":"https://api.github.com/repos/concrete-utopia/utopia","forks_url":"https://api.github.com/repos/concrete-utopia/utopia/forks","keys_url":"https://api.github.com/repos/concrete-utopia/utopia/keys{/key_id}","collaborators_url":"https://api.github.com/repos/concrete-utopia/utopia/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/concrete-utopia/utopia/teams","hooks_url":"https://api.github.com/repos/concrete-utopia/utopia/hooks","issue_events_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/events{/number}","events_url":"https://api.github.com/repos/concrete-utopia/utopia/events","assignees_url":"https://api.github.com/repos/concrete-utopia/utopia/assignees{/user}","branches_url":"https://api.github.com/repos/concrete-utopia/utopia/branches{/branch}","tags_url":"https://api.github.com/repos/concrete-utopia/utopia/tags","blobs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/concrete-utopia/utopia/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/refs{/sha}","trees_url":"https://api.github.com/repos/concrete-utopia/utopia/git/trees{/sha}","statuses_url":"https://api.github.com/repos/concrete-utopia/utopia/statuses/{sha}","languages_url":"https://api.github.com/repos/concrete-utopia/utopia/languages","stargazers_url":"https://api.github.com/repos/concrete-utopia/utopia/stargazers","contributors_url":"https://api.github.com/repos/concrete-utopia/utopia/contributors","subscribers_url":"https://api.github.com/repos/concrete-utopia/utopia/subscribers","subscription_url":"https://api.github.com/repos/concrete-utopia/utopia/subscription","commits_url":"https://api.github.com/repos/concrete-utopia/utopia/commits{/sha}","git_commits_url":"https://api.github.com/repos/concrete-utopia/utopia/git/commits{/sha}","comments_url":"https://api.github.com/repos/concrete-utopia/utopia/comments{/number}","issue_comment_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/comments{/number}","contents_url":"https://api.github.com/repos/concrete-utopia/utopia/contents/{+path}","compare_url":"https://api.github.com/repos/concrete-utopia/utopia/compare/{base}...{head}","merges_url":"https://api.github.com/repos/concrete-utopia/utopia/merges","archive_url":"https://api.github.com/repos/concrete-utopia/utopia/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/concrete-utopia/utopia/downloads","issues_url":"https://api.github.com/repos/concrete-utopia/utopia/issues{/number}","pulls_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls{/number}","milestones_url":"https://api.github.com/repos/concrete-utopia/utopia/milestones{/number}","notifications_url":"https://api.github.com/repos/concrete-utopia/utopia/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/concrete-utopia/utopia/labels{/name}","releases_url":"https://api.github.com/repos/concrete-utopia/utopia/releases{/id}","deployments_url":"https://api.github.com/repos/concrete-utopia/utopia/deployments","created_at":"2020-05-27T21:25:28Z","updated_at":"2024-03-26T16:36:35Z","pushed_at":"2024-03-26T16:37:58Z","git_url":"git://github.com/concrete-utopia/utopia.git","ssh_url":"git@github.com:concrete-utopia/utopia.git","clone_url":"https://github.com/concrete-utopia/utopia.git","svn_url":"https://github.com/concrete-utopia/utopia","homepage":"https://utopia.app","size":193115,"stargazers_count":3665,"watchers_count":3665,"language":"TypeScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":156,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":274,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["future","now","utopia"],"visibility":"public","forks":156,"open_issues":274,"watchers":3665,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114"},"html":{"href":"https://github.com/concrete-utopia/utopia/pull/5114"},"issue":{"href":"https://api.github.com/repos/concrete-utopia/utopia/issues/5114"},"comments":{"href":"https://api.github.com/repos/concrete-utopia/utopia/issues/5114/comments"},"review_comments":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114/comments"},"review_comment":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114/commits"},"statuses":{"href":"https://api.github.com/repos/concrete-utopia/utopia/statuses/9194eb601c4fbfee273290a84fd3f8248a060920"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-26T17:16:08Z","org":{"id":39800481,"login":"concrete-utopia","gravatar_id":"","url":"https://api.github.com/orgs/concrete-utopia","avatar_url":"https://avatars.githubusercontent.com/u/39800481?"}},{"id":"36901578398","type":"PullRequestReviewEvent","actor":{"id":1044774,"login":"Rheeseyb","display_login":"Rheeseyb","gravatar_id":"","url":"https://api.github.com/users/Rheeseyb","avatar_url":"https://avatars.githubusercontent.com/u/1044774?"},"repo":{"id":267429516,"name":"concrete-utopia/utopia","url":"https://api.github.com/repos/concrete-utopia/utopia"},"payload":{"action":"created","review":{"id":1961190132,"node_id":"PRR_kwDOD_CmjM505WL0","user":{"login":"Rheeseyb","id":1044774,"node_id":"MDQ6VXNlcjEwNDQ3NzQ=","avatar_url":"https://avatars.githubusercontent.com/u/1044774?v=4","gravatar_id":"","url":"https://api.github.com/users/Rheeseyb","html_url":"https://github.com/Rheeseyb","followers_url":"https://api.github.com/users/Rheeseyb/followers","following_url":"https://api.github.com/users/Rheeseyb/following{/other_user}","gists_url":"https://api.github.com/users/Rheeseyb/gists{/gist_id}","starred_url":"https://api.github.com/users/Rheeseyb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rheeseyb/subscriptions","organizations_url":"https://api.github.com/users/Rheeseyb/orgs","repos_url":"https://api.github.com/users/Rheeseyb/repos","events_url":"https://api.github.com/users/Rheeseyb/events{/privacy}","received_events_url":"https://api.github.com/users/Rheeseyb/received_events","type":"User","site_admin":false},"body":null,"commit_id":"9194eb601c4fbfee273290a84fd3f8248a060920","submitted_at":"2024-03-26T17:16:08Z","state":"commented","html_url":"https://github.com/concrete-utopia/utopia/pull/5114#pullrequestreview-1961190132","pull_request_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114","author_association":"CONTRIBUTOR","_links":{"html":{"href":"https://github.com/concrete-utopia/utopia/pull/5114#pullrequestreview-1961190132"},"pull_request":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114"}}},"pull_request":{"url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114","id":1789878575,"node_id":"PR_kwDOD_CmjM5qr2Ev","html_url":"https://github.com/concrete-utopia/utopia/pull/5114","diff_url":"https://github.com/concrete-utopia/utopia/pull/5114.diff","patch_url":"https://github.com/concrete-utopia/utopia/pull/5114.patch","issue_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/5114","number":5114,"state":"open","locked":false,"title":"Render prop picker improvements","user":{"login":"Rheeseyb","id":1044774,"node_id":"MDQ6VXNlcjEwNDQ3NzQ=","avatar_url":"https://avatars.githubusercontent.com/u/1044774?v=4","gravatar_id":"","url":"https://api.github.com/users/Rheeseyb","html_url":"https://github.com/Rheeseyb","followers_url":"https://api.github.com/users/Rheeseyb/followers","following_url":"https://api.github.com/users/Rheeseyb/following{/other_user}","gists_url":"https://api.github.com/users/Rheeseyb/gists{/gist_id}","starred_url":"https://api.github.com/users/Rheeseyb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rheeseyb/subscriptions","organizations_url":"https://api.github.com/users/Rheeseyb/orgs","repos_url":"https://api.github.com/users/Rheeseyb/repos","events_url":"https://api.github.com/users/Rheeseyb/events{/privacy}","received_events_url":"https://api.github.com/users/Rheeseyb/received_events","type":"User","site_admin":false},"body":"Follow on from #5101 \r\n\r\nThis PR introduces the following tweaks to the Component Picker popup that is used for render prop slots:\r\n\r\n1. I've split up the `ComponentPicker` component into several components. _For now_ I have kept them all in `component-picker.tsx`, as their individual locations (and that file's location) would have to change anyway when re-using this for the Insert Menu pane, so I'd rather wait until then before further generalising it.\r\n2. We now use the `pointer` cursor when hovering over the clickable elements in the popup\r\n3. We now also use the `pointer` cursor when hovering over the slot itself in the navigator, meaning that it is now clear you can click the slot for a render prop (note also that you now click the empty slot itself rather than the actual row, as per the gif below)\r\n4. All registered components now come with an `(empty)` variant, which just inserts the component as `
`\r\n\r\n[**Try it here**](https://utopia.fish/p/2e3389de-emphasized-trumpet/?branch_name=feature-render-prop-insert-picker-2)\r\n\r\n![component-picker](https://github.com/concrete-utopia/utopia/assets/1044774/828a4753-6a3c-46e9-b31a-2995263f1489)\r\n","created_at":"2024-03-25T17:05:26Z","updated_at":"2024-03-26T17:16:08Z","closed_at":null,"merged_at":null,"merge_commit_sha":"b4094fa3dededce85116a103eeb2514da3a26631","assignee":null,"assignees":[],"requested_reviewers":[{"login":"gbalint","id":127662,"node_id":"MDQ6VXNlcjEyNzY2Mg==","avatar_url":"https://avatars.githubusercontent.com/u/127662?v=4","gravatar_id":"","url":"https://api.github.com/users/gbalint","html_url":"https://github.com/gbalint","followers_url":"https://api.github.com/users/gbalint/followers","following_url":"https://api.github.com/users/gbalint/following{/other_user}","gists_url":"https://api.github.com/users/gbalint/gists{/gist_id}","starred_url":"https://api.github.com/users/gbalint/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/gbalint/subscriptions","organizations_url":"https://api.github.com/users/gbalint/orgs","repos_url":"https://api.github.com/users/gbalint/repos","events_url":"https://api.github.com/users/gbalint/events{/privacy}","received_events_url":"https://api.github.com/users/gbalint/received_events","type":"User","site_admin":false},{"login":"seanparsons","id":217400,"node_id":"MDQ6VXNlcjIxNzQwMA==","avatar_url":"https://avatars.githubusercontent.com/u/217400?v=4","gravatar_id":"","url":"https://api.github.com/users/seanparsons","html_url":"https://github.com/seanparsons","followers_url":"https://api.github.com/users/seanparsons/followers","following_url":"https://api.github.com/users/seanparsons/following{/other_user}","gists_url":"https://api.github.com/users/seanparsons/gists{/gist_id}","starred_url":"https://api.github.com/users/seanparsons/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/seanparsons/subscriptions","organizations_url":"https://api.github.com/users/seanparsons/orgs","repos_url":"https://api.github.com/users/seanparsons/repos","events_url":"https://api.github.com/users/seanparsons/events{/privacy}","received_events_url":"https://api.github.com/users/seanparsons/received_events","type":"User","site_admin":false},{"login":"balazsbajorics","id":2226774,"node_id":"MDQ6VXNlcjIyMjY3NzQ=","avatar_url":"https://avatars.githubusercontent.com/u/2226774?v=4","gravatar_id":"","url":"https://api.github.com/users/balazsbajorics","html_url":"https://github.com/balazsbajorics","followers_url":"https://api.github.com/users/balazsbajorics/followers","following_url":"https://api.github.com/users/balazsbajorics/following{/other_user}","gists_url":"https://api.github.com/users/balazsbajorics/gists{/gist_id}","starred_url":"https://api.github.com/users/balazsbajorics/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/balazsbajorics/subscriptions","organizations_url":"https://api.github.com/users/balazsbajorics/orgs","repos_url":"https://api.github.com/users/balazsbajorics/repos","events_url":"https://api.github.com/users/balazsbajorics/events{/privacy}","received_events_url":"https://api.github.com/users/balazsbajorics/received_events","type":"User","site_admin":false},{"login":"liady","id":7003853,"node_id":"MDQ6VXNlcjcwMDM4NTM=","avatar_url":"https://avatars.githubusercontent.com/u/7003853?v=4","gravatar_id":"","url":"https://api.github.com/users/liady","html_url":"https://github.com/liady","followers_url":"https://api.github.com/users/liady/followers","following_url":"https://api.github.com/users/liady/following{/other_user}","gists_url":"https://api.github.com/users/liady/gists{/gist_id}","starred_url":"https://api.github.com/users/liady/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/liady/subscriptions","organizations_url":"https://api.github.com/users/liady/orgs","repos_url":"https://api.github.com/users/liady/repos","events_url":"https://api.github.com/users/liady/events{/privacy}","received_events_url":"https://api.github.com/users/liady/received_events","type":"User","site_admin":false}],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114/commits","review_comments_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114/comments","review_comment_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/comments{/number}","comments_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/5114/comments","statuses_url":"https://api.github.com/repos/concrete-utopia/utopia/statuses/9194eb601c4fbfee273290a84fd3f8248a060920","head":{"label":"concrete-utopia:feature/render-prop-insert-picker-2","ref":"feature/render-prop-insert-picker-2","sha":"9194eb601c4fbfee273290a84fd3f8248a060920","user":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"repo":{"id":267429516,"node_id":"MDEwOlJlcG9zaXRvcnkyNjc0Mjk1MTY=","name":"utopia","full_name":"concrete-utopia/utopia","private":false,"owner":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/concrete-utopia/utopia","description":"Design ❤️ Code","fork":false,"url":"https://api.github.com/repos/concrete-utopia/utopia","forks_url":"https://api.github.com/repos/concrete-utopia/utopia/forks","keys_url":"https://api.github.com/repos/concrete-utopia/utopia/keys{/key_id}","collaborators_url":"https://api.github.com/repos/concrete-utopia/utopia/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/concrete-utopia/utopia/teams","hooks_url":"https://api.github.com/repos/concrete-utopia/utopia/hooks","issue_events_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/events{/number}","events_url":"https://api.github.com/repos/concrete-utopia/utopia/events","assignees_url":"https://api.github.com/repos/concrete-utopia/utopia/assignees{/user}","branches_url":"https://api.github.com/repos/concrete-utopia/utopia/branches{/branch}","tags_url":"https://api.github.com/repos/concrete-utopia/utopia/tags","blobs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/concrete-utopia/utopia/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/refs{/sha}","trees_url":"https://api.github.com/repos/concrete-utopia/utopia/git/trees{/sha}","statuses_url":"https://api.github.com/repos/concrete-utopia/utopia/statuses/{sha}","languages_url":"https://api.github.com/repos/concrete-utopia/utopia/languages","stargazers_url":"https://api.github.com/repos/concrete-utopia/utopia/stargazers","contributors_url":"https://api.github.com/repos/concrete-utopia/utopia/contributors","subscribers_url":"https://api.github.com/repos/concrete-utopia/utopia/subscribers","subscription_url":"https://api.github.com/repos/concrete-utopia/utopia/subscription","commits_url":"https://api.github.com/repos/concrete-utopia/utopia/commits{/sha}","git_commits_url":"https://api.github.com/repos/concrete-utopia/utopia/git/commits{/sha}","comments_url":"https://api.github.com/repos/concrete-utopia/utopia/comments{/number}","issue_comment_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/comments{/number}","contents_url":"https://api.github.com/repos/concrete-utopia/utopia/contents/{+path}","compare_url":"https://api.github.com/repos/concrete-utopia/utopia/compare/{base}...{head}","merges_url":"https://api.github.com/repos/concrete-utopia/utopia/merges","archive_url":"https://api.github.com/repos/concrete-utopia/utopia/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/concrete-utopia/utopia/downloads","issues_url":"https://api.github.com/repos/concrete-utopia/utopia/issues{/number}","pulls_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls{/number}","milestones_url":"https://api.github.com/repos/concrete-utopia/utopia/milestones{/number}","notifications_url":"https://api.github.com/repos/concrete-utopia/utopia/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/concrete-utopia/utopia/labels{/name}","releases_url":"https://api.github.com/repos/concrete-utopia/utopia/releases{/id}","deployments_url":"https://api.github.com/repos/concrete-utopia/utopia/deployments","created_at":"2020-05-27T21:25:28Z","updated_at":"2024-03-26T16:36:35Z","pushed_at":"2024-03-26T16:37:58Z","git_url":"git://github.com/concrete-utopia/utopia.git","ssh_url":"git@github.com:concrete-utopia/utopia.git","clone_url":"https://github.com/concrete-utopia/utopia.git","svn_url":"https://github.com/concrete-utopia/utopia","homepage":"https://utopia.app","size":193115,"stargazers_count":3665,"watchers_count":3665,"language":"TypeScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":156,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":274,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["future","now","utopia"],"visibility":"public","forks":156,"open_issues":274,"watchers":3665,"default_branch":"master"}},"base":{"label":"concrete-utopia:master","ref":"master","sha":"2d1bc1728b592f0bb0a2aadb6d3e616187ccc24e","user":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"repo":{"id":267429516,"node_id":"MDEwOlJlcG9zaXRvcnkyNjc0Mjk1MTY=","name":"utopia","full_name":"concrete-utopia/utopia","private":false,"owner":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/concrete-utopia/utopia","description":"Design ❤️ Code","fork":false,"url":"https://api.github.com/repos/concrete-utopia/utopia","forks_url":"https://api.github.com/repos/concrete-utopia/utopia/forks","keys_url":"https://api.github.com/repos/concrete-utopia/utopia/keys{/key_id}","collaborators_url":"https://api.github.com/repos/concrete-utopia/utopia/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/concrete-utopia/utopia/teams","hooks_url":"https://api.github.com/repos/concrete-utopia/utopia/hooks","issue_events_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/events{/number}","events_url":"https://api.github.com/repos/concrete-utopia/utopia/events","assignees_url":"https://api.github.com/repos/concrete-utopia/utopia/assignees{/user}","branches_url":"https://api.github.com/repos/concrete-utopia/utopia/branches{/branch}","tags_url":"https://api.github.com/repos/concrete-utopia/utopia/tags","blobs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/concrete-utopia/utopia/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/refs{/sha}","trees_url":"https://api.github.com/repos/concrete-utopia/utopia/git/trees{/sha}","statuses_url":"https://api.github.com/repos/concrete-utopia/utopia/statuses/{sha}","languages_url":"https://api.github.com/repos/concrete-utopia/utopia/languages","stargazers_url":"https://api.github.com/repos/concrete-utopia/utopia/stargazers","contributors_url":"https://api.github.com/repos/concrete-utopia/utopia/contributors","subscribers_url":"https://api.github.com/repos/concrete-utopia/utopia/subscribers","subscription_url":"https://api.github.com/repos/concrete-utopia/utopia/subscription","commits_url":"https://api.github.com/repos/concrete-utopia/utopia/commits{/sha}","git_commits_url":"https://api.github.com/repos/concrete-utopia/utopia/git/commits{/sha}","comments_url":"https://api.github.com/repos/concrete-utopia/utopia/comments{/number}","issue_comment_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/comments{/number}","contents_url":"https://api.github.com/repos/concrete-utopia/utopia/contents/{+path}","compare_url":"https://api.github.com/repos/concrete-utopia/utopia/compare/{base}...{head}","merges_url":"https://api.github.com/repos/concrete-utopia/utopia/merges","archive_url":"https://api.github.com/repos/concrete-utopia/utopia/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/concrete-utopia/utopia/downloads","issues_url":"https://api.github.com/repos/concrete-utopia/utopia/issues{/number}","pulls_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls{/number}","milestones_url":"https://api.github.com/repos/concrete-utopia/utopia/milestones{/number}","notifications_url":"https://api.github.com/repos/concrete-utopia/utopia/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/concrete-utopia/utopia/labels{/name}","releases_url":"https://api.github.com/repos/concrete-utopia/utopia/releases{/id}","deployments_url":"https://api.github.com/repos/concrete-utopia/utopia/deployments","created_at":"2020-05-27T21:25:28Z","updated_at":"2024-03-26T16:36:35Z","pushed_at":"2024-03-26T16:37:58Z","git_url":"git://github.com/concrete-utopia/utopia.git","ssh_url":"git@github.com:concrete-utopia/utopia.git","clone_url":"https://github.com/concrete-utopia/utopia.git","svn_url":"https://github.com/concrete-utopia/utopia","homepage":"https://utopia.app","size":193115,"stargazers_count":3665,"watchers_count":3665,"language":"TypeScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":156,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":274,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["future","now","utopia"],"visibility":"public","forks":156,"open_issues":274,"watchers":3665,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114"},"html":{"href":"https://github.com/concrete-utopia/utopia/pull/5114"},"issue":{"href":"https://api.github.com/repos/concrete-utopia/utopia/issues/5114"},"comments":{"href":"https://api.github.com/repos/concrete-utopia/utopia/issues/5114/comments"},"review_comments":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114/comments"},"review_comment":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5114/commits"},"statuses":{"href":"https://api.github.com/repos/concrete-utopia/utopia/statuses/9194eb601c4fbfee273290a84fd3f8248a060920"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-26T17:16:09Z","org":{"id":39800481,"login":"concrete-utopia","gravatar_id":"","url":"https://api.github.com/orgs/concrete-utopia","avatar_url":"https://avatars.githubusercontent.com/u/39800481?"}},{"id":"36901287700","type":"PullRequestReviewEvent","actor":{"id":1044774,"login":"Rheeseyb","display_login":"Rheeseyb","gravatar_id":"","url":"https://api.github.com/users/Rheeseyb","avatar_url":"https://avatars.githubusercontent.com/u/1044774?"},"repo":{"id":267429516,"name":"concrete-utopia/utopia","url":"https://api.github.com/repos/concrete-utopia/utopia"},"payload":{"action":"created","review":{"id":1961169162,"node_id":"PRR_kwDOD_CmjM505REK","user":{"login":"Rheeseyb","id":1044774,"node_id":"MDQ6VXNlcjEwNDQ3NzQ=","avatar_url":"https://avatars.githubusercontent.com/u/1044774?v=4","gravatar_id":"","url":"https://api.github.com/users/Rheeseyb","html_url":"https://github.com/Rheeseyb","followers_url":"https://api.github.com/users/Rheeseyb/followers","following_url":"https://api.github.com/users/Rheeseyb/following{/other_user}","gists_url":"https://api.github.com/users/Rheeseyb/gists{/gist_id}","starred_url":"https://api.github.com/users/Rheeseyb/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/Rheeseyb/subscriptions","organizations_url":"https://api.github.com/users/Rheeseyb/orgs","repos_url":"https://api.github.com/users/Rheeseyb/repos","events_url":"https://api.github.com/users/Rheeseyb/events{/privacy}","received_events_url":"https://api.github.com/users/Rheeseyb/received_events","type":"User","site_admin":false},"body":"","commit_id":"90627b2a536c427e586d55730ae94a29c65df361","submitted_at":"2024-03-26T17:07:51Z","state":"approved","html_url":"https://github.com/concrete-utopia/utopia/pull/5123#pullrequestreview-1961169162","pull_request_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5123","author_association":"CONTRIBUTOR","_links":{"html":{"href":"https://github.com/concrete-utopia/utopia/pull/5123#pullrequestreview-1961169162"},"pull_request":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5123"}}},"pull_request":{"url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5123","id":1792036507,"node_id":"PR_kwDOD_CmjM5q0E6b","html_url":"https://github.com/concrete-utopia/utopia/pull/5123","diff_url":"https://github.com/concrete-utopia/utopia/pull/5123.diff","patch_url":"https://github.com/concrete-utopia/utopia/pull/5123.patch","issue_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/5123","number":5123,"state":"open","locked":false,"title":"Remix optimistic access change","user":{"login":"ruggi","id":1081051,"node_id":"MDQ6VXNlcjEwODEwNTE=","avatar_url":"https://avatars.githubusercontent.com/u/1081051?v=4","gravatar_id":"","url":"https://api.github.com/users/ruggi","html_url":"https://github.com/ruggi","followers_url":"https://api.github.com/users/ruggi/followers","following_url":"https://api.github.com/users/ruggi/following{/other_user}","gists_url":"https://api.github.com/users/ruggi/gists{/gist_id}","starred_url":"https://api.github.com/users/ruggi/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/ruggi/subscriptions","organizations_url":"https://api.github.com/users/ruggi/orgs","repos_url":"https://api.github.com/users/ruggi/repos","events_url":"https://api.github.com/users/ruggi/events{/privacy}","received_events_url":"https://api.github.com/users/ruggi/received_events","type":"User","site_admin":false},"body":"**Problem:**\r\n\r\nThe sharing dialog jumps around when changing the access level.\r\n\r\n**Fix:**\r\n\r\nApply optimistic updates to it when updating the project access level. In case of failures, the dialog will revert back to the current state.\r\n\r\n\r\nhttps://github.com/concrete-utopia/utopia/assets/1081051/28137787-62da-4dd4-9809-34dea4dbff97\r\n\r\n(delay added for dramatisation)","created_at":"2024-03-26T16:01:10Z","updated_at":"2024-03-26T17:07:51Z","closed_at":null,"merged_at":null,"merge_commit_sha":"db768275b986b0321398a7067d8c4e6d7cbe2c8b","assignee":null,"assignees":[],"requested_reviewers":[],"requested_teams":[],"labels":[],"milestone":null,"draft":false,"commits_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5123/commits","review_comments_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5123/comments","review_comment_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls/comments{/number}","comments_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/5123/comments","statuses_url":"https://api.github.com/repos/concrete-utopia/utopia/statuses/90627b2a536c427e586d55730ae94a29c65df361","head":{"label":"concrete-utopia:feat/optimistic-change-access","ref":"feat/optimistic-change-access","sha":"90627b2a536c427e586d55730ae94a29c65df361","user":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"repo":{"id":267429516,"node_id":"MDEwOlJlcG9zaXRvcnkyNjc0Mjk1MTY=","name":"utopia","full_name":"concrete-utopia/utopia","private":false,"owner":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/concrete-utopia/utopia","description":"Design ❤️ Code","fork":false,"url":"https://api.github.com/repos/concrete-utopia/utopia","forks_url":"https://api.github.com/repos/concrete-utopia/utopia/forks","keys_url":"https://api.github.com/repos/concrete-utopia/utopia/keys{/key_id}","collaborators_url":"https://api.github.com/repos/concrete-utopia/utopia/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/concrete-utopia/utopia/teams","hooks_url":"https://api.github.com/repos/concrete-utopia/utopia/hooks","issue_events_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/events{/number}","events_url":"https://api.github.com/repos/concrete-utopia/utopia/events","assignees_url":"https://api.github.com/repos/concrete-utopia/utopia/assignees{/user}","branches_url":"https://api.github.com/repos/concrete-utopia/utopia/branches{/branch}","tags_url":"https://api.github.com/repos/concrete-utopia/utopia/tags","blobs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/concrete-utopia/utopia/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/refs{/sha}","trees_url":"https://api.github.com/repos/concrete-utopia/utopia/git/trees{/sha}","statuses_url":"https://api.github.com/repos/concrete-utopia/utopia/statuses/{sha}","languages_url":"https://api.github.com/repos/concrete-utopia/utopia/languages","stargazers_url":"https://api.github.com/repos/concrete-utopia/utopia/stargazers","contributors_url":"https://api.github.com/repos/concrete-utopia/utopia/contributors","subscribers_url":"https://api.github.com/repos/concrete-utopia/utopia/subscribers","subscription_url":"https://api.github.com/repos/concrete-utopia/utopia/subscription","commits_url":"https://api.github.com/repos/concrete-utopia/utopia/commits{/sha}","git_commits_url":"https://api.github.com/repos/concrete-utopia/utopia/git/commits{/sha}","comments_url":"https://api.github.com/repos/concrete-utopia/utopia/comments{/number}","issue_comment_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/comments{/number}","contents_url":"https://api.github.com/repos/concrete-utopia/utopia/contents/{+path}","compare_url":"https://api.github.com/repos/concrete-utopia/utopia/compare/{base}...{head}","merges_url":"https://api.github.com/repos/concrete-utopia/utopia/merges","archive_url":"https://api.github.com/repos/concrete-utopia/utopia/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/concrete-utopia/utopia/downloads","issues_url":"https://api.github.com/repos/concrete-utopia/utopia/issues{/number}","pulls_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls{/number}","milestones_url":"https://api.github.com/repos/concrete-utopia/utopia/milestones{/number}","notifications_url":"https://api.github.com/repos/concrete-utopia/utopia/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/concrete-utopia/utopia/labels{/name}","releases_url":"https://api.github.com/repos/concrete-utopia/utopia/releases{/id}","deployments_url":"https://api.github.com/repos/concrete-utopia/utopia/deployments","created_at":"2020-05-27T21:25:28Z","updated_at":"2024-03-26T16:36:35Z","pushed_at":"2024-03-26T16:37:58Z","git_url":"git://github.com/concrete-utopia/utopia.git","ssh_url":"git@github.com:concrete-utopia/utopia.git","clone_url":"https://github.com/concrete-utopia/utopia.git","svn_url":"https://github.com/concrete-utopia/utopia","homepage":"https://utopia.app","size":193115,"stargazers_count":3665,"watchers_count":3665,"language":"TypeScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":156,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":274,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["future","now","utopia"],"visibility":"public","forks":156,"open_issues":274,"watchers":3665,"default_branch":"master"}},"base":{"label":"concrete-utopia:master","ref":"master","sha":"e8029e7723a76725d4e55c389afc49481baf9948","user":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"repo":{"id":267429516,"node_id":"MDEwOlJlcG9zaXRvcnkyNjc0Mjk1MTY=","name":"utopia","full_name":"concrete-utopia/utopia","private":false,"owner":{"login":"concrete-utopia","id":39800481,"node_id":"MDEyOk9yZ2FuaXphdGlvbjM5ODAwNDgx","avatar_url":"https://avatars.githubusercontent.com/u/39800481?v=4","gravatar_id":"","url":"https://api.github.com/users/concrete-utopia","html_url":"https://github.com/concrete-utopia","followers_url":"https://api.github.com/users/concrete-utopia/followers","following_url":"https://api.github.com/users/concrete-utopia/following{/other_user}","gists_url":"https://api.github.com/users/concrete-utopia/gists{/gist_id}","starred_url":"https://api.github.com/users/concrete-utopia/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/concrete-utopia/subscriptions","organizations_url":"https://api.github.com/users/concrete-utopia/orgs","repos_url":"https://api.github.com/users/concrete-utopia/repos","events_url":"https://api.github.com/users/concrete-utopia/events{/privacy}","received_events_url":"https://api.github.com/users/concrete-utopia/received_events","type":"Organization","site_admin":false},"html_url":"https://github.com/concrete-utopia/utopia","description":"Design ❤️ Code","fork":false,"url":"https://api.github.com/repos/concrete-utopia/utopia","forks_url":"https://api.github.com/repos/concrete-utopia/utopia/forks","keys_url":"https://api.github.com/repos/concrete-utopia/utopia/keys{/key_id}","collaborators_url":"https://api.github.com/repos/concrete-utopia/utopia/collaborators{/collaborator}","teams_url":"https://api.github.com/repos/concrete-utopia/utopia/teams","hooks_url":"https://api.github.com/repos/concrete-utopia/utopia/hooks","issue_events_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/events{/number}","events_url":"https://api.github.com/repos/concrete-utopia/utopia/events","assignees_url":"https://api.github.com/repos/concrete-utopia/utopia/assignees{/user}","branches_url":"https://api.github.com/repos/concrete-utopia/utopia/branches{/branch}","tags_url":"https://api.github.com/repos/concrete-utopia/utopia/tags","blobs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/blobs{/sha}","git_tags_url":"https://api.github.com/repos/concrete-utopia/utopia/git/tags{/sha}","git_refs_url":"https://api.github.com/repos/concrete-utopia/utopia/git/refs{/sha}","trees_url":"https://api.github.com/repos/concrete-utopia/utopia/git/trees{/sha}","statuses_url":"https://api.github.com/repos/concrete-utopia/utopia/statuses/{sha}","languages_url":"https://api.github.com/repos/concrete-utopia/utopia/languages","stargazers_url":"https://api.github.com/repos/concrete-utopia/utopia/stargazers","contributors_url":"https://api.github.com/repos/concrete-utopia/utopia/contributors","subscribers_url":"https://api.github.com/repos/concrete-utopia/utopia/subscribers","subscription_url":"https://api.github.com/repos/concrete-utopia/utopia/subscription","commits_url":"https://api.github.com/repos/concrete-utopia/utopia/commits{/sha}","git_commits_url":"https://api.github.com/repos/concrete-utopia/utopia/git/commits{/sha}","comments_url":"https://api.github.com/repos/concrete-utopia/utopia/comments{/number}","issue_comment_url":"https://api.github.com/repos/concrete-utopia/utopia/issues/comments{/number}","contents_url":"https://api.github.com/repos/concrete-utopia/utopia/contents/{+path}","compare_url":"https://api.github.com/repos/concrete-utopia/utopia/compare/{base}...{head}","merges_url":"https://api.github.com/repos/concrete-utopia/utopia/merges","archive_url":"https://api.github.com/repos/concrete-utopia/utopia/{archive_format}{/ref}","downloads_url":"https://api.github.com/repos/concrete-utopia/utopia/downloads","issues_url":"https://api.github.com/repos/concrete-utopia/utopia/issues{/number}","pulls_url":"https://api.github.com/repos/concrete-utopia/utopia/pulls{/number}","milestones_url":"https://api.github.com/repos/concrete-utopia/utopia/milestones{/number}","notifications_url":"https://api.github.com/repos/concrete-utopia/utopia/notifications{?since,all,participating}","labels_url":"https://api.github.com/repos/concrete-utopia/utopia/labels{/name}","releases_url":"https://api.github.com/repos/concrete-utopia/utopia/releases{/id}","deployments_url":"https://api.github.com/repos/concrete-utopia/utopia/deployments","created_at":"2020-05-27T21:25:28Z","updated_at":"2024-03-26T16:36:35Z","pushed_at":"2024-03-26T16:37:58Z","git_url":"git://github.com/concrete-utopia/utopia.git","ssh_url":"git@github.com:concrete-utopia/utopia.git","clone_url":"https://github.com/concrete-utopia/utopia.git","svn_url":"https://github.com/concrete-utopia/utopia","homepage":"https://utopia.app","size":193115,"stargazers_count":3665,"watchers_count":3665,"language":"TypeScript","has_issues":true,"has_projects":true,"has_downloads":true,"has_wiki":false,"has_pages":false,"has_discussions":true,"forks_count":156,"mirror_url":null,"archived":false,"disabled":false,"open_issues_count":274,"license":{"key":"mit","name":"MIT License","spdx_id":"MIT","url":"https://api.github.com/licenses/mit","node_id":"MDc6TGljZW5zZTEz"},"allow_forking":true,"is_template":false,"web_commit_signoff_required":false,"topics":["future","now","utopia"],"visibility":"public","forks":156,"open_issues":274,"watchers":3665,"default_branch":"master"}},"_links":{"self":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5123"},"html":{"href":"https://github.com/concrete-utopia/utopia/pull/5123"},"issue":{"href":"https://api.github.com/repos/concrete-utopia/utopia/issues/5123"},"comments":{"href":"https://api.github.com/repos/concrete-utopia/utopia/issues/5123/comments"},"review_comments":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5123/comments"},"review_comment":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/comments{/number}"},"commits":{"href":"https://api.github.com/repos/concrete-utopia/utopia/pulls/5123/commits"},"statuses":{"href":"https://api.github.com/repos/concrete-utopia/utopia/statuses/90627b2a536c427e586d55730ae94a29c65df361"}},"author_association":"CONTRIBUTOR","auto_merge":null,"active_lock_reason":null}},"public":true,"created_at":"2024-03-26T17:07:52Z","org":{"id":39800481,"login":"concrete-utopia","gravatar_id":"","url":"https://api.github.com/orgs/concrete-utopia","avatar_url":"https://avatars.githubusercontent.com/u/39800481?"}},{"id":"36892238717","type":"PushEvent","actor":{"id":1044774,"login":"Rheeseyb","display_login":"Rheeseyb","gravatar_id":"","url":"https://api.github.com/users/Rheeseyb","avatar_url":"https://avatars.githubusercontent.com/u/1044774?"},"repo":{"id":267429516,"name":"concrete-utopia/utopia","url":"https://api.github.com/repos/concrete-utopia/utopia"},"payload":{"repository_id":267429516,"push_id":17710790661,"size":1,"distinct_size":1,"ref":"refs/heads/feature/render-prop-insert-picker-2","head":"9194eb601c4fbfee273290a84fd3f8248a060920","before":"6a87787d3e77948aa180c4ac1fbf49a4734fe570","commits":[{"sha":"9194eb601c4fbfee273290a84fd3f8248a060920","author":{"email":"1044774+Rheeseyb@users.noreply.github.com","name":"RheeseyB"},"message":"fix(navigator) Don't trigger selection actions when clicking empty slot row","distinct":true,"url":"https://api.github.com/repos/concrete-utopia/utopia/commits/9194eb601c4fbfee273290a84fd3f8248a060920"}]},"public":true,"created_at":"2024-03-26T13:16:16Z","org":{"id":39800481,"login":"concrete-utopia","gravatar_id":"","url":"https://api.github.com/orgs/concrete-utopia","avatar_url":"https://avatars.githubusercontent.com/u/39800481?"}}]