├── README.md ├── code-smells ├── bloaters │ ├── data-clumps │ │ └── .gitkeep │ ├── large-class │ │ └── .gitkeep │ ├── long-method │ │ └── java-student_grades-01_base_example │ ├── long-parameter-list │ │ └── .gitkeep │ └── primitive-obsession │ │ └── .gitkeep ├── change-preventers │ ├── divergent-change │ │ └── .gitkeep │ ├── parallel-inheritance-hierarchies │ │ └── .gitkeep │ └── shotgun-surgery │ │ └── .gitkeep ├── couplers │ ├── feature-envy │ │ └── .gitkeep │ ├── inappropriate-intimacy │ │ └── .gitkeep │ ├── incomplete-library-class │ │ └── .gitkeep │ ├── message-chains │ │ └── .gitkeep │ └── middle-man │ │ └── .gitkeep ├── dispensables │ ├── comments │ │ └── .gitkeep │ ├── data-class │ │ └── .gitkeep │ ├── dead-code │ │ └── .gitkeep │ ├── duplicate-code │ │ └── .gitkeep │ ├── lazy-class │ │ └── .gitkeep │ └── speculative-generality │ │ └── .gitkeep └── object-orientation-abusers │ ├── alternative-classes-with-different-interfaces │ └── .gitkeep │ ├── refused-bequest │ └── .gitkeep │ ├── switch-statements │ └── .gitkeep │ └── temporary-field │ └── .gitkeep ├── design-patterns └── creational │ ├── abstract-factory │ └── kotlin-payment_gateways-01_base │ ├── factory-method │ └── ts-stock_counter-03_add_factory_method │ ├── lazy-initialization │ └── kotlin-lazy_browser-01_base │ ├── object-pool │ └── kotlin-browsers_pool-01_base │ ├── parameterized-factory-method │ └── ts-stock_counter_dynamic-02_extract_parameterized_factory_method │ ├── prototype │ ├── php-repeat_purchase-01_base │ └── ts-monsters_game-01_base │ └── singleton │ └── php-feature_flags-01_base ├── examples ├── csharp │ ├── .gitignore │ ├── Makefile │ ├── csharp-booking-01_base │ │ ├── csharp-booking-01_base.sln │ │ ├── src │ │ │ └── Booking │ │ │ │ ├── Booking.cs │ │ │ │ ├── Booking.csproj │ │ │ │ ├── BookingId.cs │ │ │ │ ├── BookingStatus.cs │ │ │ │ ├── BookingType.cs │ │ │ │ ├── CustomerId.cs │ │ │ │ ├── CustomerName.cs │ │ │ │ ├── DiscountType.cs │ │ │ │ ├── DiscountValue.cs │ │ │ │ ├── EmailAddress.cs │ │ │ │ ├── TaxType.cs │ │ │ │ └── TaxValue.cs │ │ └── test │ │ │ └── Booking.Tests │ │ │ ├── Booking.Tests.csproj │ │ │ └── BookingShould.cs │ ├── csharp-booking-02_introduce_parameter_object │ │ ├── csharp-booking-02_introduce_parameter_object.sln │ │ ├── src │ │ │ └── Booking │ │ │ │ ├── Booking.cs │ │ │ │ ├── Booking.csproj │ │ │ │ ├── BookingId.cs │ │ │ │ ├── BookingStatus.cs │ │ │ │ ├── BookingType.cs │ │ │ │ ├── Customer.cs │ │ │ │ ├── CustomerId.cs │ │ │ │ ├── CustomerName.cs │ │ │ │ ├── DateRange.cs │ │ │ │ ├── Discount.cs │ │ │ │ ├── DiscountType.cs │ │ │ │ ├── DiscountValue.cs │ │ │ │ ├── EmailAddress.cs │ │ │ │ ├── Tax.cs │ │ │ │ ├── TaxType.cs │ │ │ │ └── TaxValue.cs │ │ └── test │ │ │ └── Booking.Tests │ │ │ ├── Booking.Tests.csproj │ │ │ └── BookingShould.cs │ ├── csharp-booking-03_preserve_whole_object │ │ ├── csharp-booking-03_preserve_whole_object.sln │ │ ├── src │ │ │ └── Booking │ │ │ │ ├── Booking.cs │ │ │ │ ├── Booking.csproj │ │ │ │ ├── BookingId.cs │ │ │ │ ├── BookingStatus.cs │ │ │ │ ├── BookingType.cs │ │ │ │ ├── Customer.cs │ │ │ │ ├── CustomerId.cs │ │ │ │ ├── CustomerName.cs │ │ │ │ ├── DateRange.cs │ │ │ │ ├── Discount.cs │ │ │ │ ├── DiscountType.cs │ │ │ │ ├── DiscountValue.cs │ │ │ │ ├── EmailAddress.cs │ │ │ │ ├── Tax.cs │ │ │ │ ├── TaxType.cs │ │ │ │ └── TaxValue.cs │ │ └── test │ │ │ └── Booking.Tests │ │ │ ├── Booking.Tests.csproj │ │ │ └── BookingShould.cs │ └── csharp-booking-04_tell_dont_ask │ │ ├── csharp-booking-04_tell_dont_ask.sln │ │ ├── src │ │ └── Booking │ │ │ ├── Booking.cs │ │ │ ├── Booking.csproj │ │ │ ├── BookingId.cs │ │ │ ├── BookingStatus.cs │ │ │ ├── BookingType.cs │ │ │ ├── Customer.cs │ │ │ ├── CustomerId.cs │ │ │ ├── CustomerName.cs │ │ │ ├── DateRange.cs │ │ │ ├── Discount.cs │ │ │ ├── DiscountType.cs │ │ │ ├── DiscountValue.cs │ │ │ ├── EmailAddress.cs │ │ │ ├── Tax.cs │ │ │ ├── TaxType.cs │ │ │ └── TaxValue.cs │ │ └── test │ │ └── Booking.Tests │ │ ├── Booking.Tests.csproj │ │ └── BookingShould.cs ├── java │ ├── java-booking-01_base │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── booking │ │ │ │ │ │ ├── Booking.java │ │ │ │ │ │ ├── BookingId.java │ │ │ │ │ │ ├── BookingStatus.java │ │ │ │ │ │ ├── BookingType.java │ │ │ │ │ │ ├── CustomerId.java │ │ │ │ │ │ ├── CustomerName.java │ │ │ │ │ │ ├── DiscountType.java │ │ │ │ │ │ ├── DiscountValue.java │ │ │ │ │ │ ├── EmailAddress.java │ │ │ │ │ │ ├── TaxType.java │ │ │ │ │ │ └── TaxValue.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── booking │ │ │ │ │ └── BookingShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ ├── java-booking-02_introduce_parameter_object │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── booking │ │ │ │ │ │ ├── Booking.java │ │ │ │ │ │ ├── BookingId.java │ │ │ │ │ │ ├── BookingStatus.java │ │ │ │ │ │ ├── BookingType.java │ │ │ │ │ │ ├── Customer.java │ │ │ │ │ │ ├── CustomerId.java │ │ │ │ │ │ ├── CustomerName.java │ │ │ │ │ │ ├── DateRange.java │ │ │ │ │ │ ├── Discount.java │ │ │ │ │ │ ├── DiscountType.java │ │ │ │ │ │ ├── DiscountValue.java │ │ │ │ │ │ ├── EmailAddress.java │ │ │ │ │ │ ├── Tax.java │ │ │ │ │ │ ├── TaxType.java │ │ │ │ │ │ └── TaxValue.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── booking │ │ │ │ │ └── BookingShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ ├── java-booking-03_preserve_whole_object │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── booking │ │ │ │ │ │ ├── Booking.java │ │ │ │ │ │ ├── BookingId.java │ │ │ │ │ │ ├── BookingStatus.java │ │ │ │ │ │ ├── BookingType.java │ │ │ │ │ │ ├── Customer.java │ │ │ │ │ │ ├── CustomerId.java │ │ │ │ │ │ ├── CustomerName.java │ │ │ │ │ │ ├── DateRange.java │ │ │ │ │ │ ├── Discount.java │ │ │ │ │ │ ├── DiscountType.java │ │ │ │ │ │ ├── DiscountValue.java │ │ │ │ │ │ ├── EmailAddress.java │ │ │ │ │ │ ├── Tax.java │ │ │ │ │ │ ├── TaxType.java │ │ │ │ │ │ └── TaxValue.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── booking │ │ │ │ │ └── BookingShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ ├── java-booking-04_tell_dont_ask │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── booking │ │ │ │ │ │ ├── Booking.java │ │ │ │ │ │ ├── BookingId.java │ │ │ │ │ │ ├── BookingStatus.java │ │ │ │ │ │ ├── BookingType.java │ │ │ │ │ │ ├── Customer.java │ │ │ │ │ │ ├── CustomerId.java │ │ │ │ │ │ ├── CustomerName.java │ │ │ │ │ │ ├── DateRange.java │ │ │ │ │ │ ├── Discount.java │ │ │ │ │ │ ├── DiscountType.java │ │ │ │ │ │ ├── DiscountValue.java │ │ │ │ │ │ ├── EmailAddress.java │ │ │ │ │ │ ├── Tax.java │ │ │ │ │ │ ├── TaxType.java │ │ │ │ │ │ └── TaxValue.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── booking │ │ │ │ │ └── BookingShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ ├── java-chat_rollout-01_base │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── chat_rollout │ │ │ │ │ │ └── ChatController.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── chat_rollout │ │ │ │ │ └── ChatControllerShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ ├── java-chat_rollout-02_parameter │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── chat_rollout │ │ │ │ │ │ └── ChatController.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── chat_rollout │ │ │ │ │ └── ChatControllerShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ ├── java-chat_rollout-03_method_call │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── chat_rollout │ │ │ │ │ │ ├── ChatController.java │ │ │ │ │ │ ├── ChatRolloutPercentageRepository.java │ │ │ │ │ │ └── InMemoryChatRolloutPercentageRepository.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── chat_rollout │ │ │ │ │ ├── AlwaysNewChatChatRolloutPercentageRepository.java │ │ │ │ │ ├── AlwaysOldChatChatRolloutPercentageRepository.java │ │ │ │ │ └── ChatControllerShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ ├── java-student_grades-01_base │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── student_grades │ │ │ │ │ │ ├── Pair.java │ │ │ │ │ │ └── StudentGradeCalculator.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── student_grades │ │ │ │ │ └── StudentGradeCalculatorShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ ├── java-student_grades-02_extract_method │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── student_grades │ │ │ │ │ │ ├── Pair.java │ │ │ │ │ │ └── StudentGradeCalculator.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── student_grades │ │ │ │ │ └── StudentGradeCalculatorShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ ├── java-student_grades-03_if_guard_clause │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── student_grades │ │ │ │ │ │ ├── GradesWeightBelowMinException.java │ │ │ │ │ │ ├── GradesWeightOverMaxException.java │ │ │ │ │ │ ├── Pair.java │ │ │ │ │ │ └── StudentGradeCalculator.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── student_grades │ │ │ │ │ └── StudentGradeCalculatorShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ ├── java-student_grades-04_replace_control_flag │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── student_grades │ │ │ │ │ │ ├── GradesWeightBelowMinException.java │ │ │ │ │ │ ├── GradesWeightOverMaxException.java │ │ │ │ │ │ ├── Pair.java │ │ │ │ │ │ └── StudentGradeCalculator.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── student_grades │ │ │ │ │ └── StudentGradeCalculatorShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ └── java-student_grades-05_simplify_conditionals │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── build.gradle │ │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ ├── main │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── student_grades │ │ │ │ │ ├── GradesWeightBelowMinException.java │ │ │ │ │ ├── GradesWeightOverMaxException.java │ │ │ │ │ ├── Pair.java │ │ │ │ │ └── StudentGradeCalculator.java │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── test │ │ │ ├── java │ │ │ └── tv │ │ │ │ └── codely │ │ │ │ └── student_grades │ │ │ │ └── StudentGradeCalculatorShould.java │ │ │ └── resources │ │ │ └── log4j2.properties │ │ └── var │ │ └── log │ │ └── .gitkeep ├── js │ ├── js-bonus-01_base │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ └── DailyBonusPointsCalculator.js │ │ └── tests │ │ │ └── DailyBonusPointsCalculator.test.js │ ├── js-bonus-02_explicit_method │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ └── DailyBonusPointsCalculator.js │ │ └── tests │ │ │ └── DailyBonusPointsCalculator.test.js │ ├── js-bonus-03_extract_class │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── NormalUserDailyBonusPointsCalculator.js │ │ │ └── PremiumUserDailyBonusPointsCalculator.js │ │ └── tests │ │ │ ├── NormalUserDailyBonusPointsCalculator.test.js │ │ │ └── PremiumUserDailyBonusPointsCalculator.test.js │ ├── js-data_repository-01_base │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ └── UserSearcher.js │ │ └── tests │ │ │ └── UserSearcher.test.js │ ├── js-data_repository-02_repository │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── MySqlUserRepository.js │ │ │ └── UsersSearcher.js │ │ └── tests │ │ │ ├── FakeUserRepository.js │ │ │ └── UsersSearcher.test.js │ ├── js-data_repository-03_container │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Container.js │ │ │ ├── MySqlUserRepository.js │ │ │ └── UsersSearcher.js │ │ └── tests │ │ │ ├── FakeUserRepository.js │ │ │ └── UsersSearcher.test.js │ ├── js-data_repository-04_explicit_arguments │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Container.js │ │ │ ├── MySqlUserRepository.js │ │ │ └── UsersSearcher.js │ │ └── tests │ │ │ ├── FakeUserRepository.js │ │ │ └── UsersSearcher.test.js │ ├── js-data_repository-05_parameter_object │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Container.js │ │ │ ├── MySqlConfig.js │ │ │ ├── MySqlUserRepository.js │ │ │ └── UsersSearcher.js │ │ └── tests │ │ │ ├── FakeUserRepository.js │ │ │ └── UsersSearcher.test.js │ ├── js-data_repository-06_db_connection_class │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Container.js │ │ │ ├── MySqlConfig.js │ │ │ ├── MySqlUserRepository.js │ │ │ └── UsersSearcher.js │ │ └── tests │ │ │ ├── FakeUserRepository.js │ │ │ └── UsersSearcher.test.js │ ├── js-http_api-01_base │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Course.js │ │ │ ├── CourseCreator.js │ │ │ └── CoursesController.js │ │ └── tests │ │ │ ├── CoursesController.test.js │ │ │ └── MockCourseRepository.js │ ├── js-http_api-02_arguments │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Course.js │ │ │ ├── CourseCreator.js │ │ │ └── CoursesController.js │ │ └── tests │ │ │ ├── CoursesController.test.js │ │ │ └── MockCourseRepository.js │ ├── js-http_api-03_introduce_parameter_object │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Course.js │ │ │ ├── CourseCreator.js │ │ │ ├── CoursesController.js │ │ │ └── CreateCourseRequest.js │ │ └── tests │ │ │ ├── CoursesController.test.js │ │ │ └── MockCourseRepository.js │ ├── js-student_grades-01_base │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ └── StudentGradeCalculator.js │ │ └── tests │ │ │ └── StudentGradeCalculator.test.js │ ├── js-student_grades-02_extract_subclass │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── StudentGrade2019Calculator.js │ │ │ ├── StudentGrade2020Calculator.js │ │ │ └── StudentGradeCalculator.js │ │ └── tests │ │ │ └── StudentGradeCalculator.test.js │ └── js-student_grades-03_extract_class │ │ ├── .gitignore │ │ ├── babel.config.json │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ ├── StudentGradeCalculator.js │ │ └── Teachers.js │ │ └── tests │ │ └── StudentGradeCalculator.test.js ├── kotlin │ ├── kotlin-browsers_pool-01_base │ │ ├── .github │ │ │ └── workflows │ │ │ │ └── main.yml │ │ ├── .gitignore │ │ ├── README.md │ │ ├── build.gradle.kts │ │ ├── geckodriver │ │ ├── gradle.properties │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── settings.gradle.kts │ │ └── src │ │ │ ├── main │ │ │ └── kotlin │ │ │ │ └── com │ │ │ │ └── codely │ │ │ │ └── browser_pool │ │ │ │ ├── 01-WithoutPool.kt │ │ │ │ ├── 02-WithoutPool.kt │ │ │ │ ├── 03-WithoutPool.kt │ │ │ │ ├── 04-WithPool.kt │ │ │ │ ├── 05-WithPool.kt │ │ │ │ ├── Browser.kt │ │ │ │ └── BrowserPool.kt │ │ │ └── test │ │ │ └── kotlin │ │ │ └── com │ │ │ └── codely │ │ │ └── browser_pool │ │ │ ├── BrowserTest.kt │ │ │ ├── HttpCat200Test.kt │ │ │ ├── HttpCat201Test.kt │ │ │ ├── HttpCat202Test.kt │ │ │ ├── HttpCat203Test.kt │ │ │ ├── HttpCat204Test.kt │ │ │ ├── HttpCat301Test.kt │ │ │ ├── HttpCat302Test.kt │ │ │ └── HttpCat303Test.kt │ ├── kotlin-lazy_browser-01_base │ │ ├── .github │ │ │ └── workflows │ │ │ │ └── main.yml │ │ ├── .gitignore │ │ ├── README.md │ │ ├── build.gradle.kts │ │ ├── geckodriver │ │ ├── gradle.properties │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── settings.gradle.kts │ │ └── src │ │ │ ├── main │ │ │ └── kotlin │ │ │ │ └── com │ │ │ │ └── codely │ │ │ │ └── lazy_initialization │ │ │ │ ├── 01-WithoutLazyInitialization.kt │ │ │ │ ├── 02-WithLazyInitialization.kt │ │ │ │ ├── 03-WithProxyLazyInitialization.kt │ │ │ │ ├── Browser.kt │ │ │ │ ├── BrowserPool.kt │ │ │ │ ├── FirefoxBrowser.kt │ │ │ │ ├── LazyFirefoxBrowser.kt │ │ │ │ └── LazyFirefoxBrowserProxy.kt │ │ │ └── test │ │ │ └── kotlin │ │ │ └── com │ │ │ └── codely │ │ │ └── lazy_initialization │ │ │ ├── BrowserTest.kt │ │ │ ├── HttpCat200Test.kt │ │ │ ├── HttpCat201Test.kt │ │ │ ├── HttpCat202Test.kt │ │ │ ├── HttpCat203Test.kt │ │ │ ├── HttpCat204Test.kt │ │ │ ├── HttpCat301Test.kt │ │ │ ├── HttpCat302Test.kt │ │ │ └── HttpCat303Test.kt │ ├── kotlin-payment_gateways-01_base │ │ ├── .github │ │ │ └── workflows │ │ │ │ └── main.yml │ │ ├── .gitignore │ │ ├── README.md │ │ ├── build.gradle.kts │ │ ├── gradle.properties │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── settings.gradle.kts │ │ └── src │ │ │ ├── main │ │ │ └── kotlin │ │ │ │ └── com │ │ │ │ └── codely │ │ │ │ └── payment │ │ │ │ ├── Card.kt │ │ │ │ ├── CardData.kt │ │ │ │ ├── Customer.kt │ │ │ │ ├── CustomerData.kt │ │ │ │ ├── MakePayment.kt │ │ │ │ ├── Payment.kt │ │ │ │ ├── PaymentGateway.kt │ │ │ │ ├── PaymentRequest.kt │ │ │ │ ├── adyen │ │ │ │ ├── AdyenClient.kt │ │ │ │ ├── CardAdyen.kt │ │ │ │ ├── CustomerAdyen.kt │ │ │ │ ├── PaymentAdyen.kt │ │ │ │ └── PaymentGatewayAdyen.kt │ │ │ │ └── ogone │ │ │ │ ├── CardOgone.kt │ │ │ │ ├── CustomerOgone.kt │ │ │ │ ├── OgoneClient.kt │ │ │ │ ├── PaymentGatewayOgone.kt │ │ │ │ └── PaymentOgone.kt │ │ │ └── test │ │ │ └── kotlin │ │ │ └── com │ │ │ └── codely │ │ │ └── payment │ │ │ └── MakePaymentTest.kt │ └── kotlin-payment_gateways-02_new-payment-gateway │ │ ├── .github │ │ └── workflows │ │ │ └── main.yml │ │ ├── .gitignore │ │ ├── README.md │ │ ├── build.gradle.kts │ │ ├── gradle.properties │ │ ├── gradle │ │ └── wrapper │ │ │ ├── gradle-wrapper.jar │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── settings.gradle.kts │ │ └── src │ │ ├── main │ │ └── kotlin │ │ │ └── com │ │ │ └── codely │ │ │ └── payment │ │ │ ├── Card.kt │ │ │ ├── CardData.kt │ │ │ ├── Customer.kt │ │ │ ├── CustomerData.kt │ │ │ ├── MakePayment.kt │ │ │ ├── Order.kt │ │ │ ├── Payment.kt │ │ │ ├── PaymentGateway.kt │ │ │ ├── PaymentRequest.kt │ │ │ ├── adyen │ │ │ ├── AdyenClient.kt │ │ │ ├── CardAdyen.kt │ │ │ ├── CustomerAdyen.kt │ │ │ ├── PaymentAdyen.kt │ │ │ └── PaymentGatewayAdyen.kt │ │ │ ├── ogone │ │ │ ├── CardOgone.kt │ │ │ ├── CustomerOgone.kt │ │ │ ├── OgoneClient.kt │ │ │ ├── PaymentGatewayOgone.kt │ │ │ └── PaymentOgone.kt │ │ │ └── stripe │ │ │ ├── CardStripe.kt │ │ │ ├── CustomerStripe.kt │ │ │ ├── OrderStripe.kt │ │ │ ├── PaymentGatewayStripe.kt │ │ │ ├── PaymentStripe.kt │ │ │ └── StripeClient.kt │ │ └── test │ │ └── kotlin │ │ └── com │ │ └── codely │ │ └── payment │ │ └── MakePaymentTest.kt ├── php │ ├── php-divergent_change-01_base │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ ├── Controller │ │ │ │ └── CourseStepsGetController.php │ │ │ └── Platform.php │ │ └── tests │ │ │ └── Controller │ │ │ └── CourseStepsGetTest.php │ ├── php-feature_flags-01_base │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ ├── Application │ │ │ │ └── Subscribe.php │ │ │ ├── Debug.php │ │ │ ├── Email │ │ │ │ ├── EmailNotifier.php │ │ │ │ └── subscription-email.php │ │ │ ├── FeatureFlags.php │ │ │ ├── Flags.php │ │ │ ├── Persistence │ │ │ │ └── MySqlConnection.php │ │ │ ├── SubscribeController.php │ │ │ └── index.php │ │ └── tests │ │ │ └── SubscribeTest.php │ ├── php-repeat_purchase-01_base │ │ ├── .editorconfig │ │ ├── .github │ │ │ ├── FUNDING.yml │ │ │ └── workflows │ │ │ │ └── ci.yml │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ ├── CartTemplate │ │ │ │ ├── Cart.php │ │ │ │ ├── CartId.php │ │ │ │ ├── CartLine.php │ │ │ │ ├── CartLines.php │ │ │ │ ├── CartRepository.php │ │ │ │ ├── CartTemplate.php │ │ │ │ ├── CreateCartFromTemplate.php │ │ │ │ ├── Currency.php │ │ │ │ ├── DummyCartRepository.php │ │ │ │ ├── Price.php │ │ │ │ ├── Product.php │ │ │ │ ├── ProductId.php │ │ │ │ ├── ProductNotInCart.php │ │ │ │ ├── Units.php │ │ │ │ └── index.php │ │ │ └── RepeatPurchase │ │ │ │ ├── Cart.php │ │ │ │ ├── CartId.php │ │ │ │ ├── CartLine.php │ │ │ │ ├── CartLines.php │ │ │ │ ├── CartRepository.php │ │ │ │ ├── Currency.php │ │ │ │ ├── DummyCartRepository.php │ │ │ │ ├── Price.php │ │ │ │ ├── Product.php │ │ │ │ ├── ProductId.php │ │ │ │ ├── ProductNotInCart.php │ │ │ │ ├── RepeatPurchase.php │ │ │ │ ├── RepeatPurchase2.php │ │ │ │ ├── Repeatable.php │ │ │ │ ├── Units.php │ │ │ │ └── index.php │ │ └── tests │ │ │ └── DummyTest.php │ ├── php-step_strategy-01_base │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ └── Step.php │ │ └── tests │ │ │ └── StepTest.php │ ├── php-step_strategy-02_replace_type_code_with_strategy │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ ├── ExerciseStepType.php │ │ │ ├── QuizStepType.php │ │ │ ├── Step.php │ │ │ ├── StepType.php │ │ │ └── VideoStepType.php │ │ └── tests │ │ │ └── StepTest.php │ ├── php-user_email-01_base │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ ├── Controller │ │ │ │ ├── NewsletterController.php │ │ │ │ └── UserController.php │ │ │ └── Model │ │ │ │ ├── Newsletter.php │ │ │ │ └── User.php │ │ └── tests │ │ │ └── Controller │ │ │ ├── NewsletterControllerTest.php │ │ │ └── UserControllerTest.php │ ├── php-user_email-02_extract_method │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ ├── Controller │ │ │ │ ├── NewsletterController.php │ │ │ │ └── UserController.php │ │ │ └── Model │ │ │ │ ├── Newsletter.php │ │ │ │ └── User.php │ │ └── tests │ │ │ └── Controller │ │ │ ├── NewsletterControllerTest.php │ │ │ └── UserControllerTest.php │ ├── php-user_email-03_move_method │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ ├── Controller │ │ │ │ ├── NewsletterController.php │ │ │ │ └── UserController.php │ │ │ └── Model │ │ │ │ ├── Newsletter.php │ │ │ │ └── User.php │ │ └── tests │ │ │ └── Controller │ │ │ ├── NewsletterControllerTest.php │ │ │ └── UserControllerTest.php │ ├── php-user_email-04_email_address_vo │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ ├── Controller │ │ │ │ ├── NewsletterController.php │ │ │ │ └── UserController.php │ │ │ └── Model │ │ │ │ ├── EmailAddress.php │ │ │ │ ├── Newsletter.php │ │ │ │ └── User.php │ │ └── tests │ │ │ └── Controller │ │ │ ├── NewsletterControllerTest.php │ │ │ └── UserControllerTest.php │ ├── php-user_email-05_user_email_vo │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ ├── Controller │ │ │ │ ├── NewsletterController.php │ │ │ │ └── UserController.php │ │ │ └── Model │ │ │ │ ├── EmailAddress.php │ │ │ │ ├── Newsletter.php │ │ │ │ ├── User.php │ │ │ │ └── UserEmailAddress.php │ │ └── tests │ │ │ └── Controller │ │ │ ├── NewsletterControllerTest.php │ │ │ └── UserControllerTest.php │ ├── php-user_modelling-01_base │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ │ └── User.php │ │ └── tests │ │ │ └── UserTest.php │ └── php-user_modelling-02_value_objects │ │ ├── .editorconfig │ │ ├── .gitignore │ │ ├── .scrutinizer.yml │ │ ├── .semver │ │ ├── .travis.yml │ │ ├── LICENSE │ │ ├── README.md │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── phpunit.xml │ │ ├── src │ │ ├── Age.php │ │ ├── Locale.php │ │ └── User.php │ │ └── tests │ │ └── UserTest.php ├── ts │ ├── ts-monsters_game-01_base │ │ ├── .eslintrc.js │ │ ├── .github │ │ │ └── workflows │ │ │ │ ├── lint.yml │ │ │ │ └── test.yml │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── babel.config.json │ │ ├── cypress.json │ │ ├── cypress │ │ │ ├── fixtures │ │ │ │ └── example.json │ │ │ ├── integration │ │ │ │ └── home.spec.ts │ │ │ ├── plugins │ │ │ │ └── index.js │ │ │ ├── support │ │ │ │ ├── commands.js │ │ │ │ └── index.js │ │ │ └── tsconfig.json │ │ ├── index.html │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Ghost.ts │ │ │ ├── Wolf.ts │ │ │ ├── assets │ │ │ │ ├── css │ │ │ │ │ ├── game.css │ │ │ │ │ └── normalize.css │ │ │ │ └── images │ │ │ │ │ └── logo-codelytv-light.png │ │ │ ├── enemiesByLevel.ts │ │ │ ├── framework │ │ │ │ ├── EnemiesByLevel.ts │ │ │ │ ├── Enemy.ts │ │ │ │ ├── EnemySpawner.ts │ │ │ │ ├── GameLevel.ts │ │ │ │ ├── MonstersGame.ts │ │ │ │ ├── cloneEnemy.ts │ │ │ │ └── renderEnemy.ts │ │ │ └── index.ts │ │ ├── tests │ │ │ └── .eslintrc │ │ ├── tsconfig.json │ │ ├── webpack.common.js │ │ ├── webpack.dev.js │ │ ├── webpack.prod.js │ │ └── yarn.lock │ ├── ts-stock_counter-01_base │ │ ├── .gitignore │ │ ├── dist │ │ │ └── data │ │ │ │ ├── warehouse-stock.csv │ │ │ │ └── warehouse-stock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Feed.ts │ │ │ ├── FeedStockCounterCsv.ts │ │ │ ├── FeedStockCounterJson.ts │ │ │ ├── Flower.ts │ │ │ ├── getWarehoseProductFeed.ts │ │ │ └── index.ts │ │ ├── tsconfig.json │ │ └── yarn.lock │ ├── ts-stock_counter-02_extract_base_class │ │ ├── .gitignore │ │ ├── dist │ │ │ └── data │ │ │ │ ├── warehouse-stock.csv │ │ │ │ └── warehouse-stock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Feed.ts │ │ │ ├── FeedStockCounter.ts │ │ │ ├── FeedStockCounterCsv.ts │ │ │ ├── FeedStockCounterJson.ts │ │ │ ├── Flower.ts │ │ │ ├── getWarehoseProductFeed.ts │ │ │ └── index.ts │ │ ├── tsconfig.json │ │ └── yarn.lock │ ├── ts-stock_counter-03_add_factory_method │ │ ├── .gitignore │ │ ├── dist │ │ │ └── data │ │ │ │ ├── warehouse-stock.csv │ │ │ │ └── warehouse-stock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Feed.ts │ │ │ ├── FeedParser.ts │ │ │ ├── FeedParserCsv.ts │ │ │ ├── FeedParserJson.ts │ │ │ ├── FeedStockCounter.ts │ │ │ ├── FeedStockCounterCsv.ts │ │ │ ├── FeedStockCounterJson.ts │ │ │ ├── Flower.ts │ │ │ ├── getWarehoseProductFeed.ts │ │ │ └── index.ts │ │ ├── tsconfig.json │ │ └── yarn.lock │ ├── ts-stock_counter-04_replace_inheritance_with_composition │ │ ├── .gitignore │ │ ├── dist │ │ │ └── data │ │ │ │ ├── warehouse-stock.csv │ │ │ │ └── warehouse-stock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Feed.ts │ │ │ ├── FeedParser.ts │ │ │ ├── FeedParserCsv.ts │ │ │ ├── FeedParserJson.ts │ │ │ ├── FeedStockCounter.ts │ │ │ ├── FeedStockCounterCsv.ts │ │ │ ├── FeedStockCounterJson.ts │ │ │ ├── Flower.ts │ │ │ ├── getWarehoseProductFeed.ts │ │ │ └── index.ts │ │ ├── tsconfig.json │ │ └── yarn.lock │ ├── ts-stock_counter_dynamic-01_base │ │ ├── .gitignore │ │ ├── dist │ │ │ └── data │ │ │ │ ├── warehouse-stock.csv │ │ │ │ └── warehouse-stock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Feed.ts │ │ │ ├── FeedParser.ts │ │ │ ├── FeedParserCsv.ts │ │ │ ├── FeedParserJson.ts │ │ │ ├── FeedStockCounter.ts │ │ │ ├── Flower.ts │ │ │ ├── getWarehoseProductFeed.ts │ │ │ └── index.ts │ │ ├── tsconfig.json │ │ └── yarn.lock │ ├── ts-stock_counter_dynamic-02_extract_parameterized_factory_method │ │ ├── .gitignore │ │ ├── dist │ │ │ └── data │ │ │ │ ├── warehouse-stock.csv │ │ │ │ └── warehouse-stock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Feed.ts │ │ │ ├── FeedParser.ts │ │ │ ├── FeedParserCsv.ts │ │ │ ├── FeedParserFromContentType.ts │ │ │ ├── FeedParserJson.ts │ │ │ ├── FeedStockCounter.ts │ │ │ ├── Flower.ts │ │ │ ├── getWarehoseProductFeed.ts │ │ │ └── index.ts │ │ ├── tsconfig.json │ │ └── yarn.lock │ └── ts-stock_counter_dynamic-03_exhaustive_type_check │ │ ├── .gitignore │ │ ├── dist │ │ └── data │ │ │ ├── warehouse-stock.csv │ │ │ └── warehouse-stock.json │ │ ├── package.json │ │ ├── src │ │ ├── ContentType.ts │ │ ├── Feed.ts │ │ ├── FeedParser.ts │ │ ├── FeedParserCsv.ts │ │ ├── FeedParserFromContentType.ts │ │ ├── FeedParserJson.ts │ │ ├── FeedStockCounter.ts │ │ ├── Flower.ts │ │ ├── getWarehoseProductFeed.ts │ │ └── index.ts │ │ ├── tsconfig.json │ │ └── yarn.lock └── typescript │ └── ts-stock_management-01_base │ ├── .gitignore │ ├── README.md │ ├── babel.config.js │ ├── package.json │ ├── src │ ├── AggregateRoot.ts │ ├── FlowerStock.ts │ ├── LowStock.ts │ ├── NotEnoughStock.ts │ └── OutOfStock.ts │ ├── tests │ └── FlowerStock.test.ts │ └── yarn.lock ├── exercises ├── graduated_tiered_prices │ ├── README.md │ ├── base │ │ └── typescript │ │ │ ├── .eslintrc.js │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── babel.config.json │ │ │ ├── cypress.json │ │ │ ├── cypress │ │ │ ├── fixtures │ │ │ │ └── example.json │ │ │ ├── integration │ │ │ │ └── home.spec.ts │ │ │ ├── plugins │ │ │ │ └── index.js │ │ │ ├── support │ │ │ │ ├── commands.js │ │ │ │ └── index.js │ │ │ └── tsconfig.json │ │ │ ├── index.html │ │ │ ├── jest.config.js │ │ │ ├── package-lock.json │ │ │ ├── package.json │ │ │ ├── src │ │ │ └── index.ts │ │ │ ├── tests │ │ │ ├── .eslintrc │ │ │ └── GraduatedTieredPricing.test.ts │ │ │ ├── tsconfig.json │ │ │ ├── webpack.common.js │ │ │ ├── webpack.dev.js │ │ │ └── webpack.prod.js │ └── solutions │ │ ├── adrianliz │ │ ├── .eslintrc.js │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── babel.config.json │ │ ├── cypress.json │ │ ├── cypress │ │ │ ├── fixtures │ │ │ │ └── example.json │ │ │ ├── integration │ │ │ │ └── home.spec.ts │ │ │ ├── plugins │ │ │ │ └── index.js │ │ │ ├── support │ │ │ │ ├── commands.js │ │ │ │ └── index.js │ │ │ └── tsconfig.json │ │ ├── index.html │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── GraduatedTier.ts │ │ │ ├── GraduatedTieredPricing.ts │ │ │ ├── InvalidTier.ts │ │ │ ├── NumberOfSubscriptionsNotAllowed.ts │ │ │ ├── Subscriptions.ts │ │ │ └── index.ts │ │ ├── tests │ │ │ ├── .eslintrc │ │ │ ├── GraduatedTiered.test.ts │ │ │ └── GraduatedTieredPricing.test.ts │ │ ├── tsconfig.json │ │ ├── webpack.common.js │ │ ├── webpack.dev.js │ │ └── webpack.prod.js │ │ └── codely_triangulation-with-tpp │ │ ├── .eslintrc.js │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── babel.config.json │ │ ├── cypress.json │ │ ├── cypress │ │ ├── fixtures │ │ │ └── example.json │ │ ├── integration │ │ │ └── home.spec.ts │ │ ├── plugins │ │ │ └── index.js │ │ ├── support │ │ │ ├── commands.js │ │ │ └── index.js │ │ └── tsconfig.json │ │ ├── index.html │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ ├── GraduatedTieredPricing.ts │ │ ├── SubscriptionsBeingPurchased.ts │ │ ├── Tier.ts │ │ └── index.ts │ │ ├── tests │ │ ├── .eslintrc │ │ └── GraduatedTieredPricing.test.ts │ │ ├── tsconfig.json │ │ ├── webpack.common.js │ │ ├── webpack.dev.js │ │ └── webpack.prod.js ├── legacy_create_video │ ├── README.md │ ├── base │ │ └── php-symfony │ │ │ ├── .gitignore │ │ │ ├── .travis.yml │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── app │ │ │ ├── .htaccess │ │ │ ├── AppCache.php │ │ │ ├── AppKernel.php │ │ │ ├── Resources │ │ │ │ └── views │ │ │ │ │ └── base.html.twig │ │ │ ├── SymfonyRequirements.php │ │ │ ├── autoload.php │ │ │ ├── bootstrap.php.cache │ │ │ ├── check.php │ │ │ ├── config │ │ │ │ ├── config.yml │ │ │ │ ├── config_dev.yml │ │ │ │ ├── config_prod.yml │ │ │ │ ├── config_test.yml │ │ │ │ ├── parameters.yml.dist │ │ │ │ ├── routing.yml │ │ │ │ ├── routing_dev.yml │ │ │ │ └── security.yml │ │ │ ├── console │ │ │ └── phpunit.xml.dist │ │ │ ├── composer.json │ │ │ ├── composer.lock │ │ │ ├── src │ │ │ ├── .htaccess │ │ │ └── AppBundle │ │ │ │ ├── AppBundle.php │ │ │ │ ├── Controller │ │ │ │ ├── BaseController.php │ │ │ │ ├── CourseController.php │ │ │ │ ├── NoteController.php │ │ │ │ └── VideoController.php │ │ │ │ ├── DependencyInjection │ │ │ │ └── AppExtension.php │ │ │ │ ├── EventListener │ │ │ │ └── ControllerListener.php │ │ │ │ ├── Form │ │ │ │ └── NoteType.php │ │ │ │ ├── Model │ │ │ │ ├── Course.php │ │ │ │ ├── Event.php │ │ │ │ ├── Note.php │ │ │ │ └── NoteCollection.php │ │ │ │ ├── NoteManager.php │ │ │ │ ├── Resources │ │ │ │ ├── config │ │ │ │ │ ├── serializer │ │ │ │ │ │ ├── Model.Event.yml │ │ │ │ │ │ ├── Model.Note.yml │ │ │ │ │ │ └── Model.NoteCollection.yml │ │ │ │ │ ├── services.xml │ │ │ │ │ └── validation.yml │ │ │ │ ├── public │ │ │ │ │ ├── css │ │ │ │ │ │ └── demo.css │ │ │ │ │ └── images │ │ │ │ │ │ ├── blue-arrow.png │ │ │ │ │ │ ├── field-background.gif │ │ │ │ │ │ ├── logo.gif │ │ │ │ │ │ ├── search.png │ │ │ │ │ │ ├── welcome-configure.gif │ │ │ │ │ │ ├── welcome-demo.gif │ │ │ │ │ │ └── welcome-quick-tour.gif │ │ │ │ ├── translations │ │ │ │ │ ├── AppBundle.de.yml │ │ │ │ │ ├── AppBundle.en.yml │ │ │ │ │ └── AppBundle.es.yml │ │ │ │ └── views │ │ │ │ │ ├── Note │ │ │ │ │ ├── editNote.html.twig │ │ │ │ │ ├── editNotes.html.twig │ │ │ │ │ ├── getNote.html.twig │ │ │ │ │ ├── getNotes.html.twig │ │ │ │ │ └── newNote.html.twig │ │ │ │ │ └── layout.html.twig │ │ │ │ ├── Tests │ │ │ │ ├── Controller │ │ │ │ │ ├── CourseControllerTest.php │ │ │ │ │ └── NoteControllerTest.php │ │ │ │ └── Model │ │ │ │ │ ├── CourseTest.php │ │ │ │ │ └── EventTest.php │ │ │ │ ├── Twig │ │ │ │ └── Extension │ │ │ │ │ └── DemoExtension.php │ │ │ │ └── Util │ │ │ │ └── Cache.php │ │ │ └── web │ │ │ ├── .htaccess │ │ │ ├── app.php │ │ │ ├── app_dev.php │ │ │ ├── apple-touch-icon.png │ │ │ ├── config.php │ │ │ ├── favicon.ico │ │ │ └── robots.txt │ └── solutions │ │ └── codely_php-symfony_golden-master │ │ ├── .gitignore │ │ ├── .travis.yml │ │ ├── Dockerfile │ │ ├── LICENSE │ │ ├── README.md │ │ ├── app │ │ ├── .htaccess │ │ ├── AppCache.php │ │ ├── AppKernel.php │ │ ├── Resources │ │ │ └── views │ │ │ │ └── base.html.twig │ │ ├── SymfonyRequirements.php │ │ ├── autoload.php │ │ ├── bootstrap.php.cache │ │ ├── check.php │ │ ├── config │ │ │ ├── config.yml │ │ │ ├── config_dev.yml │ │ │ ├── config_prod.yml │ │ │ ├── config_test.yml │ │ │ ├── parameters.yml.dist │ │ │ ├── routing.yml │ │ │ ├── routing_dev.yml │ │ │ └── security.yml │ │ ├── console │ │ └── phpunit.xml.dist │ │ ├── composer.json │ │ ├── composer.lock │ │ ├── docker-compose.yml │ │ ├── src │ │ ├── .htaccess │ │ └── AppBundle │ │ │ ├── AppBundle.php │ │ │ ├── Application │ │ │ └── VideoCreator.php │ │ │ ├── Controller │ │ │ ├── BaseController.php │ │ │ ├── CourseController.php │ │ │ ├── NoteController.php │ │ │ └── VideoController.php │ │ │ ├── DependencyInjection │ │ │ └── AppExtension.php │ │ │ ├── EventListener │ │ │ └── ControllerListener.php │ │ │ ├── Form │ │ │ └── NoteType.php │ │ │ ├── Model │ │ │ ├── Course.php │ │ │ ├── Event.php │ │ │ ├── Note.php │ │ │ └── NoteCollection.php │ │ │ ├── NoteManager.php │ │ │ ├── Repository │ │ │ └── MySqlVideoRepository.php │ │ │ ├── Resources │ │ │ ├── config │ │ │ │ ├── serializer │ │ │ │ │ ├── Model.Event.yml │ │ │ │ │ ├── Model.Note.yml │ │ │ │ │ └── Model.NoteCollection.yml │ │ │ │ ├── services.xml │ │ │ │ └── validation.yml │ │ │ ├── public │ │ │ │ ├── css │ │ │ │ │ └── demo.css │ │ │ │ └── images │ │ │ │ │ ├── blue-arrow.png │ │ │ │ │ ├── field-background.gif │ │ │ │ │ ├── logo.gif │ │ │ │ │ ├── search.png │ │ │ │ │ ├── welcome-configure.gif │ │ │ │ │ ├── welcome-demo.gif │ │ │ │ │ └── welcome-quick-tour.gif │ │ │ ├── translations │ │ │ │ ├── AppBundle.de.yml │ │ │ │ ├── AppBundle.en.yml │ │ │ │ └── AppBundle.es.yml │ │ │ └── views │ │ │ │ ├── Note │ │ │ │ ├── editNote.html.twig │ │ │ │ ├── editNotes.html.twig │ │ │ │ ├── getNote.html.twig │ │ │ │ ├── getNotes.html.twig │ │ │ │ └── newNote.html.twig │ │ │ │ └── layout.html.twig │ │ │ ├── Tests │ │ │ ├── Application │ │ │ │ └── VideoCreatorTest.php │ │ │ ├── Controller │ │ │ │ ├── CourseControllerTest.php │ │ │ │ ├── NoteControllerTest.php │ │ │ │ └── VideoControllerTest.php │ │ │ └── Model │ │ │ │ ├── CourseTest.php │ │ │ │ └── EventTest.php │ │ │ ├── Twig │ │ │ └── Extension │ │ │ │ └── DemoExtension.php │ │ │ └── Util │ │ │ └── Cache.php │ │ └── web │ │ ├── .htaccess │ │ ├── app.php │ │ ├── app_dev.php │ │ ├── apple-touch-icon.png │ │ ├── config.php │ │ ├── favicon.ico │ │ └── robots.txt ├── product_pricing │ ├── README.md │ ├── base │ │ └── typescript │ │ │ ├── .eslintrc.js │ │ │ ├── .gitignore │ │ │ ├── LICENSE │ │ │ ├── README.md │ │ │ ├── babel.config.json │ │ │ ├── cypress.json │ │ │ ├── cypress │ │ │ ├── fixtures │ │ │ │ └── example.json │ │ │ ├── integration │ │ │ │ └── home.spec.ts │ │ │ ├── plugins │ │ │ │ └── index.js │ │ │ ├── support │ │ │ │ ├── commands.js │ │ │ │ └── index.js │ │ │ └── tsconfig.json │ │ │ ├── index.html │ │ │ ├── jest.config.js │ │ │ ├── package-lock.json │ │ │ ├── package.json │ │ │ ├── src │ │ │ ├── Product.ts │ │ │ └── index.ts │ │ │ ├── tests │ │ │ ├── .eslintrc │ │ │ └── Product.test.ts │ │ │ ├── tsconfig.json │ │ │ ├── webpack.common.js │ │ │ ├── webpack.dev.js │ │ │ └── webpack.prod.js │ └── solutions │ │ └── .gitkeep ├── tiered_pricing │ ├── README.md │ ├── base │ │ ├── java │ │ │ ├── .editorconfig │ │ │ ├── .github │ │ │ │ └── workflows │ │ │ │ │ └── workflow.yml │ │ │ ├── .gitignore │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── gradle │ │ │ │ └── wrapper │ │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── src │ │ │ │ ├── main │ │ │ │ │ ├── java │ │ │ │ │ │ └── tv │ │ │ │ │ │ │ └── codely │ │ │ │ │ │ │ └── checkout │ │ │ │ │ │ │ ├── TieredPricing.java │ │ │ │ │ │ │ └── api │ │ │ │ │ │ │ ├── CheckoutApplication.java │ │ │ │ │ │ │ └── Controller │ │ │ │ │ │ │ └── ExampleGetController.java │ │ │ │ │ └── resources │ │ │ │ │ │ └── log4j2.properties │ │ │ │ └── test │ │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── checkout │ │ │ │ │ │ ├── TieredPricingShould.java │ │ │ │ │ │ └── api │ │ │ │ │ │ ├── ApiTestCase.java │ │ │ │ │ │ └── Controller │ │ │ │ │ │ └── ExampleGetControllerShould.java │ │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── var │ │ │ │ └── log │ │ │ │ └── .gitkeep │ │ └── rust │ │ │ ├── .env.example │ │ │ ├── .gitignore │ │ │ ├── Cargo.lock │ │ │ ├── Cargo.toml │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── docker-compose.yml │ │ │ ├── docker │ │ │ └── rust │ │ │ │ └── Dockerfile │ │ │ └── src │ │ │ ├── health_check.rs │ │ │ ├── main.rs │ │ │ └── routes.rs │ └── solutions │ │ ├── adrianliz │ │ └── java │ │ │ ├── .editorconfig │ │ │ ├── .github │ │ │ └── workflows │ │ │ │ └── workflow.yml │ │ │ ├── .gitignore │ │ │ ├── Makefile │ │ │ ├── README.md │ │ │ ├── build.gradle │ │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ │ ├── gradlew │ │ │ ├── gradlew.bat │ │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── checkout │ │ │ │ │ │ ├── InvalidSubscriptionTierPrice.java │ │ │ │ │ │ ├── InvalidSubscriptionTierRange.java │ │ │ │ │ │ ├── InvalidSubscriptionTiers.java │ │ │ │ │ │ ├── SubscriptionTier.java │ │ │ │ │ │ ├── SubscriptionTierNotFound.java │ │ │ │ │ │ ├── SubscriptionTierPrice.java │ │ │ │ │ │ ├── SubscriptionTierRange.java │ │ │ │ │ │ ├── SubscriptionTiers.java │ │ │ │ │ │ ├── TieredPricing.java │ │ │ │ │ │ └── api │ │ │ │ │ │ ├── CheckoutApplication.java │ │ │ │ │ │ └── Controller │ │ │ │ │ │ └── ExampleGetController.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── checkout │ │ │ │ │ ├── SubscriptionTierPriceShould.java │ │ │ │ │ ├── SubscriptionTierRangeShould.java │ │ │ │ │ ├── TieredPricingShould.java │ │ │ │ │ ├── api │ │ │ │ │ ├── ApiTestCase.java │ │ │ │ │ └── Controller │ │ │ │ │ │ └── ExampleGetControllerShould.java │ │ │ │ │ └── mother │ │ │ │ │ ├── DoubleMother.java │ │ │ │ │ ├── IntegerMother.java │ │ │ │ │ ├── MotherCreator.java │ │ │ │ │ ├── SubscriptionTierMother.java │ │ │ │ │ ├── SubscriptionTierPriceMother.java │ │ │ │ │ └── SubscriptionTierRangeMother.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ │ ├── aortiz_typescript │ │ ├── .eslintrc.js │ │ ├── .github │ │ │ └── workflows │ │ │ │ └── ci.yml │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── Codelyber.ts │ │ │ ├── InvalidUnitException.ts │ │ │ └── Subscription.ts │ │ ├── tests │ │ │ ├── .eslintrc │ │ │ ├── Codelyber.test.ts │ │ │ └── Subscription.test.ts │ │ └── tsconfig.json │ │ ├── codely_outside-in │ │ ├── .editorconfig │ │ ├── .github │ │ │ └── workflows │ │ │ │ └── workflow.yml │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── README.md │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── checkout │ │ │ │ │ │ ├── CalculateSubscriptionsPrice.java │ │ │ │ │ │ ├── TieredPricing.java │ │ │ │ │ │ └── api │ │ │ │ │ │ ├── CheckoutApplication.java │ │ │ │ │ │ └── Controller │ │ │ │ │ │ └── SubscriptionTotalGetController.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── checkout │ │ │ │ │ ├── TieredPricingShould.java │ │ │ │ │ └── api │ │ │ │ │ ├── ApiTestCase.java │ │ │ │ │ └── Controller │ │ │ │ │ └── SubscriptionTotalGetControllerShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ │ ├── elwazy-python │ │ ├── .gitignore │ │ ├── README.md │ │ ├── elwazy_python │ │ │ ├── __init__.py │ │ │ └── license.py │ │ ├── poetry.lock │ │ ├── pyproject.toml │ │ └── tests │ │ │ ├── __init__.py │ │ │ └── test_license_price_calculation.py │ │ ├── isaac1024_baby-steps │ │ ├── .env.example │ │ ├── .gitignore │ │ ├── Cargo.lock │ │ ├── Cargo.toml │ │ ├── Makefile │ │ ├── README.md │ │ ├── docker-compose.yml │ │ ├── docker │ │ │ └── rust │ │ │ │ └── Dockerfile │ │ └── src │ │ │ ├── health_check.rs │ │ │ ├── main.rs │ │ │ ├── routes.rs │ │ │ └── tiered_pricing.rs │ │ ├── lurumad-java │ │ ├── .editorconfig │ │ ├── .github │ │ │ └── workflows │ │ │ │ └── workflow.yml │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── README.md │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── checkout │ │ │ │ │ │ ├── Price.java │ │ │ │ │ │ ├── Subscriptions.java │ │ │ │ │ │ ├── TieredPricing.java │ │ │ │ │ │ ├── VolumePricingList.java │ │ │ │ │ │ └── api │ │ │ │ │ │ ├── CheckoutApplication.java │ │ │ │ │ │ └── Controller │ │ │ │ │ │ └── ExampleGetController.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── checkout │ │ │ │ │ ├── PriceShould.java │ │ │ │ │ ├── SubscriptionsShould.java │ │ │ │ │ ├── TieredPricingShould.java │ │ │ │ │ ├── TieredSubscriptionsExamples.java │ │ │ │ │ └── api │ │ │ │ │ ├── ApiTestCase.java │ │ │ │ │ └── Controller │ │ │ │ │ └── ExampleGetControllerShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ │ ├── malakaton-php │ │ ├── .gitignore │ │ ├── README.md │ │ ├── docker-compose.yml │ │ ├── docker │ │ │ ├── nginx │ │ │ │ ├── Dockerfile │ │ │ │ └── conf │ │ │ │ │ └── project.conf │ │ │ ├── php-fpm │ │ │ │ ├── Dockerfile │ │ │ │ └── conf │ │ │ │ │ ├── php-fpm.conf │ │ │ │ │ └── php.ini │ │ │ ├── test │ │ │ └── up │ │ └── src │ │ │ ├── .env │ │ │ ├── .env.test │ │ │ ├── .gitignore │ │ │ ├── behat.yml.dist │ │ │ ├── bin │ │ │ ├── bootstrap.php │ │ │ ├── console │ │ │ └── phpunit │ │ │ ├── composer.json │ │ │ ├── composer.lock │ │ │ ├── config │ │ │ ├── behat │ │ │ │ └── bootstrap.php │ │ │ ├── bundles.php │ │ │ ├── packages │ │ │ │ ├── cache.yaml │ │ │ │ ├── framework.yaml │ │ │ │ ├── messenger.yaml │ │ │ │ ├── routing.yaml │ │ │ │ ├── sensio_framework_extra.yaml │ │ │ │ ├── translation.yaml │ │ │ │ └── validator.yaml │ │ │ ├── preload.php │ │ │ ├── routes │ │ │ │ ├── annotations.yaml │ │ │ │ └── dev │ │ │ │ │ └── framework.yaml │ │ │ └── services │ │ │ │ ├── services.yaml │ │ │ │ └── services_test.yaml │ │ │ ├── phpunit.xml.dist │ │ │ ├── public │ │ │ └── index.php │ │ │ ├── src │ │ │ ├── Checkout │ │ │ │ ├── Application │ │ │ │ │ └── Query │ │ │ │ │ │ ├── CalculateTotalPriceHandler.php │ │ │ │ │ │ └── CalculateTotalPriceQuery.php │ │ │ │ ├── Domain │ │ │ │ │ └── TieredPricing.php │ │ │ │ └── Infrastructure │ │ │ │ │ └── Http │ │ │ │ │ └── Controller │ │ │ │ │ └── GetTieredPricingController.php │ │ │ ├── Kernel.php │ │ │ └── Shared │ │ │ │ ├── Application │ │ │ │ └── Query │ │ │ │ │ ├── QueryBusInterface.php │ │ │ │ │ ├── QueryHandlerInterface.php │ │ │ │ │ └── QueryInterface.php │ │ │ │ ├── Domain │ │ │ │ └── DomainException.php │ │ │ │ └── Infrastructure │ │ │ │ ├── Bus │ │ │ │ ├── MessageBusExceptionTrait.php │ │ │ │ └── Query │ │ │ │ │ └── MessengerQueryBus.php │ │ │ │ ├── Http │ │ │ │ ├── Cli │ │ │ │ │ └── Command │ │ │ │ │ │ └── QueryCommand.php │ │ │ │ ├── Controller │ │ │ │ │ └── QueryController.php │ │ │ │ └── Response │ │ │ │ │ └── OpenApi.php │ │ │ │ └── Symfony │ │ │ │ ├── ApiResponseResource.php │ │ │ │ └── Exception │ │ │ │ ├── ApiExceptionListener.php │ │ │ │ └── SymfonyException.php │ │ │ ├── symfony.lock │ │ │ └── tests │ │ │ ├── Integration │ │ │ └── Shared │ │ │ │ └── Application │ │ │ │ └── ApplicationTestCase.php │ │ │ ├── Unit │ │ │ ├── Checkout │ │ │ │ └── Domain │ │ │ │ │ └── TieredPricingTest.php │ │ │ └── Shared │ │ │ │ └── Infrastructure │ │ │ │ └── PhpUnit │ │ │ │ └── UnitTestCase.php │ │ │ └── e2e │ │ │ ├── Checkout │ │ │ └── Infrastructure │ │ │ │ └── Http │ │ │ │ └── Controller │ │ │ │ └── GetTieredPricingControllerTest.php │ │ │ └── Shared │ │ │ └── Infrastructure │ │ │ └── Http │ │ │ └── Controller │ │ │ └── EntryPointTestCase.php │ │ ├── mmoreno-typescript │ │ ├── .eslintrc.js │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── babel.config.json │ │ ├── cypress.json │ │ ├── cypress │ │ │ ├── fixtures │ │ │ │ └── example.json │ │ │ ├── integration │ │ │ │ └── home.spec.ts │ │ │ ├── plugins │ │ │ │ └── index.js │ │ │ ├── support │ │ │ │ ├── commands.js │ │ │ │ └── index.js │ │ │ └── tsconfig.json │ │ ├── index.html │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ │ ├── InvalidLicenciasQuantity.ts │ │ │ ├── LicenciaPrice.ts │ │ │ ├── LicenciaQuantity.ts │ │ │ ├── Licencias.ts │ │ │ └── index.ts │ │ ├── tests │ │ │ ├── .eslintrc │ │ │ ├── Licencias.test.ts │ │ │ └── NumberRandomBetween.ts │ │ ├── tsconfig.json │ │ ├── webpack.common.js │ │ ├── webpack.dev.js │ │ └── webpack.prod.js │ │ ├── mperezi │ │ ├── .editorconfig │ │ ├── .github │ │ │ └── workflows │ │ │ │ └── workflow.yml │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── README.md │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── checkout │ │ │ │ │ │ ├── TieredPricing.java │ │ │ │ │ │ └── api │ │ │ │ │ │ ├── CheckoutApplication.java │ │ │ │ │ │ └── Controller │ │ │ │ │ │ └── ExampleGetController.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── checkout │ │ │ │ │ ├── TieredPricingShould.java │ │ │ │ │ └── api │ │ │ │ │ ├── ApiTestCase.java │ │ │ │ │ └── Controller │ │ │ │ │ └── ExampleGetControllerShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ │ ├── oflorez │ │ ├── .editorconfig │ │ ├── .github │ │ │ └── workflows │ │ │ │ └── workflow.yml │ │ ├── .gitignore │ │ ├── Makefile │ │ ├── README.md │ │ ├── build.gradle │ │ ├── gradle │ │ │ └── wrapper │ │ │ │ ├── gradle-wrapper.jar │ │ │ │ └── gradle-wrapper.properties │ │ ├── gradlew │ │ ├── gradlew.bat │ │ ├── src │ │ │ ├── main │ │ │ │ ├── java │ │ │ │ │ └── tv │ │ │ │ │ │ └── codely │ │ │ │ │ │ └── checkout │ │ │ │ │ │ ├── Tier.java │ │ │ │ │ │ ├── TieredPricing.java │ │ │ │ │ │ └── api │ │ │ │ │ │ ├── CheckoutApplication.java │ │ │ │ │ │ └── Controller │ │ │ │ │ │ └── ExampleGetController.java │ │ │ │ └── resources │ │ │ │ │ └── log4j2.properties │ │ │ └── test │ │ │ │ ├── java │ │ │ │ └── tv │ │ │ │ │ └── codely │ │ │ │ │ └── checkout │ │ │ │ │ ├── TieredPricingShould.java │ │ │ │ │ └── api │ │ │ │ │ ├── ApiTestCase.java │ │ │ │ │ └── Controller │ │ │ │ │ └── ExampleGetControllerShould.java │ │ │ │ └── resources │ │ │ │ └── log4j2.properties │ │ └── var │ │ │ └── log │ │ │ └── .gitkeep │ │ └── xetxeberria-ts │ │ ├── .eslintrc.js │ │ ├── .github │ │ └── workflows │ │ │ ├── lint.yml │ │ │ └── test.yml │ │ ├── .gitignore │ │ ├── LICENSE │ │ ├── README.md │ │ ├── babel.config.json │ │ ├── cypress.json │ │ ├── cypress │ │ ├── fixtures │ │ │ └── example.json │ │ ├── integration │ │ │ └── home.spec.ts │ │ ├── plugins │ │ │ └── index.js │ │ ├── support │ │ │ ├── commands.js │ │ │ └── index.js │ │ └── tsconfig.json │ │ ├── index.html │ │ ├── jest.config.js │ │ ├── package-lock.json │ │ ├── package.json │ │ ├── src │ │ ├── index.ts │ │ └── tieredPricing.ts │ │ ├── tests │ │ ├── .eslintrc │ │ └── tieredPricing.test.ts │ │ ├── tsconfig.json │ │ ├── webpack.common.js │ │ ├── webpack.dev.js │ │ └── webpack.prod.js └── user_signup │ ├── README.md │ ├── base │ └── next-typescript │ │ ├── .eslintrc.js │ │ ├── .gitignore │ │ ├── babel.config.js │ │ ├── cypress.json │ │ ├── jest.config.js │ │ ├── next-env.d.ts │ │ ├── package.json │ │ ├── setupTests.ts │ │ ├── src │ │ ├── assets │ │ │ └── index.css │ │ ├── components │ │ │ ├── Input.module.css │ │ │ ├── Input.tsx │ │ │ ├── Label.module.css │ │ │ └── Label.tsx │ │ └── pages │ │ │ ├── _app.tsx │ │ │ └── index.tsx │ │ ├── tests │ │ ├── pages │ │ │ ├── index.spec.ts │ │ │ ├── plugins │ │ │ │ └── index.js │ │ │ ├── support │ │ │ │ ├── commands.js │ │ │ │ └── index.ts │ │ │ └── tsconfig.json │ │ └── unit │ │ │ └── test.spec.tsx │ │ ├── tsconfig.json │ │ └── yarn.lock │ └── solutions │ └── codely_next-typescript-middle-out │ ├── .eslintrc.js │ ├── .gitignore │ ├── babel.config.js │ ├── cypress.json │ ├── jest.config.js │ ├── next-env.d.ts │ ├── package.json │ ├── setupTests.ts │ ├── src │ ├── assets │ │ └── index.css │ ├── components │ │ ├── Input.module.css │ │ ├── Input.tsx │ │ ├── Label.module.css │ │ ├── Label.tsx │ │ ├── SignUpForm.tsx │ │ └── useSignUpUser.ts │ ├── pages │ │ ├── _app.tsx │ │ ├── api │ │ │ └── signup.ts │ │ └── index.tsx │ └── services │ │ └── signUpUser.ts │ ├── tests │ ├── pages │ │ ├── index.spec.ts │ │ ├── plugins │ │ │ └── index.js │ │ ├── support │ │ │ ├── commands.js │ │ │ └── index.ts │ │ └── tsconfig.json │ └── unit │ │ ├── SignUpForm.spec.tsx │ │ └── test.spec.tsx │ ├── tsconfig.json │ └── yarn.lock └── refactorings ├── composing-methods ├── extract-method │ └── .gitkeep ├── extract-variable │ └── .gitkeep ├── inline-method │ └── .gitkeep ├── inline-temp │ └── .gitkeep ├── remove-assignments-to-parameters │ └── .gitkeep ├── replace-method-with-method-object │ └── .gitkeep ├── replace-temp-with-query │ └── .gitkeep ├── split-temporary-variable │ └── .gitkeep └── substitute-algorithm │ └── .gitkeep ├── dealing-with-generalization ├── collapse-hierarchy │ └── .gitkeep ├── extract-interface │ └── .gitkeep ├── extract-subclass │ └── .gitkeep ├── extract-superclass │ └── .gitkeep ├── form-template-method │ └── .gitkeep ├── pull-up-constructor-body │ └── .gitkeep ├── pull-up-field │ └── .gitkeep ├── pull-up-method │ └── .gitkeep ├── push-down-field │ └── .gitkeep ├── push-down-method │ └── .gitkeep ├── replace-delegation-with-inheritance │ └── .gitkeep └── replace-inheritance-with-delegation │ └── .gitkeep ├── moving-features-between-objects ├── extract-class │ └── .gitkeep ├── hide-delegate │ └── .gitkeep ├── inline-class │ └── .gitkeep ├── introduce-foreign-method │ └── .gitkeep ├── introduce-local-extension │ └── .gitkeep ├── move-field │ └── .gitkeep ├── move-method │ └── .gitkeep └── remove-middle-man │ └── .gitkeep ├── organizing-data ├── change-bidirectional-association-to-unidirectional │ └── .gitkeep ├── change-reference-to-value │ └── .gitkeep ├── change-unidirectional-association-to-bidirectional │ └── .gitkeep ├── change-value-to-reference │ └── .gitkeep ├── duplicate-observed-data │ └── .gitkeep ├── encapsulate-collection │ └── .gitkeep ├── encapsulate-field │ └── .gitkeep ├── replace-array-with-object │ └── .gitkeep ├── replace-data-value-with-object │ └── .gitkeep ├── replace-magic-number-with-symbolic-constant │ └── .gitkeep ├── replace-subclass-with-fields │ └── .gitkeep ├── replace-type-code-with-class │ └── .gitkeep ├── replace-type-code-with-state-or-strategy │ └── .gitkeep ├── replace-type-code-with-subclasses │ └── .gitkeep └── self-encapsulate-field │ └── .gitkeep ├── simplifying-conditional-expressions ├── consolidate-conditional-expression │ ├── .gitkeep │ └── java-student_grades │ │ ├── after │ │ └── before ├── consolidate-duplicate-conditional-fragments │ └── .gitkeep ├── decompose-conditional │ └── .gitkeep ├── introduce-assertion │ └── .gitkeep ├── introduce-null-object │ └── .gitkeep ├── remove-control-flag │ └── .gitkeep ├── replace-conditional-with-polymorphism │ └── .gitkeep └── replace-nested-conditional-with-guard-clauses │ └── .gitkeep └── simplifying-method-calls ├── add-parameter └── .gitkeep ├── hide-method └── .gitkeep ├── introduce-parameter-object └── .gitkeep ├── parameterize-method └── .gitkeep ├── preserve-whole-object └── .gitkeep ├── remove-parameter └── .gitkeep ├── remove-setting-method └── .gitkeep ├── rename-method └── .gitkeep ├── replace-constructor-with-factory-method └── .gitkeep ├── replace-error-code-with-exception └── .gitkeep ├── replace-exception-with-test └── .gitkeep ├── replace-parameter-with-explicit-methods └── .gitkeep ├── replace-parameter-with-method-call └── .gitkeep └── separate-query-from-modifier └── .gitkeep /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/README.md -------------------------------------------------------------------------------- /code-smells/bloaters/data-clumps/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/bloaters/large-class/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/bloaters/long-method/java-student_grades-01_base_example: -------------------------------------------------------------------------------- 1 | ../../../examples/java/java-student_grades-01_base_example -------------------------------------------------------------------------------- /code-smells/bloaters/long-parameter-list/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/bloaters/primitive-obsession/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/change-preventers/divergent-change/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/change-preventers/parallel-inheritance-hierarchies/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/change-preventers/shotgun-surgery/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/couplers/feature-envy/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/couplers/inappropriate-intimacy/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/couplers/incomplete-library-class/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/couplers/message-chains/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/couplers/middle-man/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/dispensables/comments/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/dispensables/data-class/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/dispensables/dead-code/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/dispensables/duplicate-code/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/dispensables/lazy-class/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/dispensables/speculative-generality/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/object-orientation-abusers/alternative-classes-with-different-interfaces/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/object-orientation-abusers/refused-bequest/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/object-orientation-abusers/switch-statements/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /code-smells/object-orientation-abusers/temporary-field/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /design-patterns/creational/abstract-factory/kotlin-payment_gateways-01_base: -------------------------------------------------------------------------------- 1 | ../../../examples/kotlin/kotlin-payment_gateways-01_base/ -------------------------------------------------------------------------------- /design-patterns/creational/factory-method/ts-stock_counter-03_add_factory_method: -------------------------------------------------------------------------------- 1 | ../../../examples/ts/ts-stock_counter-03_add_factory_method -------------------------------------------------------------------------------- /design-patterns/creational/lazy-initialization/kotlin-lazy_browser-01_base: -------------------------------------------------------------------------------- 1 | ../../../examples/kotlin/kotlin-lazy_browser-01_base -------------------------------------------------------------------------------- /design-patterns/creational/object-pool/kotlin-browsers_pool-01_base: -------------------------------------------------------------------------------- 1 | ../../../examples/kotlin/kotlin-browsers_pool-01_base -------------------------------------------------------------------------------- /design-patterns/creational/parameterized-factory-method/ts-stock_counter_dynamic-02_extract_parameterized_factory_method: -------------------------------------------------------------------------------- 1 | ../../../examples/ts/ts-stock_counter_dynamic-02_extract_parameterized_factory_method -------------------------------------------------------------------------------- /design-patterns/creational/prototype/php-repeat_purchase-01_base: -------------------------------------------------------------------------------- 1 | ../../../examples/php/php-repeat_purchase-01_base -------------------------------------------------------------------------------- /design-patterns/creational/prototype/ts-monsters_game-01_base: -------------------------------------------------------------------------------- 1 | ../../../examples/ts/ts-monsters_game-01_base -------------------------------------------------------------------------------- /design-patterns/creational/singleton/php-feature_flags-01_base: -------------------------------------------------------------------------------- 1 | ../../../examples/php/php-feature_flags-01_base -------------------------------------------------------------------------------- /examples/csharp/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/.gitignore -------------------------------------------------------------------------------- /examples/csharp/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/Makefile -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/csharp-booking-01_base.sln: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/csharp-booking-01_base.sln -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/Booking.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/Booking.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/Booking.csproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/Booking.csproj -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/BookingId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/BookingId.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/BookingStatus.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/BookingStatus.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/BookingType.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/BookingType.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/CustomerId.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/CustomerId.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/CustomerName.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/CustomerName.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/DiscountType.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/DiscountType.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/DiscountValue.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/DiscountValue.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/EmailAddress.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/EmailAddress.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/TaxType.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/TaxType.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-01_base/src/Booking/TaxValue.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-01_base/src/Booking/TaxValue.cs -------------------------------------------------------------------------------- /examples/csharp/csharp-booking-04_tell_dont_ask/src/Booking/Tax.cs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/csharp/csharp-booking-04_tell_dont_ask/src/Booking/Tax.cs -------------------------------------------------------------------------------- /examples/java/java-booking-01_base/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-01_base/.editorconfig -------------------------------------------------------------------------------- /examples/java/java-booking-01_base/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-01_base/.gitignore -------------------------------------------------------------------------------- /examples/java/java-booking-01_base/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-01_base/Makefile -------------------------------------------------------------------------------- /examples/java/java-booking-01_base/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-01_base/build.gradle -------------------------------------------------------------------------------- /examples/java/java-booking-01_base/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-01_base/gradlew -------------------------------------------------------------------------------- /examples/java/java-booking-01_base/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-01_base/gradlew.bat -------------------------------------------------------------------------------- /examples/java/java-booking-01_base/src/main/java/tv/codely/booking/DiscountType.java: -------------------------------------------------------------------------------- 1 | package tv.codely.booking; 2 | 3 | public enum DiscountType { 4 | NONE 5 | } 6 | -------------------------------------------------------------------------------- /examples/java/java-booking-01_base/src/main/java/tv/codely/booking/TaxType.java: -------------------------------------------------------------------------------- 1 | package tv.codely.booking; 2 | 3 | public enum TaxType { 4 | NONE 5 | } 6 | -------------------------------------------------------------------------------- /examples/java/java-booking-01_base/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-booking-02_introduce_parameter_object/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-02_introduce_parameter_object/.gitignore -------------------------------------------------------------------------------- /examples/java/java-booking-02_introduce_parameter_object/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-02_introduce_parameter_object/Makefile -------------------------------------------------------------------------------- /examples/java/java-booking-02_introduce_parameter_object/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-02_introduce_parameter_object/gradlew -------------------------------------------------------------------------------- /examples/java/java-booking-02_introduce_parameter_object/src/main/java/tv/codely/booking/DiscountType.java: -------------------------------------------------------------------------------- 1 | package tv.codely.booking; 2 | 3 | public enum DiscountType { 4 | NONE 5 | } 6 | -------------------------------------------------------------------------------- /examples/java/java-booking-02_introduce_parameter_object/src/main/java/tv/codely/booking/TaxType.java: -------------------------------------------------------------------------------- 1 | package tv.codely.booking; 2 | 3 | public enum TaxType { 4 | NONE 5 | } 6 | -------------------------------------------------------------------------------- /examples/java/java-booking-02_introduce_parameter_object/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-booking-03_preserve_whole_object/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-03_preserve_whole_object/.editorconfig -------------------------------------------------------------------------------- /examples/java/java-booking-03_preserve_whole_object/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-03_preserve_whole_object/.gitignore -------------------------------------------------------------------------------- /examples/java/java-booking-03_preserve_whole_object/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-03_preserve_whole_object/Makefile -------------------------------------------------------------------------------- /examples/java/java-booking-03_preserve_whole_object/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-03_preserve_whole_object/build.gradle -------------------------------------------------------------------------------- /examples/java/java-booking-03_preserve_whole_object/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-03_preserve_whole_object/gradlew -------------------------------------------------------------------------------- /examples/java/java-booking-03_preserve_whole_object/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-03_preserve_whole_object/gradlew.bat -------------------------------------------------------------------------------- /examples/java/java-booking-03_preserve_whole_object/src/main/java/tv/codely/booking/DiscountType.java: -------------------------------------------------------------------------------- 1 | package tv.codely.booking; 2 | 3 | public enum DiscountType { 4 | NONE 5 | } 6 | -------------------------------------------------------------------------------- /examples/java/java-booking-03_preserve_whole_object/src/main/java/tv/codely/booking/TaxType.java: -------------------------------------------------------------------------------- 1 | package tv.codely.booking; 2 | 3 | public enum TaxType { 4 | NONE 5 | } 6 | -------------------------------------------------------------------------------- /examples/java/java-booking-03_preserve_whole_object/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-booking-04_tell_dont_ask/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-04_tell_dont_ask/.editorconfig -------------------------------------------------------------------------------- /examples/java/java-booking-04_tell_dont_ask/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-04_tell_dont_ask/.gitignore -------------------------------------------------------------------------------- /examples/java/java-booking-04_tell_dont_ask/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-04_tell_dont_ask/Makefile -------------------------------------------------------------------------------- /examples/java/java-booking-04_tell_dont_ask/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-04_tell_dont_ask/build.gradle -------------------------------------------------------------------------------- /examples/java/java-booking-04_tell_dont_ask/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-04_tell_dont_ask/gradlew -------------------------------------------------------------------------------- /examples/java/java-booking-04_tell_dont_ask/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-booking-04_tell_dont_ask/gradlew.bat -------------------------------------------------------------------------------- /examples/java/java-booking-04_tell_dont_ask/src/main/java/tv/codely/booking/DiscountType.java: -------------------------------------------------------------------------------- 1 | package tv.codely.booking; 2 | 3 | public enum DiscountType { 4 | NONE 5 | } 6 | -------------------------------------------------------------------------------- /examples/java/java-booking-04_tell_dont_ask/src/main/java/tv/codely/booking/TaxType.java: -------------------------------------------------------------------------------- 1 | package tv.codely.booking; 2 | 3 | public enum TaxType { 4 | NONE 5 | } 6 | -------------------------------------------------------------------------------- /examples/java/java-booking-04_tell_dont_ask/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-01_base/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-01_base/.editorconfig -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-01_base/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-01_base/.gitignore -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-01_base/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-01_base/Makefile -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-01_base/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-01_base/build.gradle -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-01_base/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-01_base/gradlew -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-01_base/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-01_base/gradlew.bat -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-01_base/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-02_parameter/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-02_parameter/.editorconfig -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-02_parameter/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-02_parameter/.gitignore -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-02_parameter/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-02_parameter/Makefile -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-02_parameter/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-02_parameter/build.gradle -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-02_parameter/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-02_parameter/gradlew -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-02_parameter/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-02_parameter/gradlew.bat -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-02_parameter/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-03_method_call/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-03_method_call/.editorconfig -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-03_method_call/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-03_method_call/.gitignore -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-03_method_call/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-03_method_call/Makefile -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-03_method_call/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-03_method_call/build.gradle -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-03_method_call/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-03_method_call/gradlew -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-03_method_call/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-chat_rollout-03_method_call/gradlew.bat -------------------------------------------------------------------------------- /examples/java/java-chat_rollout-03_method_call/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-student_grades-01_base/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-01_base/.editorconfig -------------------------------------------------------------------------------- /examples/java/java-student_grades-01_base/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-01_base/.gitignore -------------------------------------------------------------------------------- /examples/java/java-student_grades-01_base/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-01_base/Makefile -------------------------------------------------------------------------------- /examples/java/java-student_grades-01_base/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-01_base/build.gradle -------------------------------------------------------------------------------- /examples/java/java-student_grades-01_base/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-01_base/gradlew -------------------------------------------------------------------------------- /examples/java/java-student_grades-01_base/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-01_base/gradlew.bat -------------------------------------------------------------------------------- /examples/java/java-student_grades-01_base/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-student_grades-02_extract_method/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-02_extract_method/.editorconfig -------------------------------------------------------------------------------- /examples/java/java-student_grades-02_extract_method/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-02_extract_method/.gitignore -------------------------------------------------------------------------------- /examples/java/java-student_grades-02_extract_method/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-02_extract_method/Makefile -------------------------------------------------------------------------------- /examples/java/java-student_grades-02_extract_method/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-02_extract_method/build.gradle -------------------------------------------------------------------------------- /examples/java/java-student_grades-02_extract_method/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-02_extract_method/gradlew -------------------------------------------------------------------------------- /examples/java/java-student_grades-02_extract_method/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-02_extract_method/gradlew.bat -------------------------------------------------------------------------------- /examples/java/java-student_grades-02_extract_method/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-student_grades-03_if_guard_clause/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-03_if_guard_clause/.editorconfig -------------------------------------------------------------------------------- /examples/java/java-student_grades-03_if_guard_clause/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-03_if_guard_clause/.gitignore -------------------------------------------------------------------------------- /examples/java/java-student_grades-03_if_guard_clause/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-03_if_guard_clause/Makefile -------------------------------------------------------------------------------- /examples/java/java-student_grades-03_if_guard_clause/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-03_if_guard_clause/build.gradle -------------------------------------------------------------------------------- /examples/java/java-student_grades-03_if_guard_clause/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-03_if_guard_clause/gradlew -------------------------------------------------------------------------------- /examples/java/java-student_grades-03_if_guard_clause/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-03_if_guard_clause/gradlew.bat -------------------------------------------------------------------------------- /examples/java/java-student_grades-03_if_guard_clause/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-student_grades-04_replace_control_flag/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-04_replace_control_flag/Makefile -------------------------------------------------------------------------------- /examples/java/java-student_grades-04_replace_control_flag/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-04_replace_control_flag/gradlew -------------------------------------------------------------------------------- /examples/java/java-student_grades-04_replace_control_flag/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/java/java-student_grades-05_simplify_conditionals/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-05_simplify_conditionals/Makefile -------------------------------------------------------------------------------- /examples/java/java-student_grades-05_simplify_conditionals/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/java/java-student_grades-05_simplify_conditionals/gradlew -------------------------------------------------------------------------------- /examples/java/java-student_grades-05_simplify_conditionals/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /examples/js/js-bonus-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-bonus-01_base/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-01_base/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-bonus-01_base/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-01_base/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-bonus-01_base/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-01_base/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-bonus-01_base/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-01_base/package.json -------------------------------------------------------------------------------- /examples/js/js-bonus-01_base/src/DailyBonusPointsCalculator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-01_base/src/DailyBonusPointsCalculator.js -------------------------------------------------------------------------------- /examples/js/js-bonus-02_explicit_method/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-bonus-02_explicit_method/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-02_explicit_method/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-bonus-02_explicit_method/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-02_explicit_method/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-bonus-02_explicit_method/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-02_explicit_method/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-bonus-02_explicit_method/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-02_explicit_method/package.json -------------------------------------------------------------------------------- /examples/js/js-bonus-03_extract_class/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-bonus-03_extract_class/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-03_extract_class/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-bonus-03_extract_class/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-03_extract_class/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-bonus-03_extract_class/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-03_extract_class/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-bonus-03_extract_class/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-bonus-03_extract_class/package.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-data_repository-01_base/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-01_base/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-01_base/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-01_base/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-data_repository-01_base/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-01_base/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-01_base/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-01_base/package.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-01_base/src/UserSearcher.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-01_base/src/UserSearcher.js -------------------------------------------------------------------------------- /examples/js/js-data_repository-01_base/tests/UserSearcher.test.js: -------------------------------------------------------------------------------- 1 | describe('We can only do acceptance tests here, not unit…', () => { 2 | }); 3 | -------------------------------------------------------------------------------- /examples/js/js-data_repository-02_repository/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-data_repository-02_repository/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-02_repository/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-02_repository/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-02_repository/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-data_repository-02_repository/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-02_repository/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-02_repository/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-02_repository/package.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-02_repository/src/UsersSearcher.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-02_repository/src/UsersSearcher.js -------------------------------------------------------------------------------- /examples/js/js-data_repository-03_container/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-data_repository-03_container/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-03_container/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-03_container/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-03_container/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-data_repository-03_container/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-03_container/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-03_container/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-03_container/package.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-03_container/src/Container.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-03_container/src/Container.js -------------------------------------------------------------------------------- /examples/js/js-data_repository-03_container/src/UsersSearcher.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-03_container/src/UsersSearcher.js -------------------------------------------------------------------------------- /examples/js/js-data_repository-04_explicit_arguments/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-data_repository-04_explicit_arguments/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-04_explicit_arguments/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-data_repository-04_explicit_arguments/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-04_explicit_arguments/package.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-05_parameter_object/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-data_repository-05_parameter_object/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-05_parameter_object/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-data_repository-05_parameter_object/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-05_parameter_object/package.json -------------------------------------------------------------------------------- /examples/js/js-data_repository-05_parameter_object/src/Container.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-05_parameter_object/src/Container.js -------------------------------------------------------------------------------- /examples/js/js-data_repository-06_db_connection_class/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-data_repository-06_db_connection_class/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-data_repository-06_db_connection_class/package.json -------------------------------------------------------------------------------- /examples/js/js-http_api-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-http_api-01_base/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-01_base/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-http_api-01_base/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-01_base/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-http_api-01_base/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-01_base/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-http_api-01_base/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-01_base/package.json -------------------------------------------------------------------------------- /examples/js/js-http_api-01_base/src/Course.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-01_base/src/Course.js -------------------------------------------------------------------------------- /examples/js/js-http_api-01_base/src/CourseCreator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-01_base/src/CourseCreator.js -------------------------------------------------------------------------------- /examples/js/js-http_api-01_base/src/CoursesController.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-01_base/src/CoursesController.js -------------------------------------------------------------------------------- /examples/js/js-http_api-01_base/tests/CoursesController.test.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-01_base/tests/CoursesController.test.js -------------------------------------------------------------------------------- /examples/js/js-http_api-01_base/tests/MockCourseRepository.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-01_base/tests/MockCourseRepository.js -------------------------------------------------------------------------------- /examples/js/js-http_api-02_arguments/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-http_api-02_arguments/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-02_arguments/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-http_api-02_arguments/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-02_arguments/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-http_api-02_arguments/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-02_arguments/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-http_api-02_arguments/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-02_arguments/package.json -------------------------------------------------------------------------------- /examples/js/js-http_api-02_arguments/src/Course.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-02_arguments/src/Course.js -------------------------------------------------------------------------------- /examples/js/js-http_api-02_arguments/src/CourseCreator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-02_arguments/src/CourseCreator.js -------------------------------------------------------------------------------- /examples/js/js-http_api-02_arguments/src/CoursesController.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-02_arguments/src/CoursesController.js -------------------------------------------------------------------------------- /examples/js/js-http_api-02_arguments/tests/MockCourseRepository.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-02_arguments/tests/MockCourseRepository.js -------------------------------------------------------------------------------- /examples/js/js-http_api-03_introduce_parameter_object/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-http_api-03_introduce_parameter_object/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-03_introduce_parameter_object/package.json -------------------------------------------------------------------------------- /examples/js/js-http_api-03_introduce_parameter_object/src/Course.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-http_api-03_introduce_parameter_object/src/Course.js -------------------------------------------------------------------------------- /examples/js/js-student_grades-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-student_grades-01_base/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-01_base/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-student_grades-01_base/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-01_base/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-student_grades-01_base/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-01_base/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-student_grades-01_base/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-01_base/package.json -------------------------------------------------------------------------------- /examples/js/js-student_grades-01_base/src/StudentGradeCalculator.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-01_base/src/StudentGradeCalculator.js -------------------------------------------------------------------------------- /examples/js/js-student_grades-02_extract_subclass/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-student_grades-02_extract_subclass/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-02_extract_subclass/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-student_grades-02_extract_subclass/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-02_extract_subclass/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-student_grades-02_extract_subclass/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-02_extract_subclass/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-student_grades-02_extract_subclass/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-02_extract_subclass/package.json -------------------------------------------------------------------------------- /examples/js/js-student_grades-03_extract_class/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | .tmp/ 3 | -------------------------------------------------------------------------------- /examples/js/js-student_grades-03_extract_class/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-03_extract_class/babel.config.json -------------------------------------------------------------------------------- /examples/js/js-student_grades-03_extract_class/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-03_extract_class/jest.config.js -------------------------------------------------------------------------------- /examples/js/js-student_grades-03_extract_class/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-03_extract_class/package-lock.json -------------------------------------------------------------------------------- /examples/js/js-student_grades-03_extract_class/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-03_extract_class/package.json -------------------------------------------------------------------------------- /examples/js/js-student_grades-03_extract_class/src/Teachers.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/js/js-student_grades-03_extract_class/src/Teachers.js -------------------------------------------------------------------------------- /examples/kotlin/kotlin-browsers_pool-01_base/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-browsers_pool-01_base/.gitignore -------------------------------------------------------------------------------- /examples/kotlin/kotlin-browsers_pool-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-browsers_pool-01_base/README.md -------------------------------------------------------------------------------- /examples/kotlin/kotlin-browsers_pool-01_base/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-browsers_pool-01_base/build.gradle.kts -------------------------------------------------------------------------------- /examples/kotlin/kotlin-browsers_pool-01_base/geckodriver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-browsers_pool-01_base/geckodriver -------------------------------------------------------------------------------- /examples/kotlin/kotlin-browsers_pool-01_base/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-browsers_pool-01_base/gradle.properties -------------------------------------------------------------------------------- /examples/kotlin/kotlin-browsers_pool-01_base/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-browsers_pool-01_base/gradlew -------------------------------------------------------------------------------- /examples/kotlin/kotlin-browsers_pool-01_base/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-browsers_pool-01_base/gradlew.bat -------------------------------------------------------------------------------- /examples/kotlin/kotlin-browsers_pool-01_base/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "kotlin-basic-skeleton" 2 | -------------------------------------------------------------------------------- /examples/kotlin/kotlin-lazy_browser-01_base/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-lazy_browser-01_base/.gitignore -------------------------------------------------------------------------------- /examples/kotlin/kotlin-lazy_browser-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-lazy_browser-01_base/README.md -------------------------------------------------------------------------------- /examples/kotlin/kotlin-lazy_browser-01_base/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-lazy_browser-01_base/build.gradle.kts -------------------------------------------------------------------------------- /examples/kotlin/kotlin-lazy_browser-01_base/geckodriver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-lazy_browser-01_base/geckodriver -------------------------------------------------------------------------------- /examples/kotlin/kotlin-lazy_browser-01_base/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-lazy_browser-01_base/gradle.properties -------------------------------------------------------------------------------- /examples/kotlin/kotlin-lazy_browser-01_base/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-lazy_browser-01_base/gradlew -------------------------------------------------------------------------------- /examples/kotlin/kotlin-lazy_browser-01_base/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-lazy_browser-01_base/gradlew.bat -------------------------------------------------------------------------------- /examples/kotlin/kotlin-lazy_browser-01_base/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "kotlin-basic-skeleton" 2 | -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-01_base/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-payment_gateways-01_base/.gitignore -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-payment_gateways-01_base/README.md -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-01_base/build.gradle.kts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-payment_gateways-01_base/build.gradle.kts -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-01_base/gradle.properties: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-payment_gateways-01_base/gradle.properties -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-01_base/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-payment_gateways-01_base/gradlew -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-01_base/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/kotlin/kotlin-payment_gateways-01_base/gradlew.bat -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-01_base/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "kotlin-basic-skeleton" 2 | -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-01_base/src/main/kotlin/com/codely/payment/Card.kt: -------------------------------------------------------------------------------- 1 | package com.codely.payment 2 | 3 | interface Card { 4 | val id: String 5 | } -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-02_new-payment-gateway/settings.gradle.kts: -------------------------------------------------------------------------------- 1 | rootProject.name = "kotlin-basic-skeleton" 2 | -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-02_new-payment-gateway/src/main/kotlin/com/codely/payment/Card.kt: -------------------------------------------------------------------------------- 1 | package com.codely.payment 2 | 3 | interface Card { 4 | val id: String 5 | } -------------------------------------------------------------------------------- /examples/kotlin/kotlin-payment_gateways-02_new-payment-gateway/src/main/kotlin/com/codely/payment/Order.kt: -------------------------------------------------------------------------------- 1 | package com.codely.payment 2 | 3 | interface Order { 4 | val id: String 5 | } -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-divergent_change-01_base/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-divergent_change-01_base/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-divergent_change-01_base/.semver -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-divergent_change-01_base/.travis.yml -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-divergent_change-01_base/LICENSE -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-divergent_change-01_base/README.md -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-divergent_change-01_base/composer.json -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-divergent_change-01_base/composer.lock -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-divergent_change-01_base/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-divergent_change-01_base/src/Platform.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-divergent_change-01_base/src/Platform.php -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | .phpunit.result.cache 3 | -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/.semver -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/LICENSE -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/README.md -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/composer.json -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/composer.lock -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/src/Debug.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/src/Debug.php -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/src/Email/EmailNotifier.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/src/Email/EmailNotifier.php -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/src/FeatureFlags.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/src/FeatureFlags.php -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/src/Flags.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/src/Flags.php -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/src/SubscribeController.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/src/SubscribeController.php -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/src/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/src/index.php -------------------------------------------------------------------------------- /examples/php/php-feature_flags-01_base/tests/SubscribeTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-feature_flags-01_base/tests/SubscribeTest.php -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/.github/FUNDING.yml: -------------------------------------------------------------------------------- 1 | custom: https://bit.ly/CodelyTvPro 2 | -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/.github/workflows/ci.yml -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | .phpunit.result.cache 3 | -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/.semver -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/LICENSE -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/README.md -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/composer.json -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/composer.lock -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/src/CartTemplate/Cart.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/src/CartTemplate/Cart.php -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/src/CartTemplate/Price.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/src/CartTemplate/Price.php -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/src/CartTemplate/Units.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/src/CartTemplate/Units.php -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/src/CartTemplate/index.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/src/CartTemplate/index.php -------------------------------------------------------------------------------- /examples/php/php-repeat_purchase-01_base/tests/DummyTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-repeat_purchase-01_base/tests/DummyTest.php -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/.semver -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/.travis.yml -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/LICENSE -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/README.md -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/composer.json -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/composer.lock -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/src/Step.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/src/Step.php -------------------------------------------------------------------------------- /examples/php/php-step_strategy-01_base/tests/StepTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-step_strategy-01_base/tests/StepTest.php -------------------------------------------------------------------------------- /examples/php/php-step_strategy-02_replace_type_code_with_strategy/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-01_base/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | .phpunit.result.cache 3 | -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-01_base/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-01_base/.semver -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-01_base/LICENSE -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-01_base/README.md -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-01_base/composer.json -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-01_base/composer.lock -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-01_base/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/src/Model/Newsletter.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-01_base/src/Model/Newsletter.php -------------------------------------------------------------------------------- /examples/php/php-user_email-01_base/src/Model/User.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-01_base/src/Model/User.php -------------------------------------------------------------------------------- /examples/php/php-user_email-02_extract_method/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-02_extract_method/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-user_email-02_extract_method/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | .phpunit.result.cache 3 | -------------------------------------------------------------------------------- /examples/php/php-user_email-02_extract_method/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-02_extract_method/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-user_email-02_extract_method/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-02_extract_method/.semver -------------------------------------------------------------------------------- /examples/php/php-user_email-02_extract_method/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-02_extract_method/LICENSE -------------------------------------------------------------------------------- /examples/php/php-user_email-02_extract_method/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-02_extract_method/README.md -------------------------------------------------------------------------------- /examples/php/php-user_email-02_extract_method/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-02_extract_method/composer.json -------------------------------------------------------------------------------- /examples/php/php-user_email-02_extract_method/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-02_extract_method/composer.lock -------------------------------------------------------------------------------- /examples/php/php-user_email-02_extract_method/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-02_extract_method/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-user_email-02_extract_method/src/Model/User.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-02_extract_method/src/Model/User.php -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-03_move_method/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | .phpunit.result.cache 3 | -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-03_move_method/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-03_move_method/.semver -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-03_move_method/LICENSE -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-03_move_method/README.md -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-03_move_method/composer.json -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-03_move_method/composer.lock -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-03_move_method/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/src/Model/Newsletter.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-03_move_method/src/Model/Newsletter.php -------------------------------------------------------------------------------- /examples/php/php-user_email-03_move_method/src/Model/User.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-03_move_method/src/Model/User.php -------------------------------------------------------------------------------- /examples/php/php-user_email-04_email_address_vo/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-04_email_address_vo/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-user_email-04_email_address_vo/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | .phpunit.result.cache 3 | -------------------------------------------------------------------------------- /examples/php/php-user_email-04_email_address_vo/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-04_email_address_vo/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-user_email-04_email_address_vo/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-04_email_address_vo/.semver -------------------------------------------------------------------------------- /examples/php/php-user_email-04_email_address_vo/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-04_email_address_vo/LICENSE -------------------------------------------------------------------------------- /examples/php/php-user_email-04_email_address_vo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-04_email_address_vo/README.md -------------------------------------------------------------------------------- /examples/php/php-user_email-04_email_address_vo/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-04_email_address_vo/composer.json -------------------------------------------------------------------------------- /examples/php/php-user_email-04_email_address_vo/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-04_email_address_vo/composer.lock -------------------------------------------------------------------------------- /examples/php/php-user_email-04_email_address_vo/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-04_email_address_vo/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-user_email-04_email_address_vo/src/Model/User.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-04_email_address_vo/src/Model/User.php -------------------------------------------------------------------------------- /examples/php/php-user_email-05_user_email_vo/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-05_user_email_vo/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-user_email-05_user_email_vo/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | .phpunit.result.cache 3 | -------------------------------------------------------------------------------- /examples/php/php-user_email-05_user_email_vo/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-05_user_email_vo/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-user_email-05_user_email_vo/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-05_user_email_vo/.semver -------------------------------------------------------------------------------- /examples/php/php-user_email-05_user_email_vo/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-05_user_email_vo/LICENSE -------------------------------------------------------------------------------- /examples/php/php-user_email-05_user_email_vo/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-05_user_email_vo/README.md -------------------------------------------------------------------------------- /examples/php/php-user_email-05_user_email_vo/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-05_user_email_vo/composer.json -------------------------------------------------------------------------------- /examples/php/php-user_email-05_user_email_vo/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-05_user_email_vo/composer.lock -------------------------------------------------------------------------------- /examples/php/php-user_email-05_user_email_vo/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-05_user_email_vo/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-user_email-05_user_email_vo/src/Model/User.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_email-05_user_email_vo/src/Model/User.php -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/.semver -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/.travis.yml -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/LICENSE -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/README.md -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/composer.json -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/composer.lock -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/src/User.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/src/User.php -------------------------------------------------------------------------------- /examples/php/php-user_modelling-01_base/tests/UserTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-01_base/tests/UserTest.php -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/.editorconfig -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/.gitignore: -------------------------------------------------------------------------------- 1 | vendor/ 2 | -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/.scrutinizer.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/.scrutinizer.yml -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/.semver: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/.semver -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/.travis.yml -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/LICENSE -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/README.md -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/composer.json -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/composer.lock -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/phpunit.xml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/phpunit.xml -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/src/Age.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/src/Age.php -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/src/Locale.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/src/Locale.php -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/src/User.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/src/User.php -------------------------------------------------------------------------------- /examples/php/php-user_modelling-02_value_objects/tests/UserTest.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/php/php-user_modelling-02_value_objects/tests/UserTest.php -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/.eslintrc.js -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/.github/workflows/lint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/.github/workflows/lint.yml -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/.github/workflows/test.yml -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/.gitignore -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/LICENSE -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/README.md -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/babel.config.json -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/cypress.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/cypress.json -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/cypress/fixtures/example.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/cypress/fixtures/example.json -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/cypress/plugins/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/cypress/plugins/index.js -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/cypress/support/commands.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/cypress/support/commands.js -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/cypress/support/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/cypress/support/index.js -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/cypress/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/cypress/tsconfig.json -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/index.html -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/jest.config.js -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/package-lock.json -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/package.json -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/Ghost.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/Ghost.ts -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/Wolf.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/Wolf.ts -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/assets/css/game.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/assets/css/game.css -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/assets/css/normalize.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/assets/css/normalize.css -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/enemiesByLevel.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/enemiesByLevel.ts -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/framework/Enemy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/framework/Enemy.ts -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/framework/EnemySpawner.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/framework/EnemySpawner.ts -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/framework/GameLevel.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/framework/GameLevel.ts -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/framework/MonstersGame.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/framework/MonstersGame.ts -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/framework/cloneEnemy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/framework/cloneEnemy.ts -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/framework/renderEnemy.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/framework/renderEnemy.ts -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/src/index.ts -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/tests/.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/tests/.eslintrc -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/tsconfig.json -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/webpack.common.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/webpack.common.js -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/webpack.dev.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/webpack.dev.js -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/webpack.prod.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/webpack.prod.js -------------------------------------------------------------------------------- /examples/ts/ts-monsters_game-01_base/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-monsters_game-01_base/yarn.lock -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/.gitignore -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/dist/data/warehouse-stock.csv: -------------------------------------------------------------------------------- 1 | id,name,stock 2 | 1,Tulipan,5 3 | 2,Rosa,2 -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/dist/data/warehouse-stock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/dist/data/warehouse-stock.json -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/package.json -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/src/Feed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/src/Feed.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/src/FeedStockCounterCsv.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/src/FeedStockCounterCsv.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/src/FeedStockCounterJson.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/src/FeedStockCounterJson.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/src/Flower.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/src/Flower.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/src/getWarehoseProductFeed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/src/getWarehoseProductFeed.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/src/index.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/tsconfig.json -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-01_base/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-01_base/yarn.lock -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-02_extract_base_class/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-02_extract_base_class/.gitignore -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-02_extract_base_class/dist/data/warehouse-stock.csv: -------------------------------------------------------------------------------- 1 | id,name,stock 2 | 1,Tulipan,5 3 | 2,Rosa,2 -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-02_extract_base_class/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-02_extract_base_class/package.json -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-02_extract_base_class/src/Feed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-02_extract_base_class/src/Feed.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-02_extract_base_class/src/Flower.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-02_extract_base_class/src/Flower.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-02_extract_base_class/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-02_extract_base_class/src/index.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-02_extract_base_class/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-02_extract_base_class/tsconfig.json -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-02_extract_base_class/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-02_extract_base_class/yarn.lock -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-03_add_factory_method/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-03_add_factory_method/.gitignore -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-03_add_factory_method/dist/data/warehouse-stock.csv: -------------------------------------------------------------------------------- 1 | id,name,stock 2 | 1,Tulipan,5 3 | 2,Rosa,2 -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-03_add_factory_method/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-03_add_factory_method/package.json -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-03_add_factory_method/src/Feed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-03_add_factory_method/src/Feed.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-03_add_factory_method/src/Flower.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-03_add_factory_method/src/Flower.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-03_add_factory_method/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-03_add_factory_method/src/index.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-03_add_factory_method/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-03_add_factory_method/tsconfig.json -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-03_add_factory_method/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter-03_add_factory_method/yarn.lock -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter-04_replace_inheritance_with_composition/dist/data/warehouse-stock.csv: -------------------------------------------------------------------------------- 1 | id,name,stock 2 | 1,Tulipan,5 3 | 2,Rosa,2 -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter_dynamic-01_base/.gitignore -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/dist/data/warehouse-stock.csv: -------------------------------------------------------------------------------- 1 | id,name,stock 2 | 1,Tulipan,5 3 | 2,Rosa,2 -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter_dynamic-01_base/package.json -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/src/Feed.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter_dynamic-01_base/src/Feed.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/src/FeedParser.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter_dynamic-01_base/src/FeedParser.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/src/FeedParserCsv.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter_dynamic-01_base/src/FeedParserCsv.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/src/FeedParserJson.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter_dynamic-01_base/src/FeedParserJson.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/src/Flower.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter_dynamic-01_base/src/Flower.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/src/index.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter_dynamic-01_base/src/index.ts -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter_dynamic-01_base/tsconfig.json -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-01_base/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/ts/ts-stock_counter_dynamic-01_base/yarn.lock -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-02_extract_parameterized_factory_method/dist/data/warehouse-stock.csv: -------------------------------------------------------------------------------- 1 | id,name,stock 2 | 1,Tulipan,5 3 | 2,Rosa,2 -------------------------------------------------------------------------------- /examples/ts/ts-stock_counter_dynamic-03_exhaustive_type_check/dist/data/warehouse-stock.csv: -------------------------------------------------------------------------------- 1 | id,name,stock 2 | 1,Tulipan,5 3 | 2,Rosa,2 -------------------------------------------------------------------------------- /examples/typescript/ts-stock_management-01_base/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules 2 | coverage -------------------------------------------------------------------------------- /examples/typescript/ts-stock_management-01_base/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/typescript/ts-stock_management-01_base/README.md -------------------------------------------------------------------------------- /examples/typescript/ts-stock_management-01_base/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/typescript/ts-stock_management-01_base/babel.config.js -------------------------------------------------------------------------------- /examples/typescript/ts-stock_management-01_base/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/typescript/ts-stock_management-01_base/package.json -------------------------------------------------------------------------------- /examples/typescript/ts-stock_management-01_base/src/FlowerStock.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/typescript/ts-stock_management-01_base/src/FlowerStock.ts -------------------------------------------------------------------------------- /examples/typescript/ts-stock_management-01_base/src/LowStock.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/typescript/ts-stock_management-01_base/src/LowStock.ts -------------------------------------------------------------------------------- /examples/typescript/ts-stock_management-01_base/src/OutOfStock.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/typescript/ts-stock_management-01_base/src/OutOfStock.ts -------------------------------------------------------------------------------- /examples/typescript/ts-stock_management-01_base/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/examples/typescript/ts-stock_management-01_base/yarn.lock -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/README.md -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/.eslintrc.js -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/.gitignore -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/LICENSE -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/README.md -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/babel.config.json -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/cypress.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/cypress.json -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/index.html -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/jest.config.js -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/package-lock.json -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/package.json -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/src/index.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/tests/.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/tests/.eslintrc -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/tsconfig.json -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/webpack.common.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/webpack.common.js -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/webpack.dev.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/webpack.dev.js -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/base/typescript/webpack.prod.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/base/typescript/webpack.prod.js -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/solutions/adrianliz/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/solutions/adrianliz/.eslintrc.js -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/solutions/adrianliz/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/solutions/adrianliz/.gitignore -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/solutions/adrianliz/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/solutions/adrianliz/LICENSE -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/solutions/adrianliz/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/solutions/adrianliz/README.md -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/solutions/adrianliz/cypress.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/solutions/adrianliz/cypress.json -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/solutions/adrianliz/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/solutions/adrianliz/index.html -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/solutions/adrianliz/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/solutions/adrianliz/package.json -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/solutions/adrianliz/src/index.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/solutions/adrianliz/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/graduated_tiered_prices/solutions/adrianliz/tsconfig.json -------------------------------------------------------------------------------- /exercises/graduated_tiered_prices/solutions/codely_triangulation-with-tpp/src/index.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/legacy_create_video/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/README.md -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/.gitignore -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/.travis.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/.travis.yml -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/LICENSE -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/README.md -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/app/.htaccess: -------------------------------------------------------------------------------- 1 | deny from all -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/app/AppCache.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/app/AppCache.php -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/app/AppKernel.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/app/AppKernel.php -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/app/autoload.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/app/autoload.php -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/app/check.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/app/check.php -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/app/console: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/app/console -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/app/phpunit.xml.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/app/phpunit.xml.dist -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/composer.json -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/composer.lock -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/src/.htaccess: -------------------------------------------------------------------------------- 1 | deny from all -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/web/.htaccess: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/web/.htaccess -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/web/app.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/web/app.php -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/web/app_dev.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/web/app_dev.php -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/web/config.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/web/config.php -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/web/favicon.ico: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/web/favicon.ico -------------------------------------------------------------------------------- /exercises/legacy_create_video/base/php-symfony/web/robots.txt: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/legacy_create_video/base/php-symfony/web/robots.txt -------------------------------------------------------------------------------- /exercises/legacy_create_video/solutions/codely_php-symfony_golden-master/app/.htaccess: -------------------------------------------------------------------------------- 1 | deny from all -------------------------------------------------------------------------------- /exercises/legacy_create_video/solutions/codely_php-symfony_golden-master/src/.htaccess: -------------------------------------------------------------------------------- 1 | deny from all -------------------------------------------------------------------------------- /exercises/product_pricing/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/README.md -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/.eslintrc.js -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/.gitignore -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/LICENSE -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/README.md -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/babel.config.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/babel.config.json -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/cypress.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/cypress.json -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/cypress/plugins/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/cypress/plugins/index.js -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/cypress/support/index.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/cypress/support/index.js -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/cypress/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/cypress/tsconfig.json -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/index.html -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/jest.config.js -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/package-lock.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/package-lock.json -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/package.json -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/src/Product.ts: -------------------------------------------------------------------------------- 1 | export class Product {} -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/src/index.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/tests/.eslintrc: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/tests/.eslintrc -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/tests/Product.test.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/tests/Product.test.ts -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/tsconfig.json -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/webpack.common.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/webpack.common.js -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/webpack.dev.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/webpack.dev.js -------------------------------------------------------------------------------- /exercises/product_pricing/base/typescript/webpack.prod.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/product_pricing/base/typescript/webpack.prod.js -------------------------------------------------------------------------------- /exercises/product_pricing/solutions/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/java/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/java/.editorconfig -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/java/.github/workflows/workflow.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/java/.github/workflows/workflow.yml -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/java/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/java/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/java/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/java/Makefile -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/java/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/java/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/java/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/java/build.gradle -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/java/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/java/gradlew -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/java/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/java/gradlew.bat -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/java/src/main/java/tv/codely/checkout/TieredPricing.java: -------------------------------------------------------------------------------- 1 | package tv.codely.checkout; 2 | 3 | public class TieredPricing { 4 | } 5 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/java/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/.env.example: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/rust/.env.example -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | .env 3 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/rust/Cargo.lock -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/rust/Cargo.toml -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/rust/Makefile -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/rust/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/rust/docker-compose.yml -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/docker/rust/Dockerfile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/rust/docker/rust/Dockerfile -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/src/health_check.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/rust/src/health_check.rs -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/rust/src/main.rs -------------------------------------------------------------------------------- /exercises/tiered_pricing/base/rust/src/routes.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/base/rust/src/routes.rs -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/adrianliz/java/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/adrianliz/java/.editorconfig -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/adrianliz/java/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/adrianliz/java/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/adrianliz/java/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/adrianliz/java/Makefile -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/adrianliz/java/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/adrianliz/java/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/adrianliz/java/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/adrianliz/java/build.gradle -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/adrianliz/java/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/adrianliz/java/gradlew -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/adrianliz/java/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/adrianliz/java/gradlew.bat -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/adrianliz/java/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/aortiz_typescript/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/aortiz_typescript/.eslintrc.js -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/aortiz_typescript/.gitignore: -------------------------------------------------------------------------------- 1 | node_modules/ 2 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/aortiz_typescript/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/aortiz_typescript/LICENSE -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/aortiz_typescript/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/aortiz_typescript/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/aortiz_typescript/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/aortiz_typescript/jest.config.js -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/aortiz_typescript/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/aortiz_typescript/package.json -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/aortiz_typescript/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/aortiz_typescript/tsconfig.json -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/codely_outside-in/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/codely_outside-in/.editorconfig -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/codely_outside-in/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/codely_outside-in/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/codely_outside-in/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/codely_outside-in/Makefile -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/codely_outside-in/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/codely_outside-in/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/codely_outside-in/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/codely_outside-in/build.gradle -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/codely_outside-in/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/codely_outside-in/gradlew -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/codely_outside-in/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/codely_outside-in/gradlew.bat -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/codely_outside-in/src/main/java/tv/codely/checkout/TieredPricing.java: -------------------------------------------------------------------------------- 1 | package tv.codely.checkout; 2 | 3 | public class TieredPricing { 4 | } 5 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/codely_outside-in/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/elwazy-python/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/elwazy-python/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/elwazy-python/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/elwazy-python/elwazy_python/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/elwazy-python/poetry.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/elwazy-python/poetry.lock -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/elwazy-python/pyproject.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/elwazy-python/pyproject.toml -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/elwazy-python/tests/__init__.py: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/isaac1024_baby-steps/.gitignore: -------------------------------------------------------------------------------- 1 | /target 2 | .env 3 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/isaac1024_baby-steps/Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/isaac1024_baby-steps/Cargo.lock -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/isaac1024_baby-steps/Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/isaac1024_baby-steps/Cargo.toml -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/isaac1024_baby-steps/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/isaac1024_baby-steps/Makefile -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/isaac1024_baby-steps/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/isaac1024_baby-steps/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/isaac1024_baby-steps/src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/isaac1024_baby-steps/src/main.rs -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/lurumad-java/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/lurumad-java/.editorconfig -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/lurumad-java/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/lurumad-java/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/lurumad-java/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/lurumad-java/Makefile -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/lurumad-java/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/lurumad-java/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/lurumad-java/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/lurumad-java/build.gradle -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/lurumad-java/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/lurumad-java/gradlew -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/lurumad-java/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/lurumad-java/gradlew.bat -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/lurumad-java/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/docker-compose.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/docker-compose.yml -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/docker/test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/docker/test -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/docker/up: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env bash 2 | 3 | docker-compose up --build -d 4 | 5 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/src/.env: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/src/.env -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/src/.env.test: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/src/.env.test -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/src/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/src/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/src/behat.yml.dist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/src/behat.yml.dist -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/src/bin/console: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/src/bin/console -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/src/bin/phpunit: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/src/bin/phpunit -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/src/composer.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/src/composer.json -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/src/composer.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/src/composer.lock -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/src/src/Kernel.php: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/src/src/Kernel.php -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/malakaton-php/src/symfony.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/malakaton-php/src/symfony.lock -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mmoreno-typescript/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mmoreno-typescript/.eslintrc.js -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mmoreno-typescript/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mmoreno-typescript/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mmoreno-typescript/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mmoreno-typescript/LICENSE -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mmoreno-typescript/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mmoreno-typescript/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mmoreno-typescript/cypress.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mmoreno-typescript/cypress.json -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mmoreno-typescript/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mmoreno-typescript/index.html -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mmoreno-typescript/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mmoreno-typescript/package.json -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mmoreno-typescript/src/InvalidLicenciasQuantity.ts: -------------------------------------------------------------------------------- 1 | export default class InvalidLicenciasQuantity extends Error {} 2 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mmoreno-typescript/src/index.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mperezi/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mperezi/.editorconfig -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mperezi/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mperezi/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mperezi/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mperezi/Makefile -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mperezi/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mperezi/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mperezi/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mperezi/build.gradle -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mperezi/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mperezi/gradlew -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mperezi/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/mperezi/gradlew.bat -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/mperezi/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/oflorez/.editorconfig: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/oflorez/.editorconfig -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/oflorez/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/oflorez/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/oflorez/Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/oflorez/Makefile -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/oflorez/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/oflorez/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/oflorez/build.gradle: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/oflorez/build.gradle -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/oflorez/gradlew: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/oflorez/gradlew -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/oflorez/gradlew.bat: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/oflorez/gradlew.bat -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/oflorez/var/log/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/xetxeberria-ts/.eslintrc.js -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/xetxeberria-ts/.gitignore -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/xetxeberria-ts/LICENSE -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/xetxeberria-ts/README.md -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/cypress.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/xetxeberria-ts/cypress.json -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/index.html: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/xetxeberria-ts/index.html -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/xetxeberria-ts/jest.config.js -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/xetxeberria-ts/package.json -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/src/index.ts: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/xetxeberria-ts/tsconfig.json -------------------------------------------------------------------------------- /exercises/tiered_pricing/solutions/xetxeberria-ts/webpack.dev.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/tiered_pricing/solutions/xetxeberria-ts/webpack.dev.js -------------------------------------------------------------------------------- /exercises/user_signup/README.md: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/.eslintrc.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/.eslintrc.js -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/.gitignore -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/babel.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/babel.config.js -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/cypress.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/cypress.json -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/jest.config.js: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/jest.config.js -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/next-env.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/next-env.d.ts -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/package.json -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/setupTests.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/setupTests.ts -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/src/assets/index.css: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/src/assets/index.css -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/src/pages/_app.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/src/pages/_app.tsx -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/src/pages/index.tsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/src/pages/index.tsx -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/tsconfig.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/tsconfig.json -------------------------------------------------------------------------------- /exercises/user_signup/base/next-typescript/yarn.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/CodelyTV/refactoring-code_smells-design_patterns/HEAD/exercises/user_signup/base/next-typescript/yarn.lock -------------------------------------------------------------------------------- /refactorings/composing-methods/extract-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/composing-methods/extract-variable/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/composing-methods/inline-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/composing-methods/inline-temp/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/composing-methods/remove-assignments-to-parameters/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/composing-methods/replace-method-with-method-object/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/composing-methods/replace-temp-with-query/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/composing-methods/split-temporary-variable/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/composing-methods/substitute-algorithm/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/collapse-hierarchy/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/extract-interface/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/extract-subclass/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/extract-superclass/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/form-template-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/pull-up-constructor-body/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/pull-up-field/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/pull-up-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/push-down-field/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/push-down-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/replace-delegation-with-inheritance/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/dealing-with-generalization/replace-inheritance-with-delegation/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/moving-features-between-objects/extract-class/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/moving-features-between-objects/hide-delegate/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/moving-features-between-objects/inline-class/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/moving-features-between-objects/introduce-foreign-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/moving-features-between-objects/introduce-local-extension/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/moving-features-between-objects/move-field/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/moving-features-between-objects/move-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/moving-features-between-objects/remove-middle-man/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/change-bidirectional-association-to-unidirectional/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/change-reference-to-value/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/change-unidirectional-association-to-bidirectional/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/change-value-to-reference/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/duplicate-observed-data/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/encapsulate-collection/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/encapsulate-field/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/replace-array-with-object/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/replace-data-value-with-object/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/replace-magic-number-with-symbolic-constant/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/replace-subclass-with-fields/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/replace-type-code-with-class/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/replace-type-code-with-state-or-strategy/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/replace-type-code-with-subclasses/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/organizing-data/self-encapsulate-field/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-conditional-expressions/consolidate-conditional-expression/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-conditional-expressions/consolidate-duplicate-conditional-fragments/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-conditional-expressions/decompose-conditional/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-conditional-expressions/introduce-assertion/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-conditional-expressions/introduce-null-object/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-conditional-expressions/remove-control-flag/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-conditional-expressions/replace-conditional-with-polymorphism/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-conditional-expressions/replace-nested-conditional-with-guard-clauses/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/add-parameter/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/hide-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/introduce-parameter-object/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/parameterize-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/preserve-whole-object/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/remove-parameter/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/remove-setting-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/rename-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/replace-constructor-with-factory-method/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/replace-error-code-with-exception/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/replace-exception-with-test/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/replace-parameter-with-explicit-methods/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/replace-parameter-with-method-call/.gitkeep: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /refactorings/simplifying-method-calls/separate-query-from-modifier/.gitkeep: -------------------------------------------------------------------------------- 1 | --------------------------------------------------------------------------------