As a macOS user, I typically glue these dired things via dwim-shell-command (disclosure, I wrote that).
Not super tested, but I added dwim-shell-commands-macos-add-to-photos to dwim-shell-commands.el (the optional part of the package).
(defun dwim-shell-commands-macos-add-to-photos () "Add to Photos.app." (interactive) (dwim-shell-command-on-marked-files "Add to Photos.app" "osascript <>\" end tell EOF" :silent-success t :utils "osascript" :on-completion (lambda (buffer process) (if-let ((success (= (process-exit-status process) 0))) (start-process "Open Photos" nil "open" "-a" "Photos") (switch-to-buffer buffer)))))
ps. This also works on current buffer if you're viewing an image in a buffer.
As a macOS user, I typically glue these dired things via dwim-shell-command (disclosure, I wrote that).
Not super tested, but I added dwim-shell-commands-macos-add-to-photos to dwim-shell-commands.el (the optional part of the package).
ps. This also works on current buffer if you're viewing an image in a buffer.