From dda1ebbe7013a23889308b3f4f1dca35ca42427e Mon Sep 17 00:00:00 2001 From: Hugo Di Francesco Date: Sun, 8 Sep 2019 18:51:07 +0100 Subject: [PATCH] move Lesson 10 exercises and activities Exercises and activities should be numbered globally --- Lesson10/.gitignore | 0 Lesson10/01-first-class/.babelrc | 0 .../example-1-functions-as-values.js | 0 .../example-10-this-react-issues.html | 0 .../example-10-this-react-issues.js | 0 .../example-2-inversion-of-control.js | 0 .../example-3-add-event-listener.js | 0 .../example-4-fs-readdir-callback.js | 0 .../01-first-class/example-5-fetch-then.js | 0 .../example-6-fs-readdir-promise.js | 0 .../example-7-array-first-class.js | 0 .../example-8-parent-child-react.html | 0 .../example-8-parent-child-react.js | 0 .../example-9-child-parent-react.html | 0 .../example-9-child-parent-react.js | 0 ...cise-1-re-implement-array-methods-start.js | 20 --- .../exercise-1-re-implement-array-methods.js | 20 --- .../exercise-3-on-checkout-prop-start.html | 2 - .../exercise-3-on-checkout-prop-start.js | 76 ----------- .../exercise-3-on-checkout-prop.html | 2 - .../exercise-3-on-checkout-prop.js | 75 ----------- .../exercise-4-add-product-start.html | 2 - .../exercise-4-add-product.html | 2 - .../exercise-5-render-prop-start.html | 2 - .../exercise-5-render-prop.html | 2 - Lesson10/01-first-class/package.json | 0 Lesson10/01-first-class/test.js | 0 Lesson10/02-pure/example-1-double-test.js | 0 .../exercise-1-redux-dispatch-start.html | 2 - .../02-pure/exercise-1-redux-dispatch.html | 2 - .../exercise-3-items-selector-start.html | 2 - .../02-pure/exercise-3-items-selector.html | 2 - Lesson10/02-pure/package.json | 0 .../03-higher-order/example-1-react-bind.html | 0 .../03-higher-order/example-1-react-bind.js | 0 .../example-2-test-parameter-bind.js | 0 .../example-3-function-prototype-bind-call.js | 0 .../example-4-array-like-array.js | 0 .../03-higher-order/example-5-sum-curried.js | 0 .../03-higher-order/example-6-partial-sum.js | 0 .../example-7-generic-curry.js | 0 .../example-8-revealing-module.js | 0 .../example-9-function-comp-react.html | 0 .../example-9-function-comp-react.js | 0 Lesson10/03-higher-order/package.json | 0 .../example-1-sum-simple-compose.js | 0 .../04-composition/example-2-micro-hello.js | 0 .../04-composition/example-3-request-timer.js | 0 .../04-composition/example-4-api-key-auth.js | 0 .../example-5-express-api-key-auth.js | 0 Lesson10/04-composition/package.json | 0 .../example-1-redux-action-creator.js | 0 .../example-2-immutable-map-filter-reduce.js | 0 .../example-3-immutable-object-rest-spread.js | 0 .../example-4-immutable-array-rest-spread.js | 0 .../example-5-immutable-object-freeze.js | 0 ...example-6-component-did-mount-request.html | 0 .../example-6-component-did-mount-request.js | 0 .../example-7-use-effect-request.html | 0 .../example-7-use-effect-request.js | 0 .../example-8-thunk-usage.js | 0 .../example-9-redux-thunk-request.html | 0 .../example-9-redux-thunk-request.js | 0 ...cise-1-refactor-action-creators-start.html | 2 - .../exercise-1-refactor-action-creators.html | 2 - .../exercise-2-map-to-props-start.html | 2 - .../exercise-2-map-to-props.html | 2 - .../05-immutability-side-effects/package.json | 0 .../schema.graphql | 0 .../activity-1-on-checkout-prop-start.html | 2 + .../activity-1-on-checkout-prop-start.js | 87 ++++++++++++ .../activity-1-on-checkout-prop.html | 2 + .../activities/activity-1-on-checkout-prop.js | 87 ++++++++++++ .../activity-2-items-selector-test-start.js} | 1 + .../activity-2-items-selector-test.js} | 0 Lesson10/activities/package.json | 22 +++ Lesson10/activity/README.md | 2 - Lesson10/activity/index.html | 2 - Lesson10/activity/main.js | 125 ------------------ Lesson10/activity/package.json | 13 -- ...cise-1-re-implement-array-methods-start.js | 38 ++++++ .../exercise-1-re-implement-array-methods.js | 38 ++++++ ...ise-10-refactor-action-creators-start.html | 2 + ...cise-10-refactor-action-creators-start.js} | 2 +- .../exercise-10-refactor-action-creators.html | 2 + .../exercise-10-refactor-action-creators.js} | 0 .../exercise-11-map-to-props-start.html | 2 + .../exercise-11-map-to-props-start.js} | 2 +- .../exercises/exercise-11-map-to-props.html | 2 + .../exercise-11-map-to-props.js} | 0 .../exercise-12-graphql-micro-start.js} | 0 .../exercise-12-graphql-micro.js} | 0 .../exercise-2-price-of-basket-start.js | 7 +- .../exercise-2-price-of-basket.js | 7 +- .../exercise-3-add-product-start.html | 2 + .../exercise-3-add-product-start.js} | 0 .../exercises/exercise-3-add-product.html | 2 + .../exercise-3-add-product.js} | 0 .../exercise-4-render-prop-start.html | 2 + .../exercise-4-render-prop-start.js} | 2 +- .../exercises/exercise-4-render-prop.html | 2 + .../exercise-4-render-prop.js} | 0 .../exercise-5-redux-dispatch-start.html | 2 + .../exercise-5-redux-dispatch-start.js} | 2 +- .../exercises/exercise-5-redux-dispatch.html | 2 + .../exercise-5-redux-dispatch.js} | 0 .../exercise-6-reducer-test-start.js} | 0 .../exercise-6-reducer-test.js} | 0 .../exercise-7-items-selector-start.html | 2 + .../exercise-7-items-selector-start.js} | 2 +- .../exercises/exercise-7-items-selector.html | 2 + .../exercise-7-items-selector.js} | 0 .../exercise-8-2-to-n-compose-start.js} | 2 +- .../exercise-8-2-to-n-compose.js} | 2 +- .../exercise-9-micro-compose-start.js} | 2 +- .../exercise-9-micro-compose.js} | 2 +- Lesson10/exercises/package.json | 43 ++++++ 117 files changed, 363 insertions(+), 374 deletions(-) mode change 100644 => 100755 Lesson10/.gitignore mode change 100644 => 100755 Lesson10/01-first-class/.babelrc mode change 100644 => 100755 Lesson10/01-first-class/example-1-functions-as-values.js mode change 100644 => 100755 Lesson10/01-first-class/example-10-this-react-issues.html mode change 100644 => 100755 Lesson10/01-first-class/example-10-this-react-issues.js mode change 100644 => 100755 Lesson10/01-first-class/example-2-inversion-of-control.js mode change 100644 => 100755 Lesson10/01-first-class/example-3-add-event-listener.js mode change 100644 => 100755 Lesson10/01-first-class/example-4-fs-readdir-callback.js mode change 100644 => 100755 Lesson10/01-first-class/example-5-fetch-then.js mode change 100644 => 100755 Lesson10/01-first-class/example-6-fs-readdir-promise.js mode change 100644 => 100755 Lesson10/01-first-class/example-7-array-first-class.js mode change 100644 => 100755 Lesson10/01-first-class/example-8-parent-child-react.html mode change 100644 => 100755 Lesson10/01-first-class/example-8-parent-child-react.js mode change 100644 => 100755 Lesson10/01-first-class/example-9-child-parent-react.html mode change 100644 => 100755 Lesson10/01-first-class/example-9-child-parent-react.js delete mode 100644 Lesson10/01-first-class/exercise-1-re-implement-array-methods-start.js delete mode 100644 Lesson10/01-first-class/exercise-1-re-implement-array-methods.js delete mode 100644 Lesson10/01-first-class/exercise-3-on-checkout-prop-start.html delete mode 100644 Lesson10/01-first-class/exercise-3-on-checkout-prop-start.js delete mode 100644 Lesson10/01-first-class/exercise-3-on-checkout-prop.html delete mode 100644 Lesson10/01-first-class/exercise-3-on-checkout-prop.js delete mode 100644 Lesson10/01-first-class/exercise-4-add-product-start.html delete mode 100644 Lesson10/01-first-class/exercise-4-add-product.html delete mode 100644 Lesson10/01-first-class/exercise-5-render-prop-start.html delete mode 100644 Lesson10/01-first-class/exercise-5-render-prop.html mode change 100644 => 100755 Lesson10/01-first-class/package.json mode change 100644 => 100755 Lesson10/01-first-class/test.js mode change 100644 => 100755 Lesson10/02-pure/example-1-double-test.js delete mode 100644 Lesson10/02-pure/exercise-1-redux-dispatch-start.html delete mode 100644 Lesson10/02-pure/exercise-1-redux-dispatch.html delete mode 100644 Lesson10/02-pure/exercise-3-items-selector-start.html delete mode 100644 Lesson10/02-pure/exercise-3-items-selector.html mode change 100644 => 100755 Lesson10/02-pure/package.json mode change 100644 => 100755 Lesson10/03-higher-order/example-1-react-bind.html mode change 100644 => 100755 Lesson10/03-higher-order/example-1-react-bind.js mode change 100644 => 100755 Lesson10/03-higher-order/example-2-test-parameter-bind.js mode change 100644 => 100755 Lesson10/03-higher-order/example-3-function-prototype-bind-call.js mode change 100644 => 100755 Lesson10/03-higher-order/example-4-array-like-array.js mode change 100644 => 100755 Lesson10/03-higher-order/example-5-sum-curried.js mode change 100644 => 100755 Lesson10/03-higher-order/example-6-partial-sum.js mode change 100644 => 100755 Lesson10/03-higher-order/example-7-generic-curry.js mode change 100644 => 100755 Lesson10/03-higher-order/example-8-revealing-module.js mode change 100644 => 100755 Lesson10/03-higher-order/example-9-function-comp-react.html mode change 100644 => 100755 Lesson10/03-higher-order/example-9-function-comp-react.js mode change 100644 => 100755 Lesson10/03-higher-order/package.json mode change 100644 => 100755 Lesson10/04-composition/example-1-sum-simple-compose.js mode change 100644 => 100755 Lesson10/04-composition/example-2-micro-hello.js mode change 100644 => 100755 Lesson10/04-composition/example-3-request-timer.js mode change 100644 => 100755 Lesson10/04-composition/example-4-api-key-auth.js mode change 100644 => 100755 Lesson10/04-composition/example-5-express-api-key-auth.js mode change 100644 => 100755 Lesson10/04-composition/package.json mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-1-redux-action-creator.js mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-2-immutable-map-filter-reduce.js mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-3-immutable-object-rest-spread.js mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-4-immutable-array-rest-spread.js mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-5-immutable-object-freeze.js mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-6-component-did-mount-request.html mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-6-component-did-mount-request.js mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-7-use-effect-request.html mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-7-use-effect-request.js mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-8-thunk-usage.js mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-9-redux-thunk-request.html mode change 100644 => 100755 Lesson10/05-immutability-side-effects/example-9-redux-thunk-request.js delete mode 100644 Lesson10/05-immutability-side-effects/exercise-1-refactor-action-creators-start.html delete mode 100644 Lesson10/05-immutability-side-effects/exercise-1-refactor-action-creators.html delete mode 100644 Lesson10/05-immutability-side-effects/exercise-2-map-to-props-start.html delete mode 100644 Lesson10/05-immutability-side-effects/exercise-2-map-to-props.html mode change 100644 => 100755 Lesson10/05-immutability-side-effects/package.json mode change 100644 => 100755 Lesson10/05-immutability-side-effects/schema.graphql create mode 100755 Lesson10/activities/activity-1-on-checkout-prop-start.html create mode 100755 Lesson10/activities/activity-1-on-checkout-prop-start.js create mode 100755 Lesson10/activities/activity-1-on-checkout-prop.html create mode 100755 Lesson10/activities/activity-1-on-checkout-prop.js rename Lesson10/{02-pure/exercise-3-items-selector-test-start.js => activities/activity-2-items-selector-test-start.js} (83%) mode change 100644 => 100755 rename Lesson10/{02-pure/exercise-3-items-selector-test.js => activities/activity-2-items-selector-test.js} (100%) mode change 100644 => 100755 create mode 100755 Lesson10/activities/package.json delete mode 100644 Lesson10/activity/README.md delete mode 100644 Lesson10/activity/index.html delete mode 100644 Lesson10/activity/main.js delete mode 100644 Lesson10/activity/package.json create mode 100755 Lesson10/exercises/exercise-1-re-implement-array-methods-start.js create mode 100755 Lesson10/exercises/exercise-1-re-implement-array-methods.js create mode 100755 Lesson10/exercises/exercise-10-refactor-action-creators-start.html rename Lesson10/{05-immutability-side-effects/exercise-1-refactor-action-creators-start.js => exercises/exercise-10-refactor-action-creators-start.js} (98%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-10-refactor-action-creators.html rename Lesson10/{05-immutability-side-effects/exercise-1-refactor-action-creators.js => exercises/exercise-10-refactor-action-creators.js} (100%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-11-map-to-props-start.html rename Lesson10/{05-immutability-side-effects/exercise-2-map-to-props-start.js => exercises/exercise-11-map-to-props-start.js} (98%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-11-map-to-props.html rename Lesson10/{05-immutability-side-effects/exercise-2-map-to-props.js => exercises/exercise-11-map-to-props.js} (100%) mode change 100644 => 100755 rename Lesson10/{05-immutability-side-effects/exercise-3-graphql-micro-start.js => exercises/exercise-12-graphql-micro-start.js} (100%) mode change 100644 => 100755 rename Lesson10/{05-immutability-side-effects/exercise-3-graphql-micro.js => exercises/exercise-12-graphql-micro.js} (100%) mode change 100644 => 100755 rename Lesson10/{01-first-class => exercises}/exercise-2-price-of-basket-start.js (68%) mode change 100644 => 100755 rename Lesson10/{01-first-class => exercises}/exercise-2-price-of-basket.js (72%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-3-add-product-start.html rename Lesson10/{01-first-class/exercise-4-add-product-start.js => exercises/exercise-3-add-product-start.js} (100%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-3-add-product.html rename Lesson10/{01-first-class/exercise-4-add-product.js => exercises/exercise-3-add-product.js} (100%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-4-render-prop-start.html rename Lesson10/{01-first-class/exercise-5-render-prop-start.js => exercises/exercise-4-render-prop-start.js} (98%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-4-render-prop.html rename Lesson10/{01-first-class/exercise-5-render-prop.js => exercises/exercise-4-render-prop.js} (100%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-5-redux-dispatch-start.html rename Lesson10/{02-pure/exercise-1-redux-dispatch-start.js => exercises/exercise-5-redux-dispatch-start.js} (98%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-5-redux-dispatch.html rename Lesson10/{02-pure/exercise-1-redux-dispatch.js => exercises/exercise-5-redux-dispatch.js} (100%) mode change 100644 => 100755 rename Lesson10/{02-pure/exercise-2-reducer-test-start.js => exercises/exercise-6-reducer-test-start.js} (100%) mode change 100644 => 100755 rename Lesson10/{02-pure/exercise-2-reducer-test.js => exercises/exercise-6-reducer-test.js} (100%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-7-items-selector-start.html rename Lesson10/{02-pure/exercise-3-items-selector-start.js => exercises/exercise-7-items-selector-start.js} (98%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/exercise-7-items-selector.html rename Lesson10/{02-pure/exercise-3-items-selector.js => exercises/exercise-7-items-selector.js} (100%) mode change 100644 => 100755 rename Lesson10/{04-composition/exercise-1-2-to-n-compose-start.js => exercises/exercise-8-2-to-n-compose-start.js} (97%) mode change 100644 => 100755 rename Lesson10/{04-composition/exercise-1-2-to-n-compose.js => exercises/exercise-8-2-to-n-compose.js} (97%) mode change 100644 => 100755 rename Lesson10/{04-composition/exercise-2-micro-compose-start.js => exercises/exercise-9-micro-compose-start.js} (96%) mode change 100644 => 100755 rename Lesson10/{04-composition/exercise-2-micro-compose.js => exercises/exercise-9-micro-compose.js} (96%) mode change 100644 => 100755 create mode 100755 Lesson10/exercises/package.json diff --git a/Lesson10/.gitignore b/Lesson10/.gitignore old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/.babelrc b/Lesson10/01-first-class/.babelrc old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-1-functions-as-values.js b/Lesson10/01-first-class/example-1-functions-as-values.js old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-10-this-react-issues.html b/Lesson10/01-first-class/example-10-this-react-issues.html old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-10-this-react-issues.js b/Lesson10/01-first-class/example-10-this-react-issues.js old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-2-inversion-of-control.js b/Lesson10/01-first-class/example-2-inversion-of-control.js old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-3-add-event-listener.js b/Lesson10/01-first-class/example-3-add-event-listener.js old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-4-fs-readdir-callback.js b/Lesson10/01-first-class/example-4-fs-readdir-callback.js old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-5-fetch-then.js b/Lesson10/01-first-class/example-5-fetch-then.js old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-6-fs-readdir-promise.js b/Lesson10/01-first-class/example-6-fs-readdir-promise.js old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-7-array-first-class.js b/Lesson10/01-first-class/example-7-array-first-class.js old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-8-parent-child-react.html b/Lesson10/01-first-class/example-8-parent-child-react.html old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-8-parent-child-react.js b/Lesson10/01-first-class/example-8-parent-child-react.js old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-9-child-parent-react.html b/Lesson10/01-first-class/example-9-child-parent-react.html old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/example-9-child-parent-react.js b/Lesson10/01-first-class/example-9-child-parent-react.js old mode 100644 new mode 100755 diff --git a/Lesson10/01-first-class/exercise-1-re-implement-array-methods-start.js b/Lesson10/01-first-class/exercise-1-re-implement-array-methods-start.js deleted file mode 100644 index cfde125..0000000 --- a/Lesson10/01-first-class/exercise-1-re-implement-array-methods-start.js +++ /dev/null @@ -1,20 +0,0 @@ -function includes(array, needle) { - // Includes implementation -} - -function indexOf(array, needle) { - // IndexOf implementation -} - -function join(array, delimiter) { - // Join implementation -} - -console.assert(includes(['a', 'b', 'c'], 'c')); -console.assert(!includes(['a', 'b', 'c'], 'd')); - -console.assert(indexOf([1, 2, 3], 2) === 1); -console.assert(indexOf([1, 2, 3], 10) === -1); - -console.assert(join(['a', 'b', 'c'], '') === 'abc'); -console.assert(join([1, 2, 3], ',') === '1,2,3'); diff --git a/Lesson10/01-first-class/exercise-1-re-implement-array-methods.js b/Lesson10/01-first-class/exercise-1-re-implement-array-methods.js deleted file mode 100644 index 6186b1c..0000000 --- a/Lesson10/01-first-class/exercise-1-re-implement-array-methods.js +++ /dev/null @@ -1,20 +0,0 @@ -function includes(array, needle) { - return array.some(el => el === needle); -} - -function indexOf(array, needle) { - return array.findIndex(el => el === needle); -} - -function join(array, delimiter) { - return array.reduce((acc, curr) => acc + delimiter + curr); -} - -console.assert(includes(['a', 'b', 'c'], 'c')); -console.assert(!includes(['a', 'b', 'c'], 'd')); - -console.assert(indexOf([1, 2, 3], 2) === 1); -console.assert(indexOf([1, 2, 3], 10) === -1); - -console.assert(join(['a', 'b', 'c'], '') === 'abc'); -console.assert(join([1, 2, 3], ',') === '1,2,3'); diff --git a/Lesson10/01-first-class/exercise-3-on-checkout-prop-start.html b/Lesson10/01-first-class/exercise-3-on-checkout-prop-start.html deleted file mode 100644 index 2620009..0000000 --- a/Lesson10/01-first-class/exercise-3-on-checkout-prop-start.html +++ /dev/null @@ -1,2 +0,0 @@ -
-