├── .gitignore ├── increments ├── 08-nav-events │ ├── src │ │ └── app │ │ │ └── nav │ │ │ ├── events.cljs │ │ │ ├── subs.cljs │ │ │ └── views │ │ │ ├── public.cljs │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ ├── .gitignore │ └── public │ │ └── img │ │ ├── avatar.png │ │ ├── favicon.ico │ │ └── placeholder.jpg ├── 09-nav-subs │ ├── src │ │ └── app │ │ │ └── nav │ │ │ ├── subs.cljs │ │ │ ├── views │ │ │ ├── public.cljs │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ │ └── events.cljs │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── .gitignore ├── 10-pages │ ├── src │ │ └── app │ │ │ └── nav │ │ │ ├── views │ │ │ ├── public.cljs │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ │ ├── subs.cljs │ │ │ └── events.cljs │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── .gitignore ├── 11-public │ ├── src │ │ └── app │ │ │ ├── nav │ │ │ ├── views │ │ │ │ ├── public.cljs │ │ │ │ ├── nav.cljs │ │ │ │ └── nav_item.cljs │ │ │ ├── subs.cljs │ │ │ └── events.cljs │ │ │ ├── auth │ │ │ └── views │ │ │ │ └── profile.cljs │ │ │ ├── inbox │ │ │ └── views │ │ │ │ └── inboxes.cljs │ │ │ ├── recipes │ │ │ └── views │ │ │ │ └── recipes.cljs │ │ │ └── become_a_chef │ │ │ └── views │ │ │ └── become_a_chef.cljs │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── .gitignore ├── 12-page-nav │ ├── src │ │ └── app │ │ │ ├── auth │ │ │ └── views │ │ │ │ ├── log_in.cljs │ │ │ │ ├── profile.cljs │ │ │ │ └── sign_up.cljs │ │ │ ├── inbox │ │ │ └── views │ │ │ │ └── inboxes.cljs │ │ │ ├── recipes │ │ │ └── views │ │ │ │ └── recipes.cljs │ │ │ ├── become_a_chef │ │ │ └── views │ │ │ │ └── become_a_chef.cljs │ │ │ └── nav │ │ │ ├── subs.cljs │ │ │ ├── events.cljs │ │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── .gitignore ├── 07-nav │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── .gitignore ├── 61-spec │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── errors │ │ ├── subs.cljs │ │ └── events.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ └── views │ │ ├── nav.cljs │ │ └── nav_item.cljs ├── 13-log-in │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ ├── events.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ ├── auth │ │ └── views │ │ │ ├── log_in.cljs │ │ │ ├── profile.cljs │ │ │ └── sign_up.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ └── become_a_chef │ │ └── views │ │ └── become_a_chef.cljs ├── 21-router │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ ├── events.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ └── auth │ │ └── subs.cljs ├── 42-saved │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ ├── nav.cljs │ │ └── nav_item.cljs │ │ └── subs.cljs ├── complete │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── errors │ │ └── subs.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ └── views │ │ ├── nav.cljs │ │ └── nav_item.cljs ├── 03-dev-setup │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ └── core.cljs ├── 04-app-setup │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ └── core.cljs ├── 05-smooth-ui │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ └── core.cljs ├── 17-sign-up │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ ├── events.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ ├── auth │ │ ├── subs.cljs │ │ └── views │ │ │ ├── profile.cljs │ │ │ └── sign_up.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ └── become_a_chef │ │ └── views │ │ └── become_a_chef.cljs ├── 18-profile │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ ├── events.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ ├── auth │ │ ├── subs.cljs │ │ └── views │ │ │ └── profile.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ └── become_a_chef │ │ └── views │ │ └── become_a_chef.cljs ├── 20-reg-cofx │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ ├── events.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ └── auth │ │ └── subs.cljs ├── 53-http-fx │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── errors │ │ ├── subs.cljs │ │ └── events.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ ├── nav.cljs │ │ └── nav_item.cljs │ │ └── subs.cljs ├── 59-on-key-up │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── errors │ │ ├── subs.cljs │ │ └── events.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ └── views │ │ └── nav.cljs ├── 62-wire-spec │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── errors │ │ ├── subs.cljs │ │ └── events.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ └── views │ │ └── nav.cljs ├── 14-form-group │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ ├── events.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ ├── auth │ │ └── views │ │ │ ├── profile.cljs │ │ │ └── sign_up.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ └── become_a_chef │ │ └── views │ │ └── become_a_chef.cljs ├── 16-log-in-subs │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ ├── events.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ ├── auth │ │ └── views │ │ │ ├── profile.cljs │ │ │ └── sign_up.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ └── become_a_chef │ │ └── views │ │ └── become_a_chef.cljs ├── 23-active-page │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ └── auth │ │ └── subs.cljs ├── 26-recipe-card │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── nav │ │ ├── subs.cljs │ │ └── views │ │ │ └── nav.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── auth │ │ └── subs.cljs ├── 28-recipe-page │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── nav │ │ ├── subs.cljs │ │ └── views │ │ │ └── nav.cljs │ │ ├── auth │ │ └── subs.cljs │ │ └── recipes │ │ └── views │ │ └── recipe_list.cljs ├── 29-recipe-info │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── nav │ │ ├── subs.cljs │ │ └── views │ │ │ └── nav.cljs │ │ ├── auth │ │ └── subs.cljs │ │ └── recipes │ │ └── views │ │ └── recipe_list.cljs ├── 35-step-editor │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 45-inbox-card │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── subs.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 46-inbox-page │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ ├── events.cljs │ │ └── subs.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 50-on-key-down │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 54-get-recipes │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ ├── .gitignore │ └── src │ │ └── app │ │ ├── errors │ │ ├── subs.cljs │ │ └── events.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 56-sub-layers │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── errors │ │ ├── subs.cljs │ │ └── events.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 06-initialize-db │ ├── .gitignore │ └── public │ │ └── img │ │ ├── avatar.png │ │ ├── favicon.ico │ │ └── placeholder.jpg ├── 15-log-in-event-fx │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ ├── events.cljs │ │ └── views │ │ │ └── nav.cljs │ │ ├── auth │ │ └── views │ │ │ ├── profile.cljs │ │ │ └── sign_up.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ └── become_a_chef │ │ └── views │ │ └── become_a_chef.cljs ├── 19-local-storage │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ ├── events.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ └── auth │ │ └── subs.cljs ├── 22-router-dispatch │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── nav │ │ ├── subs.cljs │ │ ├── events.cljs │ │ └── views │ │ │ └── nav.cljs │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ └── auth │ │ └── subs.cljs ├── 24-recipes-page │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── nav │ │ ├── subs.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ └── auth │ │ └── subs.cljs ├── 25-recipes-list │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── nav │ │ ├── subs.cljs │ │ └── views │ │ │ ├── nav.cljs │ │ │ └── nav_item.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── auth │ │ └── subs.cljs ├── 27-recipe-route │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── nav │ │ ├── subs.cljs │ │ └── views │ │ │ └── nav.cljs │ │ ├── auth │ │ └── subs.cljs │ │ └── recipes │ │ └── views │ │ └── recipe_list.cljs ├── 30-recipe-image │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── nav │ │ ├── subs.cljs │ │ └── views │ │ │ └── nav.cljs │ │ └── recipes │ │ ├── events.cljs │ │ └── views │ │ └── recipe_list.cljs ├── 31-modal-component │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── recipes │ │ ├── views │ │ │ └── recipe_list.cljs │ │ └── events.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 36-recipe-editor │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 38-recipe-page-nav │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 39-become-a-chef │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 40-publish-recipe │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 43-upsert-image │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 44-inboxes-page │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 48-message-card │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 49-request-to-cook │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 51-form-validation │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 57-time-and-trace │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── errors │ │ ├── subs.cljs │ │ └── events.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ └── views │ │ └── nav.cljs ├── 58-input-flicker │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── errors │ │ ├── subs.cljs │ │ └── events.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ └── views │ │ └── nav.cljs ├── 60-simplify-events │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── errors │ │ └── subs.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ └── views │ │ └── nav.cljs ├── 63-specify-spec │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── errors │ │ └── subs.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ └── views │ │ └── nav.cljs ├── 64-specify-spec │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── errors │ │ └── subs.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ └── views │ │ └── nav.cljs ├── 32-recipe-ingredients │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── recipes │ │ ├── views │ │ │ └── recipe_list.cljs │ │ └── events.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 33-ingredient-editor │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── recipes │ │ ├── events.cljs │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 37-recipe-editor-events │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 47-inbox-page-events │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── events.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 55-get-recipes-dispatch │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── errors │ │ ├── subs.cljs │ │ └── events.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 34-ingredient-editor-events │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── become_a_chef │ │ └── views │ │ │ └── become_a_chef.cljs │ │ ├── recipes │ │ ├── views │ │ │ └── recipe_list.cljs │ │ └── events.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs ├── 41-publish-recipe-events │ ├── .gitignore │ ├── public │ │ └── img │ │ │ ├── avatar.png │ │ │ ├── favicon.ico │ │ │ └── placeholder.jpg │ └── src │ │ └── app │ │ ├── inbox │ │ └── views │ │ │ └── inboxes.cljs │ │ ├── recipes │ │ └── views │ │ │ └── recipe_list.cljs │ │ └── nav │ │ ├── views │ │ └── nav.cljs │ │ └── subs.cljs └── 52-check-before-dispatch │ ├── .gitignore │ ├── public │ └── img │ │ ├── avatar.png │ │ ├── favicon.ico │ │ └── placeholder.jpg │ └── src │ └── app │ ├── errors │ ├── subs.cljs │ └── events.cljs │ ├── recipes │ └── views │ │ └── recipe_list.cljs │ └── nav │ ├── views │ └── nav.cljs │ └── subs.cljs └── cheffy ├── public └── img │ ├── avatar.png │ ├── favicon.ico │ └── placeholder.jpg ├── .gitignore └── src └── app └── core.cljs /.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ -------------------------------------------------------------------------------- /increments/08-nav-events/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /increments/08-nav-events/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /increments/09-nav-subs/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /increments/09-nav-subs/src/app/nav/views/public.cljs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /increments/10-pages/src/app/nav/views/public.cljs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /increments/11-public/src/app/nav/views/public.cljs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /increments/08-nav-events/src/app/nav/views/public.cljs: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /cheffy/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/cheffy/public/img/avatar.png -------------------------------------------------------------------------------- /cheffy/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/cheffy/public/img/favicon.ico -------------------------------------------------------------------------------- /cheffy/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/cheffy/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/12-page-nav/src/app/auth/views/log_in.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.log-in) 2 | 3 | (defn log-in 4 | [] 5 | [:div "log-in"]) 6 | -------------------------------------------------------------------------------- /increments/11-public/src/app/auth/views/profile.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.profile) 2 | 3 | (defn profile 4 | [] 5 | [:div "profile"]) 6 | -------------------------------------------------------------------------------- /increments/11-public/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes) 2 | 3 | (defn inboxes 4 | [] 5 | [:div "inboxes"]) 6 | -------------------------------------------------------------------------------- /increments/12-page-nav/src/app/auth/views/profile.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.profile) 2 | 3 | (defn profile 4 | [] 5 | [:div "profile"]) 6 | -------------------------------------------------------------------------------- /increments/12-page-nav/src/app/auth/views/sign_up.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.sign-up) 2 | 3 | (defn sign-up 4 | [] 5 | [:div "sign-up"]) 6 | -------------------------------------------------------------------------------- /cheffy/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/07-nav/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/07-nav/public/img/avatar.png -------------------------------------------------------------------------------- /increments/07-nav/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/07-nav/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/11-public/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes) 2 | 3 | (defn recipes 4 | [] 5 | [:div "recipes"]) 6 | -------------------------------------------------------------------------------- /increments/12-page-nav/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes) 2 | 3 | (defn inboxes 4 | [] 5 | [:div "inboxes"]) 6 | -------------------------------------------------------------------------------- /increments/12-page-nav/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes) 2 | 3 | (defn recipes 4 | [] 5 | [:div "recipes"]) 6 | -------------------------------------------------------------------------------- /increments/61-spec/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/61-spec/public/img/avatar.png -------------------------------------------------------------------------------- /increments/10-pages/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/10-pages/public/img/avatar.png -------------------------------------------------------------------------------- /increments/10-pages/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/10-pages/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/11-public/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/11-public/public/img/avatar.png -------------------------------------------------------------------------------- /increments/13-log-in/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/13-log-in/public/img/avatar.png -------------------------------------------------------------------------------- /increments/21-router/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/21-router/public/img/avatar.png -------------------------------------------------------------------------------- /increments/42-saved/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/42-saved/public/img/avatar.png -------------------------------------------------------------------------------- /increments/42-saved/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/42-saved/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/61-spec/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/61-spec/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/complete/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/complete/public/img/avatar.png -------------------------------------------------------------------------------- /increments/complete/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/complete/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/03-dev-setup/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/03-dev-setup/public/img/avatar.png -------------------------------------------------------------------------------- /increments/04-app-setup/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/04-app-setup/public/img/avatar.png -------------------------------------------------------------------------------- /increments/05-smooth-ui/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/05-smooth-ui/public/img/avatar.png -------------------------------------------------------------------------------- /increments/07-nav/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/07-nav/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/07-nav/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/09-nav-subs/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/09-nav-subs/public/img/avatar.png -------------------------------------------------------------------------------- /increments/09-nav-subs/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/09-nav-subs/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/10-pages/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/11-public/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/11-public/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/12-page-nav/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/12-page-nav/public/img/avatar.png -------------------------------------------------------------------------------- /increments/12-page-nav/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/12-page-nav/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/13-log-in/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/13-log-in/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/17-sign-up/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/17-sign-up/public/img/avatar.png -------------------------------------------------------------------------------- /increments/17-sign-up/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/17-sign-up/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/18-profile/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/18-profile/public/img/avatar.png -------------------------------------------------------------------------------- /increments/18-profile/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/18-profile/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/20-reg-cofx/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/20-reg-cofx/public/img/avatar.png -------------------------------------------------------------------------------- /increments/20-reg-cofx/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/20-reg-cofx/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/21-router/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/21-router/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/42-saved/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/53-http-fx/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/53-http-fx/public/img/avatar.png -------------------------------------------------------------------------------- /increments/53-http-fx/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/53-http-fx/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/59-on-key-up/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/59-on-key-up/public/img/avatar.png -------------------------------------------------------------------------------- /increments/61-spec/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/61-spec/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/61-spec/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/62-wire-spec/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/62-wire-spec/public/img/avatar.png -------------------------------------------------------------------------------- /increments/complete/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/03-dev-setup/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/03-dev-setup/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/03-dev-setup/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/04-app-setup/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/04-app-setup/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/04-app-setup/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/05-smooth-ui/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/05-smooth-ui/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/05-smooth-ui/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/08-nav-events/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/08-nav-events/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/08-nav-events/public/img/avatar.png -------------------------------------------------------------------------------- /increments/08-nav-events/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/08-nav-events/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/09-nav-subs/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/10-pages/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/10-pages/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/11-public/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/11-public/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/11-public/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/12-page-nav/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/13-log-in/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/13-log-in/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/13-log-in/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/14-form-group/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/14-form-group/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/14-form-group/public/img/avatar.png -------------------------------------------------------------------------------- /increments/14-form-group/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/14-form-group/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/16-log-in-subs/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/16-log-in-subs/public/img/avatar.png -------------------------------------------------------------------------------- /increments/17-sign-up/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/18-profile/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/20-reg-cofx/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/21-router/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/21-router/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/21-router/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/23-active-page/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/23-active-page/public/img/avatar.png -------------------------------------------------------------------------------- /increments/26-recipe-card/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/26-recipe-card/public/img/avatar.png -------------------------------------------------------------------------------- /increments/28-recipe-page/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/28-recipe-page/public/img/avatar.png -------------------------------------------------------------------------------- /increments/29-recipe-info/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/29-recipe-info/public/img/avatar.png -------------------------------------------------------------------------------- /increments/35-step-editor/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/35-step-editor/public/img/avatar.png -------------------------------------------------------------------------------- /increments/42-saved/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/42-saved/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/45-inbox-card/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/45-inbox-card/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/45-inbox-card/public/img/avatar.png -------------------------------------------------------------------------------- /increments/45-inbox-card/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/45-inbox-card/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/46-inbox-page/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/46-inbox-page/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/46-inbox-page/public/img/avatar.png -------------------------------------------------------------------------------- /increments/46-inbox-page/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/46-inbox-page/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/50-on-key-down/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/50-on-key-down/public/img/avatar.png -------------------------------------------------------------------------------- /increments/53-http-fx/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/54-get-recipes/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/54-get-recipes/public/img/avatar.png -------------------------------------------------------------------------------- /increments/56-sub-layers/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/56-sub-layers/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/56-sub-layers/public/img/avatar.png -------------------------------------------------------------------------------- /increments/56-sub-layers/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/56-sub-layers/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/59-on-key-up/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/59-on-key-up/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/59-on-key-up/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/62-wire-spec/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/62-wire-spec/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/62-wire-spec/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/complete/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/complete/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/03-dev-setup/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/03-dev-setup/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/04-app-setup/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/04-app-setup/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/05-smooth-ui/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/05-smooth-ui/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/06-initialize-db/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/06-initialize-db/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/06-initialize-db/public/img/avatar.png -------------------------------------------------------------------------------- /increments/06-initialize-db/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/06-initialize-db/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/09-nav-subs/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/09-nav-subs/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/12-page-nav/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/12-page-nav/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/16-log-in-subs/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/17-sign-up/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/17-sign-up/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/18-profile/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/18-profile/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/19-local-storage/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/19-local-storage/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/19-local-storage/public/img/avatar.png -------------------------------------------------------------------------------- /increments/19-local-storage/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/19-local-storage/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/20-reg-cofx/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/20-reg-cofx/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/22-router-dispatch/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/23-active-page/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/23-active-page/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/23-active-page/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/24-recipes-page/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/24-recipes-page/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/24-recipes-page/public/img/avatar.png -------------------------------------------------------------------------------- /increments/24-recipes-page/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/24-recipes-page/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/25-recipes-list/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/25-recipes-list/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/25-recipes-list/public/img/avatar.png -------------------------------------------------------------------------------- /increments/25-recipes-list/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/25-recipes-list/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/26-recipe-card/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/26-recipe-card/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/26-recipe-card/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/27-recipe-route/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/27-recipe-route/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/27-recipe-route/public/img/avatar.png -------------------------------------------------------------------------------- /increments/27-recipe-route/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/27-recipe-route/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/28-recipe-page/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/28-recipe-page/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/28-recipe-page/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/29-recipe-info/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/29-recipe-info/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/29-recipe-info/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/30-recipe-image/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/30-recipe-image/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/30-recipe-image/public/img/avatar.png -------------------------------------------------------------------------------- /increments/30-recipe-image/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/30-recipe-image/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/31-modal-component/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/35-step-editor/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/35-step-editor/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/35-step-editor/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/36-recipe-editor/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/36-recipe-editor/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/36-recipe-editor/public/img/avatar.png -------------------------------------------------------------------------------- /increments/36-recipe-editor/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/36-recipe-editor/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/38-recipe-page-nav/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/39-become-a-chef/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/39-become-a-chef/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/39-become-a-chef/public/img/avatar.png -------------------------------------------------------------------------------- /increments/39-become-a-chef/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/39-become-a-chef/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/40-publish-recipe/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/40-publish-recipe/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/40-publish-recipe/public/img/avatar.png -------------------------------------------------------------------------------- /increments/43-upsert-image/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/43-upsert-image/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/43-upsert-image/public/img/avatar.png -------------------------------------------------------------------------------- /increments/43-upsert-image/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/43-upsert-image/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/44-inboxes-page/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/44-inboxes-page/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/44-inboxes-page/public/img/avatar.png -------------------------------------------------------------------------------- /increments/44-inboxes-page/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/44-inboxes-page/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/48-message-card/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/48-message-card/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/48-message-card/public/img/avatar.png -------------------------------------------------------------------------------- /increments/48-message-card/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/48-message-card/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/49-request-to-cook/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/50-on-key-down/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/50-on-key-down/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/50-on-key-down/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/51-form-validation/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/53-http-fx/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/53-http-fx/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/54-get-recipes/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/54-get-recipes/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/54-get-recipes/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/57-time-and-trace/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/57-time-and-trace/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/57-time-and-trace/public/img/avatar.png -------------------------------------------------------------------------------- /increments/58-input-flicker/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/58-input-flicker/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/58-input-flicker/public/img/avatar.png -------------------------------------------------------------------------------- /increments/58-input-flicker/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/58-input-flicker/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/59-on-key-up/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/59-on-key-up/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/60-simplify-events/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/62-wire-spec/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/62-wire-spec/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/63-specify-spec/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/63-specify-spec/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/63-specify-spec/public/img/avatar.png -------------------------------------------------------------------------------- /increments/63-specify-spec/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/63-specify-spec/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/64-specify-spec/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/64-specify-spec/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/64-specify-spec/public/img/avatar.png -------------------------------------------------------------------------------- /increments/64-specify-spec/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/64-specify-spec/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/08-nav-events/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/08-nav-events/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/14-form-group/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/14-form-group/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/15-log-in-event-fx/public/img/avatar.png -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/15-log-in-event-fx/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/16-log-in-subs/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/16-log-in-subs/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/22-router-dispatch/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/22-router-dispatch/public/img/avatar.png -------------------------------------------------------------------------------- /increments/22-router-dispatch/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/22-router-dispatch/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/23-active-page/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/23-active-page/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/26-recipe-card/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/26-recipe-card/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/28-recipe-page/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/28-recipe-page/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/29-recipe-info/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/29-recipe-info/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/31-modal-component/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/31-modal-component/public/img/avatar.png -------------------------------------------------------------------------------- /increments/31-modal-component/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/31-modal-component/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/32-recipe-ingredients/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/33-ingredient-editor/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/35-step-editor/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/35-step-editor/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/37-recipe-editor-events/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/38-recipe-page-nav/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/38-recipe-page-nav/public/img/avatar.png -------------------------------------------------------------------------------- /increments/38-recipe-page-nav/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/38-recipe-page-nav/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/40-publish-recipe/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/40-publish-recipe/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/45-inbox-card/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/45-inbox-card/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/46-inbox-page/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/46-inbox-page/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/47-inbox-page-events/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/49-request-to-cook/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/49-request-to-cook/public/img/avatar.png -------------------------------------------------------------------------------- /increments/49-request-to-cook/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/49-request-to-cook/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/50-on-key-down/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/50-on-key-down/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/51-form-validation/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/51-form-validation/public/img/avatar.png -------------------------------------------------------------------------------- /increments/51-form-validation/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/51-form-validation/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/54-get-recipes/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/54-get-recipes/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/55-get-recipes-dispatch/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/56-sub-layers/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/56-sub-layers/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/57-time-and-trace/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/57-time-and-trace/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/60-simplify-events/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/60-simplify-events/public/img/avatar.png -------------------------------------------------------------------------------- /increments/60-simplify-events/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/60-simplify-events/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/06-initialize-db/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/06-initialize-db/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/19-local-storage/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/19-local-storage/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/24-recipes-page/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/24-recipes-page/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/25-recipes-list/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/25-recipes-list/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/27-recipe-route/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/27-recipe-route/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/30-recipe-image/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/30-recipe-image/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/32-recipe-ingredients/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/32-recipe-ingredients/public/img/avatar.png -------------------------------------------------------------------------------- /increments/32-recipe-ingredients/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/32-recipe-ingredients/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/33-ingredient-editor/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/33-ingredient-editor/public/img/avatar.png -------------------------------------------------------------------------------- /increments/33-ingredient-editor/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/33-ingredient-editor/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/34-ingredient-editor-events/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/36-recipe-editor/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/36-recipe-editor/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/39-become-a-chef/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/39-become-a-chef/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/40-publish-recipe/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/40-publish-recipe/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/41-publish-recipe-events/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/43-upsert-image/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/43-upsert-image/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/44-inboxes-page/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/44-inboxes-page/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/47-inbox-page-events/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/47-inbox-page-events/public/img/avatar.png -------------------------------------------------------------------------------- /increments/47-inbox-page-events/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/47-inbox-page-events/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/48-message-card/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/48-message-card/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/52-check-before-dispatch/.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /target 3 | /public/js 4 | .shadow-cljs 5 | .nrepl-port 6 | yarn.lock 7 | package-lock.json 8 | .DS_Store 9 | -------------------------------------------------------------------------------- /increments/57-time-and-trace/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/57-time-and-trace/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/58-input-flicker/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/58-input-flicker/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/63-specify-spec/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/63-specify-spec/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/64-specify-spec/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/64-specify-spec/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/11-public/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef) 2 | 3 | (defn become-a-chef 4 | [] 5 | [:div "become-a-chef"]) 6 | -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/15-log-in-event-fx/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/22-router-dispatch/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/22-router-dispatch/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/31-modal-component/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/31-modal-component/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/37-recipe-editor-events/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/37-recipe-editor-events/public/img/avatar.png -------------------------------------------------------------------------------- /increments/37-recipe-editor-events/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/37-recipe-editor-events/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/38-recipe-page-nav/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/38-recipe-page-nav/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/41-publish-recipe-events/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/41-publish-recipe-events/public/img/avatar.png -------------------------------------------------------------------------------- /increments/49-request-to-cook/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/49-request-to-cook/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/51-form-validation/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/51-form-validation/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/52-check-before-dispatch/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/52-check-before-dispatch/public/img/avatar.png -------------------------------------------------------------------------------- /increments/55-get-recipes-dispatch/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/55-get-recipes-dispatch/public/img/avatar.png -------------------------------------------------------------------------------- /increments/55-get-recipes-dispatch/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/55-get-recipes-dispatch/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/60-simplify-events/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/60-simplify-events/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/12-page-nav/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef) 2 | 3 | (defn become-a-chef 4 | [] 5 | [:div "become-a-chef"]) 6 | -------------------------------------------------------------------------------- /increments/32-recipe-ingredients/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/32-recipe-ingredients/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/33-ingredient-editor/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/33-ingredient-editor/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/34-ingredient-editor-events/public/img/avatar.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/34-ingredient-editor-events/public/img/avatar.png -------------------------------------------------------------------------------- /increments/41-publish-recipe-events/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/41-publish-recipe-events/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/47-inbox-page-events/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/47-inbox-page-events/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/52-check-before-dispatch/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/52-check-before-dispatch/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/61-spec/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/complete/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/34-ingredient-editor-events/public/img/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/34-ingredient-editor-events/public/img/favicon.ico -------------------------------------------------------------------------------- /increments/37-recipe-editor-events/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/37-recipe-editor-events/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/41-publish-recipe-events/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/41-publish-recipe-events/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/52-check-before-dispatch/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/52-check-before-dispatch/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/53-http-fx/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/55-get-recipes-dispatch/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/55-get-recipes-dispatch/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/56-sub-layers/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/59-on-key-up/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/62-wire-spec/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/34-ingredient-editor-events/public/img/placeholder.jpg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/gs/learn-re-frame-course-files/master/increments/34-ingredient-editor-events/public/img/placeholder.jpg -------------------------------------------------------------------------------- /increments/54-get-recipes/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/57-time-and-trace/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/58-input-flicker/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/60-simplify-events/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/63-specify-spec/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/64-specify-spec/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/55-get-recipes-dispatch/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/10-pages/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/11-public/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/12-page-nav/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/13-log-in/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/17-sign-up/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/18-profile/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/20-reg-cofx/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/21-router/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/52-check-before-dispatch/src/app/errors/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :errors 6 | (fn [db _] 7 | (:errors db))) 8 | -------------------------------------------------------------------------------- /increments/13-log-in/src/app/auth/views/log_in.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.log-in 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn log-in 5 | [] 6 | [page-nav {:center "Log in"}]) 7 | -------------------------------------------------------------------------------- /increments/14-form-group/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/17-sign-up/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | -------------------------------------------------------------------------------- /increments/18-profile/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | -------------------------------------------------------------------------------- /increments/19-local-storage/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/23-active-page/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/13-log-in/src/app/auth/views/profile.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.profile 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn profile 5 | [] 6 | [page-nav {:center "Profile"}]) 7 | -------------------------------------------------------------------------------- /increments/13-log-in/src/app/auth/views/sign_up.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.sign-up 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn sign-up 5 | [] 6 | [page-nav {:center "Sign up"}]) 7 | -------------------------------------------------------------------------------- /increments/13-log-in/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/17-sign-up/src/app/auth/views/profile.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.profile 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn profile 5 | [] 6 | [page-nav {:center "Profile"}]) 7 | -------------------------------------------------------------------------------- /increments/17-sign-up/src/app/auth/views/sign_up.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.sign-up 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn sign-up 5 | [] 6 | [page-nav {:center "Sign up"}]) 7 | -------------------------------------------------------------------------------- /increments/17-sign-up/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/18-profile/src/app/auth/views/profile.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.profile 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn profile 5 | [] 6 | [page-nav {:center "Profile"}]) 7 | -------------------------------------------------------------------------------- /increments/18-profile/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/20-reg-cofx/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/21-router/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/22-router-dispatch/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | -------------------------------------------------------------------------------- /increments/42-saved/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/13-log-in/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/14-form-group/src/app/auth/views/profile.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.profile 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn profile 5 | [] 6 | [page-nav {:center "Profile"}]) 7 | -------------------------------------------------------------------------------- /increments/14-form-group/src/app/auth/views/sign_up.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.sign-up 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn sign-up 5 | [] 6 | [page-nav {:center "Sign up"}]) 7 | -------------------------------------------------------------------------------- /increments/14-form-group/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/src/app/auth/views/profile.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.profile 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn profile 5 | [] 6 | [page-nav {:center "Profile"}]) 7 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/src/app/auth/views/sign_up.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.sign-up 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn sign-up 5 | [] 6 | [page-nav {:center "Sign up"}]) 7 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/17-sign-up/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/18-profile/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/19-local-storage/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/20-reg-cofx/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/21-router/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/23-active-page/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/24-recipes-page/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/25-recipes-list/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/26-recipe-card/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/27-recipe-route/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/28-recipe-page/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/29-recipe-info/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/30-recipe-image/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/35-step-editor/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/36-recipe-editor/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/39-become-a-chef/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/40-publish-recipe/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/43-upsert-image/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/44-inboxes-page/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/14-form-group/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/src/app/auth/views/profile.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.profile 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn profile 5 | [] 6 | [page-nav {:center "Profile"}]) 7 | -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/src/app/auth/views/sign_up.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.views.sign-up 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn sign-up 5 | [] 6 | [page-nav {:center "Sign up"}]) 7 | -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/19-local-storage/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/22-router-dispatch/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/23-active-page/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/31-modal-component/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/32-recipe-ingredients/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/33-ingredient-editor/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/38-recipe-page-nav/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/22-router-dispatch/src/app/recipes/views/recipes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn recipes 5 | [] 6 | [page-nav {:center "Recipes"}]) 7 | -------------------------------------------------------------------------------- /increments/34-ingredient-editor-events/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/37-recipe-editor-events/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/41-publish-recipe-events/src/app/inbox/views/inboxes.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.views.inboxes 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn inboxes 5 | [] 6 | [page-nav {:center "Inbox"}]) 7 | -------------------------------------------------------------------------------- /increments/10-pages/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/09-nav-subs/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/11-public/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/12-page-nav/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/13-log-in/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/14-form-group/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/17-sign-up/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/18-profile/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/20-reg-cofx/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/21-router/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/13-log-in/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/17-sign-up/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/18-profile/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/19-local-storage/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/21-router/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/22-router-dispatch/src/app/nav/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :set-active-nav 6 | (fn [db [_ active-nav]] 7 | (assoc-in db [:nav :active-nav] active-nav))) 8 | -------------------------------------------------------------------------------- /increments/14-form-group/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/20-reg-cofx/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/23-active-page/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/24-recipes-page/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/25-recipes-list/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/26-recipe-card/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/27-recipe-route/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/28-recipe-page/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/29-recipe-info/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/30-recipe-image/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/35-step-editor/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/19-local-storage/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/22-router-dispatch/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/31-modal-component/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/33-ingredient-editor/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/36-recipe-editor/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/38-recipe-page-nav/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/39-become-a-chef/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/09-nav-subs/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [app.nav.views.authenticated :refer [authenticated]])) 3 | 4 | (defn nav 5 | [] 6 | (let [user true] 7 | (if user 8 | [authenticated] 9 | "public"))) 10 | -------------------------------------------------------------------------------- /increments/10-pages/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [app.nav.views.authenticated :refer [authenticated]])) 3 | 4 | (defn nav 5 | [] 6 | (let [user true] 7 | (if user 8 | [authenticated] 9 | "public"))) 10 | -------------------------------------------------------------------------------- /increments/11-public/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [app.nav.views.authenticated :refer [authenticated]])) 3 | 4 | (defn nav 5 | [] 6 | (let [user true] 7 | (if user 8 | [authenticated] 9 | "public"))) 10 | -------------------------------------------------------------------------------- /increments/32-recipe-ingredients/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/37-recipe-editor-events/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /increments/08-nav-events/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [app.nav.views.authenticated :refer [authenticated]])) 3 | 4 | (defn nav 5 | [] 6 | (let [user true] 7 | (if user 8 | [authenticated] 9 | "public"))) 10 | -------------------------------------------------------------------------------- /increments/34-ingredient-editor-events/src/app/become_a_chef/views/become_a_chef.cljs: -------------------------------------------------------------------------------- 1 | (ns app.become-a-chef.views.become-a-chef 2 | (:require [app.components.page-nav :refer [page-nav]])) 3 | 4 | (defn become-a-chef 5 | [] 6 | [page-nav {:center "Become a chef"}]) 7 | -------------------------------------------------------------------------------- /cheffy/src/app/core.cljs: -------------------------------------------------------------------------------- 1 | (ns app.core 2 | (:require [reagent.core :as r])) 3 | 4 | (defn app 5 | [] 6 | [:div "Cheffy"]) 7 | 8 | (defn ^:dev/after-load start 9 | [] 10 | (r/render [app] 11 | (.getElementById js/document "app"))) 12 | 13 | (defn ^:export init 14 | [] 15 | (start)) 16 | -------------------------------------------------------------------------------- /increments/24-recipes-page/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | -------------------------------------------------------------------------------- /increments/25-recipes-list/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | -------------------------------------------------------------------------------- /increments/26-recipe-card/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | -------------------------------------------------------------------------------- /increments/27-recipe-route/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | -------------------------------------------------------------------------------- /increments/28-recipe-page/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | -------------------------------------------------------------------------------- /increments/29-recipe-info/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | -------------------------------------------------------------------------------- /increments/30-recipe-image/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | -------------------------------------------------------------------------------- /increments/25-recipes-list/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn recipe-list 5 | [items] 6 | [:> Box {:class "cards"} 7 | (for [recipe items] 8 | ^{:key (:id recipe)} 9 | (:name recipe))]) 10 | -------------------------------------------------------------------------------- /increments/26-recipe-card/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn recipe-list 5 | [items] 6 | [:> Box {:class "cards"} 7 | (for [recipe items] 8 | ^{:key (:id recipe)} 9 | (:name recipe))]) 10 | -------------------------------------------------------------------------------- /increments/13-log-in/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [app.nav.views.authenticated :refer [authenticated]] 3 | [app.nav.views.public :refer [public]])) 4 | 5 | (defn nav 6 | [] 7 | (let [user true] 8 | (if user 9 | [authenticated] 10 | [public]))) 11 | -------------------------------------------------------------------------------- /increments/46-inbox-page/src/app/inbox/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :clear-notifications 6 | (fn [db [_ uid-inbox]] 7 | (let [uid (get-in db [:auth :uid])] 8 | (assoc-in db [:users uid :inboxes uid-inbox :notifications] 0)))) 9 | -------------------------------------------------------------------------------- /increments/03-dev-setup/src/app/core.cljs: -------------------------------------------------------------------------------- 1 | (ns app.core 2 | (:require [reagent.core :as r])) 3 | 4 | (defn app 5 | [] 6 | [:div "Cheffy"]) 7 | 8 | (defn ^:dev/after-load start 9 | [] 10 | (r/render [app] 11 | (.getElementById js/document "app"))) 12 | 13 | (defn ^:export init 14 | [] 15 | (start)) 16 | -------------------------------------------------------------------------------- /increments/04-app-setup/src/app/core.cljs: -------------------------------------------------------------------------------- 1 | (ns app.core 2 | (:require [reagent.core :as r])) 3 | 4 | (defn app 5 | [] 6 | [:div "Cheffy"]) 7 | 8 | (defn ^:dev/after-load start 9 | [] 10 | (r/render [app] 11 | (.getElementById js/document "app"))) 12 | 13 | (defn ^:export init 14 | [] 15 | (start)) 16 | -------------------------------------------------------------------------------- /increments/05-smooth-ui/src/app/core.cljs: -------------------------------------------------------------------------------- 1 | (ns app.core 2 | (:require [reagent.core :as r])) 3 | 4 | (defn app 5 | [] 6 | [:div "Cheffy"]) 7 | 8 | (defn ^:dev/after-load start 9 | [] 10 | (r/render [app] 11 | (.getElementById js/document "app"))) 12 | 13 | (defn ^:export init 14 | [] 15 | (start)) 16 | -------------------------------------------------------------------------------- /increments/12-page-nav/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [app.nav.views.authenticated :refer [authenticated]] 3 | [app.nav.views.public :refer [public]])) 4 | 5 | (defn nav 6 | [] 7 | (let [user false] 8 | (if user 9 | [authenticated] 10 | [public]))) 11 | -------------------------------------------------------------------------------- /increments/14-form-group/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [app.nav.views.authenticated :refer [authenticated]] 3 | [app.nav.views.public :refer [public]])) 4 | 5 | (defn nav 6 | [] 7 | (let [user false] 8 | (if user 9 | [authenticated] 10 | [public]))) 11 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [app.nav.views.authenticated :refer [authenticated]] 3 | [app.nav.views.public :refer [public]])) 4 | 5 | (defn nav 6 | [] 7 | (let [user false] 8 | (if user 9 | [authenticated] 10 | [public]))) 11 | -------------------------------------------------------------------------------- /increments/47-inbox-page-events/src/app/inbox/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :clear-notifications 6 | (fn [db [_ uid-inbox]] 7 | (let [uid (get-in db [:auth :uid])] 8 | (assoc-in db [:users uid :inboxes uid-inbox :notifications] 0)))) 9 | -------------------------------------------------------------------------------- /increments/08-nav-events/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :ml 2 10 | :pb 10} 11 | name]) 12 | -------------------------------------------------------------------------------- /increments/15-log-in-event-fx/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [app.nav.views.authenticated :refer [authenticated]] 3 | [app.nav.views.public :refer [public]])) 4 | 5 | (defn nav 6 | [] 7 | (let [user false] 8 | (if user 9 | [authenticated] 10 | [public]))) 11 | -------------------------------------------------------------------------------- /increments/53-http-fx/src/app/errors/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :has-value? 6 | (fn [db [_ id]] 7 | (assoc-in db [:errors id] "Can't be blank"))) 8 | 9 | (reg-event-db 10 | :clear-error 11 | (fn [db [_ id]] 12 | (update-in db [:errors] dissoc id))) 13 | -------------------------------------------------------------------------------- /increments/54-get-recipes/src/app/errors/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :has-value? 6 | (fn [db [_ id]] 7 | (assoc-in db [:errors id] "Can't be blank"))) 8 | 9 | (reg-event-db 10 | :clear-error 11 | (fn [db [_ id]] 12 | (update-in db [:errors] dissoc id))) 13 | -------------------------------------------------------------------------------- /increments/56-sub-layers/src/app/errors/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :has-value? 6 | (fn [db [_ id]] 7 | (assoc-in db [:errors id] "Can't be blank"))) 8 | 9 | (reg-event-db 10 | :clear-error 11 | (fn [db [_ id]] 12 | (update-in db [:errors] dissoc id))) 13 | -------------------------------------------------------------------------------- /increments/45-inbox-card/src/app/inbox/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (defn reverse-cmp 5 | [a b] 6 | (compare b a)) 7 | 8 | (reg-sub 9 | :user-inboxes 10 | (fn [db _] 11 | (let [uid (get-in db [:auth :uid])] 12 | (sort-by :update-at reverse-cmp (get-in db [:users uid :inboxes]))))) 13 | -------------------------------------------------------------------------------- /increments/46-inbox-page/src/app/inbox/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.inbox.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (defn reverse-cmp 5 | [a b] 6 | (compare b a)) 7 | 8 | (reg-sub 9 | :user-inboxes 10 | (fn [db _] 11 | (let [uid (get-in db [:auth :uid])] 12 | (sort-by :update-at reverse-cmp (get-in db [:users uid :inboxes]))))) 13 | -------------------------------------------------------------------------------- /increments/57-time-and-trace/src/app/errors/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :has-value? 6 | (fn [db [_ id]] 7 | (assoc-in db [:errors id] "Can't be blank"))) 8 | 9 | (reg-event-db 10 | :clear-error 11 | (fn [db [_ id]] 12 | (update-in db [:errors] dissoc id))) 13 | -------------------------------------------------------------------------------- /increments/20-reg-cofx/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/21-router/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/52-check-before-dispatch/src/app/errors/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :has-value? 6 | (fn [db [_ id]] 7 | (assoc-in db [:errors id] "Can't be blank"))) 8 | 9 | (reg-event-db 10 | :clear-error 11 | (fn [db [_ id]] 12 | (update-in db [:errors] dissoc id))) 13 | -------------------------------------------------------------------------------- /increments/55-get-recipes-dispatch/src/app/errors/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :has-value? 6 | (fn [db [_ id]] 7 | (assoc-in db [:errors id] "Can't be blank"))) 8 | 9 | (reg-event-db 10 | :clear-error 11 | (fn [db [_ id]] 12 | (update-in db [:errors] dissoc id))) 13 | -------------------------------------------------------------------------------- /increments/09-nav-subs/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10} 12 | name]) 13 | -------------------------------------------------------------------------------- /increments/19-local-storage/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/22-router-dispatch/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/23-active-page/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/24-recipes-page/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/25-recipes-list/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/26-recipe-card/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/27-recipe-route/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/28-recipe-page/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/29-recipe-info/src/app/auth/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.auth.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :logged-in? 6 | (fn [db _] 7 | (boolean (get-in db [:auth :uid])))) 8 | 9 | (reg-sub 10 | :active-user-profile 11 | (fn [db _] 12 | (let [uid (get-in db [:auth :uid])] 13 | (get-in db [:users uid :profile])))) 14 | -------------------------------------------------------------------------------- /increments/42-saved/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/61-spec/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/complete/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/28-recipe-page/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/29-recipe-info/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/35-step-editor/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/45-inbox-card/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/46-inbox-page/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/50-on-key-down/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/53-http-fx/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/54-get-recipes/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/56-sub-layers/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/59-on-key-up/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/62-wire-spec/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/21-router/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/27-recipe-route/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/30-recipe-image/src/app/recipes/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :save-recipe 6 | (fn [db [_ recipe-id]] 7 | (let [uid (get-in db [:auth :uid])] 8 | (-> db 9 | (update-in [:users uid :saved] conj recipe-id) 10 | (update-in [:recipes recipe-id :saved-count] inc))))) 11 | -------------------------------------------------------------------------------- /increments/30-recipe-image/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/31-modal-component/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/36-recipe-editor/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/38-recipe-page-nav/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/39-become-a-chef/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/40-publish-recipe/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/42-saved/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/43-upsert-image/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/44-inboxes-page/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/48-message-card/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/49-request-to-cook/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/51-form-validation/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/57-time-and-trace/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/58-input-flicker/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/60-simplify-events/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/61-spec/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/63-specify-spec/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/64-specify-spec/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/complete/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/17-sign-up/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/18-profile/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/20-reg-cofx/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/23-active-page/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/26-recipe-card/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/28-recipe-page/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/29-recipe-info/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/31-modal-component/src/app/recipes/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :save-recipe 6 | (fn [db [_ recipe-id]] 7 | (let [uid (get-in db [:auth :uid])] 8 | (-> db 9 | (update-in [:users uid :saved] conj recipe-id) 10 | (update-in [:recipes recipe-id :saved-count] inc))))) 11 | -------------------------------------------------------------------------------- /increments/32-recipe-ingredients/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/33-ingredient-editor/src/app/recipes/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :save-recipe 6 | (fn [db [_ recipe-id]] 7 | (let [uid (get-in db [:auth :uid])] 8 | (-> db 9 | (update-in [:users uid :saved] conj recipe-id) 10 | (update-in [:recipes recipe-id :saved-count] inc))))) 11 | -------------------------------------------------------------------------------- /increments/33-ingredient-editor/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/35-step-editor/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/37-recipe-editor-events/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/41-publish-recipe-events/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/45-inbox-card/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/46-inbox-page/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/47-inbox-page-events/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/50-on-key-down/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/52-check-before-dispatch/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/53-http-fx/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/54-get-recipes/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/55-get-recipes-dispatch/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/56-sub-layers/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/59-on-key-up/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/62-wire-spec/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/19-local-storage/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/22-router-dispatch/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/24-recipes-page/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/25-recipes-list/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/27-recipe-route/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/30-recipe-image/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/31-modal-component/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/32-recipe-ingredients/src/app/recipes/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :save-recipe 6 | (fn [db [_ recipe-id]] 7 | (let [uid (get-in db [:auth :uid])] 8 | (-> db 9 | (update-in [:users uid :saved] conj recipe-id) 10 | (update-in [:recipes recipe-id :saved-count] inc))))) 11 | -------------------------------------------------------------------------------- /increments/34-ingredient-editor-events/src/app/recipes/views/recipe_list.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.views.recipe-list 2 | (:require [app.recipes.views.recipe-card :refer [recipe-card]] 3 | ["@smooth-ui/core-sc" :refer [Box]])) 4 | 5 | (defn recipe-list 6 | [items] 7 | [:> Box {:class "cards"} 8 | (for [recipe items] 9 | ^{:key (:id recipe)} 10 | [recipe-card recipe])]) 11 | -------------------------------------------------------------------------------- /increments/36-recipe-editor/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/38-recipe-page-nav/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/39-become-a-chef/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/40-publish-recipe/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/42-saved/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/43-upsert-image/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/44-inboxes-page/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/48-message-card/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/49-request-to-cook/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/51-form-validation/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/53-http-fx/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/57-time-and-trace/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/58-input-flicker/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/60-simplify-events/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/63-specify-spec/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/64-specify-spec/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/32-recipe-ingredients/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/33-ingredient-editor/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/34-ingredient-editor-events/src/app/recipes/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.recipes.events 2 | (:require [re-frame.core :refer [reg-event-db]])) 3 | 4 | (reg-event-db 5 | :save-recipe 6 | (fn [db [_ recipe-id]] 7 | (let [uid (get-in db [:auth :uid])] 8 | (-> db 9 | (update-in [:users uid :saved] conj recipe-id) 10 | (update-in [:recipes recipe-id :saved-count] inc))))) 11 | -------------------------------------------------------------------------------- /increments/35-step-editor/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/36-recipe-editor/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/37-recipe-editor-events/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/39-become-a-chef/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/41-publish-recipe-events/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/43-upsert-image/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/44-inboxes-page/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/45-inbox-card/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/46-inbox-page/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/47-inbox-page-events/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/48-message-card/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/50-on-key-down/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/52-check-before-dispatch/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/54-get-recipes/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/55-get-recipes-dispatch/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/56-sub-layers/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/31-modal-component/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/32-recipe-ingredients/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/33-ingredient-editor/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/34-ingredient-editor-events/src/app/nav/views/nav.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav 2 | (:require [re-frame.core :as rf] 3 | [app.nav.views.authenticated :refer [authenticated]] 4 | [app.nav.views.public :refer [public]])) 5 | 6 | (defn nav 7 | [] 8 | (let [logged-in? @(rf/subscribe [:logged-in?])] 9 | (if logged-in? 10 | [authenticated] 11 | [public]))) 12 | -------------------------------------------------------------------------------- /increments/38-recipe-page-nav/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/40-publish-recipe/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/47-inbox-page-events/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/49-request-to-cook/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/51-form-validation/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/37-recipe-editor-events/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/41-publish-recipe-events/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/52-check-before-dispatch/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/55-get-recipes-dispatch/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/34-ingredient-editor-events/src/app/nav/subs.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.subs 2 | (:require [re-frame.core :refer [reg-sub]])) 3 | 4 | (reg-sub 5 | :active-nav 6 | (fn [db _] 7 | (get-in db [:nav :active-nav]))) 8 | 9 | (reg-sub 10 | :active-page 11 | (fn [db _] 12 | (get-in db [:nav :active-page]))) 13 | 14 | (reg-sub 15 | :active-modal 16 | (fn [db _] 17 | (get-in db [:nav :active-modal]))) 18 | -------------------------------------------------------------------------------- /increments/61-spec/src/app/errors/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.events 2 | (:require [re-frame.core :refer [reg-event-db]] 3 | [day8.re-frame.tracing :refer-macros [fn-traced]])) 4 | 5 | (reg-event-db 6 | :has-value? 7 | (fn-traced [db [_ id]] 8 | (assoc-in db [:errors id] "Can't be blank"))) 9 | 10 | (reg-event-db 11 | :clear-error 12 | (fn-traced [db [_ id]] 13 | (update-in db [:errors] dissoc id))) 14 | -------------------------------------------------------------------------------- /increments/10-pages/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/11-public/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/12-page-nav/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/13-log-in/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/17-sign-up/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/18-profile/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/20-reg-cofx/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/21-router/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/42-saved/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-page]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-page id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/53-http-fx/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-page]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-page id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/58-input-flicker/src/app/errors/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.events 2 | (:require [re-frame.core :refer [reg-event-db]] 3 | [day8.re-frame.tracing :refer-macros [fn-traced]])) 4 | 5 | (reg-event-db 6 | :has-value? 7 | (fn-traced [db [_ id]] 8 | (assoc-in db [:errors id] "Can't be blank"))) 9 | 10 | (reg-event-db 11 | :clear-error 12 | (fn-traced [db [_ id]] 13 | (update-in db [:errors] dissoc id))) 14 | -------------------------------------------------------------------------------- /increments/59-on-key-up/src/app/errors/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.events 2 | (:require [re-frame.core :refer [reg-event-db]] 3 | [day8.re-frame.tracing :refer-macros [fn-traced]])) 4 | 5 | (reg-event-db 6 | :has-value? 7 | (fn-traced [db [_ id]] 8 | (assoc-in db [:errors id] "Can't be blank"))) 9 | 10 | (reg-event-db 11 | :clear-error 12 | (fn-traced [db [_ id]] 13 | (update-in db [:errors] dissoc id))) 14 | -------------------------------------------------------------------------------- /increments/61-spec/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-page]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-page id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/62-wire-spec/src/app/errors/events.cljs: -------------------------------------------------------------------------------- 1 | (ns app.errors.events 2 | (:require [re-frame.core :refer [reg-event-db]] 3 | [day8.re-frame.tracing :refer-macros [fn-traced]])) 4 | 5 | (reg-event-db 6 | :has-value? 7 | (fn-traced [db [_ id]] 8 | (assoc-in db [:errors id] "Can't be blank"))) 9 | 10 | (reg-event-db 11 | :clear-error 12 | (fn-traced [db [_ id]] 13 | (update-in db [:errors] dissoc id))) 14 | -------------------------------------------------------------------------------- /increments/complete/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-page]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-page id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/14-form-group/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/16-log-in-subs/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/19-local-storage/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/23-active-page/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-nav]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-nav id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/24-recipes-page/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-page]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-page id) "2px solid #102A43")} 13 | name]) 14 | -------------------------------------------------------------------------------- /increments/25-recipes-list/src/app/nav/views/nav_item.cljs: -------------------------------------------------------------------------------- 1 | (ns app.nav.views.nav-item 2 | (:require ["@smooth-ui/core-sc" :refer [Box]])) 3 | 4 | (defn nav-item 5 | [{:keys [id href name dispatch active-page]}] 6 | [:> Box {:key id 7 | :as "a" 8 | :href href 9 | :on-click dispatch 10 | :ml 2 11 | :pb 10 12 | :border-bottom (when (= active-page id) "2px solid #102A43")} 13 | name]) 14 | --------------------------------------------------------------------------------